Analysis of a proof that the decimal expression for any rational is periodic. Martin Liebeck in his book "A Concise Introduction to Pure Mathematics" (Third edition) writes the following proposition and proof (Chapter 3, pg 24)

PROPOSITION 3.4
The decimal expression for any rational number is periodic
PROOF
Consider the rational $m\over{n}$ (Where m, n, $\in$ $\mathbb{Z}$). To express this as a decimal, we perform long division of n into $m.0000...$. At each stage of the long division, we get a remainder which is one of the $n$ integers between $0$ and $n-1$. Therefore, eventually we must get a remainder that occurred before, The digits between the occurrences of these remainders will then repeat forever. $\Box$

My Question
Is this a proper proof? It makes sense at first glace but it seems like much is assumed about the nature of rationals. Would writing this in mathematical terms make this proof stronger or is it sufficient enough to write an explanation like the one written above?
 A: A proof is something of a social process, so it depends on both the writer
and reader to some extent, and the context in which it appears, of course.
A slightly more formal approach would be something like (with $n >0$):
Start with $m_0 = m \ge 0$, $k=0$, then  repeat $d_k = \lfloor {m_k \over n } \rfloor $, $m_{k+1} = 10 (m_k-n d_k)$, $k \leftarrow k+1$.
Some analysis shows that $\sum_{k=0} d_k {1 \over 10^k} = {m \over n}$ 
(that is, the $d_k$ are the decimal digits of ${ m \over n}$ for $k>0$) and 
that for $k >0$, $m_k \in \{ 0,...,10(n-1) \}$ and so $d_k$ is bounded and
must repeat. Furthermore, once it starts to repeat, it must continue to repeat the same sequence.
A: Somewhere along the way it must have been assumed or proven that for any integer $m $ and any non negative integer divisor $d $ there exist unique a unique pair of  integer quotient $q $ and remainder integer $r $ so that $m=qd+r $ and $0\le r < d$.
This can be proven by the archimedian principal although a suspect it was given as an axiom.
In this case you are taking successive $m_i =10*q_i + r_i $ and then setting $m_{i+1}= r_i $ and solving the next term. Each successive term is distinctly determined by the current remainder.
Once a remainder is repeated, the successive terms must repeat exactly as they did before.
That's valid but very hand-wavy.  It's obliquely assuming the induction principal which it is assuming is intuitively obvious and can't be conceived as not working.
