#[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: *)
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.
Lemma Qpower_2powneg_le_inv: forall (n : positive), (2 * 2 ^ Z.neg n <= 1 # n)%Q.
Lemma Pospow_lin_le_2pow: forall (n : positive), (2 * n <= 2 ^ n)%positive.
Lemma CReal_cv_self : forall (x : CReal) (n : positive), CReal_abs (x - inject_Q (seq x (Z.neg n))) <= inject_Q (1#n).
Lemma CReal_cv_self' : forall (x : CReal) (n : Z), CReal_abs (x - inject_Q (seq x n)) <= inject_Q (2^n).