def
Lean.Meta.substCore
(mvarId : Lean.MVarId)
(hFVarId : Lean.FVarId)
(symm : optParam Bool false)
(fvarSubst : optParam Lean.Meta.FVarSubst { map := ∅ })
(clearH : optParam Bool true)
(tryToSkip : optParam Bool false)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Meta.heqToEq
(mvarId : Lean.MVarId)
(fvarId : Lean.FVarId)
(tryToClear : optParam Bool true)
:
Given h : HEq α a α b in the given goal, produce a new goal where h : Eq α a b.
If h is not of the give form, then just return (h, mvarId)
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given x, try to find an equation of the form heq : x = rhs or heq : lhs = x,
and runs substCore on it. Throws an expection if no such equation is found.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given x, try to find an equation of the form heq : x = rhs or heq : lhs = x,
and runs substCore on it. Returns none if no such equation is found, or if substCore fails.
Equations
- Lean.Meta.substVar? mvarId hFVarId = Lean.observing? (Lean.Meta.substVar mvarId hFVarId)
Instances For
Equations
- Lean.Meta.subst? mvarId hFVarId = Lean.observing? (Lean.Meta.subst mvarId hFVarId)
Instances For
def
Lean.Meta.substCore?
(mvarId : Lean.MVarId)
(hFVarId : Lean.FVarId)
(symm : optParam Bool false)
(fvarSubst : optParam Lean.Meta.FVarSubst { map := ∅ })
(clearH : optParam Bool true)
(tryToSkip : optParam Bool false)
:
Equations
- Lean.Meta.substCore? mvarId hFVarId symm fvarSubst clearH tryToSkip = Lean.observing? (Lean.Meta.substCore mvarId hFVarId symm fvarSubst clearH tryToSkip)
Instances For
Equations
- Lean.Meta.trySubstVar mvarId hFVarId = do let __do_lift ← Lean.Meta.substVar? mvarId hFVarId pure (__do_lift.getD mvarId)
Instances For
Equations
- Lean.Meta.trySubst mvarId hFVarId = do let __do_lift ← Lean.Meta.subst? mvarId hFVarId pure (__do_lift.getD mvarId)
Instances For
Equations
- One or more equations did not get rendered due to their size.