Definition continuous : Prop :=
  forall V:Ensemble (point_set Y), open V ->
  open (inverse_image f V).Definition continuous_at (x:point_set X) : Prop :=
  forall V:Ensemble (point_set Y),
  neighborhood V (f x) -> neighborhood (inverse_image f V) x.

Lemma continuous_at_open_neighborhoods: forall x:point_set X, (forall V:Ensemble (point_set Y), open_neighborhood V (f x) -> neighborhood (inverse_image f V) x) -> continuous_at x.