Subgroup of Real Numbers is Discrete or Dense

Theorem
Let $G$ be a subgroup of the additive group of real numbers.

Then one of the following holds:
 * $G$ is dense in $\R$.
 * $G$ is discrete and there exists $a \in \R$ such that $G=a\Z$. That is, $G$ is cyclic.

Proof
If $G$ is trivial, then $G$ is discrete and cyclic.

Let $G$ be non-trivial.

Because $x\in G \iff -x\in G$, $G$ has a strictly positive element.

Thus $G\cap(0,+\infty)$ is non-empty.

Let $a=\inf( G\cap(0,+\infty) )$.

Case 1
Suppose $a=0$.

We will show that $G$ is dense in $\R$.

Let $x\in\R$ and $\epsilon>0$.

Because $a=0$, there exists $g\in G$ such that $0 < g \leq \epsilon$.

Then $\displaystyle y = g\cdot \left\lfloor\frac x g\right\rfloor\in G$, where $\lfloor\cdot\rfloor$ denotes the floor function.

We have:

Thus $G$ is dense in $\R$.

Case 2
Suppose $a>0$.

We show that $G=a\Z$, from which it follows that $G$ is discrete.

Let $g\in G$.

Then $\displaystyle g - a\cdot \left\lfloor\frac g a\right\rfloor\in G$.

By Real Number minus Floor, we have $\displaystyle 0 \leq g - a\cdot \left\lfloor\frac g a\right\rfloor = a\cdot\left(\frac ga-\left\lfloor\frac g a\right\rfloor\right)<a$.

Because $a=\inf( G\cap(0,+\infty) )$, we have $g=a\cdot \left\lfloor\frac g a\right\rfloor$.

Thus $g\in a\Z$.