Let's call your family of rational-radius balls around all-rational points $\mathcal{B}$. For every open set $O$ and every $x \in O$ we have to find some $B_x \in \mathcal{B}$ such that $x \in B_x$ and $B_x \subset O$. If we can do that we are done, because then $O = \cup_{x \in O} B_x$: all sets $B_x$ lie inside $O$ which gives one inclusion and every $p \in O$ is in "its" $B_p$ so is in the union as well, and gets us the other inclusion.

Now, as all open balls (the complete collection) generates the topology, i.e. all open sets are unions of open balls, we only need to do the above for $O$ of the form $B(p,r)$.

So if $x \in B(p,r)$ you need to find $B \in \mathcal{B}$ (so another ball, from a more limited set) such that $x \in B \subset B(p,r)$. This is a bit more concrete than thinking about arbitrary open sets.

Now, $d(x, p)< r$ ($d$ is the Euclidean distance), so we have some wiggle room $s = r - d(x,p) > 0$. Now, find a rational $q \in \mathbb{Q}^n$ that has $d(x,q) < \frac{s}{2}$, which can be done (if you know that $\mathbb{Q}^n$ is dense in $\mathbb{R}^n$) and then we can find a rational radius $r' \in \mathbb{Q}$ with $d(x,q) < r' < \frac{s}{2}$. Now if $y \in B(q,r')$ (and that ball lies in your family $\mathcal{B}$) then $d(y,q) < r'$ and we already know $d(x,q) < \frac{s}{2}$, so $$d(y,p) \le d(y,q) + d(q,x) + d(x,p) < r' + \frac{s}{2} + d(x,p) < s + d(x, p) = r$$ so $B(q,r') \subset B(x,p)$ and $x \in B(q,r')$, so we have shown what was needed.

Note that this argument works for any countable dense set in any metric space.


Let $A$ be open, and let $\mathcal{S}$ be the set of all balls $B$ with rational centre and radius ("rational balls") such that $B\subseteq A$. We wish to show that $A$ is the union of all $B\in \mathcal{S}$.

Let $x\in A$. Then there is an $\epsilon\gt 0$ such that the open ball $O$ with centre $x$ and radius $\epsilon$ is a subset of $A$. But $O$ is not necessarily a rational ball.

Let $p$ be a rational point at distance $\lt \epsilon/3$ from $x$, and let $r$ be a rational number strictly between $\epsilon/3$ and $\epsilon/2$. Then the rational ball $B$ with centre $p$ and radius $r$ contains $x$. Moreover, by the Triangle Inequality, $B\subset O$, so $B\subset A$.