75b2645e3f
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1580 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
36 lines
1.1 KiB
Plaintext
36 lines
1.1 KiB
Plaintext
=================================================================
|
|
Logtalk - Object oriented extension to Prolog
|
|
Release 2.27.1
|
|
|
|
Copyright (c) 1998-2006 Paulo Moura. All Rights Reserved.
|
|
=================================================================
|
|
|
|
|
|
To load this example and for sample queries, please see the SCRIPT
|
|
file.
|
|
|
|
This folder contains an object which implements a translator from
|
|
first-order predicate logic propositions to conjunctive normal form
|
|
and to clausal form. The translator code is partially based on code
|
|
published in the book "Programming in Prolog" by W. F. Clocksin and
|
|
C. S. Mellish.
|
|
|
|
The following operators are used for representing logic connectives:
|
|
|
|
negation: ~
|
|
disjunction: v
|
|
conjunction: &
|
|
implication: =>
|
|
equivalence: <=>
|
|
|
|
Quantifiers are represented using the following notation:
|
|
|
|
universal: all(X, P)
|
|
existential: exists(X, P)
|
|
|
|
The two main object predicates are translate/2 and step_by_step/2.
|
|
The first predicate, translate/2, translate a logic proposition to
|
|
a list of clauses. The second predicate, step_by_step/2, performs
|
|
the same translations as translate/2 but also prints the results
|
|
of each conversion step.
|