LTEの補題
Lifting The Exponent Lemmaです。
これは整数論の定理で、痒いところに手が届くような便利な定理です。僕は結構気に入ってます。
整数論はmodulo演算が基本ですが、それだけではやややりにくいことをこの定理はやってくれるので、
知ってると絶対プラスになると思います。(特に数オリ)
1:オーダーについて
1.1 オーダーの定義
オーダーとは、簡単に言えば「何回割れるか」。しっかり定義を書くと、
0でない整数\(n\)と素数\(p\)に対して、次を見たす非負整数\(d\)が存在する。
\(n\)は\(p^d\)では割り切れるが、\(p^{d+1}\)では割り切れない。この\(d\)のことを素数\(p\)に関する\(n\)のオーダーといい、\({\rm ord}_p n\)と書く。
というものです。
1.2 オーダーのちょっとした性質
\({\rm ord}_p (mn)={\rm ord}_p m + {\rm ord}_p n\)
\({\rm ord}_p (m+n) \geq \min \{ {\rm ord}_p m, {\rm ord}_p n \}\)
これが関係してくる問題の場合、普通にmodulo演算で\(\bmod p\)で考えると0になって、何回割れるかわからない…ということが多々あります。
そんなときにLTEの補題が使えるかもしれません。
2:LTEの補題
定理:
\(p\)を奇素数とする。\(x,y\)を、\(x \equiv y \pmod p\)であるが両方とも\(p\)の倍数ではない整数とする。このとき、正の整数\(n\) に対して、
\({\rm ord}_p (x^n-y^n) = {\rm ord}_p (x-y)+{\rm ord}_p n\)
パッと見では、うーん、というか、だから何?、という感じだと思います。
まあ、今回は紹介だけして、次の記事でバーンと使います。楽しみにしていてください。
3:証明
おもに3ステップで証明します。
3.1 \(n\)が\(p\)で割り切れないとき
\(x^n-y^n=(x-y)(x^{n-1}+x^{n-2}y+\cdots+y^{n-1})\)
と因数分解できます。
おっと、\((x-y)\)が出ましたね。LTEの補題にするために、その右側について考えます。
\(x \equiv y \pmod p\)なので、
\((x^{n-1}+x^{n-2}y+\cdots+y^{n-1}) \equiv ny^{n-1} \pmod p\)
そして、\(n\)も\(y\)も\(p\)で割り切れないので、
\({\rm ord}_p (x^{n-1}+x^{n-2}y+\cdots+y^{n-1})=0\)
これで、右側のほうもわかりました。
よって、
\begin{eqnarray}
{\rm ord}_p (x^n-y^n) & = & {\rm ord}_p (x-y)(x^{n-1}+x^{n-2}y+\cdots+y^{n-1}) \\
& = & {\rm ord}_p (x-y) + {\rm ord}_p (x^{n-1}+x^{n-2}y+\cdots+y^{n-1}) \\
& = & {\rm ord}_p (x-y) + 0 \\
& = & {\rm ord}_p (x-y)+{\rm ord}_p n
\end{eqnarray}
が成り立ちます。(最後に、\(n\)が\(p\)で割り切れないことを使いました)
3.2 \(n=p\)のとき
ここが少し難しい。
3.1と同じようにして、
\(x^n-y^n=(x-y)(x^{n-1}+x^{n-2}y+\cdots+y^{n-1})\)
と因数分解し、\(x^{n-1}+x^{n-2}y+\cdots+y^{n-1}\)について考えます。
で、ここから大変なんですけど、
\(x^{n-1}+x^{n-2}y+\cdots+y^{n-1}\)をむりやり\(x-y\)で割ります。
そうすると
\(x^{n-1}+x^{n-2}y+\cdots+y^{n-1}=(x-y)(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2})+py^{p-1}\)
となります。
なぜこうなるのか?これは、自分で展開してみるのが一番早いと思いますが、「右側が1ずつ大きくなっているが、うまく引かれて結局1が残る」という感じです。
\(x \equiv y \pmod p\)より、
\begin{eqnarray}
&& x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2} \\
& \equiv & \{1+2+\cdots +(p-1)\}y^{p-2} \pmod p\\
& = & \frac{p(p-1)}{2}y^{p-2}
\end{eqnarray}
\(p\)は奇素数なので、\(\cfrac{p-1}{2}\)は整数となり、 \(\cfrac{p(p-1)}{2}y^{p-2}\)は\(p\)の倍数です。
つまり、\(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2}\)は\(p\)の倍数です。
では、
\(x^{n-1}+x^{n-2}y+\cdots+y^{n-1}=(x-y)(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2})+py^{p-1}\)
の式に戻りましょう。
\(x \equiv y \pmod p\)より、\(x-y\)は\(p\)の倍数。
また\(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2}\)も\(p\)の倍数なので、
\((x-y)(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2})\)は\(p^2\)の倍数です。
よって
\begin{eqnarray}
x^{n-1}+x^{n-2}y+\cdots+y^{n-1}&=&(x-y)(x^{p-2}+2x^{p-3}y+\cdots+(p-2)xy^{p-3}+(p-1)y^{p-2})+py^{p-1} \\
& \equiv & py^{p-1} \pmod{p^2}
\end{eqnarray}
となり、\(y^{p-1}\)は\(p\)の倍数ではないので、
\({\rm ord}_p (x^{n-1}+x^{n-2}y+\cdots+y^{n-1}) = 1\)です。
よって
\begin{eqnarray}
{\rm ord}_p (x^n-y^n) & = & {\rm ord}_p (x^p-y^p) \\
& = & {\rm ord}_p (x-y)(x^{p-1}+x^{p-2}y+\cdots+y^{p-1}) \\
& = & {\rm ord}_p (x-y) + {\rm ord}_p (x^{n-1}+x^{n-2}y+\cdots+y^{n-1}) \\
& = & {\rm ord}_p (x-y) + 1 \\
& = & {\rm ord}_p (x-y)+{\rm ord}_p p \\
& = & {\rm ord}_p (x-y)+{\rm ord}_p n
\end{eqnarray}
3.3 \(n\)が一般のとき
\({\rm ord}_p n\)で数学的帰納法を使います。
\(n=ap^m\)(ただし、\(a\)は\(p\)で割り切れない整数)とおき、
となることを証明します。(\({\rm ord}_p n=m\)より)
\(n\)が\(p\)で割り切れない場合は3.1で証明したので、
\(m=0\)のとき、①は成り立ちます。
そして、\(m=k\)のとき①が成り立ったら
\(m=k+1\)のときも①が成り立つことを証明します。
\(n=ap^{k+1}\)とおきます。
このとき、
\(x^n-y^n=x^{ap^{k+1}}-y^{ap^{k+1}}=(x^{ap^k})^p-(y^{ap^k})^p\)
です。なんか3.2が使えそうな感じがします。
実際、\(x^k-y^k\)は\(x-y\)で割り切れ、しかも\(x-y\)は\(p\)で割り切れるので、
\(x^k-y^k\)は\(p\)で割り切れます。
これは、3.2が使えることを意味します。
よって、
\begin{eqnarray}
{\rm ord}_p (x^n-y^n) & = & {\rm ord}_p ((x^{ap^k})^p-(y^{ap^k})^p) \\
& = & {\rm ord}_p (x^{ap^k}-y^{ap^k}) +1\\
& = & {\rm ord}_p (x-y) + {\rm ord}_p k +1\\
& = & {\rm ord}_p (x-y) +k+1 \\
& = & {\rm ord}_p (x-y)+{\rm ord}_p ap^{k+1}\\
& = & {\rm ord}_p (x-y)+{\rm ord}_p n
\end{eqnarray}
となり、(m=k\)のとき①が成り立ったら\(m=k+1\)のときも①が成り立つので
証明が完了しました。
4 まとめ
けっこう大変だったと思いますが、最後まで読んでいただきありがとうございます。
使用例は次の記事で紹介しようと思っているので楽しみにしてください。