(*
Definition eqRat_setoid : Setoid_Theory Rat eqRat.
econstructor; red.
eapply eqRat_refl.
eapply eqRat_symm.
eapply eqRat_trans.
Defined.
*)

Add Parametric Relation : Rat leRat
  reflexivity proved by leRat_refl
  transitivity proved by leRat_trans
    as leRat_rel.Add Parametric Relation : Rat eqRat 
  reflexivity proved by eqRat_refl
  symmetry proved by eqRat_symm
  transitivity proved by eqRat_trans
  as eqRat_rel.Global Instance Subrelation_eq_le : subrelation eqRat leRat.

(* Specifications: *)
Theorem rat0_le_all : forall r, 0 <= r.
Theorem rat1_ne_rat0 : ~ (eqRat 1 0).
Theorem rat0_ne_rat1 : ~ (eqRat 0 1).
Theorem ratMult_comm : forall (r1 r2 : Rat), eqRat (ratMult r1 r2) (ratMult r2 r1).