Convert the given goal Ctx |- target into a goal containing (userName : type) after the local declaration with if fvarId.
It assumes val has type type, and that type is well-formed after fvarId.
Note that val does not need to be well-formed after fvarId. That is, it may contain variables that are defined after fvarId.
Instances For
Like Lean.MVarId.assertAfter, but asserts the new hypothesis at the earliest point after fvarId
where type is well-formed. Note that val may depend on any variables in the local context.
The expression type may contain metavariables, and this procedure ensures they are well-formed
at the point in the local context where the hypothesis is asserted.
The metavariables in type are instantiated to avoid false dependencies.
Instances For
- userName : Name
- type : Expr
- value : Expr
- binderInfo : BinderInfo
The hypothesis'
BinderInfo - kind : LocalDeclKind
The hypothesis'
LocalDeclKind