Если вы просто пытаетесь оценить утверждение логики высказываний, используя PROLOG, вы можете попробовать следующее. Начните с кодирования значений ваших «предложений» a
, b
и d
, таких как:
a :- true. % this means that a is true.
b :- fail. % this means that b is false
... и т.д.. Например, предполагая, что ваши заявления были:
a :- fail.
b :- fail.
d :- fail.
Затем, выполняя ваше заявление:
?- not(a), not(b), not(d), not(a).
true.
н.б .: «Предложения», закодированные здесь, являются «симулированными» - они на самом деле являются предикатами нулевого арта первого порядка в отношении PROLOG.
пс. a :- true.
можно упростить до a.
.
имп. Если я не в курсе, и вам нужен способ символической манипуляции с оператором в какой-то другой форме, например, нормализации, тогда вам нужно написать то, что называется мета-интерпретатором в PROLOG. , См. Программирование Clocksin и Mellish в Прологе, Приложение B, «Списки программ форм Клаусала» , которые могут вам помочь.