Package

at.logic.gapt.proofs

lkOld

Permalink

package lkOld

Content Hierarchy
Visibility
  1. Public
  2. All

Type Members

  1. trait EquationRuleLogger extends Logger

    Permalink
  2. class InterpolationException extends Exception

    Permalink
  3. case class LKQuantifierException(main: HOLFormula, aux: HOLFormula, term: LambdaExpression, calculated_formula: HOLFormula, quantifier_var: Var) extends Exception with Product with Serializable

    Permalink
  4. class LKToExpansionProof extends Logger

    Permalink
  5. trait MacroRuleLogger extends Logger

    Permalink
  6. abstract class ProofStrategy extends AnyRef

    Permalink

    Strategy to tell prove procedure which rules to apply

    Strategy to tell prove procedure which rules to apply

    A strategy selects a next action to execute. An action is represented by a formula and the information whether this formula is in the antecedent or the succedent. The action is to apply a rule to this formula.

  7. class PropositionalProofStrategy extends ProofStrategy with Logger

    Permalink

    Strategy for proving propositional sequents.

  8. class QuantifierRuleHelper extends AnyRef

    Permalink
  9. class ReductiveCutElimException extends Exception

    Permalink
  10. class StrongRuleHelper extends QuantifierRuleHelper

    Permalink
  11. class UnfoldException extends Exception

    Permalink
  12. class WeakRuleHelper extends QuantifierRuleHelper

    Permalink
  13. class condensation extends AnyRef

    Permalink
  14. class map_proof extends AnyRef

    Permalink
  15. class rule_isomorphic extends AnyRef

    Permalink

    Checks if two proof have the same branching structure.

    Checks if two proof have the same branching structure.

    Note

    does not work for LKsk proofs

Value Members

  1. object AndLeft1Rule

    Permalink
  2. object AndLeft1RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  3. object AndLeft2Rule

    Permalink
  4. object AndLeft2RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  5. object AndLeftRule

    Permalink
  6. object AndRightRule

    Permalink
  7. object AndRightRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  8. object AtomicExpansion

    Permalink
  9. object Axiom

    Permalink
  10. object BinaryLKProof

    Permalink
  11. object CleanStructuralRules

    Permalink

    Removes the redundant weakenings and contractions.

    Removes the redundant weakenings and contractions. Traverses the proof top down, keeping track of the weakened formulas in ws. When processing each rule, checks whether the auxiliary formulas are in ws. If all were previously weakened, remove them from ws and adds the main formula.

    I am aware the code is really really hard to read. I am sorry for that. In order to get it properly optimized, I had to use continuation-passing-style and the TailCall library from scala. This makes it particularly exotic. If you are going through the trouble of reading it (so brave of you ;), it's good to keep the following in mind: 1. Ignore tailcalls and everything associated with it 2. Treat the continuation call not as a function call but as if its arguments were the return value of the function.

    The answer to the optimization was found here: http://stackoverflow.com/questions/20164061/how-to-acheive-tail-call-optimization-while-traversing-tree-like-structure-using

  12. object CloneLKProof

    Permalink
  13. object ContractionLeftMacroRule extends MacroRuleLogger

    Permalink

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

  14. object ContractionLeftRule

    Permalink
  15. object ContractionLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  16. object ContractionMacroRule extends MacroRuleLogger

    Permalink

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

  17. object ContractionRightMacroRule extends MacroRuleLogger

    Permalink

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

  18. object ContractionRightRule

    Permalink
  19. object ContractionRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  20. object CutRule

    Permalink
  21. object CutRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  22. object DefinitionLeftRule

    Permalink
  23. object DefinitionLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  24. object DefinitionRightRule

    Permalink
  25. object DefinitionRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  26. object EquationLeft1Rule extends EquationRuleLogger

    Permalink
  27. object EquationLeft1RuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  28. object EquationLeft2Rule extends EquationRuleLogger

    Permalink
  29. object EquationLeft2RuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  30. object EquationLeftMacroRule extends EquationRuleLogger

    Permalink

    Macro rule that simulates several term replacements at once.

  31. object EquationLeftRule extends EquationRuleLogger

    Permalink

    This macro rule unifies EquationLeft1Rule and EquationLeft2Rule by automatically choosing the appropriate rule.

  32. object EquationRight1Rule extends EquationRuleLogger

    Permalink
  33. object EquationRight1RuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  34. object EquationRight2Rule extends EquationRuleLogger

    Permalink
  35. object EquationRight2RuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  36. object EquationRightMacroRule extends EquationRuleLogger

    Permalink

    Macro rule that simulates several term replacements at once.

  37. object EquationRightRule extends EquationRuleLogger

    Permalink

    This macro rule unifies EquationRight1Rule and EquationRight2Rule by automatically choosing the appropriate rule.

  38. object EquationVerifier

    Permalink
  39. object ExistsLeftRule extends StrongRuleHelper

    Permalink
  40. object ExistsLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  41. object ExistsRightBlock

    Permalink
  42. object ExistsRightRule extends WeakRuleHelper

    Permalink
  43. object ExistsRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  44. object ExtractInterpolant

    Permalink
  45. object ForallLeftBlock

    Permalink
  46. object ForallLeftRule extends WeakRuleHelper

    Permalink
  47. object ForallLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  48. object ForallRightBlock

    Permalink
  49. object ForallRightRule extends StrongRuleHelper

    Permalink
  50. object ForallRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  51. object ImpLeftRule

    Permalink
  52. object ImpLeftRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  53. object ImpRightRule

    Permalink
  54. object ImpRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  55. object InductionRule

    Permalink

    Binary induction rule:

    Binary induction rule:

    Γ |- Δ, A[0] A[x], Π |- Λ, A[s(x)] -----------------------------------------(ind) Γ, Π |- Δ, Λ, A[t]

  56. object InductionRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  57. object InitialRuleType extends NullaryRuleTypeA with Product with Serializable

    Permalink
  58. object Interpolate

    Permalink
  59. object LKToExpansionProof extends LKToExpansionProof

    Permalink
  60. object LKToLKsk extends Logger

    Permalink
  61. object NegLeftRule

    Permalink
  62. object NegLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  63. object NegRightRule

    Permalink
  64. object NegRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  65. object OrLeftRule

    Permalink
  66. object OrLeftRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  67. object OrRight1Rule

    Permalink
  68. object OrRight1RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  69. object OrRight2Rule

    Permalink
  70. object OrRight2RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  71. object OrRightRule

    Permalink
  72. object ProofStrategy

    Permalink
  73. object ProofTransformationUtils

    Permalink
  74. object ReductiveCutElim

    Permalink

    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.

  75. object StrongQuantifierRule

    Permalink
  76. object TransRule

    Permalink
  77. object UnaryLKProof

    Permalink
  78. object Util

    Permalink
  79. object WeakQuantifierRule

    Permalink
  80. object WeakeningContractionMacroRule extends MacroRuleLogger

    Permalink

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

  81. object WeakeningLeftMacroRule extends MacroRuleLogger

    Permalink

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

  82. object WeakeningLeftRule

    Permalink
  83. object WeakeningLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  84. object WeakeningMacroRule extends MacroRuleLogger

    Permalink

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

  85. object WeakeningRightMacroRule extends MacroRuleLogger

    Permalink

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

  86. object WeakeningRightRule

    Permalink
  87. object WeakeningRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  88. object applySubstitution

    Permalink
  89. package base

    Permalink
  90. object condensation extends condensation

    Permalink

    Condensation implements the redundancy optimization technique of the same name, see also Leitsch: The Resolution Calculus chapter 3.2

  91. object contLeftNumber

    Permalink
  92. object contRightNumber

    Permalink
  93. object containsEqualityReasoning

    Permalink

    returns

    true iff this proof contains a reflexivity axiom or an equational inference

  94. object cutformulaExtraction

    Permalink

    Extracts the cut-formulas from an LK proof.

  95. object deleteTautologies

    Permalink
  96. object eliminateDefinitions

    Permalink

    An implementation of definition elmination which guesses the definitions.

    An implementation of definition elmination which guesses the definitions. Alternatively, you can use at.logic.gapt.algorithms.rewriting.DefinitionElimination instead, which gets the definitions explicitly passed.

  97. object getAncestors

    Permalink
  98. object getAuxFormulas

    Permalink

    Extracts all auxiliary formulas in a proof.

  99. object getCutAncestors

    Permalink

    Extracts the cut-ancestor formulas from a proof.

  100. object getCutsAsProofs

    Permalink

    Extracts a list of suproofs which end in a cut rule.

  101. object getStatistics

    Permalink
  102. object getTypeInformation

    Permalink
  103. object map_proof extends map_proof

    Permalink
  104. object printProofStats

    Permalink
  105. object quantRulesNumber

    Permalink
  106. object regularize

    Permalink

    An implementation of LK proof regularization.

    An implementation of LK proof regularization. In a regular LK proof, an eigenvariable is globally unique to the proof. E.g. P(u) :- P(u) P(u) :- P(u) ----------------- fa:l ------------------- fa:l \A x:P(x) :- P(u) \A x:P(x) :- P(u) ----------------------- fa:r ------------------- fa:r \A x:P(x) :- \E x:P(x) \A x:P(x) :- \E x: P(x) --------------------------------------------------------- conj:r \A x:P(x), \A x:P(x) :- \E x:P(x) /\ \E x:P(x) --------------------------------------------------------- contr:l \A x:P(x) :- \E x:P(x) /\ \E x:P(x)

    is not regular, but P(i) :- P(i) P(u) :- P(u) ----------------- fa:l ------------------- fa:l \A x:P(x) :- P(i) \A x:P(x) :- P(u) ----------------------- fa:r ------------------- fa:r \A x:P(x) :- \E x:P(x) \A x:P(x) :- \E x: P(x) --------------------------------------------------------- conj:r \A x:P(x), \A x:P(x) :- \E x:P(x) /\ \E x:P(x) --------------------------------------------------------- contr:l \A x:P(x) :- \E x:P(x) /\ \E x:P(x)

    is.

  107. object replaceSubproof

    Permalink
  108. object rule_isomorphic extends rule_isomorphic

    Permalink
  109. object rulesNumber

    Permalink
  110. object simpleUnitResolutionNormalization

    Permalink
  111. object skolemize extends Logger

    Permalink
  112. object solve extends Logger

    Permalink

    Bottom-up construction of sequent calculus proofs.

    Bottom-up construction of sequent calculus proofs.

    Currently supports propositional logic as well as proof construction using expansion trees.

  113. object subsumedClausesRemoval

    Permalink
  114. object weakQuantRulesNumber

    Permalink

Ungrouped