#[global]
Instance seq_cv_morph
: forall (un : nat -> CReal), CMorphisms.Proper
(CMorphisms.respectful CRealEq CRelationClasses.iffT) (seq_cv un).
(* Sharpen the archimedean property : constructive versions of the usual floor and ceiling functions. *)
Definition Rfloor (a : CReal)
: { p : Z  &  inject_Q (p#1) < a < inject_Q (p#1) + 2 }.

(* Specifications: *)
(* ToDo: Move to ConstructiveCauchyAbs.v *)
Lemma Qabs_Rabs : forall q : Q,
inject_Q (Qabs q) == CReal_abs (inject_Q q).
Lemma Qlt_trans_swap_hyp: forall x y z : Q,
(y < z)%Q -> (x < y)%Q -> (x < z)%Q.
Lemma Qle_trans_swap_hyp: forall x y z : Q,
(y <= z)%Q -> (x <= y)%Q -> (x <= z)%Q.