Package

at.logic.gapt.proofs

lk

Permalink

package lk

Content Hierarchy Learn more about scaladoc diagrams
Visibility
  1. Public
  2. All

Type Members

  1. trait EquationRuleLogger extends Logger

    Permalink
  2. class ExpansionTreeProofStrategy extends PropositionalProofStrategy with Logger

    Permalink

    Strategy for constructing a proof from an ExpansionSequent.

    Strategy for constructing a proof from an ExpansionSequent.

    The internal state of this strategy is an ExpansionSequent. The action is a formula on a side of the sequent plus a witness term or eigenvariable respectively in case this formula starts with a quantifier.

  3. class InterpolationException extends Exception

    Permalink
  4. class LKProver extends Prover

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

    Permalink
  6. class LKToExpansionProof extends Logger

    Permalink
  7. trait MacroRuleLogger extends Logger

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

  9. class PropositionalProofStrategy extends ProofStrategy with Logger

    Permalink

    Strategy for proving propositional sequents.

  10. class QuantifierRuleHelper extends AnyRef

    Permalink
  11. class ReductiveCutElimException extends Exception

    Permalink
  12. class StrongRuleHelper extends QuantifierRuleHelper

    Permalink
  13. class UnfoldException extends Exception

    Permalink
  14. class WeakRuleHelper extends QuantifierRuleHelper

    Permalink
  15. class condensation extends AnyRef

    Permalink
  16. class factoring extends AnyRef

    Permalink
  17. class map_proof extends AnyRef

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

    Permalink
  45. object ExtractInterpolant

    Permalink
  46. object ForallLeftBlock

    Permalink
  47. object ForallLeftRule extends WeakRuleHelper

    Permalink
  48. object ForallLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  49. object ForallRightBlock

    Permalink
  50. object ForallRightRule extends StrongRuleHelper

    Permalink
  51. object ForallRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  52. object ImpLeftRule

    Permalink
  53. object ImpLeftRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  54. object ImpRightRule

    Permalink
  55. object ImpRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  56. object InductionRule

    Permalink

    Binary induction rule:

    Binary induction rule:

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

  57. object InductionRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  58. object InitialRuleType extends NullaryRuleTypeA with Product with Serializable

    Permalink
  59. object Interpolate

    Permalink
  60. object LKToExpansionProof extends LKToExpansionProof

    Permalink
  61. object LKToLKsk extends Logger

    Permalink
  62. object NegLeftRule

    Permalink
  63. object NegLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  64. object NegRightRule

    Permalink
  65. object NegRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  66. object OrLeftRule

    Permalink
  67. object OrLeftRuleType extends BinaryRuleTypeA with Product with Serializable

    Permalink
  68. object OrRight1Rule

    Permalink
  69. object OrRight1RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  70. object OrRight2Rule

    Permalink
  71. object OrRight2RuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  72. object OrRightRule

    Permalink
  73. object ProofStrategy

    Permalink
  74. object ProofTransformationUtils

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

  76. object TransRule

    Permalink
  77. object UnaryLKProof

    Permalink
  78. object Util

    Permalink
  79. object WeakeningContractionMacroRule extends MacroRuleLogger

    Permalink

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

  80. object WeakeningLeftMacroRule extends MacroRuleLogger

    Permalink

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

  81. object WeakeningLeftRule

    Permalink
  82. object WeakeningLeftRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  83. object WeakeningMacroRule extends MacroRuleLogger

    Permalink

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

  84. object WeakeningRightMacroRule extends MacroRuleLogger

    Permalink

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

  85. object WeakeningRightRule

    Permalink
  86. object WeakeningRightRuleType extends UnaryRuleTypeA with Product with Serializable

    Permalink
  87. object applyRecursive

    Permalink

    Maybe there is a better place for this?

  88. object applyReplacement

    Permalink
  89. object applySubstitution

    Permalink
  90. package base

    Permalink

    Created by sebastian on 7/13/15.

  91. object condensation extends condensation

    Permalink

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

  92. object contLeftNumber

    Permalink
  93. object contRightNumber

    Permalink
  94. object containsEqualityReasoning

    Permalink

    returns

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

  95. package cutIntroduction

    Permalink
  96. object cutformulaExtraction

    Permalink

    Extracts the cut-formulas from an LK proof.

  97. object deleteTautologies

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

  99. object factoring extends factoring

    Permalink

    Factoring removes duplicate literals from fsequents

  100. object getAncestors

    Permalink
  101. object getAuxFormulas

    Permalink

    Extracts all auxiliary formulas in a proof.

  102. object getCutAncestors

    Permalink

    Extracts the cut-ancestor formulas from a proof.

  103. object getCutsAsProofs

    Permalink

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

  104. object getStatistics

    Permalink
  105. object getTypeInformation

    Permalink
  106. object map_proof extends map_proof

    Permalink
  107. object proofFromInstances

    Permalink

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

  108. object quantRulesNumber

    Permalink
  109. object regularize

    Permalink
  110. object replaceSubproof

    Permalink
  111. object rule_isomorphic extends rule_isomorphic

    Permalink

    Created by marty on 8/25/14.

  112. object rulesNumber

    Permalink
  113. object setNormalize

    Permalink
  114. object simpleUnitResolutionNormalization

    Permalink
  115. object skolemize extends Logger

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

  117. object subsumedClausesRemoval

    Permalink
  118. object subsumedClausesRemovalHOL

    Permalink
  119. package subsumption

    Permalink
  120. object weakQuantRulesNumber

    Permalink

Ungrouped