Packages

package lk

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. lk
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. case class AndLeftRule (subProof: LKProof, aux1: SequentIndex, aux2: SequentIndex) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a conjunction on the left:

            (π)
        A, B, Γ :- Δ
       --------------
       A ∧ B, Γ :- Δ
    

    An LKProof ending with a conjunction on the left:

            (π)
        A, B, Γ :- Δ
       --------------
       A ∧ B, Γ :- Δ
    

    subProof

    The subproof π.

    aux1

    The index of A.

    aux2

    The index of B.

  2. case class AndRightRule (leftSubProof: LKProof, aux1: SequentIndex, rightSubProof: LKProof, aux2: SequentIndex) extends BinaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a conjunction on the right:

       (π1)         (π2)
      Γ :- Δ, A    Π :- Λ, B
    --------------------------
        Γ, Π :- Δ, Λ, A∧B
    

    An LKProof ending with a conjunction on the right:

       (π1)         (π2)
      Γ :- Δ, A    Π :- Λ, B
    --------------------------
        Γ, Π :- Δ, Λ, A∧B
    

    leftSubProof

    The proof π1.

    aux1

    The index of A.

    rightSubProof

    The proof π2

    aux2

    The index of B.

  3. abstract class BinaryLKProof extends LKProof

    An LKProof deriving a sequent from two other sequents:

        (π1)     (π2)
       Γ :- Δ   Γ' :- Δ'
      ------------------
           Π :- Λ
    

    An LKProof deriving a sequent from two other sequents:

        (π1)     (π2)
       Γ :- Δ   Γ' :- Δ'
      ------------------
           Π :- Λ
    

  4. trait CommonRule extends LKProof with ContextRule[HOLFormula, LKProof]
  5. case class ContractionLeftRule (subProof: LKProof, aux1: SequentIndex, aux2: SequentIndex) extends ContractionRule with Product with Serializable

    An LKProof ending with a left contraction:

            (π)
        A, A, Γ :- Δ
       --------------
         A, Γ :- Δ
    

    An LKProof ending with a left contraction:

            (π)
        A, A, Γ :- Δ
       --------------
         A, Γ :- Δ
    

    subProof

    The subproof π.

    aux1

    The index of one occurrence of A.

    aux2

    The index of the other occurrence of A.

  6. case class ContractionRightRule (subProof: LKProof, aux1: SequentIndex, aux2: SequentIndex) extends ContractionRule with Product with Serializable

    An LKProof ending with a right contraction:

            (π)
        Γ :- Δ, A, A
       --------------
         Γ :- Δ, A
    

    An LKProof ending with a right contraction:

            (π)
        Γ :- Δ, A, A
       --------------
         Γ :- Δ, A
    

    subProof

    The subproof π.

    aux1

    The index of one occurrence of A.

    aux2

    The index of the other occurrence of A.

  7. abstract class ContractionRule extends UnaryLKProof with CommonRule
  8. class ConvenienceConstructor extends AnyRef

    Class for reducing boilerplate code in LK companion objects.

  9. case class CutRule (leftSubProof: LKProof, aux1: SequentIndex, rightSubProof: LKProof, aux2: SequentIndex) extends BinaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a cut:

         (π1)         (π2)
       Γ :- Δ, A   A, Π :- Λ
      ------------------------
           Γ, Π :- Δ, Λ
    

    An LKProof ending with a cut:

         (π1)         (π2)
       Γ :- Δ, A   A, Π :- Λ
      ------------------------
           Γ, Π :- Δ, Λ
    

    leftSubProof

    The proof π1.

    aux1

    The index of A in π1.

    rightSubProof

    The proof π2.

    aux2

    The index of A in π2.

  10. case class DefinitionLeftRule (subProof: LKProof, aux: SequentIndex, definition: Definition, replacementContext: Abs) extends DefinitionRule with Product with Serializable

    An LKProof ending with a definition on the left:

    An LKProof ending with a definition on the left:

          (π)
       A[φ], Γ :- Δ
      -----------d:l
       A[c], Γ :- Δ
    

    subProof

    The proof π.

    aux

    The index of A in the antecedent.

    definition

    The definition c := φ.

    replacementContext

    A term λx.A[x] that designates the positions for the definition.

  11. case class DefinitionRightRule (subProof: LKProof, aux: SequentIndex, definition: Definition, replacementContext: Abs) extends DefinitionRule with Product with Serializable

    An LKProof ending with a definition on the right:

    An LKProof ending with a definition on the right:

          (π)
       Γ :- Δ, A[φ]
      -----------d:l
       Γ :- Δ, A[c]
    

    subProof

    The proof π.

    aux

    The index of A in the succedent.

    definition

    The definition c := φ.

    replacementContext

    A term λx.A[x] that designates the positions for the definition.

  12. abstract class DefinitionRule extends UnaryLKProof with CommonRule
  13. trait Eigenvariable extends AnyRef

    Use this trait for rules that use eigenvariables.

  14. case class EqualityLeftRule (subProof: LKProof, eq: SequentIndex, aux: SequentIndex, replacementContext: Abs) extends EqualityRule with Product with Serializable

    An LKProof ending with a left equality rule.

    An LKProof ending with a left equality rule. There are two possible cases according to which direction the rule is applied in:

               (π)                            (π)
       A[s], s = t, Γ :- Δ            A[t], s = t, Γ :- Δ
      ---------------------eq:l      ---------------------eq:l
       A[t], s = t, Γ :- Δ            A[s], s = t, Γ :- Δ
    
    

    In either case, the rule only replaces term occurrences at parallel positions. These positions are given by the positions argument.

    subProof

    The subproof π.

    eq

    The index of s = t.

    aux

    The index of the formula in which the replacement is to be performed.

    replacementContext

    A term λx.A[x] that designates the positions to be replaced.

  15. case class EqualityRightRule (subProof: LKProof, eq: SequentIndex, aux: SequentIndex, replacementContext: Abs) extends EqualityRule with Product with Serializable

    An LKProof ending with a right equality rule.

    An LKProof ending with a right equality rule. There are two possible cases according to which direction the rule is applied in:

               (π)                            (π)
       s = t, Γ :- Δ, A[s]            s = t, Γ :- Δ, A[t]
      ---------------------eq:r      ---------------------eq:r
       s = t, Γ :- Δ, A[t]            s = t, Γ :- Δ, A[s]
    

    In either case, the rule only replaces term occurrences at parallel positions. These positions are given by the positions argument.

    subProof

    The subproof π.

    eq

    The index of s = t.

    aux

    The index of the formula in which the replacement is to be performed.

    replacementContext

    A term λx.A[x] that designates the positions to be replaced.

  16. abstract class EqualityRule extends UnaryLKProof with CommonRule

    Abstract class that performs most of the construction of left and right equality rules.

  17. case class ExistsLeftRule (subProof: LKProof, aux: SequentIndex, eigenVariable: Var, quantifiedVariable: Var) extends UnaryLKProof with CommonRule with Eigenvariable with Product with Serializable

    An LKProof ending with an existential quantifier on the left:

              (π)
         A[x\α], Γ :- Δ
        ---------------∀:r
          ∃x.A Γ :- Δ
    
    This rule is only applicable if the eigenvariable condition is satisfied: α must not occur freely in Γ :- Δ.

    An LKProof ending with an existential quantifier on the left:

              (π)
         A[x\α], Γ :- Δ
        ---------------∀:r
          ∃x.A Γ :- Δ
    
    This rule is only applicable if the eigenvariable condition is satisfied: α must not occur freely in Γ :- Δ.

    subProof

    The proof π.

    aux

    The index of A[x\α].

    eigenVariable

    The variable α.

    quantifiedVariable

    The variable x.

  18. case class ExistsRightRule (subProof: LKProof, aux: SequentIndex, A: HOLFormula, term: LambdaExpression, v: Var) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with an existential quantifier on the right:

               (π)
         Γ :- Δ, A[x\t]
        ----------------∃:r
          Γ :- Δ, ∃x.A
    

    An LKProof ending with an existential quantifier on the right:

               (π)
         Γ :- Δ, A[x\t]
        ----------------∃:r
          Γ :- Δ, ∃x.A
    

    subProof

    The proof π.

    aux

    The index of A[x\t].

    A

    The formula A.

    term

    The term t.

    v

    The variable x.

  19. case class ExistsSkLeftRule (subProof: LKProof, aux: SequentIndex, mainFormula: HOLFormula, skolemTerm: LambdaExpression, skolemDef: LambdaExpression) extends UnaryLKProof with SkolemQuantifierRule with Product with Serializable

    An LKProof ending with an existential quantifier on the left:

              (π)
         A[x\s(...)], Γ :- Δ
        --------------- ∃sk:l
          ∃x.A Γ :- Δ
    
    This rule requires a Skolem function s(...)

    An LKProof ending with an existential quantifier on the left:

              (π)
         A[x\s(...)], Γ :- Δ
        --------------- ∃sk:l
          ∃x.A Γ :- Δ
    
    This rule requires a Skolem function s(...)

    subProof

    The proof π.

    aux

    The index of A[x\s(...)].

    mainFormula

    The main formula A[x\s(...)]

    skolemTerm

    The Skolem term s(...)

    skolemDef

    The Skolem definition, see at.logic.gapt.expr.hol.SkolemFunctions

  20. case class ForallLeftRule (subProof: LKProof, aux: SequentIndex, A: HOLFormula, term: LambdaExpression, v: Var) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a universal quantifier on the left:

               (π)
         A[x\t], Γ :- Δ
        ----------------∀:l
          ∀x.A, Γ :- Δ
    

    An LKProof ending with a universal quantifier on the left:

               (π)
         A[x\t], Γ :- Δ
        ----------------∀:l
          ∀x.A, Γ :- Δ
    

    subProof

    The proof π.

    aux

    The index of A[x\t].

    A

    The formula A.

    term

    The term t.

    v

    The variable x.

  21. case class ForallRightRule (subProof: LKProof, aux: SequentIndex, eigenVariable: Var, quantifiedVariable: Var) extends UnaryLKProof with CommonRule with Eigenvariable with Product with Serializable

    An LKProof ending with a universal quantifier on the right:

              (π)
         Γ :- Δ, A[x\α]
        ---------------∀:r
         Γ :- Δ, ∀x.A
    
    This rule is only applicable if the eigenvariable condition is satisfied: α must not occur freely in Γ :- Δ.

    An LKProof ending with a universal quantifier on the right:

              (π)
         Γ :- Δ, A[x\α]
        ---------------∀:r
         Γ :- Δ, ∀x.A
    
    This rule is only applicable if the eigenvariable condition is satisfied: α must not occur freely in Γ :- Δ.

    subProof

    The proof π.

    aux

    The index of A[x\α].

    eigenVariable

    The variable α.

    quantifiedVariable

    The variable x.

  22. case class ForallSkRightRule (subProof: LKProof, aux: SequentIndex, mainFormula: HOLFormula, skolemTerm: LambdaExpression, skolemDef: LambdaExpression) extends UnaryLKProof with SkolemQuantifierRule with Product with Serializable

    An LKProof ending with a universal quantifier on the right:

              (π)
         Γ :- Δ, A[x\s(...)]
        ---------------∀:r
         Γ :- Δ, ∀x.A
    
    This rule requires a Skolem function s(...)

    An LKProof ending with a universal quantifier on the right:

              (π)
         Γ :- Δ, A[x\s(...)]
        ---------------∀:r
         Γ :- Δ, ∀x.A
    
    This rule requires a Skolem function s(...)

    subProof

    The proof π.

    aux

    The index of A[x\α].

    mainFormula

    The main formula A[x\s(...)]

    skolemTerm

    The Skolem term s(...)

    skolemDef

    The Skolem definition, see at.logic.gapt.expr.hol.SkolemFunctions

  23. case class ImpLeftRule (leftSubProof: LKProof, aux1: SequentIndex, rightSubProof: LKProof, aux2: SequentIndex) extends BinaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with an implication on the left:

        (π1)         (π2)
      Γ :- Δ, A    B, Π :- Λ
    --------------------------
        A→B, Γ, Π :- Δ, Λ
    

    An LKProof ending with an implication on the left:

        (π1)         (π2)
      Γ :- Δ, A    B, Π :- Λ
    --------------------------
        A→B, Γ, Π :- Δ, Λ
    

    leftSubProof

    The proof π1.

    aux1

    The index of A.

    rightSubProof

    The proof π2

    aux2

    The index of B.

  24. case class ImpRightRule (subProof: LKProof, aux1: SequentIndex, aux2: SequentIndex) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with an implication on the right:

            (π)
        A, Γ :- Δ, B
       --------------
        Γ :- Δ, A → B
    

    An LKProof ending with an implication on the right:

            (π)
        A, Γ :- Δ, B
       --------------
        Γ :- Δ, A → B
    

    subProof

    The subproof π.

    aux1

    The index of A.

    aux2

    The index of B.

  25. case class InductionCase (proof: LKProof, constructor: Const, hypotheses: Seq[SequentIndex], eigenVars: Seq[Var], conclusion: SequentIndex) extends Product with Serializable

    Proof that a given data type constructor c preserves a formula F:

    Proof that a given data type constructor c preserves a formula F:

                                     (π)
    F(x,,1,,), F(x,,2,,), ..., F(x,,n,,), Γ :- Δ, F(c(x,,1,,,...,x,,n,,,y,,1,,,...,y,,n,,))
    

    The variables xi and yi are eigenvariables; xi are the eigenvariables of the same type as the inductive data type, yi are the other arguments of the constructor c. They can come in any order in the constructor.

    proof

    The LKProof ending in the sequent of this case.

    constructor

    The constructor c of the inductive data type that we're considering.

    hypotheses

    Indices of F(x1), ..., F(xn)

    eigenVars

    The eigenvariables of this case: x1, ..., xn, y1, ..., yn (these need to correspond to the order in c)

    conclusion

    Index of F(c(x1,...,xn,y1,...,yn))

  26. case class InductionRule (cases: Seq[InductionCase], formula: Abs, term: LambdaExpression) extends LKProof with CommonRule with Product with Serializable

    An LKProof ending with an induction rule:

      (π,,1,,)   (π,,2,,)           (π,,n,,)
    case 1      case 2     ...     case n
    -------------------------------------(ind)
    Γ :- Δ, F(t: indTy)
    

    An LKProof ending with an induction rule:

      (π,,1,,)   (π,,2,,)           (π,,n,,)
    case 1      case 2     ...     case n
    -------------------------------------(ind)
    Γ :- Δ, F(t: indTy)
    

    This induction rule can handle inductive data types. The cases are proofs that the various type constructors preserve the formula we want to prove. They are provided via the InductionCase class.

    cases

    A sequence of proofs showing that each type constructor preserves the validity of the main formula.

    formula

    The formula we want to prove via induction.

  27. abstract class InitialSequent extends LKProof

    An LKProof consisting of a single sequent:

        --------ax
         Γ :- Δ
    

    An LKProof consisting of a single sequent:

        --------ax
         Γ :- Δ
    

  28. class InterpolationException extends Exception
  29. abstract class LKProof extends SequentProof[HOLFormula, LKProof]
  30. class LKProofReplacer extends LKVisitor[Unit]
  31. class LKProofSubstitutable extends Substitutable[Substitution, LKProof, LKProof]

    Class that describes how LKProofs can be substituted.

  32. class LKRuleCreationException extends Exception
  33. trait LKVisitor [T] extends AnyRef

    Implementation of the visitor pattern for at.logic.gapt.proofs.lk.LKProof.

    Implementation of the visitor pattern for at.logic.gapt.proofs.lk.LKProof. Proof transformations can implement this trait to reduce boilerplate code.

    T

    Type of additional arguments that may be used in the transformation.

  34. case class LogicalAxiom (A: HOLFormula) extends InitialSequent with Product with Serializable

    An LKProof consisting of a logical axiom:

       --------ax
        A :- A
    
    with A atomic.

    An LKProof consisting of a logical axiom:

       --------ax
        A :- A
    
    with A atomic.

    A

    The atom A.

  35. case class NegLeftRule (subProof: LKProof, aux: SequentIndex) extends UnaryLKProof with CommonRule with Product with Serializable

    Index of the left cut formula or the formula itself.

    Index of the left cut formula or the formula itself. An LKProof ending with a negation on the left:

          (π)
       Γ :- Δ, A
      -----------¬:l
      ¬A, Γ :- Δ
    

    subProof

    The proof π.

    aux

    The index of A in the succedent.

  36. case class NegRightRule (subProof: LKProof, aux: SequentIndex) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a negation on the right:Index of the left cut formula or the formula itself.

    An LKProof ending with a negation on the right:Index of the left cut formula or the formula itself.

          (π)
       A, Γ :- Δ
      -----------¬:r
      Γ :- Δ, ¬A
    

    subProof

    The proof π.

    aux

    The index of A in the antecedent.

  37. case class OrLeftRule (leftSubProof: LKProof, aux1: SequentIndex, rightSubProof: LKProof, aux2: SequentIndex) extends BinaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a disjunction on the left:

        (π1)         (π2)
      A, Γ :- Δ    B, Π :- Λ
    --------------------------
        A∨B, Γ, Π :- Δ, Λ
    

    An LKProof ending with a disjunction on the left:

        (π1)         (π2)
      A, Γ :- Δ    B, Π :- Λ
    --------------------------
        A∨B, Γ, Π :- Δ, Λ
    

    leftSubProof

    The proof π1.

    aux1

    The index of A.

    rightSubProof

    The proof π2

    aux2

    The index of B.

  38. case class OrRightRule (subProof: LKProof, aux1: SequentIndex, aux2: SequentIndex) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a disjunction on the right:

            (π)
        Γ :- Δ, A, B
       --------------
        Γ :- Δ, A ∨ B
    

    An LKProof ending with a disjunction on the right:

            (π)
        Γ :- Δ, A, B
       --------------
        Γ :- Δ, A ∨ B
    

    subProof

    The subproof π.

    aux1

    The index of A.

    aux2

    The index of B.

  39. class ProofBuilder [Proof] extends AnyRef

    Class for convenient construction of proofs.

    Class for convenient construction of proofs. Allows you to write proofs post-order style (à la Bussproofs). Example:

    (ProofBuilder
    c LogicalAxiom(A)
    c LogicalAxiom(B)
    u (WeakeningLeftRule(_, C))
    b (AndRightRule(_,_, And(A, B))
    qed)
    
    The constructor is private, so the only way to instantiate this class is by using the ProofBuilder object. This means that the stack will always be empty in the beginning.

  40. class ReductiveCutElimination extends AnyRef
  41. case class ReflexivityAxiom (s: LambdaExpression) extends InitialSequent with Product with Serializable

    An LKProof consisting of a reflexivity axiom:

       ------------ax
         :- s = s
    
    with s a term.

    An LKProof consisting of a reflexivity axiom:

       ------------ax
         :- s = s
    
    with s a term.

    s

    The term s.

  42. trait SkolemQuantifierRule extends UnaryLKProof with CommonRule
  43. trait SolveUtils extends AnyRef
  44. case class TheoryAxiom (conclusion: Sequent[HOLAtom]) extends InitialSequent with Product with Serializable
  45. abstract class UnaryLKProof extends LKProof

    An LKProof deriving a sequent from another sequent:

           (π)
         Γ :- Δ
       ----------
        Γ' :- Δ'
    

    An LKProof deriving a sequent from another sequent:

           (π)
         Γ :- Δ
       ----------
        Γ' :- Δ'
    

  46. case class WeakeningLeftRule (subProof: LKProof, formula: HOLFormula) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a left weakening:

           (π)
          Γ :- Δ
        ---------w:l
        A, Γ :- Δ
    

    An LKProof ending with a left weakening:

           (π)
          Γ :- Δ
        ---------w:l
        A, Γ :- Δ
    

    subProof

    The subproof π.

    formula

    The formula A.

  47. case class WeakeningRightRule (subProof: LKProof, formula: HOLFormula) extends UnaryLKProof with CommonRule with Product with Serializable

    An LKProof ending with a right weakening:

           (π)
          Γ :- Δ
        ---------w:r
        Γ :- Δ, A
    

    An LKProof ending with a right weakening:

           (π)
          Γ :- Δ
        ---------w:r
        Γ :- Δ, A
    

    subProof

    The subproof π.

    formula

    The formula A.

  48. class eliminateDefinitions extends Function[LambdaExpression, LambdaExpression]

    Implements definition elimination.

  49. class regularize extends LKVisitor[Unit]
  50. class solvePropositional extends SolveUtils

Value Members

  1. implicit def LeftSequentIndex(i: SequentIndex): Either[SequentIndex, HOLFormula]
  2. implicit def RightFormula(f: HOLFormula): Either[SequentIndex, HOLFormula]
  3. object AndLeftMacroRule extends ConvenienceConstructor
  4. object AndLeftRule extends ConvenienceConstructor with Serializable
  5. object AndRightRule extends ConvenienceConstructor with Serializable
  6. object AtomicExpansion
  7. object Axiom

    Convenience object for constructing Axioms.

  8. object BinaryLKProof
  9. object BottomAxiom extends InitialSequent with Product with Serializable

    An LKProof introducing ⊥ on the left:

          --------⊥:l
            ⊥ :-
    

    An LKProof introducing ⊥ on the left:

          --------⊥:l
            ⊥ :-
    

  10. object ContractionLeftMacroRule

    This macro rule simulates a series of contractions in the antecedent.

  11. object ContractionLeftRule extends ConvenienceConstructor with Serializable
  12. object ContractionMacroRule extends ConvenienceConstructor

    This macro rule simulates a series of contractions in both cedents.

  13. object ContractionRightMacroRule

    This macro rule simulates a series of contractions in the succedent.

  14. object ContractionRightRule extends ConvenienceConstructor with Serializable
  15. object CutRule extends ConvenienceConstructor with Serializable
  16. object DefinitionLeftRule extends ConvenienceConstructor with Serializable
  17. object DefinitionRightRule extends ConvenienceConstructor with Serializable
  18. object DefinitionRule
  19. object Eigenvariable
  20. object EqualityLeftMacroRule extends ConvenienceConstructor
  21. object EqualityLeftRule extends ConvenienceConstructor with Serializable
  22. object EqualityRightMacroRule extends ConvenienceConstructor
  23. object EqualityRightRule extends ConvenienceConstructor with Serializable
  24. object EquationalLKProver extends OneShotProver
  25. object ExchangeLeftMacroRule

    Move a formula to the beginning of the antecedent, where the main formula is customarily placed.

    Move a formula to the beginning of the antecedent, where the main formula is customarily placed.

             (π)
        Γ, A, Γ' :- Δ
       --------------
        A, Γ, Γ' :- Δ
    

  26. object ExchangeRightMacroRule

    Move a formula to the end of the succedent, where the main formula is customarily placed.

    Move a formula to the end of the succedent, where the main formula is customarily placed.

             (π)
        Γ :- Δ, A, Δ'
       --------------
        Γ :- Δ, Δ', A
    

  27. object ExistsLeftBlock
  28. object ExistsLeftRule extends ConvenienceConstructor with Serializable
  29. object ExistsRightBlock
  30. object ExistsRightRule extends ConvenienceConstructor with Serializable
  31. object ExistsSkLeftRule extends ConvenienceConstructor with Serializable
  32. object ExtractInterpolant
  33. object FOTheoryMacroRule
  34. object ForallLeftBlock
  35. object ForallLeftRule extends ConvenienceConstructor with Serializable
  36. object ForallRightBlock
  37. object ForallRightRule extends ConvenienceConstructor with Serializable
  38. object ForallSkRightRule extends ConvenienceConstructor with Serializable
  39. object ImpLeftRule extends ConvenienceConstructor with Serializable
  40. object ImpRightMacroRule extends ConvenienceConstructor
  41. object ImpRightRule extends ConvenienceConstructor with Serializable
  42. object InitialSequent
  43. object Interpolate
  44. implicit object LKProofSubstitutableDefault extends LKProofSubstitutable
  45. object LKProver extends OneShotProver
  46. object LKToExpansionProof
  47. object NaturalNumberInductionRule extends ConvenienceConstructor
  48. object NegLeftRule extends ConvenienceConstructor with Serializable
  49. object NegRightRule extends ConvenienceConstructor with Serializable
  50. object OrLeftRule extends ConvenienceConstructor with Serializable
  51. object OrRightMacroRule extends ConvenienceConstructor
  52. object OrRightRule extends ConvenienceConstructor with Serializable
  53. object ParamodulationLeftRule extends ConvenienceConstructor
  54. object ParamodulationRightRule extends ConvenienceConstructor
  55. object ProofBuilder extends ProofBuilder[LKProof]
  56. object ReductiveCutElimination

    This object implements a version of Gentzen's cut-elimination proof for our sequent calculus LK.

    This object implements a version of Gentzen's cut-elimination proof for our sequent calculus LK. For details, please refer to the documentation of the apply methods.

  57. object ResolutionProofBuilder extends ProofBuilder[ResolutionProof]
  58. object StrongQuantifierRule
  59. object TopAxiom extends InitialSequent with Product with Serializable

    An LKProof introducing ⊤ on the right:

          --------⊤:r
            :- ⊤
    

    An LKProof introducing ⊤ on the right:

          --------⊤:r
            :- ⊤
    

  60. object TransRule
  61. object UnaryLKProof
  62. object WeakQuantifierBlock
  63. object WeakQuantifierRule
  64. object WeakeningContractionMacroRule extends ConvenienceConstructor

    This macro rule simulates multiple weakenings and contractions in both cedents.

  65. object WeakeningLeftMacroRule

    This macro rule simulates a series of weakenings in the antecedent.

  66. object WeakeningMacroRule extends ConvenienceConstructor

    This macro rule simulates a series of weakenings in both cedents.

  67. object WeakeningRightMacroRule

    This macro rule simulates a series of weakenings in the succedent.

  68. object cleanCuts extends LKVisitor[Unit]

    Algorithm that removes some unnecessary cuts.

    Algorithm that removes some unnecessary cuts. At the moment it only removes cuts where one of the premises is a logical axiom.

  69. object cleanStructuralRules
  70. object consoleString
  71. object containsEqualityReasoning
  72. object cutFormulas
  73. object cutsNumber
  74. object eliminateDefinitions

    Eliminates definitions from a lambda expression, HOL formula, or LK proof.

  75. object extractRecSchem
  76. object freeVariablesLK
  77. object groundFreeVarsLK
  78. object inductionsNumber
  79. object isRegular
  80. implicit object lkProofReplaceable extends ClosedUnderReplacement[LKProof]
  81. object makeInductionExplicit extends LKVisitor[Unit]
  82. object makeTheoryAxiomsExplicit extends LKVisitor[Seq[HOLFormula]]

    Given a list of formulas Π, this transforms a proof π of Σ :- Δ into a proof π' of Π, Σ :- Δ.

    Given a list of formulas Π, this transforms a proof π of Σ :- Δ into a proof π' of Π, Σ :- Δ.

    It replaces theory axioms on sequents S that are subsumed by Π with propositional proofs of Π, S.

  83. object moveStrongQuantifierRulesDown

    Modifies an LK proof to introduce strong quantifiers as soon as possible.

  84. object printProofStats
  85. object proofFromInstances

    Computes a proof of F from a proof of some instances of F

  86. object quantRulesNumber
  87. object regularize

    Proof regularization

  88. object rulesNumber
  89. object skolemize
  90. object skolemizeInferences
  91. object solvePropositional extends solvePropositional
  92. object solveQuasiPropositional extends solvePropositional
  93. object strongQuantRulesNumber
  94. object weakQuantRulesNumber

Inherited from AnyRef

Inherited from Any

Ungrouped