Module Import Private_BootStrap.
(** ** Operations and constants *)
(** ** Addition is commutative *)
(** ** Opposite distributes over addition *)
(** ** Opposite is injective *)
(** ** Addition is associative *)
Local Arguments add !x !y.
(** ** Opposite is inverse for addition *)
(** ** Multiplication and Opposite *)
(** ** Distributivity of multiplication over addition *)
End Private_BootStrap.
(** * Proofs of specifications *)
(** ** Specification of constants *)
(** ** Specification of addition *)
(** ** Specification of opposite *)
(** ** Specification of successor and predecessor *)
Local Arguments pos_sub : simpl nomatch.
(** ** Specification of subtraction *)
(** ** Specification of multiplication *)
(** ** Specification of comparisons and order *)

Lemma compare_sub n m : (n ?= m) = (n - m ?= 0).