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)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  15. def pick(es: HOLSequent, aux: SequentIndex, candidates: Seq[zipIndex]): SequentIndex

    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

    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])

    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]

    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]

    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]

    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
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped