Packages

package lk

Source
package.scala
Linear Supertypes
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. case class Attributes(attrs: Map[String, Set[String]]) extends Product with Serializable
  4. abstract class BinaryLKProof extends LKProof

    An LKProof deriving a sequent from two other sequents:

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

  5. trait CommonRule extends LKProof with ContextRule[Formula, LKProof]
  6. 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.

  7. 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.

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

    Class for reducing boilerplate code in LK companion objects.

  10. 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.

  11. case class DefinitionLeftRule(subProof: LKProof, aux: SequentIndex, mainFormula: Formula) extends DefinitionRule with Product with Serializable

    An LKProof ending with a definition on the left.

    An LKProof ending with a definition on the left.

    Introducing the definition c := φ on the left means replacing some occurrences of the expression φ by c in a formula in the antecedent:

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

    NB: LK proofs that contain this rule are not sound by construction, since it allows you to replace any formula by any other formula. The soundness of such proofs can only be established with respect to a Context. Use the check method on gapt.proofs.Context to check whether the constructed proof is sound.

    subProof

    The proof π.

    aux

    The index of A in the antecedent.

    mainFormula

    The formula

  12. case class DefinitionRightRule(subProof: LKProof, aux: SequentIndex, mainFormula: Formula) extends DefinitionRule with Product with Serializable

    An LKProof ending with a definition on the right.

    An LKProof ending with a definition on the right.

    Introducing the definition c := φ on the right means replacing some occurrences of the expression φ by c in a formula in the succedent:

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

    NB: LK proofs that contain this rule are not sound by construction, since it allows you to replace any formula by any other formula. The soundness of such proofs can only be established with respect to a Context. Use the check method on gapt.proofs.Context to check whether the constructed proof is sound.

    subProof

    The proof π.

    aux

    The index of A in the succedent.

    mainFormula

    The formula

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

    Use this trait for rules that use eigenvariables.

  15. 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, Γ :- Δ
    
    

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

    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.

  17. abstract class EqualityRule extends UnaryLKProof with CommonRule

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

  18. 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.

  19. case class ExistsRightRule(subProof: LKProof, aux: SequentIndex, A: Formula, term: Expr, 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.

  20. case class ExistsSkLeftRule(subProof: LKProof, aux: SequentIndex, mainFormula: Formula, skolemTerm: Expr, skolemDef: Expr) 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 gapt.expr.hol.SkolemFunctions

  21. case class ForallLeftRule(subProof: LKProof, aux: SequentIndex, A: Formula, term: Expr, 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.

  22. 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.

  23. case class ForallSkRightRule(subProof: LKProof, aux: SequentIndex, mainFormula: Formula, skolemTerm: Expr, skolemDef: Expr) 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 gapt.expr.hol.SkolemFunctions

  24. 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.

  25. 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.

  26. 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))

  27. case class InductionRule(cases: Seq[InductionCase], formula: Abs, term: Expr) 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.

  28. abstract class InitialSequent extends LKProof

    An LKProof consisting of a single sequent:

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

  29. class InterpolationException extends Exception
  30. class IterativeParallelStrategy extends ReductionStrategy

    Applies the given reduction exhaustively to lowermost redexes.

  31. class IterativeSelectiveStrategy extends ReductionStrategy
  32. abstract class LKProof extends SequentProof[Formula, LKProof]
  33. class LKProofReplacer extends LKVisitor[Unit]
  34. class LKProofSubstitutable extends Substitutable[Substitution, LKProof, LKProof]

    Class that describes how LKProofs can be substituted.

  35. class LKRuleCreationException extends Exception
  36. class LKToNDTranslationException extends Exception
  37. trait LKVisitor[T] extends AnyRef

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

    Implementation of the visitor pattern for 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.

  38. class LeftRankInductionUnfoldingReduction extends CutReduction
  39. case class LogicalAxiom(A: Formula) 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.

  40. class LowerMostRedexReducer extends LKVisitor[Unit] with RedexReducer

    Applies a given reduction to the lowermost redexes.

  41. 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.

  42. 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.

  43. 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.

  44. 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.

  45. class ParallelAtDepthStrategy extends ReductionStrategy
  46. 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.

  47. case class ProofLink(referencedProof: Expr, referencedSequent: Sequent[Formula]) extends InitialSequent with Product with Serializable
  48. trait RedexReducer extends AnyRef

    Describes objects that can apply a reduction to redexes.

  49. trait ReductionStrategy extends AnyRef
  50. class ReductiveCutNormalization extends AnyRef

    This class implements a version of Gentzen's cut-reduction procedure for our sequent calculus LK.

  51. case class ReflexivityAxiom(s: Expr) 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.

  52. trait Selector extends AnyRef
  53. trait SkolemQuantifierRule extends UnaryLKProof with CommonRule
  54. trait SolveUtils extends AnyRef
  55. abstract class UnaryLKProof extends LKProof

    An LKProof deriving a sequent from another sequent:

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

  56. class UnfoldInduction extends AnyRef
  57. class UnfoldInductions extends AnyRef
  58. class UppermostFirstStrategy extends ReductionStrategy

    Applies the given reduction exhaustively to uppermost redexes.

  59. case class WeakeningLeftRule(subProof: LKProof, formula: Formula) 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.

  60. case class WeakeningRightRule(subProof: LKProof, formula: Formula) 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.

  61. class eliminateDefinitions extends Function[Expr, Expr]

    Implements definition elimination.

  62. class regularize extends LKVisitor[Unit]
  63. class solvePropositional extends SolveUtils

Value Members

  1. object AndLeftMacroRule extends ConvenienceConstructor
  2. object AndLeftRule extends ConvenienceConstructor with Serializable
  3. object AndRightRule extends ConvenienceConstructor with Serializable
  4. object ArithmeticInductionToSchema
  5. object AtomicExpansion
  6. object Attributes extends Serializable
  7. object BinaryLKProof
  8. object BottomAxiom extends InitialSequent with Product with Serializable

    An LKProof introducing ⊥ on the left:

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

  9. object ContractionLeftMacroRule

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

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

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

  12. object ContractionRightMacroRule

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

  13. object ContractionRightRule extends ConvenienceConstructor with Serializable
  14. object CreateASchemaVersion extends LKVisitor[MutableContext]
  15. object CutRule extends ConvenienceConstructor with Serializable
  16. object DefinitionLeftRule extends ConvenienceConstructor with Serializable
  17. object DefinitionRightRule extends ConvenienceConstructor with Serializable
  18. object DefinitionRule extends ConvenienceConstructor
  19. object EigenVariablesLK
  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. object IsKSimple
  45. implicit object LKProofSubstitutableDefault extends LKProofSubstitutable
  46. object LKProver extends OneShotProver
  47. object LKToExpansionProof
  48. object LKToND
  49. object NaturalNumberInductionRule extends ConvenienceConstructor
  50. object NegLeftRule extends ConvenienceConstructor with Serializable
  51. object NegRightRule extends ConvenienceConstructor with Serializable
  52. object OrLeftRule extends ConvenienceConstructor with Serializable
  53. object OrRightMacroRule extends ConvenienceConstructor
  54. object OrRightRule extends ConvenienceConstructor with Serializable
  55. object ParamodulationLeftRule extends ConvenienceConstructor
  56. object ParamodulationRightRule extends ConvenienceConstructor
  57. object ProofBuilder extends ProofBuilder[LKProof]
  58. object ProofLink extends Serializable
  59. object ResolutionProofBuilder extends ProofBuilder[ResolutionProof]
  60. object StrongQuantifierRule
  61. object StuckCutReduction
  62. object TopAxiom extends InitialSequent with Product with Serializable

    An LKProof introducing ⊤ on the right:

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

  63. object TransRule
  64. object UnaryLKProof
  65. object WeakQuantifierBlock
  66. object WeakQuantifierRule
  67. object WeakeningContractionMacroRule extends ConvenienceConstructor

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

  68. object WeakeningLeftMacroRule

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

  69. object WeakeningMacroRule extends ConvenienceConstructor

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

  70. object WeakeningRightMacroRule

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

  71. object acnf
  72. object acnfTop
  73. 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.

  74. object cleanStructuralRules
  75. object consoleString
  76. object containsDefinitionRules
  77. object containsEqualityReasoning
  78. object cutFormulas
  79. object cutNormal
  80. object cutsNumber
  81. object eliminateDefinitions

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

  82. object equalityLeftReduction
  83. object equalityRightReduction
  84. object extractInductionGrammar
  85. object extractRecSchem
  86. object folSkolemize
  87. object freeVariablesLK
  88. object groundFreeVarsLK
  89. object inductionEigenvariables
  90. object inductionNormalForm
  91. object inductionsNumber
  92. object instanceProof
  93. object instantiateProof
  94. object introOrCut
  95. object isAcnf
  96. object isAcnfTop
  97. object isAtomicCut
  98. object isCutFree
  99. object isInductionFree
  100. object isMaeharaMG3i

    Checks whether a given proof in LK is in the calculus L'J introduced in [Maehara 1954].

    Checks whether a given proof in LK is in the calculus L'J introduced in [Maehara 1954]. In [Troelstra et al. 2000] this calculus is referred to as m-G3i.

    [Maehara 1954] Maehara Shoji, Eine Darstellung der intuitionistischen Logik in der klassischen, 1954. [Troelstra et al. 2000] Troelstra, Schwichtenberg, Basic Proof Theory, 2000.

  101. object isRegular
  102. implicit object lkProofReplaceable extends ClosedUnderReplacement[LKProof]
  103. object logicalComplexity
  104. object makeInductionExplicit extends LKVisitor[Unit]
  105. object makeTheoryAxiomsExplicit extends LKVisitor[Seq[Formula]]

    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.

  106. object moveStrongQuantifierRulesDown

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

  107. object printProofStats
  108. object proofFromInstances

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

  109. object pushAllWeakeningsToLeaves
  110. object pushEqualityInferencesToLeaves
  111. object pushSingleWeakeningToLeaves
  112. object quantRulesNumber
  113. object regularize

    Proof regularization

  114. object rulesNumber
  115. object skolemizeLK
  116. object solvePropositional extends solvePropositional
  117. object solveQuasiPropositional extends solvePropositional
  118. object strongQuantRulesNumber
  119. object unfoldInduction
  120. object weakQuantRulesNumber
  121. object weakeningOnlySubTree

Deprecated Value Members

  1. object TheoryAxiom
    Annotations
    @deprecated
    Deprecated

    (Since version 2.7) Use ProofLink instead

Inherited from AnyRef

Inherited from Any

Ungrouped