Definition CRup_nat {R : ConstructiveReals} (x : CRcarrier R)
  : { n : nat  &  x < CR_of_Q R (Z.of_nat n #1) }.Definition CRfloor {R : ConstructiveReals} (a : CRcarrier R)
  : { p : Z  &  prod (CR_of_Q R (p#1) < a)
                     (a < CR_of_Q R (p#1) + CR_of_Q R 2) }.

Lemma CRmult_appart_reg_l : forall {R : ConstructiveReals} (r r1 r2 : CRcarrier R), 0 < r -> (r * r1) ≶ (r * r2) -> r1 ≶ r2.