(** * Some Topology on [Rbar] *)
Definition Rbar_locally' (a : Rbar) (P : R -> Prop) :=
match a with
| Finite a => locally' a P
| p_infty => exists M : R, forall x, M < x -> P x
| m_infty => exists M : R, forall x, x < M -> P x
end.
Definition Rbar_locally (a : Rbar) (P : R -> Prop) :=
match a with
| Finite a => locally a P
| p_infty => exists M : R, forall x, M < x -> P x
| m_infty => exists M : R, forall x, x < M -> P x
end.
Global Instance Rbar_locally'_filter :
forall x, ProperFilter (Rbar_locally' x).
Global Instance Rbar_locally_filter :
forall x, ProperFilter (Rbar_locally x).
(** Open sets in [Rbar] *)

(* Specifications: *)
Lemma open_Rbar_lt :
forall y, open (fun u : R => Rbar_lt u y).
Lemma open_Rbar_gt :
forall y, open (fun u : R => Rbar_lt y u).
Lemma open_Rbar_lt' :
forall x y, Rbar_lt x y -> Rbar_locally x (fun u => Rbar_lt u y).
Lemma open_Rbar_gt' :
forall x y, Rbar_lt y x -> Rbar_locally x (fun u => Rbar_lt y u).
Lemma Rbar_locally'_le :
forall x, filter_le (Rbar_locally' x) (Rbar_locally x).
Lemma Rbar_locally'_le_finite :
forall x : R, filter_le (Rbar_locally' x) (locally x).