(** ** Least upper bound and Greatest Lower Bound *)
Definition Rbar_is_lub (E : Rbar -> Prop) (l : Rbar) :=
Rbar_is_upper_bound E l /\
(forall b : Rbar, Rbar_is_upper_bound E b -> Rbar_le l b).
Definition Rbar_is_glb (E : Rbar -> Prop) (l : Rbar) :=
Rbar_is_lower_bound E l /\
(forall b : Rbar, Rbar_is_lower_bound E b -> Rbar_le b l).

Lemma is_lub_Rbar_correct (E : R -> Prop) (l : Rbar) :
is_lub_Rbar E l <-> Rbar_is_lub (fun x => is_finite x /\ E x) l.