Record fraction : Type := 
  {num : R; den : R; den_prf : ~ Equal den (monoid_unit R)}.Record fraction : Type := 
  {num : R; den : R; den_prf : ~ Equal den (monoid_unit R)}.Record fraction : Type := 
  {num : R; den : R; den_prf : ~ Equal den (monoid_unit R)}.Record fraction : Type := 
  {num : R; den : R; den_prf : ~ Equal den (monoid_unit R)}.Definition eqfraction (x y : fraction) :=
  Equal (ring_mult (num x) (den y)) (ring_mult (num y) (den x)).

(* Specifications: *)
Lemma eqfraction_refl : reflexive eqfraction.