Предикаты "чистого" Пролога - Prolog

Узнай цену своей работы

Формулировка задачи:

Какие следующие предикаты относятся к "чистому" Прологу, т. е. описываются в рамках логической теории предикатов первого порядка? 1) отсечение; 2) fail; 3) true; 4) отрицание not; 5) call; 6) findall; 7) assert; 8) retract. Только начал изучать, а ответ уже нужен, я предположил 2 3 4, но это не верно или недостаточно.

Решение задачи: «Предикаты "чистого" Пролога»

textual
Листинг программы
not(Goal) :-
  call(Goal),
  !,
  fail.
not(_).

Объяснение кода листинга программы

  1. Представлен код на языке Prolog
  2. Код содержит два предиката: not и _ (неопределенный предикат)
  3. Предикат not принимает один аргумент Goal
  4. Если Goal успешно выполняется (то есть возвращает истинное значение), то выполняется сокращенная форма not(_)
  5. Если Goal не выполняется (то есть возвращает ложное значение), то возвращается значение fail
  6. Предикат _ не принимает аргументов и всегда возвращает истинное значение
  7. Предикат not используется для отрицания результатов выполнения других предикатов
  8. В данном случае предикат not используется для отрицания предиката _
  9. Результатом выполнения кода будет истинное значение, если предикат _ не выполнится (то есть вернет ложное значение)
  10. Результатом выполнения кода будет ложное значение, если предикат _ выполнится (то есть вернет истинное значение)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.6 из 5