Definition closed {X:TopologicalSpace} (F:Ensemble (point_set X)) :=
  open (Ensembles.Complement F).

(* Specifications: *)
Lemma closed_complement_open: forall {X:TopologicalSpace} (U:Ensemble (point_set X)), closed (Ensembles.Complement U) -> open U.
Lemma closed_union2: forall {X:TopologicalSpace} (F G:Ensemble (point_set X)), closed F -> closed G -> closed (Union F G).
Lemma closed_intersection2: forall {X:TopologicalSpace} (F G:Ensemble (point_set X)), closed F -> closed G -> closed (Intersection F G).
Lemma closed_family_intersection: forall {X:TopologicalSpace} (F:Family (point_set X)), (forall S:Ensemble (point_set X), In F S -> closed S) -> closed (FamilyIntersection F).
Lemma closed_indexed_intersection: forall {X:TopologicalSpace} {A:Type} (F:IndexedFamily A (point_set X)), (forall a:A, closed (F a)) -> closed (IndexedIntersection F).
Lemma closed_finite_indexed_union: forall {X:TopologicalSpace} {A:Type} (F:IndexedFamily A (point_set X)), FiniteT A -> (forall a:A, closed (F a)) -> closed (IndexedUnion F).