The various guard_* tactics have similar matching specifiers for how equal expressions
have to be to pass the tactic.
This inductive gives the different specifiers that can be selected.
- syntactic: Lean.Elab.Tactic.GuardExpr.MatchKind
A syntactic match means that the
Exprs are==after strippingMData - defEq: optParam Lean.Meta.TransparencyMode Lean.Meta.TransparencyMode.reducible → Lean.Elab.Tactic.GuardExpr.MatchKind
A defeq match
isDefEqGuardedreturns true. (Note that unification is allowed here.) - alphaEq: Lean.Elab.Tactic.GuardExpr.MatchKind
An alpha-eq match means that
Expr.eqvreturns true.
Instances For
Converts a colon syntax into a MatchKind
Equations
- One or more equations did not get rendered due to their size.
Instances For
Converts a colonEq syntax into a MatchKind
Equations
- One or more equations did not get rendered due to their size.
Instances For
Converts a equal syntax into a MatchKind
Equations
- One or more equations did not get rendered due to their size.
Instances For
Applies the selected matching rule to two expressions.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Elaborate a and b and then do the given equality test mk. We make sure to unify
the types of a and b after elaboration so that when synthesizing pending metavariables
we don't get the wrong instances due to default instances (for example, for nat literals).
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
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
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.