(** ** Properties of equality *)

(* Specifications: *)
Theorem eq_sym:
forall x y, eq x y = eq y x.
Theorem eq_spec: forall (x y: int), if eq x y then x = y else x <> y.
Theorem eq_true: forall x, eq x x = true.
Theorem eq_false: forall x y, x <> y -> eq x y = false.
Theorem eq_signed:
forall x y, eq x y = if zeq (signed x) (signed y) then true else false.
Theorem eq_sym:
forall x y, eq x y = eq y x.
Theorem eq_spec: forall (x y: int), if eq x y then x = y else x <> y.
Theorem eq_true: forall x, eq x x = true.
Theorem eq_false: forall x y, x <> y -> eq x y = false.
Theorem eq_signed:
forall x y, eq x y = if zeq (signed x) (signed y) then true else false.