- noLetElim : Bool
If true, do not substitute away let-declarations that are used at most once before starting VC generation.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
- config : Config
- specThms : SpecAttr.SpecTheorems
- simpCtx : Meta.Simp.Context
- simprocs : Meta.Simp.SimprocsArray
Instances For
- fuel : Fuel
- simpState : Meta.Simp.State
The verification conditions that have been generated so far. Includes
Type
-valued goals arising from instantiation of specifications.
Instances For
@[reducible, inline]
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Elab.Tactic.Do.ifOutOfFuel x k = do let s ← get match s.fuel with | Lean.Elab.Tactic.Do.Fuel.limited 0 => x | x => k
Instances For
Equations
- Lean.Elab.Tactic.Do.addSubGoalAsVC goal = modify fun (s : Lean.Elab.Tactic.Do.State) => { fuel := s.fuel, simpState := s.simpState, vcs := s.vcs.push goal }
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Elab.Tactic.Do.instMonadLiftSimpMVCGenM = { monadLift := fun {α : Type} (x : Lean.Meta.SimpM α) => Lean.Elab.Tactic.Do.liftSimpM x }
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
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.bvar deBruijnIndex) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.mvar mvarId) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.fvar fvarId) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.const declName us) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.lit a) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.sort u) = true
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.mdata data e_2) = Lean.Elab.Tactic.Do.isDuplicable e_2
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.proj typeName idx e_2) = Lean.Elab.Tactic.Do.isDuplicable e_2
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.lam binderName binderType body binderInfo) = false
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.forallE binderName binderType body binderInfo) = false
- Lean.Elab.Tactic.Do.isDuplicable (Lean.Expr.letE declName type value body nondep) = false
- Lean.Elab.Tactic.Do.isDuplicable (fn.app arg) = (fn.app arg).isAppOf `OfNat.ofNat
Instances For
def
Lean.Elab.Tactic.Do.withSharing
{α : Type}
(name : Name)
(type val : Expr)
(k : Expr → (Expr → VCGenM Expr) → VCGenM α)
(kind : LocalDeclKind := LocalDeclKind.default)
:
VCGenM α
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Lean.Elab.Tactic.Do.step.onFail goal name = Lean.Elab.Tactic.Do.emitVC goal.toExpr name
Instances For
partial def
Lean.Elab.Tactic.Do.step.onGoal
(ctx : Context)
(goal : ProofMode.MGoal)
(name : Name)
:
partial def
Lean.Elab.Tactic.Do.step.onLambda
(ctx : Context)
(goal : ProofMode.MGoal)
(name : Name)
:
partial def
Lean.Elab.Tactic.Do.step.onWPApp
(ctx : Context)
(goal : ProofMode.MGoal)
(name : Name)
:
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.