(* ToDo: This is not efficient.
   We take the n for the 2^n lower bound fro x>0.
   This limit can be arbitrarily small and far away from beeing tight.
   To make this really computational, we need to compute a tight
   limit starting from scale x and going down in steps of say 16 bits,
   something which is still easy to compute but likely to succeed. *)

Definition CRealLowerBound (x : CReal) (xPos : 0<x) : Z :=
  proj1_sig (xPos).

(* Specifications: *)
Lemma CRealLowerBoundSpec: forall (x : CReal) (xPos : 0<x), forall p : Z, (p <= (CRealLowerBound x xPos))%Z -> (seq x p > 2^(CRealLowerBound x xPos))%Q.
Lemma CRealLowerBound_lt_scale: forall (r : CReal) (Hrpos : 0 < r), (CRealLowerBound r Hrpos < scale r)%Z.