The flag (iff := false)
prevents ext
from generating an ext_iff
lemma.
Instances For
Registers an extensionality theorem.
When
@[ext]
is applied to a theorem, the theorem is registered for theext
tactic, and it generates an "ext_iff
" theorem. The name of the theorem is from adding the suffix_iff
to the theorem name.When
@[ext]
is applied to a structure, it generates an.ext
theorem and applies the@[ext]
attribute to it. The result is an.ext
and an.ext_iff
theorem with the.ext
theorem registered for theext
tactic.An optional natural number argument, e.g.
@[ext 9000]
, specifies a priority for theext
lemma. Higher-priority lemmas are chosen first, and the default is1000
.The flag
@[ext (iff := false)]
disables generating anext_iff
theorem.The flag
@[ext (flat := false)]
causes generated structure extensionality theorems to show inherited fields based on their representation, rather than flattening the parents' fields into the lemma's equality hypotheses.
Instances For
Applies extensionality lemmas that are registered with the @[ext]
attribute.
ext pat*
applies extensionality theorems as much as possible, using the patternspat*
to introduce the variables in extensionality theorems usingrintro
. For example, the patterns are used to name the variables introduced by lemmas such asfunext
.- Without patterns,
ext
applies extensionality lemmas as much as possible but introduces anonymous hypotheses whenever needed. ext pat* : n
applies ext theorems only up to depthn
.
The ext1 pat*
tactic is like ext pat*
except that it only applies a single extensionality theorem.
Unused patterns will generate warning. Patterns that don't match the variables will typically result in the introduction of anonymous hypotheses.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Apply a single extensionality theorem to the current goal.
Equations
- Lean.Elab.Tactic.Ext.applyExtTheorem = Lean.ParserDescr.node `Lean.Elab.Tactic.Ext.applyExtTheorem 1024 (Lean.ParserDescr.nonReservedSymbol "apply_ext_theorem" false)
Instances For
ext1 pat*
is like ext pat*
except that it only applies a single extensionality theorem rather
than recursively applying as many extensionality theorems as possible.
The pat*
patterns are processed using the rintro
tactic.
If no patterns are supplied, then variables are introduced anonymously using the intros
tactic.
Equations
- One or more equations did not get rendered due to their size.