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
- Alphabetic
- By Inheritance
- Pickrule
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type zipIndex = (Formula, SequentIndex)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- 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
- 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
- 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
- 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
- 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
- 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
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
This is the API documentation for GAPT.
The main package is gapt.