End DEC_ORDER.
(* some derived theorems on dec_orders *)
Module Type MORE_DEC_ORDERS.
Parameter A : Set.
Parameter le : A -> A -> Prop.
Parameter lt : A -> A -> Prop.

(* Specifications: *)
Axiom le_trans : transitive A le.
Axiom le_refl : reflexive A le.
Axiom le_antisym : antisymmetric A le.
Axiom lt_irreflexive : forall a : A, ~ lt a a.
Axiom lt_trans : transitive A lt.
Axiom lt_not_le : forall a b : A, lt a b -> ~ le b a.
Axiom le_not_lt : forall a b : A, le a b -> ~ lt b a.
Axiom lt_intro : forall a b : A, le a b -> a <> b -> lt a b.
Parameter le_lt_dec : forall a b : A, {le a b} + {lt b a}.