Provided by: spass_3.7-4_amd64 bug

NAME

       SPASS - automated theorem prover for full first-order logic with equality

SYNOPSIS

       SPASS [options] [inputfile]

DESCRIPTION

       SPASS is an automated theorem prover for full sorted first-order logic with equality that extends
       superposition by sorts and a splitting rule for case analysis.  SPASS can also be used as a modal logic
       and description logic theorem prover.

OPTIONS

       Command line options in SPASS are implemented via modifications to the GNU command line option package
       for C. Just giving the option sets its value to 1 and means enabling the option. In order to disable an
       option the value has to be set to 0 by declaring -Option=0.  The following options are currently
       supported by SPASS:

       -Auto
           Enables/disables  the auto mode where SPASS configures itself automatically.  The inference/reduction
           rules, the sort technology, the ordering and precedence  as  well  as  the  splitting  and  selection
           strategy are set.  In auto mode SPASS is complete. Mixing the auto mode with user defined options may
           destroy completeness.  Default is 1.

       -Stdin
           Enables/disables input in SPASS via stdin. The file argument is ignored. Default is 0.

       -Interactive
           Enables/disables  the  interactive  mode.  First,  SPASS is given a set of axioms and then the prover
           accepts subsequent proof tasks. Default is 0.

       -Flotter
           Enables/disables the CNF translation mode of SPASS. If the option  is  set,  SPASS  only  performs  a
           clause  normal  form translation. If no output file argument is given SPASS prints the CNF to stdout.
           Default is 0.

       -SOS
           Enables/disables the set of support strategy. Default is 0.

       -Splits=n
           Sets the number of possible splitting applications to n. If n=-1 then the number  of  splits  is  not
           limited. Default is 0.

       -Memory=n
           Sets  the  amount of memory available to SPASS for the proof search to n bytes.  The memory needed to
           startup SPASS cannot be restricted.  Default is -1 meaning that memory allocations is only restricted
           by available memory.

       -TimeLimit=n
           Sets a time limit for the proof search to n seconds.  Default  is  -1  meaning  that  SPASS  may  run
           forever.  The  time  limit  is  polled  when  SPASS  selects a new clause for inferences. If a single
           inference step causes an explosion to the number of generated clauses it may therefore happen that  a
           given time limit is significantly exceeded.

       -DocSST
           Enables/disables  documentation  output  for static soft typing.  The used sort theory as well as the
           (failed) proof attempt for the sort constraint is printed.  Default is 0.

       -DocProof
           Enables/disables proof documentation. If SPASS finds a proof it is eventually printed. If SPASS finds
           a saturation, the saturated set of clauses is eventually printed.  Enabling proof  documentation  may
           significantly  decrease SPASS's performance, because the prover must store clauses that can be thrown
           away otherwise. Default is 0.

       -DocSplit
           Sets the documentation of split backtracking steps. If set to 1, the current  backtracking  level  is
           printed.  If  set to 2, it also prints in case of a split backtrack the backtracked clauese.  Default
           is 0.

       -Loops
           Sets the maximal number of mainloop iterations for SPASS.  Default is -1.

       -PSub
           Enables/disables printing of subsumed clauses.  Default is 0.

       -PRew
           Enables/disables printing of simple rewrite applications.  Default is 0.

       -PCon
           Enables/disables printing of condensation applications.  Default is 0.

       -PTaut
           Enables/disables printing of tautology deletion applications.  Default is 0.

       -PObv
           Enables/disables printing of obvious reduction applications.  Default is 0.

       -PSSi
           Enables/disables printing of sort simplification applications.  Default is 0.

       -PSST
           Enables/disables printing of static soft typing  applications.   All  deleted  clauses  are  printed.
           Default is 0.

       -PMRR
           Enables/disables printing of matching replacement resolution applications.  Default is 0.

       -PUnC
           Enables/disables printing of unit conflict applications.  Default is 0.

       -PAED
           Enables/disables printing of clauses where redundant equations have been removed (assignment equation
           deletion).

       -PDer
           Enables/disables printing of clauses derived by inferences.  Default is 0.

       -PGiven
           Enables/disables printing of the given clause, selected to perform inferences.  Default is 0.

       -PLabels
           Enables/disables  printing of labels. If the -DocProof is set and no labels for formulae are provided
           by the input, SPASS generates generic labels that are then printed by enabling this option.   Default
           is 0.

       -PKept
           Enables/disables  printing  of kept clauses. These are clauses generated by inferences (backtracking)
           that are not redundant.  Clauses derived during input reduction/saturation are not printed.   Default
           is 0.

       -PProblem
           Enables/disables printing of the input clause set.  Default is 1.

       -PEmptyClause
           Enables/disables printing of derived empty clauses.  Default is 0.

       -PStatistic
           Enables/disables  printing  of  a  final  statistics  on  derived/backtracked/kept clauses, performed
           splits, used time and used space.  Default is 1.

       -FPModel
           Enables/disables the output of an eventually found model to a file. If set to 1, all clauses  in  the
           final set are printed. If set to 2, only potentially productive clauses are printed, that are clauses
           with  no  selected  negative  literal and a maximal positive one. If <problemfile> is the name of the
           input problem and the eventually generated set is saturated, the saturation is printed  to  the  file
           <problemfile>.model,  for otherwise to <problemfile>.clauses. The latter case may, e.g., be caused by
           a time limit.  Default is 0.

       -FPDFGProof
           Enables/disables the output of an eventually found proof to a file. Using this option requires to set
           the option -DocProof. If <problemfile> is the name of the input  problem  the  proof  is  printed  to
           <problemfile>.prf.  Default is 0.

       -PFlags
           Enables/disables  the  output of all flag values. The flag settings are printed at the end of a SPASS
           run in form of a DFG-Syntax input section.  Default is 0.

       -POptSkolem
           Enables/disables the output of optimized Skolemization applications.  Default is 0.

       -PStrSkolem
           Enables/disables the output of strong Skolemization applications.  Default is 0.

       -PBDC
           Enables/disables the output of clauses deleted because of bound restrictions.  Default is 0.

       -PBInc
           Enables/disables the output of bound restriction changes.  Default is 0.

       -PApplyDefs
           Enables/disables printing of expansions of atom definitions.  Default is 0.

       -Select
           Sets the selection strategy for SPASS. If set to 0 no selection of negative literals is done. If  set
           to  any  other  value,  at  most  one  negative literal in a clause is selected. If set to 1 negative
           literals in clauses with more than one maximal literal are selected.  Either a negative literal  with
           a  predicate  from  the  selection  list  (see  below)  is  chosen  or if no such negative literal is
           available, a negative literal with maximal weight is chosen.  If  set  to  2  negative  literals  are
           always  selected.  Again,  either  a  negative  literal with a predicate from the selection list (see
           below) is chosen or if no such negative literal is available, a negative literal with maximal  weight
           is  chosen.   The  latter  case  results  in  an  ordered  hyperresolution  like  behavior of ordered
           resolution.  If set to 3 any negative literal with a predicate specified by the selection  list  (see
           below) is selected.  Default is 1.

       -RInput
           Enables/disables the reduction of the initial clause set.  Default is 1.

       -Sorts
           Determines the monadic literals that built the sort constraint for the initial clause set.  If set to
           0,  no  sort  constraint  is  built.  If  set  to 1, all negative monadic literals with a variable as
           argument form the sort constraint.  If set  to  2,  all  negative  monadic  literals  form  the  sort
           constraint.   Setting  -Sorts  to  2 may harm completeness, since sort constraints are subject to the
           basic strategy and to static soft typing.  Default is 1.

       -SatInput
           Enables/disables input saturation. The saturation is  incomplete  but  is  guaranteed  to  terminate.
           Default is 0.

       -WDRatio
           Sets  the ratio between given clauses selected by weight or the depth in the search space. The weight
           is the sum of all symbol weights determined by the -FuncWeight and -VarWeight options. The  depth  of
           all initial clauses is 0 and clauses generated by inferences get the maximal depth of a parent clause
           plus 1.  Default is 5, meaning that 4 clauses are selected by weight and the fifth clause is selected
           by depth.

       -PrefCon
           Sets  the  ratio  to  compute the weight for conjecture clauses and therefore allows to prefer those.
           Default is 0 meaning that the weight computation for conjecture clauses is not changed.

       -FullRed
           Enables/disables full reduction. If set to 0, only the set of worked off clauses is completely inter-
           reduced. If set to 1, all currently hold clauses  (worked  off  and  usable)  are  completely  inter-
           reduced.  Default is 1.

       -FuncWeight
           Sets  the  weight  of  function/predicate  symbols.  The  weight  of clauses is the sum of all symbol
           weights. This weight is considered for the selection of the given clause. Default is 1.

       -VarWeight
           Sets the weight of variable symbols (see -FuncWeight).  Default is 1.

       -PrefVar
           Enables/disables the preference for clauses with many  variables.   While  clauses  are  selected  by
           weight,  if  this  option  is set and two clauses have the same weight, the clause with more variable
           occurrences is preferred.  Default is 0.

       -BoundMode
           Selects the mode for bound restrictions. Mode 0 means no restriction, if set to 1 all newly generated
           clauses are restricted by weight (see -BoundStart) and if set to 2 clauses are restricted  by  depth.
           Default is 0.

       -BoundStart
           The start restriction of the selected bound mode. For example, if bound mode is 1 and bound start set
           to 5, all clauses with a weight larger than 5 are deleted until the set is saturated.  This causes an
           increase  of  the used bound value that is determined by the minimal increase saving a before deleted
           clause. Default is -1 meaning no bound restriction.

       -BoundLoops
           The number of loops applying the actions restrictions/increasing bound.  If the number  of  loops  is
           exceeded all bound restrictions are cancelled. Default is 1.

       -ApplyDefs
           Sets the maximal number of applications of atom definitions to input formulae.  Default is 0, meaning
           no applications at all.

       -Ordering
           Sets the term ordering. If 0 then KBO is selected, if 1 the RPOS is selected. Default is 0.

       -CNFQuantExch
           If  set,  non-constant  Skolem terms in the clausal form of the conjecture are replaced by constants.
           Will automatically be set for the optimized functional translation  of  modal  or  description  logic
           formulae.  Default is 0.

       -CNFOptSkolem
           Enables/disables optimized Skolemization.  Default is 1.

       -CNFStrSkolem
           Enables/disables Strong Skolemization.  Default is 1.

       -CNFProofSteps
           Sets the maximal number of proof steps in an optimized Skolemization proof attempt.  Default is 100.

       -CNFSub
           Enables/disables subsumption on the clauses generated by the CNF procedure.  Default is 1.

       -CNFCon
           Enables/disables condensing on the clauses generated by the CNF procedure.  Default is 1.

       -CNFRedTime
           Sets  the  overall  amount  of  time  in  seconds to be spend on reduction during CNF transformation.
           Affected reductions are optimized Skolemization, condensing, and subsumption. Default is  -1  meaning
           that the reduction time is not limited at all.

       -CNFRenaming
           Enables/disables  formula  renaming.   If  set  to 1 optimized renaming is enabled that minimizes the
           number of eventually generated clauses.  If set to 2 complex renaming is enabled  that  introduces  a
           new  Skolem predicate for every complex  formula, i.e., any formula that is not a literal.  If set to
           3 quantification renaming is enabled that introduces a new  Skolem  predicate  for  every  subformula
           starting with a quantifier.  Default is 1.

       -CNFRenMatch
           If set, renaming variant subformulae are replaced by the same Skolem literal.  Default is 1.

       -CNFPRenaming
           Enables/disables the printing of formula renaming applications.  Default is 0.

       -CNFFEqR
           Enables/disables certain equality reduction techniques on the formula level. Default is 1.

       -IEmS
           Enables/disables the inference rule Empty Sort.  Default is 0.

       -ISoR
           Enables/disables the inference rule Sort Resolution.  Default is 0.

       -IEqR
           Enables/disables the inference rule Equality Resolution.  Default is 0.

       -IERR
           Enables/disables the inference rule Reflexivity Resolution.  Default is 0.

       -IEqF
           Enables/disables the inference rule Equality Factoring.  Default is 0.

       -IMPm
           Enables/disables the inference rule Merging Paramodulation.  Default is 0.

       -ISpR
           Enables/disables the inference rule Superposition Right.  Default is 0.

       -IOPm
           Enables/disables the inference rule Ordered Paramodulation.  Default is 0.

       -ISPm
           Enables/disables the inference rule Standard Paramodulation.  Default is 0.

       -ISpL
           Enables/disables the inference rule Superposition Left.  Default is 0.

       -IORe
           Enables/disables  the  inference rule Ordered Resolution.  If set to 1, Ordered Resolution is enabled
           but no resolution inferences with equations are generated. If set to 2, equations are considered  for
           Ordered Resolution steps as well.  Default is 0.

       -ISRe
           Enables/disables the inference rule Standard Resolution.  If set to 1, Standard Resolution is enabled
           but  no resolution inferences with equations are generated. If set to 2, equations are considered for
           Standard Resolution steps as well.  Default is 0.

       -ISHy
           Enables/disables the inference rule Standard Hyper-Resolution.  Default is 0.

       -IOHy
           Enables/disables the inference rule Ordered Hyper-Resolution.  Default is 0.

       -IURR
           Enables/disables the inference rule Unit Resulting Resolution.  Default is 0.

       -IOFc
           Enables/disables the inference rule Ordered Factoring.  If set to 1, Ordered Factoring is enabled but
           only factoring inferences with positive literals are generated. If set to 2,  negative  literals  are
           considered for inferences as well.  Default is 0.

       -ISFc
           Enables/disables the inference rule Standard Factoring.  Default is 0.

       -IUnR
           Enables/disables the inference rule Unit Resolution.  Default is 0.

       -IBUR
           Enables/disables the inference rule Bounded Depth Unit Resolution.  Default is 0.

       -IDEF
           Enables/disables the inference rule Apply Definitions.  Currently not supported.  Default is 0.

       -RFRew
           Enables/disables  the  reduction  rule  Forward  Rewriting.   If set to 1 unit rewriting and non-unit
           rewriting based on a subsumption test is activated.  If set to 2 in addition  to  unit  and  non-unit
           rewriting  local  contextual  rewriting  is activated.  If set to 3 in  addition to unit and non-unit
           rewriting subterm contextual rewriting is activiated. Subterm  contextual  rewriting  subsumes  local
           contextual  rewriting.   If  set  to  4  in  addition of the rewriting rules of 3, subterm contextual
           rewriting also tests for negative literal elimination.  Default is 0.

       -RBRew
           Enables/disables the reduction rule Backward Rewriting.  Same values and meaning as for  flag  -RFRew
           but used in backward direction.  Default is 0.

       -RFMRR
           Enables/disables the reduction rule Forward Matching Replacement Resolution.  Default is 0.

       -RBMRR
           Enables/disables the reduction rule Backward Matching Replacement Resolution.  Default is 0.

       -RObv
           Enables/disables the reduction rule Obvious Reduction.  Default is 0.

       -RUnC
           Enables/disables the reduction rule Unit Conflict.  Default is 0.

       -RTer
           Enables/disables  the  terminator by setting the maximal number of non-unit clauses to be used during
           the search.  Default is 0.

       -RTaut
           Enables/disables the reduction rule Tautology Deletion. If set to 1, only syntactic  tautologies  are
           detected and deleted. If set to 2, additionally semantic tautologies are removed.  Default is 0.

       -RSST
           Enables/disables the reduction rule Static Soft Typing.  Default is 0.

       -RSSi
           Enables/disables the reduction rule Sort Simplification.  Default is 0.

       -RFSub
           Enables/disables the reduction rule Forward Subsumption Deletion.  Default is 0.

       -RBSub
           Enables/disables the reduction rule Backward Subsumption Deletion.  Default is 0.

       -RAED
           Enables/disables  the  reduction  rule  Assignment  Equation  Deletion.  This rule removes particular
           occurrences of equations from clauses.  If set to 1, the reduction is guaranteed to be sound.  If set
           to 2, the reduction is only sound if any potential model of the considered problem has a  non-trivial
           domain.  Default is 0.

       -RCon
           Enables/disables the reduction rule Condensation.  Default is 0.

       -TDfg2OtterOptions
           Enables/disables  the inclusion of an Otter options header. This option only applies to dfg2otter. If
           set to 1 it includes a setting that makes Otter nearly complete. If set to 2 it activates auto  modus
           and if set to 3 it activates the auto2 modus.  Default is 0.

       -EML
           A  special EML flag for modal logic or description logic formulae.  Never needs to be set explicitly.
           Is set during parsing.

       -EMLAuto
           Intended for EML Autonomous mode, as yet not functional.  Default is 0.

       -EMLTranslation
           Determines the translation method used for modal logic or description logic formulae.  If set  to  0,
           the  standard  relational  translation  method (which is determined by the usual Kripke semantics) is
           used.  If set to 1, the functional translation method is used.  If set to 2, the optimised functional
           translation method is used.  If set  to  3,  the  semi-functional  translation  method  is  used.   A
           variation  of  the  optimised  functional translation method is used, when the following settings are
           specified: -EMLTranslation=2 -EMLFuncNary=1.  The translation will be in terms  of  n-ary  predicates
           instead  of  unary  predicates  and  paths.   In  the  current implementation the standard relational
           translation method is most general. Some restrictions apply to  the  other  methods.  The  functional
           translation  method  and  semi-functional translation methods are available only for the basic multi-
           modal logic K(m)  possibly  with  serial  (total)  modalities  (-EMLTheory=1),  plus  nominals  (ABox
           statements),  terminological  axioms  and  general  inclusion  and  equivalence axioms. The optimised
           functional translation methods are implemented  only  for  K(m),  possibly  with  serial  modalities.
           Default is 0.

       -EML2Rel
           If  set,  propositional/Boolean-type  formulae  are  converted to relational formulae before they are
           translated to first-order logic.  Default is 0.

       -EMLTheory
           Determines which background theory is assumed.  If set to 0, the background theory is empty.  If  set
           to  1,  then seriality (the background theory for KD) is added for all modalities.  If set to 2, then
           reflexivity (the background theory for KT) is added for all modalities.  If set to 3,  then  symmetry
           (the  background  theory  for  KB)  is added for all modalities.  If set to 4, then transitivity (the
           background theory for K4) is added for  all  modalities.   If  set  to  5,  then  Euclideanness  (the
           background  theory  for  K5)  is  added  for  all  modalities.   If  set  to 6, then transitivity and
           Euclideanness (the background theory for S4) is  added  for  all  modalities.   If  set  to  7,  then
           reflexivity,  transitivity  and  Euclideanness  (the  background  theory  for  S5)  is  added for all
           modalities.  Default is 0.

       -EMLFuncNdeQ
           If set, diamond formulae are translated according to tr(dia(phi),s) = nde(s) /\  exists  x  tr(phi,[s
           x])  (a  nde  / quantifier formula), otherwise the translation is in accordance with tr(dia(phi),s) =
           exists x nde(s) /\ tr(phi,[s x]) (a quantifier / nde formula).  The transltion for  box  formulae  is
           defined  dually.   Setting  this  flag  is  only  meaningful when the flag for the functional or semi
           functional translation method is set.  Default is 1.

       -EMLFuncNary
           If set, the functional translation into fluted logic is used.  This means n-ary predicate symbols are
           used instead of unary predicate symbols and paths.  Setting this flag is only meaningful for  testing
           local satisfiability/validity in multi-modal K.  Default is 0.

       -EMLFFSorts
           If set, sorts for terms are used.  Default is 0.

       -EMLElimComp
           If set, try to eliminate relational composition in modal parameters.  Default is 0.

       -EMLPTrans
           If set, the EML to first-order logic translation is documented.  Default is 0.

       -TPTP
           If set, SPASS expects an input file in TPTP syntax.  Default is 0.

       -rf If set, SPASS deletes the input file before termination.  Default is 0.

EXAMPLES

       To run SPASS on a single file without options:

               SPASS  I<filename>

       To disable all SPASS output except for the final result:

               SPASS  -PGiven=0 -PProblem=0 I<filename>

NOTES

       You can also specify options for SPASS in the input problem.  In the DFG syntax, you would use

               list_of_settings(SPASS).
               {*
                 set_flag(DocProof,1).
               *}
               end_of_list.

       to set the DocProof flag.

       There are three types of options you can set in the input:

       set_flag(<flag>,<value>).
           Sets a flag to a value. Valid flags and values are described in the OPTIONS section.

       set_precedence(<comma-separated list of function and/or predicate symbols>).
           Sets the precedence for the listed symbols. The precedence is decreasing from left to right, i.e. the
           leftmost symbol has the highest precedence.

           Every entry in the list has the form

                   SYMBOL | (SYMBOL, WEIGHT [, {l, r, m}])

           You  can use the second form to assign weights to symbols (for KBO) or a status (for RPOS). Status is
           either @t{l} for left-to-right, @t{m} for multiset, or @t{r} for right-to-left. Weight is given as an
           integer.

       set_DomPred(<comma-separated list of predicate symbols>).
           Listed predicate (DomPred for dominant predicate)  symbols  are  first  ordered  according  to  their
           precedence,  not  according  to their argument lists. Only in case of equal predicates, the arguments
           are examined. For example, if we add the option

                   set_DomPred(P).

           then in the clause

                    -> R(f(x,y),a), P(x,a).

           the atom P(x,a) is strictly maximal.  Predicates  listed  by  the  set_DomPred  option  are  compared
           according to the precedence.

       set_selection(<comma-separated list of predicate symbols>).
           Sets the selection list that can be employed by the Select flag (see above).

       set_ClauseFormulaRelation(<comma separated list auf tuples (<clause number>, sequence of axiom name
       strings)).
           This list is in particular set by FLOTTER and enables SPASS for an eventually found proof to show the
           relation  between  the  clauses  used  in  the proof and the input formulas.  If combined with option
           DocProof, then there needs to be an entry for every clause number.  Otherwise an error is reported.

                   set_ClauseFormulaRelation((1,ax2),(2,ax1),(3,ax3,ax1)).

SEE ALSO

       checkstat(1), filestat(1), pcs(1), pgen(1), rescmp(1),  tpform(1),  tpget(1),  deprose(1),  dfg2otter(1),
       dfg2otterpl(1), dfg2dfg(1)

AUTHORS

       Contact : spass@mpi-inf.mpg.de

perl v5.10.0                                       2010-02-23                                           SPASS(1)