fact: Fixpoint xforgetR (x:R) (e:xexprR x) {struct e} : expr := match e with | xexprR_var i => expr_var i | xexprR_int k => expr_int k | xexprR_plus _ _ e f => expr_plus (xforgetR _ e) (xforgetR _ f) | xexprR_mult _ _ e f => expr_mult (xforgetR _ e) (xforgetR _ f) | xexprR_unop _ f e => expr_unop f (xforgetR _ e) | xexprR_binop _ _ f e e' => expr_binop f (xforgetR _ e) (xforgetR _ e') | xexprR_part _ f e _ => expr_part f (xforgetR _ e) | xexprR_zero => expr_zero | xexprR_one => expr_one | xexprR_nat n => expr_nat n | xexprR_inv _ e => expr_inv (xforgetR _ e) | xexprR_minus _ _ e f => expr_minus (xforgetR _ e) (xforgetR _ f) | xexprR_power _ e n => expr_power n (xforgetR _ e) end.
imports: CoRN.algebra.CRings CoRN.tactics.AlgReflection