End Same_sign.
(** Boolean comparisons *)
Section Zeq_bool.
Inductive Zeq_bool_prop (x y : Z) : bool -> Prop :=
| Zeq_bool_true_ : x = y -> Zeq_bool_prop x y true
| Zeq_bool_false_ : x <> y -> Zeq_bool_prop x y false.

(* Specifications: *)
Theorem Zeq_bool_spec :
forall x y, Zeq_bool_prop x y (Zeq_bool x y).
Theorem Zeq_bool_true :
forall x y, x = y -> Zeq_bool x y = true.
Theorem Zeq_bool_false :
forall x y, x <> y -> Zeq_bool x y = false.
Theorem Zeq_bool_spec :
forall x y, Zeq_bool_prop x y (Zeq_bool x y).
Theorem Zeq_bool_true :
forall x y, x = y -> Zeq_bool x y = true.
Theorem Zeq_bool_false :
forall x y, x <> y -> Zeq_bool x y = false.