This attribute should not be used directly.
It is an implementation detail of the mvcgen
tactic.
The simp set accumulated by the @[spec]
attribute.
(This does not include Hoare triple specs.)
It is an implementation detail of the mvcgen
tactic.
Equations
Instances For
A unique identifier corresponding to the origin.
Equations
- (Lean.Elab.Tactic.Do.SpecAttr.SpecProof.global declName).key = declName
- (Lean.Elab.Tactic.Do.SpecAttr.SpecProof.local fvarId).key = fvarId.name
- (Lean.Elab.Tactic.Do.SpecAttr.SpecProof.stx id ref proof).key = id
Instances For
Equations
- Lean.Elab.Tactic.Do.SpecAttr.instHashableSpecProof = { hash := fun (sp : Lean.Elab.Tactic.Do.SpecAttr.SpecProof) => hash sp.key }
Equations
- One or more equations did not get rendered due to their size.
- keys : Array Meta.DiscrTree.Key
- prog : Expr
Expr key tested for matching, in ∀-quantified form.
keys = (← mkPath (← forallMetaTelescope prog).2.2)
. - proof : SpecProof
The proof for the theorem.
- etaPotential : Nat
If
etaPotential
is non-zero, then the precondition contains meta variables that can be instantiated after applyingmintro ∀s
etaPotential
many times. - priority : Nat
Instances For
@[reducible, inline]
Instances For
- specs : Meta.DiscrTree SpecTheorem
Instances For
Equations
- d.isErased thmId = Lean.PersistentHashSet.contains d.erased thmId
Instances For
Equations
Instances For
@[reducible, inline]
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
If σs : List Type
, then e : SPred σs
.
Return the number of times e
needs to be applied
in order to assign closed solutions to meta variables.
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
def
Lean.Elab.Tactic.Do.SpecAttr.mkSpecTheoremFromStx
(ref : Syntax)
(proof : Expr)
(prio : Nat := 1000)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Elab.Tactic.Do.SpecAttr.addSpecTheoremEntry d e = { specs := d.specs.insertCore e.keys e, erased := d.erased }
Instances For
def
Lean.Elab.Tactic.Do.SpecAttr.addSpecTheorem
(ext : SpecExtension)
(declName : Name)
(prio : Nat)
(attrKind : AttributeKind)
:
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
- ext.getTheorems = do let __do_lift ← Lean.getEnv pure (Lean.ScopedEnvExtension.getState ext __do_lift)