(e: Expr V) := match e with | Var v => PX 1 v 0 | Zero => 0 | One => 1 | Plus a b => add ( a) ( b) | Mult a b => mul ( a) ( b) | Neg a => mulC (almost_negate 1) ( a) end.
Require Import Import Quoting.