Definition lt_or_eq n m := {m > n} + {n = m}.

(* Specifications: *)
Lemma le_decide : forall n m, n <= m -> lt_or_eq n m.
Lemma le_le_S_eq : forall n m, n <= m -> S n <= m \/ n = m.
Lemma discrete_nat : forall n m, n < m -> S n = m \/ (exists r : nat, m = S (S (n + r))).