Class

at.logic.gapt.provers.prover9.commands

Prover9InitCommand

Related Doc: package commands

Permalink

case class Prover9InitCommand(clauses: Iterable[HOLSequent]) extends SetSequentsCommand[OccClause] with Logger with Product with Serializable

Should translate prover9 justifications into a robinson resolution proof. The justifications are:

Clause Justifications After the initial stage of the output, each clause in the file has an integer identifier (ID) and a justification that may refer to IDs of other clauses. A justification is a list consisting of one primary step and some number of secondary steps. Most primary steps are inference rules applied to given clauses, and most secondary steps consist of simplification, rewriting, or orienting equalities.

Many of the types of step refer to positions of literals or terms in the parent clauses. Literals are identified by the characters 'a' (first literal), 'b' (second literal), etc. Terms are identified by the literal identifier followed by a sequence of integers giving the position of the term within the literal. For example, the position 'c,1,3,2' means third literal, first argument, third argument, second argument. Negation signs on literals are not included in the sequence.

Primary Steps.

assumption -- input formula. clausify -- from CNF translation of a non-clausal assumption. goal -- input formula. deny -- from CNF translation of the negation of a goal. resolve(59,b,47,c) -- resolve the second literal of clause 59 with the third literal of clause 47. hyper(59, b,47,a, c,38,a) -- hyperresolution; interpret the list as a clause ID followed by a sequence of triples, <literal,clause-ID,literal> the inference is presented as a sequence of binary resolution steps. In the example shown, start with clause 59; then resolve literal b with clause 47 on literal a; with the result of the first step, resolve literal c with clause 38 on literal a. The special case "xx" means resolution with x=x. ur(39, a,48,a, b,88,a, c,87,a, d,86,a) -- unit-resulting resolution; the list is interpreted as in hyperresolution. para(47(a,1),28(a,1,2,2,1)) -- paramodulate from the clause 47 into clause 28 at the positions shown. copy(59) -- copy clause 59. back_rewite(59) -- copy clause 59. back_unit_del(59) -- copy clause 59. new_symbol(59) -- introduce a new constant (see parameter new_constants). factor(59,b,c) -- factor clause 59 by unifying the second and third literals. xx_res(59,b) -- resolve the second literal of clause 59 with x=x. propositional -- not used in sandard proofs. instantiate -- not used in standard proofs. ivy -- not used in standard proofs.

Secondary Steps (each assumes a working clause, which is either the result of a primary step or a previous secondary step).

rewrite([38(5,R),47(5),59(6,R)]) -- rewriting (demodulation) with equations 38, 47, then 59; the arguments (5), (5), and (6) identify the positions of the rewritten subterms (in an obscure way), and the argument R indicates that the demodulator is used backward (right-to-left). flip(c) -- the third literal is an equality that has been flipped by the term ordering. This does not necessarily mean that the equality is orientable by the primary term ordering, e.g., KBO. merge(d) -- the fourth literal has been removed because it was identical to a preceding literal. unit_del(b,38) -- the second literal has been removed because it was an instance of the negation clause 38 (which is a unit clause). xx(b) -- the second literal has been removed because it was an instance of x!=x.

Linear Supertypes
Serializable, Serializable, Product, Equals, Logger, SetSequentsCommand[OccClause], DataCommand[OccClause], (State, Any) ⇒ Iterable[(State, Any)], Command[OccClause], AnyRef, Any
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Prover9InitCommand
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. Logger
  7. SetSequentsCommand
  8. DataCommand
  9. Function2
  10. Command
  11. AnyRef
  12. Any
Implicitly
  1. by CollectionsHaveToParArray
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Prover9InitCommand(clauses: Iterable[HOLSequent])

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to any2stringadd[Prover9InitCommand] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Prover9InitCommand, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to ArrowAssoc[Prover9InitCommand] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. val INTq_CHAR: Int

    Permalink
  7. def apply(state: State, data: Any): List[(State, Stream[Command[OccClause]])]

    Permalink
    Definition Classes
    Prover9InitCommand → Function2
  8. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  9. val clauses: Iterable[HOLSequent]

    Permalink
    Definition Classes
    Prover9InitCommandSetSequentsCommand
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def curried: (State) ⇒ (Any) ⇒ Iterable[(State, Any)]

    Permalink
    Definition Classes
    Function2
    Annotations
    @unspecialized()
  12. def debug(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  13. def ensuring(cond: (Prover9InitCommand) ⇒ Boolean, msg: ⇒ Any): Prover9InitCommand

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to Ensuring[Prover9InitCommand] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: (Prover9InitCommand) ⇒ Boolean): Prover9InitCommand

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to Ensuring[Prover9InitCommand] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: Boolean, msg: ⇒ Any): Prover9InitCommand

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to Ensuring[Prover9InitCommand] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean): Prover9InitCommand

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to Ensuring[Prover9InitCommand] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. def error(msg: ⇒ String, e: Throwable): Nothing

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  19. def error(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  20. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to StringFormat[Prover9InitCommand] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  22. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  23. def getLiterals(e: Node): Seq[FOLFormula]

    Permalink
  24. def info(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  25. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  26. def isSubsequentOf(c: Command[OccClause]): Boolean

    Permalink
    Definition Classes
    Command
  27. val log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  28. def loggerName: String

    Permalink
    Definition Classes
    Prover9InitCommandLogger
  29. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  30. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  31. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  33. def toParArray: ParArray[T]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to CollectionsHaveToParArray[Prover9InitCommand, T] performed by method CollectionsHaveToParArray in scala.collection.parallel. This conversion will take place only if an implicit value of type (Prover9InitCommand) ⇒ GenTraversableOnce[T] is in scope.
    Definition Classes
    CollectionsHaveToParArray
  34. def toString(): String

    Permalink
    Definition Classes
    Function2 → AnyRef → Any
  35. def trace(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  36. def tupled: ((State, Any)) ⇒ Iterable[(State, Any)]

    Permalink
    Definition Classes
    Function2
    Annotations
    @unspecialized()
  37. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  40. def warn(msg: ⇒ String, e: Throwable): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  41. def warn(msg: ⇒ String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logger
  42. def [B](y: B): (Prover9InitCommand, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Prover9InitCommand to ArrowAssoc[Prover9InitCommand] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Logger

Inherited from SetSequentsCommand[OccClause]

Inherited from DataCommand[OccClause]

Inherited from (State, Any) ⇒ Iterable[(State, Any)]

Inherited from Command[OccClause]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion CollectionsHaveToParArray from Prover9InitCommand to CollectionsHaveToParArray[Prover9InitCommand, T]

Inherited by implicit conversion any2stringadd from Prover9InitCommand to any2stringadd[Prover9InitCommand]

Inherited by implicit conversion StringFormat from Prover9InitCommand to StringFormat[Prover9InitCommand]

Inherited by implicit conversion Ensuring from Prover9InitCommand to Ensuring[Prover9InitCommand]

Inherited by implicit conversion ArrowAssoc from Prover9InitCommand to ArrowAssoc[Prover9InitCommand]

Ungrouped