斐波那契數列の循環節


這問題咕咕咕了好久,來填坑了。

問題

求斐波那契數列在模 \(p\) 意義下的循環節 \(m\)

解法

首先知道 \(fib\) 通項公式為 \(f(n)=\frac{A^n-B^n}{\sqrt{5}}\) ,其中 \(A=\frac{1+\sqrt{5}}{2},B=\frac{1-\sqrt{5}}{2}\)

這里有個 \(\sqrt{5}\) ,故要從二次剩余角度去分析。

對於 \(p=2\)\(p=5\)

直接手玩,可得 \(p=2\) 時,\(m=3\)\(p=5\) 時,\(m=20\)

對於非 5 的奇質數

1. 若 5 是模 p 意義下的二次剩余

由費馬小定理知 \(A^{p-1}≡1(mod\ p),B^{p-1}≡1(mod\ p)\)

\[f(p-1)≡\frac{A^{p-1}-B^{p-1}}{\sqrt{5}}≡0(mod\ p) \]

\[f(p)≡\frac{A^{p}-B^{p}}{\sqrt{5}}≡1(mod\ p) \]

可發現 \((f(0),f(1))\)\((f(p-1),f(p))\) 相等,故 \(m | p-1\)

2. 若 5 是模 p 意義下的二次非剩余

由歐拉判別准則知 \(5^{\frac{p-1}{2}}≡-1(mod\ p)\)

\[A^p=(\frac{1+\sqrt{5}}{2})^p=(\frac{1}{2})^p(1+\sqrt{5})^p≡\frac{1}{2}(1+\sqrt{5}^p)≡\frac{1}{2}(1-\sqrt{5})≡B(mod\ p) \]

同理可得

\[B^p≡A(mod\ p) \]

\[f(2p+1)=\frac{A^{2p+1}-B^{2p+1}}{\sqrt{5}}≡\frac{B^2A-AB^2}{\sqrt{5}}≡AB≡1(mod\ p) \]

\[f(2p+2)=\frac{A^{2p+2}-B^{2p+2}}{\sqrt{5}}≡0(mod\ p) \]

\[f(2p+3)=f(2p+1)+f(2p+2)≡1(mod\ p) \]

可發現 \((f(0),f(1))\)\((f(2p+2),f(2p+3))\) 相等,故 \(m|2p+2\)

對於質數的冪 \(p^k\)

  • 結論1

\(a≡1(mod\ p)\) ,則 \(a^{p^k}≡1(mod\ p^{k+1})\)

證明可用二項式定理,具體地,令 \(a=px+1\) ,則

\[a^{p^k}=\sum\limits_{i=0}^{p^k}\binom{p^k}{i}(px)^i≡1(mod\ p) \]

設在模 \(p\) 意義下循環節長度為 \(m\) ,在模 \(p^k\) 意義下循環節長度為 \(m'\) ,則有

\[f(m)=\frac{A^m-B^m}{\sqrt{5}}≡0 (mod\ p) \]

\(A^m≡B^m(mod\ p)\)

\[f(m+1)=\frac{A^{m+1}-B^{m+1}}{\sqrt{5}}≡f(1)≡\frac{A-B}{\sqrt{5}}(mod\ p) \]

\(A^{m+1}-B^{m+1}-A+B≡0(mod\ p)\) ,化簡一下,得 \((A-B)(A^m-1)≡0(mod\ p)\)

所以有

\[A^m≡B^m≡1(mod\ p) \]

\[(A^m)^{p^{k-1}}≡(B^m)^{p^{k-1}}≡1(mod\ p^k) \]

很顯然了,循環節 \(m'|mp^{k-1}\)

可斷言 \(m'=mp^{k-1}\) (無一反例),但數學界目前暫未證明出來。

對於合數 \(p=p_1^{a_1}p_2^{a_2}...p_k^{a_k}\)

我們記 \(g(p)\) 表示模 \(p\) 意義下的循環節長度,則滿足

\[\begin{cases}f(g(p))≡0(mod\ p_1^{a_1})\\ f(g(p)+1)≡0(mod\ p_1^{a_1})\\f(g(p))≡0(mod\ p_2^{a_2})\\f(g(p)+1)≡0(mod\ p_2^{a_2})\\...\end{cases}\]

顯然 \(g(p)=lcm_{i=1}^{k}g(p_i^{a_i})\)

只需要做一次 \(CRT\) 即可得到答案。

上界估計

先剔除 \(p_i=2\)\(p_i=3\)\(p_i=5\) ,則有

\[g(p)=lcm_{i=1}^{k}g(p_i^{a_i})\le lcm_{i=1}^{k}\left(p_i^{a_i-1}g(p_i)\right)\le 4p\prod\limits_{i=1}^{k}\frac{p_i-1}{2p_i} \]

如果加入 \(p_i=2\) ,則乘上 \(3\times 2^{a_i-1}\) ;對於 \(p_i=3,5\) 同理。

\(g(p)\le 6\times p\)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM