--------------------------
nanoCoP ReadMe File (v1.0)
-----------
Description
nanoCoP is a compact non-clausal connection theorem prover for
classical first-order logic implemented in Prolog. See the web
site http://www.leancop.de/nanocop/ for more details.
--------
Contents
ReadMe_nanocop - this ReadMe file
nanocop.sh - shell script to invoke nanoCoP
nanocop.pl - the nanoCoP core prover
nanocop_main.pl - invokes the nanoCoP core prover
nanocop_tptp2.pl - translates problems in TPTP syntax
------------
Installation
Set the path for the Prolog system (ECLiPSe 5.x) and the path
for the nanoCoP prover in the file nanocop.sh.
---------
Execution
./nanocop.sh %s
where %s is the name of the problem file.
Example: ./nanocop.sh SET/SET009+3
Output if formula is valid: %s is a Theorem
Output if formula is invalid: %s is a Non-Theorem
Example: SET/SET009+3 is a Theorem
------
Syntax
The problem file has to contain a Prolog term of the form
f().
in which is a first-order formula built from Prolog
terms (atomic formulae), the logical connectives '~' (negation),
';' (disjunction), ',' (conjunction), '=>' (implication), '<=>'
(equivalence), and the logical quantifiers 'all X:' (universal)
and 'ex X:' (existential) where X is a Prolog variable.
Example: f( ((p , all X:(p=>q(X))) => q(a)) ).
Alternatively, the problem file may contain a formula in TPTP
syntax (see http://www.tptp.org). If the problem file contains
equality ('=') all equality axioms are added automatically.
-----------
At a Glance
System: nanoCoP
Version: 1.0
URL: http://www.leancop.de/nanocop/
Command: ./nanocop.sh %s
Format: leancop/nanocop or (raw) tptp
Output: - valid: %s is a Theorem
- invalid: %s is a Non-Theorem
- unsatisfiable(*): %s is Unsatisfiable
- satisfiable(*): %s is Satisfiable
(*: for problems in TPTP syntax without conjecture)