If $\lim_n \mu_n ([0, r]) = \mu ([0, r])$ for all $r \in D$, then $\mu_n \to \mu$ in distribution Let $T>0$ and $\mu, \mu_n$ be Borel probability measures on the closed interval $[0, T]$. Let $D$ be a dense subset of $[0, T]$. I would like to prove that

Theorem If $\lim_n \mu_n ([0, r]) = \mu ([0, r])$ for all $r \in D$, then $\mu_n \to \mu$ in distribution.

Could you elaborate on how to finish my below failed attempt?

Proof Fix $r \in [0, T]$ such that the c.d.f. of $\mu$ is continuous at $r$. We need to prove that $\lim_n \mu_n ([0, r]) = \mu ([0, r])$. We fix $\varepsilon>0$. We need to show that there is $N>0$ such that here is $r' \in [0, T]$ such that
$$
|\mu_n ([0, r]) - \mu ([0, r])| < \varepsilon \quad \forall n>N.
$$
There is $r' \in D$ such that
$$
|\mu ([0, r]) - \mu ([0, r'])| < \varepsilon/2.
$$
It suffices to prove that there is $M>0$ such that
$$
|\mu_n ([0, r]) - \mu ([0, r'])| < \varepsilon/2 \quad \forall n>M.
$$
 A: Shortcut:
Let $x\in\left(0,T\right)$ such that $\mu\left(\left\{ x\right\} \right)=0$.
Then for any fixed $\epsilon>0$ we then can find $r_{\epsilon},s_{\epsilon}\in D$ with $r_{\epsilon}<x<s_{\epsilon}$
and $\mu\left(\left(r_{\epsilon},s_{\epsilon}\right]\right)<\epsilon$.
This with: $$\mu_{n}\left(\left[0,r_{\epsilon}\right]\right)\leq\mu_{n}\left(\left[0,x\right]\right)\leq\mu_{n}\left(\left[0,s_{\epsilon}\right]\right)$$
for every $n$ and consequently by taking the limit:
$$\mu\left(\left[0,r_{\epsilon}\right]\right)\leq\liminf\mu_{n}\left(\left[0,x\right]\right)\leq\limsup\mu_{n}\left(\left[0,x\right]\right)\leq\mu\left(\left[0,s_{\epsilon}\right]\right)$$
So: $$\limsup\mu_{n}\left(\left[0,x\right]\right)-\liminf\mu_{n}\left(\left[0,x\right]\right)<\epsilon$$
This for every $\epsilon>0$ hence making clear that $\mu_{n}\left(\left[0,x\right]\right)$
converges.
The inequalities: $$\mu\left(\left[0,r_{\epsilon}\right]\right)\leq\mu\left(\left[0,x\right]\right)\leq\mu\left(\left[0,s_{\epsilon}\right]\right)$$make clear that $\mu\left(\left[0,x\right]\right)$ is the only candidate for being the limit.
A: Fix $r \in [0, T]$ such that the c.d.f. of $\mu$ is continuous at $r$. We need to prove that $\lim_n \mu_n ([0, r]) = \mu ([0, r])$. There is $r_n > r_{n+1} > r$ such that $r_n \in D$ for all $n \in \mathbb N$ and $r_n \downarrow r$ and
$$
0 \le \mu_n ([0, r_n]) - \mu_n ([0, r]) <\frac{1}{n}.
$$
It follows that
$$
\lim_n \big ( \mu_n ([0, r_n]) - \mu_n ([0, r]) \big ) = 0.
$$
It suffices to prove that
$$
\lim_n \mu_n ([0, r_n]) = \mu ([0, r]).
$$

*

*First,
$$
 \mu_n ([0, r_n]) \le  \mu_n ([0, r_m]) \quad \forall m \le n.
$$
So
$$
\lim_n \mu_n ([0, r_n]) \le \lim_n \mu_n ([0, r_m]) =\mu ([0, r_m]) \quad \forall m \in \mathbb N.
$$
Hence
$$
\lim_n \mu_n ([0, r_n]) \le \lim_m \mu ([0, r_m]) = \mu ([0, r]).
$$


*Second, fix $\varepsilon>0$. There is $r_\varepsilon \in D$ such that $r_\varepsilon < r$ and
$$
0 \le \mu ([0, r]) - \mu ([0, r_\varepsilon]) <\varepsilon.
$$
Such $r_\varepsilon$ is exists because the c.d.f. of $\mu$ is continuous at $r$. Then
$$
\lim_n \mu_n ([0, r_n]) \ge \lim_n \mu_n ([0, r_\varepsilon]) = \mu ([0, r_\varepsilon]) >  \mu ([0, r]) - \varepsilon.
$$
Take the limit $\varepsilon \downarrow 0^+$. Then
$$
\lim_n \mu_n ([0, r_n]) \ge \mu ([0, r]).
$$
This completes the proof.
