[proofplan]
We prove the cycle (i) $\Rightarrow$ (ii) $\Rightarrow$ (iii) $\Rightarrow$ (iv) $\Rightarrow$ (i). The implication (i) $\Rightarrow$ (ii) approximates the indicator of an [open set](/page/Open%20Set) from below by continuous [functions](/page/Function) using distance to the complement. The equivalence (ii) $\Leftrightarrow$ (iii) is immediate by complementation. For (ii)+(iii) $\Rightarrow$ (iv), the key observation is that $\mu(\partial A) = 0$ forces $\mu(\overline{A}) = \mu(\mathring{A})$, squeezing $\mu_n(A)$ between the open-[set](/page/Set) liminf and the closed-set limsup. For (iv) $\Rightarrow$ (i), we use the layer-cake representation $\int f \, d\mu_n = \int_0^K \mu_n(\{f \geq t\}) \, d\mathcal{L}^1(t)$ and pass (iv) through the [integral](/page/Integral) via the [Dominated Convergence Theorem](/theorems/4).
[/proofplan]
[step:(i) $\Rightarrow$ (ii): Approximate $\mathbb{1}_G$ from below by bounded continuous functions]
Let $G \subset M$ be open. If $G = M$, then $\mu_n(G) = 1 = \mu(G)$ for all $n$ and the result holds. Assume $G^c \neq \varnothing$. For each integer $K \geq 1$, define
\begin{align*}
f_K : M &\to [0,1] \\
x &\mapsto \min\{1, \, K \cdot d(x, G^c)\},
\end{align*}
where $d(x, G^c) := \inf_{y \in G^c} d(x,y)$. Then $f_K$ is continuous (it is the composition of the $1$-Lipschitz function $d(\cdot, G^c)$ with the continuous function $\min\{1, K \cdot (\cdot)\}$), bounded by $1$, and satisfies $0 \leq f_K \leq \mathbb{1}_G$ (since $f_K(x) = 0$ when $x \in G^c$ and $f_K(x) \leq 1$ when $x \in G$).
Moreover, $f_K \uparrow \mathbb{1}_G$ pointwise as $K \to \infty$: for $x \notin G$, $d(x, G^c) = 0$ so $f_K(x) = 0$; for $x \in G$, $d(x, G^c) > 0$ (since $G$ is open), so $K \cdot d(x, G^c) \geq 1$ for all $K \geq 1/d(x, G^c)$, giving $f_K(x) = 1$ for large $K$.
By hypothesis (i), $\int_M f_K \, d\mu_n \to \int_M f_K \, d\mu$ as $n \to \infty$ for each fixed $K$. Since $f_K \leq \mathbb{1}_G$,
\begin{align*}
\liminf_{n \to \infty} \mu_n(G) \geq \liminf_{n \to \infty} \int_M f_K \, d\mu_n = \int_M f_K \, d\mu.
\end{align*}
Letting $K \to \infty$ and applying the [Monotone Convergence Theorem](/theorems/509) (the functions $f_K$ increase pointwise to $\mathbb{1}_G$),
\begin{align*}
\liminf_{n \to \infty} \mu_n(G) \geq \lim_{K \to \infty} \int_M f_K \, d\mu = \int_M \mathbb{1}_G \, d\mu = \mu(G).
\end{align*}
[guided]
The idea is to sandwich: we cannot test $\mu_n(G) = \int \mathbb{1}_G \, d\mu_n$ directly because $\mathbb{1}_G$ is not continuous. Instead, we approximate $\mathbb{1}_G$ from below by continuous functions.
The function $f_K(x) = \min\{1, K \cdot d(x, G^c)\}$ is a natural choice: it equals $0$ on $G^c$, equals $1$ deep inside $G$ (where $d(x, G^c) \geq 1/K$), and ramps linearly in the transition zone. As $K \to \infty$, the transition zone shrinks to $\partial G$ and $f_K \uparrow \mathbb{1}_G$.
The approximation is one-sided ($f_K \leq \mathbb{1}_G$), which is why we obtain only a $\liminf$ bound and not full convergence. This asymmetry is fundamental: for open sets we get $\liminf \geq$, and for [closed sets](/page/Closed%20Set) we get $\limsup \leq$. The two together squeeze $\mu_n(A) \to \mu(A)$ only when $\mu(\partial A) = 0$.
[/guided]
[/step]
[step:(ii) $\Leftrightarrow$ (iii): Pass between open and closed sets by complementation]
$F \subset M$ is closed if and only if $G := M \setminus F$ is open. Then $\mu_n(F) = 1 - \mu_n(G)$ and $\mu(F) = 1 - \mu(G)$, so
\begin{align*}
\limsup_{n \to \infty} \mu_n(F) = 1 - \liminf_{n \to \infty} \mu_n(G) \leq 1 - \mu(G) = \mu(F).
\end{align*}
The reverse implication (iii) $\Rightarrow$ (ii) follows by the identical argument with $F$ and $G$ interchanged.
[/step]
[step:(ii) + (iii) $\Rightarrow$ (iv): Squeeze $\mu_n(A)$ between [interior](/page/Interior) and [closure](/page/Closure) when $\mu(\partial A) = 0$]
Let $A \subset M$ be a Borel set with $\mu(\partial A) = 0$, where $\partial A = \overline{A} \setminus \mathring{A}$. Since $\mathring{A} \subset A \subset \overline{A}$ and $\overline{A} = \mathring{A} \cup \partial A$, we have
\begin{align*}
\mu(\mathring{A}) \leq \mu(A) \leq \mu(\overline{A}) = \mu(\mathring{A}) + \mu(\partial A) = \mu(\mathring{A}),
\end{align*}
so $\mu(\mathring{A}) = \mu(A) = \mu(\overline{A})$. The interior $\mathring{A}$ is open and the closure $\overline{A}$ is closed, so applying (ii) and (iii):
\begin{align*}
\mu(A) = \mu(\mathring{A}) \leq \liminf_{n \to \infty} \mu_n(\mathring{A}) \leq \liminf_{n \to \infty} \mu_n(A) \leq \limsup_{n \to \infty} \mu_n(A) \leq \limsup_{n \to \infty} \mu_n(\overline{A}) \leq \mu(\overline{A}) = \mu(A).
\end{align*}
All inequalities are equalities, giving $\mu_n(A) \to \mu(A)$.
[guided]
The condition $\mu(\partial A) = 0$ is the right compatibility condition between the [topology](/page/Topology) and the [limit](/page/Limit) measure: it forces the $\mu$-masses of the interior and closure to agree, creating room for the squeeze.
The chain of inequalities uses only two facts: (a) $\mathring{A} \subset A \subset \overline{A}$ (so the $\mu_n$-measures are nested), and (b) the liminf/limsup bounds from (ii) and (iii). The role of $\mu(\partial A) = 0$ is to make the outer bounds tight: without it, there would be a gap of size $\mu(\partial A)$ between $\mu(\mathring{A})$ and $\mu(\overline{A})$, and the squeeze would fail.
Sets with $\mu(\partial A) = 0$ are called $\mu$-[continuity](/page/Continuity) sets. In $\mathbb{R}$, the half-lines $(-\infty, t]$ are $\mu$-continuity sets for all but countably many $t$ (since $\partial(-\infty, t] = \{t\}$ and $\mu$ can charge at most countably many points).
[/guided]
[/step]
[step:(iv) $\Rightarrow$ (i): Use the layer-cake representation and dominated convergence]
Let $f : M \to \mathbb{R}$ be bounded and continuous. Without loss of generality, assume $f \geq 0$ (otherwise decompose $f = f^+ - f^-$ and apply the argument to each part). Let $K := \sup_{x \in M} f(x) < \infty$. The layer-cake (Cavalieri) representation gives
\begin{align*}
\int_M f \, d\mu_n = \int_0^K \mu_n(\{f \geq t\}) \, d\mathcal{L}^1(t).
\end{align*}
We verify the hypotheses for applying (iv) to the superlevel sets $A_t := \{x \in M : f(x) \geq t\}$:
\begin{align*}
\partial A_t = \overline{\{f \geq t\}} \setminus \{f > t\} \subset \{f = t\}.
\end{align*}
The [boundary](/page/Boundary) $\partial A_t$ is contained in $\{f = t\}$. Since $\mu$ is a finite measure, the set $\{t > 0 : \mu(\{f = t\}) > 0\}$ is at most countable (the sets $\{f = t\}$ for distinct $t$ are disjoint, and a finite measure can charge at most countably many disjoint sets with positive measure). Therefore $\mu(\partial A_t) = 0$ for all but countably many $t \in [0, K]$, and (iv) gives
\begin{align*}
\mu_n(\{f \geq t\}) \to \mu(\{f \geq t\}) \quad \text{for } \mathcal{L}^1\text{-a.e. } t \in [0, K].
\end{align*}
The integrand $t \mapsto \mu_n(\{f \geq t\})$ is bounded by $1$ for all $n$. By the [Dominated Convergence Theorem](/theorems/4) applied to the [measure space](/page/Measure%20Space) $([0, K], \mathcal{B}([0,K]), \mathcal{L}^1)$ with dominating function $g \equiv 1$,
\begin{align*}
\int_M f \, d\mu_n = \int_0^K \mu_n(\{f \geq t\}) \, d\mathcal{L}^1(t) \to \int_0^K \mu(\{f \geq t\}) \, d\mathcal{L}^1(t) = \int_M f \, d\mu.
\end{align*}
[guided]
This is the most delicate implication. We must recover full [weak convergence](/page/Weak%20Convergence) $\int f \, d\mu_n \to \int f \, d\mu$ for all bounded continuous $f$ from the seemingly weaker condition that $\mu_n(A) \to \mu(A)$ for $\mu$-continuity sets $A$.
The layer-cake representation converts the integral $\int f \, d\mu$ into an integral over the superlevel sets $\{f \geq t\}$:
\begin{align*}
\int_M f \, d\mu = \int_0^K \mu(\{f \geq t\}) \, d\mathcal{L}^1(t).
\end{align*}
This identity holds for any non-negative measurable $f$ and any measure $\mu$. The proof is a direct application of [Fubini's Theorem](/theorems/513): $\int f \, d\mu = \int_M \int_0^{f(x)} d\mathcal{L}^1(t) \, d\mu(x) = \int_0^K \int_M \mathbb{1}_{\{f \geq t\}}(x) \, d\mu(x) \, d\mathcal{L}^1(t)$.
The key question is: are the superlevel sets $\{f \geq t\}$ $\mu$-continuity sets? The boundary satisfies $\partial\{f \geq t\} \subset \{f = t\}$ (since $\{f > t\}$ is open by continuity of $f$ and $\{f > t\} \subset \{f \geq t\} \subset \overline{\{f > t\}} \cup \{f = t\}$). A finite measure can charge at most countably many level sets $\{f = t\}$ with positive mass (since these sets are pairwise disjoint). So $\mu(\partial\{f \geq t\}) \leq \mu(\{f = t\}) = 0$ for all but countably many $t$, and (iv) applies for $\mathcal{L}^1$-a.e. $t$.
The [Dominated Convergence Theorem](/theorems/4) then passes the pointwise-a.e. convergence $\mu_n(\{f \geq t\}) \to \mu(\{f \geq t\})$ through the $\mathcal{L}^1$-integral. The dominating function is $g(t) = 1$ (since all $\mu_n$ are probability measures), and $\int_0^K 1 \, d\mathcal{L}^1(t) = K < \infty$, so $g \in L^1([0,K])$.
[/guided]
[/step]