object TacticCommands extends TacticCommands

Predefined tactics in gaptic.

Source
TacticCommands.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TacticCommands
  2. TacticCommands
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def allL(terms: LambdaExpression*): ForallLeftTactic

    Applies the ForallLeft tactic to the current subgoal: The goal

    Applies the ForallLeft tactic to the current subgoal: The goal

    ∀x1,...,∀xn.A, Γ :- Δ

    is reduced to

    A[x1\t1,...,xn\tn], ∀x1,...,∀xn.A, Γ :- Δ.

    This will only work if there is exactly one universal formula in the antecedent!

    terms

    The terms t1,...,tn.

    Definition Classes
    TacticCommands
  5. def allL(applyToLabel: String, terms: LambdaExpression*): ForallLeftTactic

    Applies the ForallLeft tactic to the current subgoal: The goal

    Applies the ForallLeft tactic to the current subgoal: The goal

    ∀x1,...,∀xn.A, Γ :- Δ

    is reduced to

    A[x1\t1,...,xn\tn], ∀x1,...,∀xn.A, Γ :- Δ.

    applyToLabel

    The label of the formula ∀x1,...,∀xn.A.

    terms

    The terms t1,...,tn.

    Definition Classes
    TacticCommands
  6. def allR: ForallRightTactic

    Applies the ForallRight tactic to the current subgoal: The goal

    Applies the ForallRight tactic to the current subgoal: The goal

    Γ :- Δ, ∀x.A

    is reduced to

    Γ :- Δ, A.

    This will only work if there is exactly one universal formula in the succedent!

    Definition Classes
    TacticCommands
  7. def allR(applyToLabel: String): ForallRightTactic

    Applies the ForallRight tactic to the current subgoal: The goal

    Applies the ForallRight tactic to the current subgoal: The goal

    Γ :- Δ, ∀x.A

    is reduced to

    Γ :- Δ, A.

    applyToLabel

    The label of the formula ∀x.A.

    Definition Classes
    TacticCommands
  8. def allR(eigenVariable: Var): ForallRightTactic

    Applies the ForallRight tactic to the current subgoal: The goal

    Applies the ForallRight tactic to the current subgoal: The goal

    Γ :- Δ, ∀x.A

    is reduced to

    Γ :- Δ, A[x\α].

    This will only work if there is exactly one universal formula in the succedent!

    eigenVariable

    The variable α.

    Definition Classes
    TacticCommands
  9. def allR(applyToLabel: String, eigenVariable: Var): ForallRightTactic

    Applies the ForallRight tactic to the current subgoal: The goal

    Applies the ForallRight tactic to the current subgoal: The goal

    Γ :- Δ, ∀x.A

    is reduced to

    Γ :- Δ, A[x\α].

    applyToLabel

    The label of the formula ∀x.A.

    eigenVariable

    The variable α.

    Definition Classes
    TacticCommands
  10. def andL: AndLeftTactic

    Applies the AndLeft tactic to the current subgoal: The goal

    Applies the AndLeft tactic to the current subgoal: The goal

    A ∧ B, Γ :- Δ

    is reduced to

    A, B, Γ :- Δ.

    This will only work if there is exactly one conjunctive formula in the antecedent!

    Definition Classes
    TacticCommands
  11. def andL(applyToLabel: String): AndLeftTactic

    Applies the AndLeft tactic to the current subgoal: The goal

    Applies the AndLeft tactic to the current subgoal: The goal

    A ∧ B, Γ :- Δ

    is reduced to

    A, B, Γ :- Δ.

    applyToLabel

    The label of the formula A ∧ B.

    Definition Classes
    TacticCommands
  12. def andR: AndRightTactic

    Applies the AndRight tactic to the current subgoal: The goal

    Applies the AndRight tactic to the current subgoal: The goal

    Γ :- Δ, A ∧ B

    is reduced to

    Γ :- Δ, A and Γ :- Δ, B.

    This will only work if there is exactly one conjunctive formula in the succedent!

    Definition Classes
    TacticCommands
  13. def andR(applyToLabel: String): AndRightTactic

    Applies the AndRight tactic to the current subgoal: The goal

    Applies the AndRight tactic to the current subgoal: The goal

    Γ :- Δ, A ∧ B

    is reduced to

    Γ :- Δ, A and Γ :- Δ, B.

    applyToLabel

    The label of the formula A ∧ B.

    Definition Classes
    TacticCommands
  14. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  15. def axiomBot: BottomAxiomTactic.type

    Applies the BottomAxiom tactic to the current subgoal: A subgoal of the form ⊥, Γ :- Δ will be closed.

    Applies the BottomAxiom tactic to the current subgoal: A subgoal of the form ⊥, Γ :- Δ will be closed.

    Definition Classes
    TacticCommands
  16. def axiomLog: LogicalAxiomTactic.type

    Applies the LogicalAxiom tactic to the current subgoal: A subgoal of the form A, Γ :- Δ, A will be closed.

    Applies the LogicalAxiom tactic to the current subgoal: A subgoal of the form A, Γ :- Δ, A will be closed.

    Definition Classes
    TacticCommands
  17. def axiomRefl: ReflexivityAxiomTactic.type

    Applies the ReflexivityAxiom tactic to the current subgoal: A subgoal of the form Γ :- Δ, s = s will be closed.

    Applies the ReflexivityAxiom tactic to the current subgoal: A subgoal of the form Γ :- Δ, s = s will be closed.

    Definition Classes
    TacticCommands
  18. def axiomTop: TopAxiomTactic.type

    Applies the TopAxiom tactic to the current subgoal: A subgoal of the form Γ :- Δ, ⊤ will be closed.

    Applies the TopAxiom tactic to the current subgoal: A subgoal of the form Γ :- Δ, ⊤ will be closed.

    Definition Classes
    TacticCommands
  19. def chain(h: String): ChainTactic
    Definition Classes
    TacticCommands
  20. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. def currentGoal: Tactic[OpenAssumption]

    Retrieves the current subgoal.

    Retrieves the current subgoal.

    Definition Classes
    TacticCommands
  22. def cut(label: String, cutFormula: HOLFormula): CutTactic

    Applies the Cut tactic to the current subgoal: The goal

    Applies the Cut tactic to the current subgoal: The goal

    Γ :- Δ

    is reduced to

    Γ :- Δ, C and C, Γ :- Δ.

    label

    The label of C.

    cutFormula

    The formula C.

    Definition Classes
    TacticCommands
  23. def decompose: Tactical[Unit]

    Decomposes the current subgoal by applying all "simple" rules as often as possible.

    Decomposes the current subgoal by applying all "simple" rules as often as possible. These rules are: - ¬:l and ¬:r - ∧:l - ∨:r - ⊃:r - ∀:r - ∃:l

    Definition Classes
    TacticCommands
  24. def destruct(label: String): DestructTactic
    Definition Classes
    TacticCommands
  25. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def eql(eq: String, fm: String): EqualityTactic

    Applies the Equality tactic to the current subgoal: Given an equation s = t and a formula A, some occurrences of s in A are replaced by t or vice versa.

    Applies the Equality tactic to the current subgoal: Given an equation s = t and a formula A, some occurrences of s in A are replaced by t or vice versa. The exact behavior can be controlled with additional commands:

    - fromLeftToRight: Occurrences of s will be replaced by t. - fromRightToLeft: Occurrences of t will be replaced by s. - yielding(f): The tactic will attempt to replace occurences in such a way that the end result is f.

    If neither fromLeftToRight nor fromRightToLeft is used, the direction of replacement needs to be unambiguous, i.e. s and t may not both occur in A.

    eq

    The label of s = t.

    fm

    The label of A.

    Definition Classes
    TacticCommands
  27. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  28. def escargot: EscargotTactic.type

    Calls escargot on the current subgoal.

    Calls escargot on the current subgoal.

    Definition Classes
    TacticCommands
  29. def exL: ExistsLeftTactic

    Applies the ExistsLeft tactic to the current subgoal: The goal

    Applies the ExistsLeft tactic to the current subgoal: The goal

    ∃x.A, Γ :- Δ

    is reduced to

    A, Γ :- Δ.

    This will only work if there is exactly one existential formula in the antecedent!

    Definition Classes
    TacticCommands
  30. def exL(applyToLabel: String): ExistsLeftTactic

    Applies the ExistsLeft tactic to the current subgoal: The goal

    Applies the ExistsLeft tactic to the current subgoal: The goal

    ∃x.A, Γ :- Δ

    is reduced to

    A, Γ :- Δ.

    applyToLabel

    The label of the formula ∃x.A.

    Definition Classes
    TacticCommands
  31. def exL(eigenVariable: Var): ExistsLeftTactic

    Applies the ExistsLeft tactic to the current subgoal: The goal

    Applies the ExistsLeft tactic to the current subgoal: The goal

    ∃x.A, Γ :- Δ

    is reduced to

    A[x\α], Γ :- Δ.

    This will only work if there is exactly one existential formula in the antecedent!

    eigenVariable

    The variable α.

    Definition Classes
    TacticCommands
  32. def exL(applyToLabel: String, eigenVariable: Var): ExistsLeftTactic

    Applies the ExistsLeft tactic to the current subgoal: The goal

    Applies the ExistsLeft tactic to the current subgoal: The goal

    ∃x.A, Γ :- Δ

    is reduced to

    A[x\α], Γ :- Δ.

    applyToLabel

    The label of the formula ∃x.A.

    eigenVariable

    The variable α.

    Definition Classes
    TacticCommands
  33. def exR(terms: LambdaExpression*): ExistsRightTactic

    Applies the ExistsRight tactic to the current subgoal: The goal

    Applies the ExistsRight tactic to the current subgoal: The goal

    Γ :- Δ, ∃x1...∃xn.A

    is reduced to

    Γ :- Δ, ∃x1...∃xn.A, A[x1\t1,...,xn\tn].

    This will only work if there is exactly one existential formula in the succedent!

    terms

    The terms t1,...,tn.

    Definition Classes
    TacticCommands
  34. def exR(applyToLabel: String, terms: LambdaExpression*): ExistsRightTactic

    Applies the ExistsRight tactic to the current subgoal: The goal

    Applies the ExistsRight tactic to the current subgoal: The goal

    Γ :- Δ, ∃x1...∃xn.A

    is reduced to

    Γ :- Δ, ∃x1...∃xn.A, A[x1\t1,...,xn\tn].

    applyToLabel

    The label of the formula ∃x1...∃xn.A.

    terms

    The terms t1,...,tn.

    Definition Classes
    TacticCommands
  35. def fail: Tactical[Nothing]

    Tactic that immediately fails.

    Tactic that immediately fails.

    Definition Classes
    TacticCommands
  36. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def foTheory(implicit ctx: Context): Tactical[Unit]

    Solves the current subgoal as a first-order consequence of the background theory.

    Solves the current subgoal as a first-order consequence of the background theory. This closes the goal.

    ctx

    A at.logic.gapt.proofs.Context. The current subgoal must be contained in its background theory.

    Definition Classes
    TacticCommands
  38. def focus(indexOfSubGoal: OpenAssumptionIndex): FocusTactical

    Moves the specified goal to the front of the goal list.

    Moves the specified goal to the front of the goal list.

    indexOfSubGoal

    The index of the goal.

    Definition Classes
    TacticCommands
  39. def focus(indexOfSubGoal: Int): FocusTactical

    Moves the specified goal to the front of the goal list.

    Moves the specified goal to the front of the goal list.

    indexOfSubGoal

    The index of the goal.

    Definition Classes
    TacticCommands
  40. def forget(ls: String*): Tactical[Unit]

    Lets you "forget" a sequence of formulas, i.e.

    Lets you "forget" a sequence of formulas, i.e. the tactics version of the weakening rule. The formulas with labels L1,...,Ln will be removed from the current goal.

    ls

    The labels L1,...,Ln.

    Definition Classes
    TacticCommands
  41. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  42. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  43. def haveInstance(formula: HOLFormula, polarity: Polarity): Tactical[String]

    Instantiates prenex quantifiers to obtain a formula in a given polarity.

    Instantiates prenex quantifiers to obtain a formula in a given polarity.

    Definition Classes
    TacticCommands
  44. def haveInstances(sequent: HOLSequent): Tactical[Sequent[String]]
    Definition Classes
    TacticCommands
  45. def impL: ImpLeftTactic

    Applies the ImpLeft tactic to the current subgoal: The goal

    Applies the ImpLeft tactic to the current subgoal: The goal

    A → B, Γ :- Δ

    is reduced to

    Γ :- Δ, A and B, Γ :- Δ.

    This will only work if there is exactly one implicative formula in the antecedent!

    Definition Classes
    TacticCommands
  46. def impL(applyToLabel: String): ImpLeftTactic

    Applies the ImpLeft tactic to the current subgoal: The goal

    Applies the ImpLeft tactic to the current subgoal: The goal

    A → B, Γ :- Δ

    is reduced to

    Γ :- Δ, A and B, Γ :- Δ.

    applyToLabel

    The label of the formula A → B.

    Definition Classes
    TacticCommands
  47. def impR: ImpRightTactic

    Applies the ImpRight tactic to the current subgoal: The goal

    Applies the ImpRight tactic to the current subgoal: The goal

    Γ :- Δ, A → B

    is reduced to

    A, Γ :- Δ, B.

    This will only work if there is exactly one implicative formula in the succedent!

    Definition Classes
    TacticCommands
  48. def impR(applyToLabel: String): ImpRightTactic

    Applies the ImpRight tactic to the current subgoal: The goal

    Applies the ImpRight tactic to the current subgoal: The goal

    Γ :- Δ, A → B

    is reduced to

    A, Γ :- Δ, B.

    applyToLabel

    The label of the formula A → B.

    Definition Classes
    TacticCommands
  49. def include(label: String, proof: LKProof): Tactical[Unit]

    Uses an LKProof as a lemma.

    Uses an LKProof as a lemma.

    If proof ends in Γ :- φ, then the current goal

    Γ, Π :- Λ

    is reduced to

    Γ, Π, φ :- Λ

    label

    the label for φ in the subgoal

    proof

    The proof to insert as a lemma by a cut.

    Definition Classes
    TacticCommands
  50. def induction(on: Var, label: String)(implicit ctx: Context): InductionTactic

    Applies the Induction tactic to the current subgoal: The goal

    Applies the Induction tactic to the current subgoal: The goal

    Γ, :- Δ, ∀x.A

    is reduced to n new subgoals, where n is the number of constructors of the type of x.

    label

    The label of the formula ∀x.A.

    ctx

    A at.logic.gapt.proofs.Context. It must contain an inductive definition of the type of x.

    Definition Classes
    TacticCommands
  51. def induction(on: Var)(implicit ctx: Context): InductionTactic

    Applies the Induction tactic to the current subgoal: The goal

    Applies the Induction tactic to the current subgoal: The goal

    Γ, :- Δ, ∀x.A

    is reduced to n new subgoals, where n is the number of constructors of the type of x.

    This will only work if there is exactly one universal formula in the succedent!

    ctx

    A at.logic.gapt.proofs.Context. It must contain an inductive definition of the type of x.

    Definition Classes
    TacticCommands
  52. def insert(proof: LKProof): InsertTactic

    Inserts an LKProof for the current subgoal.

    Inserts an LKProof for the current subgoal.

    proof

    The proof to be inserted. Its end-sequent must subsume the current goal.

    Definition Classes
    TacticCommands
  53. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  54. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  55. def negL: NegLeftTactic

    Applies the NegLeft tactic to the current subgoal: The goal

    Applies the NegLeft tactic to the current subgoal: The goal

    ¬A, Γ :- Δ

    is reduced to

    Γ :- Δ, A.

    This will only work if there is exactly one negated formula in the antecedent!

    Definition Classes
    TacticCommands
  56. def negL(applyToLabel: String): NegLeftTactic

    Applies the NegLeft tactic to the current subgoal: The goal

    Applies the NegLeft tactic to the current subgoal: The goal

    ¬A, Γ :- Δ

    is reduced to

    Γ :- Δ, A.

    applyToLabel

    The label of the formula ¬A.

    Definition Classes
    TacticCommands
  57. def negR: NegRightTactic

    Applies the NegRight tactic to the current subgoal: The goal

    Applies the NegRight tactic to the current subgoal: The goal

    Γ :- Δ, A

    is reduced to

    A, Γ :- Δ.

    This will only work if there is exactly one negated formula in the succedent!

    Definition Classes
    TacticCommands
  58. def negR(applyToLabel: String): NegRightTactic

    Applies the NegRight tactic to the current subgoal: The goal

    Applies the NegRight tactic to the current subgoal: The goal

    Γ :- Δ, ¬A

    is reduced to

    A, Γ :- Δ.

    applyToLabel

    The label of the formula ¬A.

    Definition Classes
    TacticCommands
  59. final def notify(): Unit
    Definition Classes
    AnyRef
  60. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  61. def orL: OrLeftTactic

    Applies the OrLeft tactic to the current subgoal: The goal

    Applies the OrLeft tactic to the current subgoal: The goal

    A ∨ B, Γ :- Δ

    is reduced to

    A, Γ :- Δ and B, Γ :- Δ.

    This will only work if there is exactly one disjunctive formula in the antecedent!

    Definition Classes
    TacticCommands
  62. def orL(applyToLabel: String): OrLeftTactic

    Applies the OrLeft tactic to the current subgoal: The goal

    Applies the OrLeft tactic to the current subgoal: The goal

    A ∨ B, Γ :- Δ

    is reduced to

    A, Γ :- Δ and B, Γ :- Δ.

    applyToLabel

    The label of the formula A ∨ B.

    Definition Classes
    TacticCommands
  63. def orR: OrRightTactic

    Applies the OrRight tactic to the current subgoal: The goal

    Applies the OrRight tactic to the current subgoal: The goal

    Γ :- Δ, A ∨ B

    is reduced to

    Γ :- Δ, A, B.

    This will only work if there is exactly one disjunctive formula in the succedent!

    Definition Classes
    TacticCommands
  64. def orR(applyToLabel: String): OrRightTactic

    Applies the OrRight tactic to the current subgoal: The goal

    Applies the OrRight tactic to the current subgoal: The goal

    Γ :- Δ, A ∨ B

    is reduced to

    Γ :- Δ, A, B.

    applyToLabel

    The label of the formula A ∨ B.

    Definition Classes
    TacticCommands
  65. def prop: PropTactic.type

    Calls the builtin tableau prover on the current subgoal.

    Calls the builtin tableau prover on the current subgoal. If the goal is a tautology, a proof will automatically be found and inserted.

    Definition Classes
    TacticCommands
  66. def prover9: Prover9Tactic.type

    Calls prover9 on the current subgoal.

    Calls prover9 on the current subgoal.

    Definition Classes
    TacticCommands
  67. def quasiprop: QuasiPropTactic.type
    Definition Classes
    TacticCommands
  68. def refl: ReflexivityAxiomTactic.type

    Synonym for axiomRefl.

    Synonym for axiomRefl.

    Definition Classes
    TacticCommands
  69. def renameLabel(oldLabel: String): RenameTactic

    Changes the provided label.

    Changes the provided label. Syntax:

    renameLabel("foo") to "bar"
    oldLabel

    The label to be renamed.

    Definition Classes
    TacticCommands
  70. def repeat[T](t: Tactical[T]): RepeatTactic[T]

    Repeats a tactical until it fails.

    Repeats a tactical until it fails.

    t

    A tactical.

    Definition Classes
    TacticCommands
  71. def rewrite: RewriteTactic

    Rewrites the formula specified by target using (possibly universally quantified) equations.

    Rewrites the formula specified by target using (possibly universally quantified) equations.

    rewrite.many ltr "equation1" in "target"
    rewrite.many ltr ("equation1", "eq2") rtl ("eq3", "eq4") in "target" subst (hov"x" -> le"f(f(c))")

    ltr: rewrite left-to-right using this equation rtl: rewrite right-to-left using this equation many: rewrite as long as possible (default is to only rewrite once)

    Definition Classes
    TacticCommands
  72. def skip: SkipTactical.type

    Does nothing.

    Does nothing.

    Definition Classes
    TacticCommands
  73. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  74. def theory(implicit ctx: Context): Tactical[Unit]

    Declares the current subgoal as a theory axiom, i.e.

    Declares the current subgoal as a theory axiom, i.e. a sequent that is contained in the background theory. This closes the goal.

    ctx

    A at.logic.gapt.proofs.Context. The current subgoal must be contained in its background theory.

    Definition Classes
    TacticCommands
  75. def toString(): String
    Definition Classes
    AnyRef → Any
  76. def trivial: Tactic[Unit]

    Attempts to apply the tactics axiomTop, axiomBot, axiomRefl, and axiomLog.

    Attempts to apply the tactics axiomTop, axiomBot, axiomRefl, and axiomLog.

    Definition Classes
    TacticCommands
  77. def unfold(definition: String, definitions: String*)(implicit ctx: Context): UnfoldTacticHelper

    Replaces a defined constant with its definition.

    Replaces a defined constant with its definition. Syntax:

    unfold("def1", "def2",...,"defn") in ("label1", "label2",...,"labelk")

    NB: This will only replace the first definition it finds in each supplied formula. If you want to unfold all definitions, use repeat.

    definition

    The definition def1.

    definitions

    The definitions def2,...,defn.

    ctx

    A at.logic.gapt.proofs.Context. The definitions you want to unfold need to be present in ctx.

    Definition Classes
    TacticCommands
  78. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  79. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  80. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def sorry: Tactic[Unit]

    Leaves a hole in the current proof by inserting a dummy proof of the empty sequent.

    Leaves a hole in the current proof by inserting a dummy proof of the empty sequent.

    Definition Classes
    TacticCommands
    Annotations
    @deprecated
    Deprecated

    (Since version the dawn of time) Proof not finished!

Inherited from TacticCommands

Inherited from AnyRef

Inherited from Any

Ungrouped