Helper functions for converting reified terms back into their denotations.
def
Lean.Grind.CommRing.Power.denoteExpr
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(pw : Power)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Grind.CommRing.Mon.denoteExpr
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(m : Mon)
:
Equations
- Lean.Grind.CommRing.Mon.unit.denoteExpr = Lean.Meta.Grind.Arith.CommRing.denoteNum✝ 1
- (Lean.Grind.CommRing.Mon.mult pw m_2).denoteExpr = do let __do_lift ← pw.denoteExpr Lean.Grind.CommRing.Mon.denoteExpr.go m_2 __do_lift
Instances For
def
Lean.Grind.CommRing.Mon.denoteExpr.go
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(m : Mon)
(acc : Lean.Expr)
:
Equations
- One or more equations did not get rendered due to their size.
- Lean.Grind.CommRing.Mon.denoteExpr.go Lean.Grind.CommRing.Mon.unit acc = pure acc
Instances For
def
Lean.Grind.CommRing.Poly.denoteExpr
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(p : Poly)
:
Equations
- (Lean.Grind.CommRing.Poly.num k).denoteExpr = Lean.Meta.Grind.Arith.CommRing.denoteNum✝ k
- (Lean.Grind.CommRing.Poly.add k m p_2).denoteExpr = do let __do_lift ← Lean.Grind.CommRing.Poly.denoteExpr.denoteTerm k m Lean.Grind.CommRing.Poly.denoteExpr.go p_2 __do_lift
Instances For
def
Lean.Grind.CommRing.Poly.denoteExpr.denoteTerm
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(k : Int)
(m : Mon)
:
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Lean.Grind.CommRing.Poly.denoteExpr.go
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(p : Poly)
(acc : Lean.Expr)
:
Equations
- One or more equations did not get rendered due to their size.
- Lean.Grind.CommRing.Poly.denoteExpr.go (Lean.Grind.CommRing.Poly.num 0) acc = pure acc
Instances For
def
Lean.Grind.CommRing.Expr.denoteExpr
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
(e : Meta.Grind.Arith.CommRing.RingExpr)
:
Instances For
def
Lean.Grind.CommRing.Expr.denoteExpr.go
{M : Type → Type}
[Monad M]
[Meta.Grind.Arith.CommRing.MonadGetRing M]
:
Equations
- One or more equations did not get rendered due to their size.
- Lean.Grind.CommRing.Expr.denoteExpr.go (Lean.Grind.CommRing.Expr.num k) = Lean.Meta.Grind.Arith.CommRing.denoteNum✝ k
- Lean.Grind.CommRing.Expr.denoteExpr.go (Lean.Grind.CommRing.Expr.var x_1) = do let __do_lift ← Lean.Meta.Grind.Arith.CommRing.getRing pure __do_lift.vars[x_1]!
Instances For
def
Lean.Meta.Grind.Arith.CommRing.EqCnstr.denoteExpr
{M : Type → Type}
[Monad M]
[MonadGetRing M]
(c : EqCnstr)
:
M Expr
Equations
- c.denoteExpr = do let __do_lift ← c.p.denoteExpr let __do_lift_1 ← Lean.Meta.Grind.Arith.CommRing.denoteNum✝ 0 Lean.Meta.Grind.Arith.CommRing.mkEq✝ __do_lift __do_lift_1
Instances For
def
Lean.Meta.Grind.Arith.CommRing.PolyDerivation.denoteExpr
{M : Type → Type}
[Monad M]
[MonadGetRing M]
(d : PolyDerivation)
:
M Expr
Equations
- d.denoteExpr = d.p.denoteExpr
Instances For
def
Lean.Meta.Grind.Arith.CommRing.DiseqCnstr.denoteExpr
{M : Type → Type}
[Monad M]
[MonadGetRing M]
(c : DiseqCnstr)
:
M Expr
Equations
- One or more equations did not get rendered due to their size.