Man Linux: Main Page and Category List

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 Conclusion

       for 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:

       "-c"
           Continue even if a single proof step could not be verified. Default
           ’off’.

       "-d suffix"
           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/’.

       "-f"
           Overwrite working directory if it already exists. Default ’off’.

       "-o"
           Use SPASS as proof checker instead of OTTER. This option is
           especially useful when checking proofs generated by a different
           prover.  Default is ’off’.

       "-p path"
           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.

       "-q"
           Be quiet and do not print program paths. This option is especially
           useful inside checkstat. Default is ’off’.

       "-r"
           Clean up all generated files at the end, even if the proof is not
           valid.  Default ’off’.

       "-s suffix"
           Suffix of files generated by pgen. Default is ’.dfg’.

       "-t limit "
           Number of seconds for each proof attempt for each proof step.
           Default is 3 seconds.

       "-v"
           (verbose) Give some progress information. Default is ’off’.

       "-w path"
           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>