End Nat_Order.
(* the natural order on booleans ( false < true ) *)
Definition bool_le (b b' : bool) :=
if b then if b' then True else False else True.
Definition bool_lt (b b' : bool) :=
if b then False else if b' then True else False.
Module Bool_Order : DEC_ORDER with Definition A := bool with Definition
le := bool_le with Definition lt := bool_lt.
Definition A := bool.
Definition le := bool_le.
Definition lt := bool_lt.

Theorem lt_le_weak : forall a b : A, lt a b -> le a b.