[proofplan]
We prove both directions. For the forward direction (cluster point implies convergent subnet), we construct a subnet by refining the index set using pairs $(\alpha, U)$ where $\alpha$ witnesses the net entering the neighbourhood $U$ of $x$. For the converse (convergent subnet implies cluster point), we use the cofinality and convergence properties of the subnet to show the original net frequently visits every neighbourhood of $x$.
[/proofplan]
[step:Recall the definitions of cluster point and subnet]
A point $x \in X$ is a **cluster point** of a net $(s_\alpha)_{\alpha \in D}$ if for every open neighbourhood $U$ of $x$ and every $\alpha_0 \in D$, there exists $\alpha \succeq \alpha_0$ with $s_\alpha \in U$. Equivalently, the net is frequently in every neighbourhood of $x$.
A **subnet** of $(s_\alpha)_{\alpha \in D}$ is a net $(s_{\varphi(\beta)})_{\beta \in E}$ where $(E, \preceq_E)$ is a directed set and the map $\varphi: E \to D$ satisfies:
1. $\varphi$ is **order-preserving**: $\beta_1 \preceq_E \beta_2$ implies $\varphi(\beta_1) \preceq_D \varphi(\beta_2)$, and
2. $\varphi$ is **cofinal**: for every $\alpha \in D$, there exists $\beta \in E$ with $\varphi(\beta) \succeq_D \alpha$.
[/step]
[step:Construct a convergent subnet from a cluster point]
Assume $x$ is a cluster point of $(s_\alpha)_{\alpha \in D}$. Define the index set
\begin{align*}
E := \{(\alpha, U) : \alpha \in D,\, U \in \tau,\, x \in U,\, s_\alpha \in U\},
\end{align*}
ordered by $(\alpha_1, U_1) \preceq_E (\alpha_2, U_2)$ if and only if $\alpha_1 \preceq_D \alpha_2$ and $U_2 \subset U_1$.
[claim:$E$ is directed]
The set $(E, \preceq_E)$ is a directed set.
[/claim]
[proof]
Let $(\alpha_1, U_1), (\alpha_2, U_2) \in E$. Since $D$ is directed, there exists $\gamma \in D$ with $\gamma \succeq_D \alpha_1$ and $\gamma \succeq_D \alpha_2$. Set $W := U_1 \cap U_2$, which is open, and $x \in W$ since $x \in U_1$ and $x \in U_2$. Since $x$ is a cluster point and $W$ is an open neighbourhood of $x$, there exists $\delta \in D$ with $\delta \succeq_D \gamma$ and $s_\delta \in W$. Then $(\delta, W) \in E$ (since $s_\delta \in W$ and $x \in W$), and $(\delta, W) \succeq_E (\alpha_1, U_1)$ (since $\delta \succeq_D \alpha_1$ and $W \subset U_1$) and $(\delta, W) \succeq_E (\alpha_2, U_2)$ (since $\delta \succeq_D \alpha_2$ and $W \subset U_2$).
[/proof]
Define the map $\varphi: E \to D$ by $\varphi(\alpha, U) := \alpha$. This is order-preserving by definition of $\preceq_E$. It is cofinal: for any $\alpha_0 \in D$, since $x$ is a cluster point, there exists $\alpha \succeq_D \alpha_0$ with $s_\alpha \in X$. Then $(\alpha, X) \in E$ and $\varphi(\alpha, X) = \alpha \succeq_D \alpha_0$.
The subnet $(s_{\varphi(\alpha, U)})_{(\alpha, U) \in E} = (s_\alpha)_{(\alpha, U) \in E}$ converges to $x$: given any open neighbourhood $V$ of $x$, since $x$ is a cluster point, there exists $\alpha_0 \in D$ with $s_{\alpha_0} \in V$. Then $(\alpha_0, V) \in E$. For any $(\alpha, U) \succeq_E (\alpha_0, V)$, we have $U \subset V$, and the defining condition $s_\alpha \in U$ gives $s_\alpha \in U \subset V$.
[guided]
Assume $x$ is a cluster point of $(s_\alpha)_{\alpha \in D}$. We must construct a subnet converging to $x$. The key idea is to build a new directed set that simultaneously refines both the original index set $D$ and the neighbourhood system of $x$.
Define
\begin{align*}
E := \{(\alpha, U) : \alpha \in D,\, U \in \tau,\, x \in U,\, s_\alpha \in U\}.
\end{align*}
Each element of $E$ is a "witness pair": $\alpha$ is an index in the original net, and $U$ is an open neighbourhood of $x$ that $s_\alpha$ actually belongs to. The ordering $(\alpha_1, U_1) \preceq_E (\alpha_2, U_2)$ iff $\alpha_1 \preceq_D \alpha_2$ and $U_2 \subset U_1$ ensures that moving forward in $E$ means moving forward in $D$ (cofinality) while simultaneously shrinking the neighbourhood (convergence).
Why is $E$ directed? Given $(\alpha_1, U_1)$ and $(\alpha_2, U_2)$ in $E$, we need to find a common upper bound. First, choose $\gamma \succeq_D \alpha_1, \alpha_2$ using directedness of $D$. Set $W = U_1 \cap U_2$, an open neighbourhood of $x$. Now we need $\delta \succeq_D \gamma$ with $s_\delta \in W$. This is precisely where the cluster point hypothesis is consumed: since $x$ is a cluster point, the net frequently visits $W$, so such $\delta$ exists. Then $(\delta, W)$ is the required upper bound.
The reparametrisation map $\varphi: E \to D$, $\varphi(\alpha, U) = \alpha$, is order-preserving (immediate from the first component of the order) and cofinal: given any $\alpha_0 \in D$, the cluster point condition gives $\alpha \succeq_D \alpha_0$ with $s_\alpha \in X$, so $(\alpha, X) \in E$ with $\varphi(\alpha, X) \succeq_D \alpha_0$.
For convergence of the subnet to $x$: let $V$ be an open neighbourhood of $x$. By the cluster point property, there exists $\alpha_0 \in D$ with $s_{\alpha_0} \in V$, so $(\alpha_0, V) \in E$. For any $(\alpha, U) \succeq_E (\alpha_0, V)$, the condition $U \subset V$ together with $s_\alpha \in U$ yields $s_\alpha \in V$. So the subnet is eventually in $V$.
[/guided]
[/step]
[step:Show that convergence of a subnet implies the original net clusters]
Conversely, suppose $(s_{\varphi(\beta)})_{\beta \in E}$ is a subnet of $(s_\alpha)_{\alpha \in D}$ converging to $x$, where $\varphi: E \to D$ is order-preserving and cofinal. We verify that $x$ is a cluster point of the original net.
Let $U$ be an open neighbourhood of $x$ and let $\alpha_0 \in D$. We must find $\alpha \succeq_D \alpha_0$ with $s_\alpha \in U$. Since $\varphi$ is cofinal, there exists $\beta_1 \in E$ with $\varphi(\beta_1) \succeq_D \alpha_0$. Since $(s_{\varphi(\beta)})$ converges to $x$, there exists $\beta_2 \in E$ such that $s_{\varphi(\beta)} \in U$ for all $\beta \succeq_E \beta_2$. Since $E$ is directed, there exists $\beta_3 \in E$ with $\beta_3 \succeq_E \beta_1$ and $\beta_3 \succeq_E \beta_2$.
Set $\alpha := \varphi(\beta_3)$. Since $\varphi$ is order-preserving and $\beta_3 \succeq_E \beta_1$, we have $\alpha = \varphi(\beta_3) \succeq_D \varphi(\beta_1) \succeq_D \alpha_0$. Since $\beta_3 \succeq_E \beta_2$, we have $s_\alpha = s_{\varphi(\beta_3)} \in U$. Therefore $x$ is a cluster point of $(s_\alpha)_{\alpha \in D}$.
[guided]
Conversely, suppose $(s_{\varphi(\beta)})_{\beta \in E}$ is a subnet converging to $x$, with $\varphi: E \to D$ order-preserving and cofinal. We show $x$ is a cluster point of the original net $(s_\alpha)_{\alpha \in D}$.
The cluster point condition requires: for every open neighbourhood $U$ of $x$ and every $\alpha_0 \in D$, there exists $\alpha \succeq_D \alpha_0$ with $s_\alpha \in U$. We need to find a single index $\alpha$ that is simultaneously "late enough" in $D$ (past $\alpha_0$) and "close enough" to $x$ (in $U$). The subnet provides both ingredients through its two defining properties.
**Cofinality gives lateness.** Since $\varphi$ is cofinal, there exists $\beta_1 \in E$ with $\varphi(\beta_1) \succeq_D \alpha_0$.
**Convergence gives closeness.** Since $(s_{\varphi(\beta)})$ converges to $x$, there exists $\beta_2 \in E$ with $s_{\varphi(\beta)} \in U$ for all $\beta \succeq_E \beta_2$.
**Directedness combines both.** Since $E$ is directed, there exists $\beta_3 \succeq_E \beta_1, \beta_2$. Set $\alpha = \varphi(\beta_3)$. Then:
- $\alpha \succeq_D \alpha_0$: since $\varphi$ is order-preserving and $\beta_3 \succeq_E \beta_1$, we get $\varphi(\beta_3) \succeq_D \varphi(\beta_1) \succeq_D \alpha_0$.
- $s_\alpha \in U$: since $\beta_3 \succeq_E \beta_2$, convergence gives $s_{\varphi(\beta_3)} \in U$.
This argument makes transparent why a subnet requires both the order-preserving property and cofinality. Order-preservation alone would not guarantee that the reparametrised indices reach arbitrarily far in $D$; cofinality alone would not guarantee that closeness to $x$ in $E$ translates to closeness in $D$.
[/guided]
[/step]