Object

at.logic.gapt.proofs.ceres

Pickrule

Related Doc: package ceres

Permalink

object Pickrule

The pick* functions generalize the convenience constructors of the LK rules which allow to specify arguments by a formula instead of an index. Here we lookup fitting matches for the auxiliary formulas of each LK rule. In the case of LK, fitting is defined as equality of the formula. In the case of LKsk, it is equality of formulas and skolem symbols. An algorithm using pickrule is therefore easier to transfer to LKsk.

Source
Utils.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Pickrule
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type zipIndex = (HOLFormula, SequentIndex)

    Permalink

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  15. def pick(es: HOLSequent, aux: SequentIndex, candidates: Seq[zipIndex]): SequentIndex

    Permalink

    picks one occurrences from the candidates s.t.

    picks one occurrences from the candidates s.t. formulas (if it exists) are identical.

    returns

    the index of a fitting formulas for aux

  16. def pick(p: LKProof, aux: SequentIndex, candidates: Seq[zipIndex]): SequentIndex

    Permalink

    picks one occurrences from the candidates s.t.

    picks one occurrences from the candidates s.t. formulas (if it exists) are identical

    p

    the proof which is used as template

    aux

    an index into p.endSequent

    candidates

    a list of candidate formulas to pick a match for aux

    returns

    the index of a fitting formulas for aux

  17. def pick1(es: HOLSequent, aux: SequentIndex, candidates: Seq[zipIndex]): (SequentIndex, Seq[zipIndex])

    Permalink

    picks 1 occurrence from the same list s.t.

    picks 1 occurrence from the same list s.t. ac1 != ac2, where formulas and skolem label agree

    returns

    a pair of index and remaining candidates

  18. def pick2(es: HOLSequent, aux1: SequentIndex, aux2: SequentIndex, candidates: Seq[zipIndex]): List[SequentIndex]

    Permalink

    picks 2 occurrences from the same list s.t.

    picks 2 occurrences from the same list s.t. ac1 != ac2, where formulas and skolem label agree

    returns

    a list with the indices of a fitting formulas for aux1 / aux2

  19. def pick2(p: LKProof, aux1: SequentIndex, aux2: SequentIndex, candidates: Seq[zipIndex]): List[SequentIndex]

    Permalink

    picks 2 occurrences from the same list s.t.

    picks 2 occurrences from the same list s.t. ac1 != ac2, where formulas and skolem label agree

    returns

    a list with the indices of a fitting formulas for aux1 / aux2

  20. def pickrule(p: LKProof, old_parents: Seq[LKProof], new_parents: Seq[LKProof], old_aux: List[SequentIndex]): List[SequentIndex]

    Permalink

    For a rule p with parent sequents ps and auxiliary formulas aux, pick a fitting formula for each aux formula in the correct part of the sequent.

    For a rule p with parent sequents ps and auxiliary formulas aux, pick a fitting formula for each aux formula in the correct part of the sequent. E.g. if p is an implication right rule, aux(0) will be picked from the antecedent of ps(0) and aux(1) will be picked from the succedent of ps(0).

    p

    The proof which rule should be simulated, we assume we want to mirror the inference to create a similar proof p'

    old_parents

    The parents of p.

    new_parents

    The intended parents for p'

    old_aux

    The indices of the auxiliary formulas in the parents

    returns

    a list of indices in new_parents where the formulas match old_aux

  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  22. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped