Definition psub  := psub Z0  Z.add Z.sub Z.opp Zeq_bool.Definition popp  := popp Z.opp.Definition padd  := padd Z0  Z.add Zeq_bool.Definition pmul := pmul 0 1 Z.add Z.mul Zeq_bool.Definition normZ  := norm 0 1 Z.add Z.mul Z.sub Z.opp Zeq_bool.Definition eval_pol := eval_pol Z.add Z.mul (fun x => x).

Lemma eval_pol_mul : forall env lhs rhs, eval_pol env (pmul lhs rhs) = eval_pol env lhs * eval_pol env rhs.