$f$ is continuous if and only if $\text{osc}(f,x) = 0$ in a generic Hausdorff space Let $(X,\tau)$ be a  Hausdorff topological space and $f:X\rightarrow \mathbb{R}$ be a function.  Let $x\in X$ and  $U(x)$ being the of neighbourhood sets of $x$. Define the oscillation of $f$ at $x$ by $$\text{osc}(f,x) = \inf_{V \in U(x)}\bigg\{\sup \big\{|f(z) - f(y)| : z, y \in V\big\}\bigg\}.$$
Prove that $f$ is continuous if and only if $\text{osc}(f,x) = 0$,
the set $\{x \in X : \text{osc}(f) \geq \varepsilon\}$, where $\varepsilon \geq 0$, is closed and that the sets:
$$\{x \in X : f \text{ continuous at } \ x\} \quad \{x \in X : f \text{ not continuous at } \ x\}$$
are a $G_\delta$ and a $F_\sigma$ set respectively.
I've seen many solutions to this problem, but they all have in common that $X$ is a metric space, but I have no metric to work with, so I don't even know how to handle this problem.
 A: *

*$f$ is continous at $x$ $\Leftrightarrow$ $\operatorname{osc}(f,x) = 0$:

$\Rightarrow$: Let $\epsilon > 0$. There exists $V \in U(x)$ such that $\lvert f(y) - f(x) \rvert < \epsilon/2$ for all $y \in V$ . Then for all $y,z \in V$ we have $\lvert f(y) - f(z) \rvert < \epsilon$, thus $\sup \big\{|f(z) - f(y)| : z, y \in V\big\} \le \epsilon$. Hence  $\operatorname{osc}(f,x) \le \epsilon$ for all $\epsilon > 0$. We conclude  $\operatorname{osc}(f,x) = 0$.
$\Leftarrow$: Let $\epsilon > 0$. Since $\operatorname{osc}(f,x) = 0$, there exists $V \in U(x)$ such that $\sup \big\{|f(z) - f(y)| : z, y \in V\big\} <\epsilon$. Therefore $\lvert f(y) - f(x) \rvert < \epsilon$ for all $y \in V$.


*$\{x \in X :\operatorname{osc}(f,x) \geq \varepsilon\}$ is closed:

This is same as $X_\epsilon = \{x \in X :\operatorname{osc}(f,x) < \varepsilon\}$ being open. So let $x \in X_\epsilon$. There exists $V \in U(x)$ such that $\sup \big\{|f(z) - f(y)| : z, y \in V\big\} < \epsilon$. We claim that $V \subset X_\epsilon$. If $x' \in V$, then clearly $V \in U(x')$. Since $\sup \big\{|f(z) - f(y)| : z, y \in V\big\} < \epsilon$, we see that $\operatorname{osc}(f,x') < \varepsilon$, i.e. $x' \in X_\epsilon$.


*$\{x \in X : f \text{ continuous at } \ x\}$ is a $G_\delta$ set:

We have $\operatorname{osc}(f,x) = 0$ iff $\operatorname{osc}(f,x) < 1/n$ for all $n$, i.e. $x \in  X_{1/n}$ for all $n$. Hence
$$\{x \in X : f \text{ continuous at } \ x\} =\{x \in X : \operatorname{osc}(f,x) = 0 \} = \bigcap_{n=1}^\infty X_{1/n}$$


*$\{x \in X : f \text{ not continuous at } \ x\}$ is an $F_\sigma$ set:

This set is the complement of the $G_\delta$ set $\{x \in X : f \text{ continuous at } \ x\}$, thus it is an $F_\sigma$ set.
Remark:
We did not use that $X$ is Hausdorff.
