Equations
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
- One or more equations did not get rendered due to their size.
Instances For
Synthesize inhabited instance for a given type
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
- 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
- Auto.Meta.isTypeCorrectCore e = do let type? ← Auto.Meta.coreCheck e pure type?.isSome
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Auto.Meta.exToExcept x = do let r ← tryCatch (do let v ← x pure (Except.ok v)) fun (e : Lean.Exception) => pure (Except.error e) pure r
Instances For
Equations
- Auto.Meta.runtimeExToExcept x = Lean.tryCatchRuntimeEx (do let v ← x pure (Except.ok v)) fun (e : Lean.Exception) => pure (Except.error e)
Instances For
Workaround for modifying the lctx
field of Meta.Context
Equations
- Auto.Meta.Context.modifyLCtx ctx lctx = (Lean.Meta.withLCtx' lctx read).run' ctx
Instances For
Workaround for modifying the localInstances
field of Meta.Context
Equations
- Auto.Meta.Context.modifyLocalInstances ctx localInsts = (Lean.Meta.withLCtx ctx.lctx localInsts read).run' ctx
Instances For
Replace occurrences of p
in non-dependent positions in e
with q
. The type
of the resulting expression should be identical to the type of e
· Both e
and q
are not supposed to contain loose bvars
· We detect subterms equivalent to p
using key-matching.
That is, only perform isDefEq
tests when the head symbol of substerm is equivalent to head symbol of p
.
· We only abstract non-dependent positions
That is, if there is a function application f a
and the argument of
f
is dependent, then occurrences of p
in a
will not be abstracted
By default, all occurrences are abstracted,
but this behavior can be controlled using the occs
parameter.
All matches of p
in e
are considered for occurrences,
but for each match that is included by the occs
parameter,
metavariables appearing in p
(or e
) may become instantiated,
affecting the possibility of subsequent matches.
For matches that are not included in the occs
parameter, the metavariable context is rolled back
to prevent blocking subsequent matches which require different instantiations.
Equations
- One or more equations did not get rendered due to their size.