man pcs (Commandes) - checks SPASS proofs
NAME
pcs - checks SPASS proofs
SYNOPSIS
pcs [ -cdfrstv] file
DESCRIPTION
pcs is a Perl script that supports automatic checking of proofs specified in DFG syntax with the theorem prover OTTER. It uses
- •
- the C-program pgen, which generates proof tasks corresponding to inference steps for each proof step of a DFG proof and checks the tableau structure.
- •
- the C-program SPASS with the -Flotter option for converting DFG syntax files with formulas into DFG syntax files with clauses.
- •
- the C-program dfg2otter, which transforms files in DFG syntax with clauses only into files for OTTER syntax.
pcs checks that:
- •
- The conclusion in each proof step is a logical consequence of the assumptions in that proof step.
- •
- Each clause in a subtableau uses only parents clauses that are visible at this point in the tableau.
- •
- Each clause, except for split clauses, has the maximum split level of its parents.
- •
- If the first half of a split was ground, then negations of its literals can be used in the tableau branch corresponding to the second half of the split.
- •
- The tableau is complete and closed.
The second condition is verified by checking the unsatisfiability
Assumptions \wedge \neg Conclusionfor each proof step (inference rule application) by running OTTER for a limited time. The appropriate DFG files for these problems are generated by pgen. OTTER may fail to terminate within this time, leaving the correctness of a proof step undecided, which leads to the three possible results of pcs:
- •
- The proof is correct: Both conditions are satisfied for all proof steps.
- •
- The proof is not correct: One condition is definitely violated for at least one proof step.
- •
- Correctness is undecided: The first condition is satisfied, but the second condition could not be verified nor falsified for at least one proof step.
pcs uses a working directory, in which all proof tasks corresponding to the proof steps are generated using the pgen program. These tasks are subsequently checked using OTTER.
OPTIONS
Several options control the behavior of pcs when it fails to verify a proof step, its output and the naming of generated files and the working directory: Continue even if a single proof step could not be verified. Default 'off'. Suffix of created working directory. For an input file root.ext, the working directory <root><suffix> is created. If suffix does not end with a backslash, it is taken as a prefix for files generated by pgen, which are then created in the current working directory. Default is '_SubProofs/'. Overwrite working directory if it already exists. Default 'off'. Use SPASS as proof checker instead of OTTER. This option is especially useful when checking proofs generated by a different prover. Default is 'off'. Location of DFG prover to be used instead of the default one. If -o is specified, then it overrides this option, and SPASS is used instead. If a DFG converter is specified, then a prover must be specified as well. Default is OTTER. Be quiet and do not print program paths. This option is especially useful inside checkstat. Default is 'off'. Clean up all generated files at the end, even if the proof is not valid. Default 'off'. Suffix of files generated by pgen. Default is '.dfg'. Number of seconds for each proof attempt for each proof step. Default is 3 seconds. (verbose) Give some progress information. Default is 'off'. Location of DFG converter to be used instead of the default one. If a DFG converter is specified, then a prover must be specified as well. Default is dfg2otter.pl.
SEE ALSO
checkstat(1), filestat(1), pgen(1), rescmp(1), tpform(1), tpget(1), deprose(1), dfg2otter(1), dfg2otterpl(1), SPASS(1)
AUTHORS
Thorsten Engel and Christian Theobalt.
Contact : Thomas Hillenbrand <hillen@mpi-sb.mpg.de> Christoph Weidenbach <weidenb@mpi-sb.mpg.de>