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!
The term t1
.
The terms t2,...,tn
.
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, Γ :- Δ
.
The label of the formula ∀x1,...,∀xn.A
.
The term t1
.
The terms t2,...,tn
.
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!
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
.
The label of the formula ∀x.A
.
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!
The variable α
.
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\α]
.
The label of the formula ∀x.A
.
The variable α
.
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!
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, Γ :- Δ
.
The label of the formula A ∧ B
.
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!
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
.
The label of the formula A ∧ B
.
Applies the BottomAxiom
tactic to the current subgoal: A subgoal of the form ⊥, Γ :- Δ
will be closed.
Applies the LogicalAxiom
tactic to the current subgoal: A subgoal of the form A, Γ :- Δ, A
will be closed.
Applies the ReflexivityAxiom
tactic to the current subgoal: A subgoal of the form Γ :- Δ, s = s
will be closed.
Applies the TopAxiom
tactic to the current subgoal: A subgoal of the form Γ :- Δ, ⊤
will be closed.
Retrieves the current subgoal.
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, Γ :- Δ
.
The label of C
.
The formula C
.
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
- ∃:l
- ∀:r
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
.
The label of s = t
.
The label of A
.
Calls escargot
on the current subgoal.
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!
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, Γ :- Δ
.
The label of the formula ∃x.A
.
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!
The variable α
.
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\α], Γ :- Δ
.
The label of the formula ∃x.A
.
The variable α
.
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!
The term t1
.
The terms t2,...,tn
.
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]
.
The label of the formula ∃x1...∃xn.A
.
The term t1
.
The terms t2,...,tn
.
Tactic that immediately fails.
Moves the specified goal to the front of the goal list.
Moves the specified goal to the front of the goal list.
The index of the goal.
Moves the specified goal to the front of the goal list.
Moves the specified goal to the front of the goal list.
The index of the goal.
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.
The label L1
.
The labels L2
,...,Ln
.
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!
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, Γ :- Δ
.
The label of the formula A → B
.
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!
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
.
The label of the formula A → B
.
Uses an LKProof as a lemma.
Uses an LKProof as a lemma.
If proof
ends in Γ :- φ
, then the current goal
Γ, Π :- Λ
is reduced to
Γ, Π, φ :- Λ
the label for φ in the subgoal
The proof to insert as a lemma by a cut.
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
.
The label of the formula ∀x.A
.
A at.logic.gapt.proofs.Context. It must contain an inductive definition of the type of x
.
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!
A at.logic.gapt.proofs.Context. It must contain an inductive definition of the type of x
.
Inserts an LKProof for the current subgoal.
Inserts an LKProof for the current subgoal.
The proof to be inserted. Its end-sequent must subsume the current goal.
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!
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
.
The label of the formula ¬A
.
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!
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, Γ :- Δ
.
The label of the formula ¬A
.
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!
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, Γ :- Δ
.
The label of the formula A ∨ B
.
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!
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
.
The label of the formula A ∨ B
.
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.
Calls prover9
on the current subgoal.
Synonym for axiomRefl.
Changes the provided label.
Changes the provided label. Syntax:
renameLabel("foo") to "bar"
The label to be renamed.
Repeats a tactical until it fails.
Repeats a tactical until it fails.
A tactical.
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"
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)
Does nothing.
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.
A at.logic.gapt.proofs.Context. The current subgoal must be contained in its background theory.
Attempts to apply the tactics axiomTop
, axiomBot
, axiomRefl
, and axiomLog
.
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
.
The definition def1
.
The definitions def2
,...,defn
.
A at.logic.gapt.proofs.Context. The definitions you want to unfold need to be present in ctx
.
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.
(Since version the dawn of time) Proof not finished!