%----Version 3.1.0.23 (TPTP version.internal development number) %----Intended uses of the various parts of the TPTP syntax are explained %----in the TPTP technical manual, linked from www.tptp.org. %----See the entries regarding text that can be discarded before %----tokenizing for this syntax. %----Files. At least something, and at least one expected ::= + ::= | | %----Formula records ::= | %----Future languages may include ... english | efof | tfof | mathml | ... ::= fof(,,). ::= cnf(,,). ::= | , | ,, %----Types for problems. %----Note: The previous from ... %---- ::= - %----... is now gone. Parsers may choose to be tolerant of it for backwards %----compatibility. ::= axiom | %----Axioms are accepted without proof as a basis for proving conjectures and %----lemma_conjectures. There is no guarentee that the axioms of a problem are %----consistent. hypothesis | %----Hypotheses are assumed to be true for a particular problem. Like axioms. definition | %----Definitions used to define symbols. Used like axioms. lemma | %----Lemmas have been proved from the axiom formulae. Can be used like axioms, %----but are redundant wrt the axioms. Used as the type of proved %----lemma_conjectures in output. A problem containing a lemma that is not %----redundant wrt the axioms is ill-formed. theorem | %----Theorems have been proved from the axiom formulae. Can be used like %----axioms, but are redundant wrt the axioms. Used as the type of proved %----conjectures in output. Theorems are more important than lemmas from the %----user perspective. conjecture | %----Conjectures are all to be proved from the axiom(-like) formulae. A problem %----is solved only when all conjectures are proved. lemma_conjecture | %----Lemma conjectures are expected to be provable, and may be useful to prove, %----while proving conjectures. negated_conjecture | %----Negated conjectures are derived from negation of a conjecture. CNF %----specific. plain | %----Plain formulae have no special user semantics. Can be used like axioms. unknown %----Unknown formulae have unknown type. This is an error situation. %----Future user types may include ... knowledge | %----FOF formulae. All formulae must be closed. ::= | ::= | ::= | | () %----Quantifers have higher precedence than binary connectives. ::= : %----! is universal quantification and ? is existential ::= ! | ? ::= [*] %----Future variables may have sorts and existential counting ::= , %----Only some binary connectives are associative, and there's no precedence ::= | ::= %----Associative connectives & and vline are in ::= <=> | => | <= | <~> | ~vline | ~& ::= | ::= vline * ::= vline ::= & * ::= & %----Unary connectives bind more tightly than binary ::= ::= ~ %----CNF formulae (variables implicitly universally quantified) ::= () | ::= | vline ::= | ~ %----Atoms ::= | | ::= | () ::= ::= ::= * ::= , ::= $true | $false | = | != | equal(,) %----More defined atoms may be added in the future %----Note: != should be parsed as ~ = ::= $$ | $$() %----Terms ::= | ::= | | ::= | () ::= ::= ::= | ::= $$ | $$() ::= %----Formula sources ::= | | | unknown %----Only a can be a , i.e., derived formulae can be %----identified by a or an ::= | ::= inference(,, [*]) ::= %----Examples are deduction | modus_tollens | modus_ponens | rewrite | % resolution | paramodulation | factorization | % cnf_conversion | cnf_refutation | ... ::= , ::= ::= theory() ::= equality | ac | ... ::= - | ::= introduced() ::= definition | axiom_of_choice | tautology %----This should be used to record the symbol being defined, or the function %----for the axiom of choice ::= , | , ::= | | ::= file(,) ::= ::= | unknown ::= creator() ::= ::= , | %----Useful info fields ::= [] | [] ::= * ::= , ::= | | %----Useful info for formula records ::= | ::= description() ::= iquote() %----Useful info for inference records ::= | ::= status() | %----These are the status values from the SZS ontology ::= tau | tac | eqv | thm | sat | cax | noc | csa | cth | ceq | unc | uns | sab | sam | sar | sap | csp | csr | csm | csb ::= (,) ::= refutation() %----Useful info for creators is just %----Include directives ::= include(). ::= | ,[*] ::= , %----Comments. These may be retained for non-logical purposes. Comments %----can occur only between annotated formulae (see ), but %----it seems likely that people will put them elsewhere and simply %----strip them before tokenising. ::= %* | /*/ %----Annotations are used for system specific annotation of anything. Notice %----that they look like comments, so by default they are discarded. However, %----a wily user of the syntax can notice the @ and store/extract information %----from the "comment". System specific annotations should identify the %----system, followed by a :, after the $$, e.g., /*@Otter 3.3: Demodulator */ ::= %$$* | /$$*/ %----General purpose ::= | ::= [] | [] ::= | () ::= * ::= , %----The following are reserved s: unknown file inference creator ::= | ::= | ::= * ::= * ::= '*' %----All numbers are implicitly distinct ::= | ::= ::= ::= + | - | ::= <0-9>+ ::= .<0-9>+ | %----All strings are implicitly distinct ::= "*" ::= ... any printable ASCII character ::= ... a star character ::= ... a plus character ::=