Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- mvarId : Lean.MVarId
- indicesFVarIds : Array Lean.FVarId
- fvarId : Lean.FVarId
- numEqs : Nat
Instances For
Similar to generalizeTargets
but customized for the casesOn
motive.
Given a metavariable mvarId
representing the
Ctx, h : I A j, D |- T
where fvarId
is h
s id, and the type I A j
is an inductive datatype where A
are parameters,
and j
the indices. Generate the goal
Ctx, h : I A j, D, j' : J, h' : I A j' |- j == j' -> h == h' -> T
Remark: (j == j' -> h == h')
is a "telescopic" equality.
Remark: j
is sequence of terms, and j'
a sequence of free variables.
The result contains the fields
mvarId
: the new goalindicesFVarIds
:j'
idsfvarId
:h'
idnumEqs
: number of equations in the target
Equations
- One or more equations did not get rendered due to their size.
Instances For
- mvarId : Lean.MVarId
- subst : Lean.Meta.FVarSubst
- ctorName : Lake.Name
Instances For
- inductiveVal : Lean.InductiveVal
- casesOnVal : Lean.DefinitionVal
- nminors : Nat
- majorDecl : Lean.LocalDecl
- majorTypeFn : Lean.Expr
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Apply casesOn
using the free variable majorFVarId
as the major premise (aka discriminant).
givenNames
contains user-facing names for each alternative.
Equations
- Lean.MVarId.cases mvarId majorFVarId givenNames = Lean.Meta.Cases.cases mvarId majorFVarId givenNames
Instances For
Equations
- Lean.Meta.cases mvarId majorFVarId givenNames = Lean.Meta.Cases.cases mvarId majorFVarId givenNames
Instances For
Keep applying cases
on any hypothesis that satisfies p
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Applies cases
(recursively) to any hypothesis of the form h : p ∧ q
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Applies cases
to any hypothesis of the form h : r = s
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
- mvarId : Lean.MVarId
- fvarId : Lean.FVarId
Auxiliary structure for storing byCases
tactic result.
Instances For
Split the goal in two subgoals: one containing the hypothesis h : p
and another containing h : ¬ p
.
Equations
- One or more equations did not get rendered due to their size.