Definition nZterm : list (Term A n) -> Prop.Definition canonical (a : list (Term A n)) : Prop := olist a /\ nZterm a.

Theorem canonical_cons : forall l a b, ltT b a -> ~ zeroP (A:=A) A0 eqA (n:=n) a -> canonical (pX b l) -> canonical (pX a (pX b l)).