Definition ltT (a b : Term A n) : Prop := ltM (T2M a) (T2M b).

(* Specifications: *)
Theorem ltT_trans : transitive (Term A n) ltT.
Lemma eqT_compat_ltTr : forall a b c : Term A n, eqT b c -> ltT a b -> ltT a c.
Lemma eqT_compat_ltTl : forall a b c : Term A n, eqT b c -> ltT b a -> ltT c a.
Theorem eqT_dec : forall x y : Term A n, {eqT x y} + {~ eqT x y}.
Theorem ltT_dec : forall x y : Term A n, {ltT x y} + {ltT y x} + {eqT x y}.
Lemma ltT_not_eqT : forall x y : Term A n, eqT x y -> ~ ltT x y.
Lemma eqT_not_ltT : forall x y : Term A n, ltT x y -> ~ eqT x y.
Theorem ltT_not_refl : forall x : Term A n, ~ ltT x x.
Lemma ltT_not_ltT : forall x y : Term A n, ltT x y -> ~ ltT y x.
Lemma ltT_eqT : forall a b c d : Term A n, eqT a b -> eqT c d -> ltT a c -> ltT b d.
Lemma ltT_eqTr : forall a b c : Term A n, eqT a b -> ltT a c -> ltT b c.
Lemma ltT_eqTl : forall a b c : Term A n, eqT a b -> ltT c a -> ltT c b.
Theorem multTerm_ltT_l : forall m1 m2 m3, ltT m1 m2 -> ltT (multTerm multA m3 m1) (multTerm multA m3 m2).
Theorem multTerm_ltT_r : forall m1 m2 m3, ltT m1 m2 -> ltT (multTerm multA m1 m3) (multTerm multA m2 m3).
Theorem T1_is_min_ltT : forall a, ~ ltT a (T1 A1 n).
Theorem minusTerm_ltT_l : forall a b c, eqT a b -> ltT a c -> ltT (minusTerm minusA a b) c.
Theorem invTerm_ltT_l : forall a c, ltT a c -> ltT (invTerm invA a) c.