(** * Setoid compatibility results *)

#[global]
Instance Qplus_comp : Proper (Qeq==>Qeq==>Qeq) Qplus.#[global]
Instance Qopp_comp : Proper (Qeq==>Qeq) Qopp.#[global]
Instance Qminus_comp : Proper (Qeq==>Qeq==>Qeq) Qminus.#[global]
Instance Qmult_comp : Proper (Qeq==>Qeq==>Qeq) Qmult.#[global]
Instance Qinv_comp : Proper (Qeq==>Qeq) Qinv.#[global]
Instance Qdiv_comp : Proper (Qeq==>Qeq==>Qeq) Qdiv.#[global]
Instance Qcompare_comp : Proper (Qeq==>Qeq==>eq) Qcompare.#[global]
Instance Qle_comp : Proper (Qeq==>Qeq==>iff) Qle.#[global]
Instance Qlt_compat : Proper (Qeq==>Qeq==>iff) Qlt.#[global]
Instance Qeqb_comp : Proper (Qeq==>Qeq==>eq) Qeq_bool.#[global]
Instance Qleb_comp : Proper (Qeq==>Qeq==>eq) Qle_bool.

Lemma Qinv_plus_distr : forall a b c, ((a # c) + (b # c) == (a+b) # c)%Q.