# Discrete subgroups of $\mathbb R^n$ are free

Let $G$ be a nonzero subgroup of the additive group $\mathbb{R}^n$. Assume $G$ is discrete in the sense that for any $x \in G$, there exists an open set $U \subset \mathbb{R}^n$ such that $U \cap G = \{x\}$. Does it follow that there exists an integer $1 \le k \le n$ and $k$-tuple $x_1, \dots, x_k \in \mathbb{R}^n$ of $\mathbb{R}$-linearly independent vectors such that $G = \mathbb{Z}x_1 + \cdots + \mathbb{Z}x_k$, i.e., such that $G$ is the free abelian group with basis $x_1, \dots, x_k$?

I suspect the answer is yes... perhaps we could chose an element in $G$ of minimal Euclidean length of use induction on $n$? But then I am stuck. Can anyone help me?

First, we may replace $\mathbb{R}^n$ with the $\mathbb{R}$ vectorspace generated by $G$ and thus assume that $G$ generates $\mathbb{R}^n$. So, we can pick $x_1,\ldots,x_n\in G$ which form a basis for $\mathbb{R}^n$ and consider the quotient of $\mathbb{R}^n$ by the subgroup generated by the $x_i$s, which is just the compact group, product of $n$ copies of $S^1$. Discreteness of $G$ implies the image in this quotient is discrete and since it is compact, this is finite. Thus $G$ itself is finitely generated and rank $n$, proving what you need.