循环小数与费马小定理

循环小数与费马小定理
17/05/29 22:30:51 | Snakes
背景
  题目出自之前亮灯问题、杨辉三角与Sierpinski三角形提及的生日题中的第三、四、五题。

题目
  第三题 证明:对于任意非\(2, 5\)倍数正整数\(n\)且满足\(n>1\),均存在正整数\(k, i\)满足\(kn=10^i-1\)
  第四题 证明:在\(k\)进制下\((k>1)\),任何形如\(a/b\)\(a, b\)均为正整数)的数均为有限小数或无限循环小数。
  第五题 证明:在上一问条件下,若\(b\)\(k\)互质则\(a/b\)为无限循环小数,若\(a\)的质因子为\(k\)的质因子的子集则\(a/b\)为有限小数。

答案
  既然是证明题,那么就没有标准答案。以下提供一种可行的思路并且再探讨另一个问题:\(k\)进制下\(b/a\)若循环,那么它的循环节长度\(len\)是多少?

  接下来,我们将要分节讨论了。

无限循环小数
  在\(k\)进制下,若有数\(x\)满足其为\(0<x<1\)的纯循环小数(即其循环节从小数点后第\(1\)位开始|思考:若为混循环小数或大于\(1\)的纯循环小数,有什么办法将其转化求解呢?)且其循环节长度为\(len\),循环节中数字为\(y\),则我们可得\(x\cdot k^{len}-x=y\)\(x\cdot k^{len}\)相当于将第一个循环节移动到小数点左侧,与\(x\)相减就得到循环节中的数字\(y\)。整理可得\(y/(k^{len}-1)=x\)

  所以,我们可得结论:数\(x=a/b\)为无限循环小数的条件为存在整数\(len, i\)满足\(bi=k^{len}-1\)。这个式子中,\(k\)\(10\)的情形即第三题的提问。

  思考题答案:若为大于\(1\)的纯循环小数,可表示成一个整数与一个\(0\)\(1\)之间纯循环小数的和,因为整数一定能表示成任意整数作分母的分数形式,对小数部分讨论之后将整数部分加上去即可。对于混循环小数,可以乘以\(k\)的次幂,将小数点移动到循环节前,按照大于\(1\)的纯循环小数处理,最后乘以\(k\)的次幂的倒数即可。

费马小定理
  对于质数\(p\),与\(p\)互质的整数\(a\),有下式成立:

\[a^{p-1}\equiv 1 \pmod p \]

  这是接下来将要用到的定理。如何证明?

  引理\(1\):对于整数\(a, b, c\)与正整数\(p\),若\(c, p\)互质,\(ac\equiv bc \pmod p\),则有\(a\equiv b \pmod p\)

  证明:
  移项得:

\[\begin{align}ac-bc&\equiv 0 \pmod p\\ (a-b)c&\equiv 0 \pmod p\end{align} \]

  因为\(c, p\)互质,所以有:

\[\begin{align}a-b&\equiv 0\pmod p\\ a&\equiv b\pmod p\end{align} \]

  引理\(2\):对于整数\(p\)满足\(p>1\),与\(p\)互质的整数\(b\)以及模\(p\)的完全剩余系\(a_1, a_2, .. ,a_m\),有\(ba_1, ba_2, .. ,ba_m\)构成模\(p\)的完全剩余系。

  证明:
  若其不构成模\(p\)的完全剩余系,则有\(ba_i\equiv ba_j \pmod p\)成立,由引理\(1\)得,有\(a_i \equiv a_j \pmod p\)成立,与条件不符,因此\(ba_i\equiv ba_j \pmod p\)不成立,则\(ba_1, ba_2, .. ,ba_m\)构成模\(p\)的完全剩余系。

  费马小定理:

  构造模\(p\)下的完全剩余系\({0, 1, 2, .. , p-1}\),由引理\(2\)\({0, a , 2a, .. , (p-1)a}\)也为模\(p\)下的完全剩余系。可得\(1\times 2\times ..\times (p-1)\equiv a\times 2a\times ..\times (p-1)a \pmod p\)成立。则有\((p-1)!\equiv a^{p-1}(p-1)! \pmod p\)成立。因为\(p\)为质数,所以\((p-1)!\)\(p\)互质,根据引理\(1\)\(1\equiv a^{p-1}\pmod p\)成立。

两者之间的关系
  之前提及,数\(x=a/b\)为无限循环小数的条件为存在整数\(len, i\)满足\(bi=k^{len}-1\)。而费马小定理则告诉我们,对于质数\(p\),与\(p\)互质的整数\(a\),有\(a^{p-1}\equiv 1 \pmod p\)。当\(b\)为质数,\(a=k\)时显然有\(k^{b-1}-1\equiv 0 \pmod b\),也就是说,存在整数\(len, i\)满足条件。

  但是当\(b\)不为质数但与\(k\)互质时怎么办?不妨将\(b\)分解质因数,令\(b=p_1^{q_1}\times p_2^{q_2} \times .. \times p_n^{q_n}\)(此处翻车),根据欧拉定理(在\(b, p\)互质下有\(p^{\varphi(b)}\equiv 1\pmod b\)),则分别有\(k^{\varphi(p_i^{q_i})} \equiv 1 \pmod {p_i^{q_i}}\)成立,其中\(1\leq i \leq n\)。可知有\(k^{c(p_i-1)p_i^{q_i-1}} \equiv 1 \pmod {p_i^{q_i-1}}\)成立。别忘了欧拉函数是积性函数,所以有下式成立:

\[k^{\frac{[(p_1-1)p_1^{q_1-1}][(p_2-1)p_2^{q_2-1}]..[(p_n-1)p_n^{q_n-1}]}{gcd[(p_1-1)p_1^{q_1-1}, (p_2-1)p_2^{q_2-1}, .. , (p_n-1)p_n^{q_n-1}]}}\equiv 1 \pmod b \]

  即:

\[k^{\frac{\varphi(p_1^{q_1})\varphi(p_2^{q_2}).. \varphi(p_n^{q_n})}{gcd[ \varphi(p_1^{q_1}),\varphi(p_2^{q_2}), .. , \varphi(p_n^{q_n})]}}\equiv 1 \pmod b \]

  并且由于积性函数,我们有:

\[\varphi(b) \equiv 0 \pmod {\frac{\varphi(p_1^{q_1})\varphi(p_2^{q_2}).. \varphi(p_n^{q_n})}{gcd[ \varphi(p_1^{q_1}),\varphi(p_2^{q_2}), .. , \varphi(p_n^{q_n})]}} \]

  所以大多数情况下(\(b\)\(k\)互质)时循环节长度最小值\(len\)能被\(\varphi(b)\)整除。

  而对于\(b\)\(k\)不互质的情况,我们要分类讨论。若\(b\)的质因数为\(k\)的质因数的子集,那么\(a/b\)乘以\(k\)的次幂一定可以得到一个整数,则\(a/b\)为有限小数。若不为子集,则我们将\(a/b\)乘以\(k\)的次幂,消除交集部分质因数的影响,转为\(b\)\(k\)互质的情况继续讨论。这其实与之前思考题的解决方法一致。通过分类讨论,我们可以解决第四题与第五题。

  所以,将\(k=10\)代入,我们可以证得第三题(对于任意非\(2, 5\)倍数正整数\(n\)且满足\(n>1\),均存在正整数\(k, i\)满足\(kn=10^i-1\)。)成立。

结论
  在\(k\)进制下,形如\(a/b\)\(a, b\)均为整数)的分数(最简形式),若\(b\)\(k\)互质,则\(a/b\)为纯循环小数。若\(b\)质因数与\(k\)质因数有交集且\(b\)质因数不为\(k\)质因数子集,则\(a/b\)为混循环小数。否则若\(b\)质因数为\(k\)质因数的子集,\(a/b\)为有限小数。

  当\(a/b\)为循环小数时,在大多数情况下其循环节长度\(len=\frac{\varphi(b)}{gcd[ \varphi(p_1^{q_1}),\varphi(p_2^{q_2}), .. , \varphi(p_n^{q_n})]}\)。不难发现有\(len\leq (b-1)\)且当\(b\)为质数时\(len\)取到\(b-1\)

posted @ 2018-06-09 01:26  Roni_i  阅读(875)  评论(0编辑  收藏  举报