Canonicalize an expression (types, instances, support arguments). In
SymM, this isSym.canon. InPP.M(diagnostics), this is the identity.Synthesize an instance, returning
noneon failure. InSymM, this isSym.synthInstance?. InPP.M, this isMeta.synthInstance?.
Instances
@[implicit_reducible, always_inline]
instance
Lean.Meta.Sym.Arith.instMonadCanonOfMonadLift
(m n : Type → Type)
[MonadLift m n]
[MonadCanon m]
:
Equations
- One or more equations did not get rendered due to their size.
def
Lean.Meta.Sym.Arith.MonadCanon.synthInstance
{m : Type → Type}
[Monad m]
[MonadError m]
[MonadCanon m]
(type : Expr)
:
m Expr
Equations
- One or more equations did not get rendered due to their size.