【数論】ヘンゼルの補題とは? 主張・証明・ニュートン法との関連まで解説
こんにちは!半沢です!
今回の記事では数論におけるヘンゼルの補題(Hensel’s lemma)について解説したいと思います。
ヘンゼルの補題は\(\,p\,\)進整数環\(\,\mathbb{Z}_p\,\)上で多項式の根を発見するのに大変役立つ優れモノです。
この記事ではそんなヘンゼルの補題の主張・証明・ニュートン法との関連について詳しく解説します。
ヘンゼルの補題の応用については別の記事を改めて書く予定なので,そちらをお待ちいただけると幸いです。
ぜひ読んでいってください。
ヘンゼルの補題(Hensel’s lemma)
※ヘンゼルの補題には様々な形式があります。
今回紹介するのは最も基本的な\(\,p\,\)進整数環\(\,\mathbb{Z}_p\,\)についての弱いver.のヘンゼルの補題です。
強いver.や別の形式については要望が多ければ別の記事を書くつもりです。
主張
ヘンゼルの補題(弱いver.1)
\(f(X)\in\mathbb{Z}_p[X]\)と\(\,\alpha_1\in \mathbb{Z}_p\,\)が次の条件を満たしていたとする。
\(f(\alpha_1)\equiv 0 \pmod{p\mathbb{Z}_p}\quad\)かつ\(\quad f'(\alpha_1)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)
このとき\(\,f(\alpha)=0\,\)かつ\(\,\alpha\equiv \alpha_1 \pmod{p\mathbb{Z}_p}\)となる\(\,\alpha\in \mathbb{Z}_p\,\)が一意的に存在する。
※\(f'(X)\)は\(\,f(X)\,\)の形式微分のことを表します。
簡単に言えば
ヘンゼルの補題はある条件(\(\,f'(\alpha_1)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\))を満たしていたら,
計算が簡単な\(\,\mathbb{Z}_p/p\mathbb{Z}_p\,\)で解があることを確認するだけで
その解を\(\,\mathbb{Z}_p\,\)まで“持ち上げる”ことができるということです。
“持ち上げる”と述べたのは,
このver.1の証明のときに下のver.2を示していくからです。
ヘンゼルの補題(弱いver.2)
ある\(\,n\in \mathbb{N}\,\)について\(\,f(X)\in\mathbb{Z}_p[X]\)と\(\,\alpha_n\in \mathbb{Z}_p\,\)が次の条件を満たしていたとする。
\(f(\alpha_n)\equiv 0 \pmod{p^{n}\mathbb{Z}_p}\quad\)かつ\(\quad f'(\alpha_n)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)
このとき\(\,f(\alpha_{n+1})\equiv 0\pmod{p^{n+1}\mathbb{Z}_p}\,\)かつ\(\,\alpha_{n+1}\equiv \alpha_{n} \pmod{p^{n}\mathbb{Z}_p}\)となる\(\,\alpha_{n+1}\in \mathbb{Z}_p\,\)が
\(\,\mathbb{Z}_p/p^{n+1}\mathbb{Z}_{p}\,\)上で一意的に存在する。
このようにヘンゼルの補題は
\(\mathbb{Z}_p/p^{n}\mathbb{Z}_p\,\)上の解\(\,\alpha_n\,\)から\(\,\mathbb{Z}_p/p^{n+1}\mathbb{Z}_p\,\)上の解\(\,\alpha_{n+1}\,\)を
整合性\(\,\alpha_{n+1}\equiv \alpha_{n}\pmod{p^{n}\mathbb{Z}_p}\,\)があるように構成,すなわち“持ち上げる”ことができることを表しています。
この弱いver.だけでも\(\,\mathbb{Q}_p\,\)上の\(\,1\,\)のべき根や\(\,p\,\)進整数の平方根などについて面白い結果が得られます。
別の記事で解説する予定なので,お待ちいただけると幸いです。
証明
前半
前半ではver.1を証明するためにはver.2を示せば良いことを証明します。
ver.2を仮定することで,まずはver.1の\(\,\alpha\in \mathbb{Z}_p\,\)の存在性から示していきます。
そのためにver.1の前提条件
\(\,f(\alpha_1)\equiv 0 \pmod{p\mathbb{Z}_p}\quad\)かつ\(\quad f'(\alpha_1)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)
を満たす\(\,f(X)\in\mathbb{Z}_p[X]\)と\(\,\alpha_1\in \mathbb{Z}_p\,\)について考えましょう。
このときver.2を繰り返し適用することで次の条件\(\,(\,\mathrm{i}\,),(\,\mathrm{ii}\,)\,\)を満たす\(\,\mathbb{Z}_p\,\)の数列\(\,(\alpha_n)\,\)を構成することができます。
\((\,\mathrm{i}\,)\,\alpha_{n+1}\equiv \alpha_{n} \pmod{p^{n}\mathbb{Z}_p}\)
\((\,\mathrm{ii}\,)\,f(\alpha_{n})\equiv 0\pmod{p^{n}\mathbb{Z}_p}\)
※繰り返し適用する際に条件\(\, f'(\alpha_n)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)が満たされているかが一見非自明ですが,
\(\alpha_n\equiv\alpha_{n-1}\equiv \cdots\equiv \alpha_1\pmod{p\mathbb{Z}_p}\,\)で\(\,f'(\alpha_n)\equiv f'(\alpha_1)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)より保証されています。
条件\(\,(\,\mathrm{i}\,)\,\)は\(\,|\alpha_{n+1}-\alpha_{n}|\leq p^{-n}\,\)と同値で,
これより\(\,\displaystyle \lim_{n\to\infty}|\alpha_{n+1}-\alpha_{n}|_p=0\,\)が得られます。
\(p\,\)進絶対値\(\,|\cdot|_p\,\)は非アルキメデスなので,これは\(\,\mathbb{Z}_p\,\)の数列\(\,(\alpha_n)\,\)がコーシー列であることを意味します。
\(\mathbb{Z}_p\,\)は完備なので,極限値\(\,\displaystyle \lim_{n\to\infty}\alpha_n=\alpha\in \mathbb{Z}_p\,\)が存在します。
再び\(\,(\,\mathrm{i}\,)\,\)より\(\,\alpha_n\equiv\alpha_{n-1}\equiv \cdots\equiv \alpha_1\pmod{p\mathbb{Z}_p}\,\)
つまり\(\,|\alpha_n-\alpha_1|_p \leq p^{-1} \,\)が成り立ちます。
\(n\to\infty\,\)とすることで
\(\displaystyle \lim_{n\to\infty}|\alpha_n-\alpha_1|_p=\Bigl|\lim_{n\to\infty}\alpha_n-\alpha_1\Bigr|_p=|\alpha-\alpha_1|_p\leq p^{-1}\,\)
が得られます。
※極限の順序交換は\(\,|\cdot|_p\,\)の連続性より保証されています。
つまり\(\,\alpha\equiv \alpha_1 \pmod{p\mathbb{Z}_p}\)が示されました。
また\(\,(\,\mathrm{ii}\,)\,\)は\(\,|f(\alpha_n)|_p\leq p^{-n}\,\)と同値で,
\(n\to\infty\,\)とすることで
\(\,\displaystyle \lim_{n\to\infty}|f(\alpha_n)|_p=\Bigl|f \Bigl(\lim_{n\to\infty}\alpha_n\Bigr) \Bigr|_p=|f(\alpha)|_p\leq 0\,\)
が得られます。
※ここの極限の順序交換も\(\,f(X)\,\)や\(\,|\cdot|_p\,\)の連続性より保証されています。
ゆえに\(\,f(\alpha)=0\,\)も示されました。
以上よりver.1の\(\,\alpha\in \mathbb{Z}_p\,\)の存在性は示されました。
続いて,一意性を示していきましょう。
そのために\(\,f(X)\in\mathbb{Z}_p[X],\alpha_1\in \mathbb{Z}_p\,\)に対して
\(\,f(\alpha)=0\,\)かつ\(\,\alpha\equiv \alpha_1 \pmod{p\mathbb{Z}_p}\,\)となる\(\,\alpha\in \mathbb{Z}_p\,\)
\(\,f(\alpha’)=0\,\)かつ\(\,\alpha’\equiv \alpha_1 \pmod{p\mathbb{Z}_p}\,\)となる\(\,\alpha’\in \mathbb{Z}_p\,\)
について考えましょう。
これらの条件を用いて任意の\(\,n\in \mathbb{N}\,\)について
\(\alpha\equiv\alpha’\pmod{p^{n}\mathbb{Z}_p}\,\),つまり\(\,|\alpha-\alpha’|_p\leq p^{-n}\,\)であることを帰納法で示していきます。
これを示せば\(\,n\to\infty\,\)とすることで\(\,\alpha=\alpha’\,\)が得られて一意性が示されますね。
\(n=1\,\)のときは\(\,\alpha\equiv \alpha_1\equiv \alpha’\pmod{p\mathbb{Z}_p}\,\)より明らかです。
\(n=k\,(\,\geq 1)\,\)のとき成り立つとして,\(\,n=k+1\,\)のときについて考えましょう。
\(\alpha\,\)について\(f(\alpha)=0,\quad \alpha\equiv \alpha_1 \pmod{p\mathbb{Z}_p}\,\)より
明らかにver2.の前提条件\(\,f(\alpha)\equiv 0 \pmod{p^{k}\mathbb{Z}_p},\quad f'(\alpha)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)
は満たされます。
よってver.2より\(\,f(\,\cdot\,)\equiv 0\pmod{p^{k+1}\mathbb{Z}_p}\,\)かつ\(\,(\,\cdot\,)\equiv \alpha \pmod{p^{k}\mathbb{Z}_p}\,\)となる\(\,(\,\cdot\,)\in \mathbb{Z}_p\,\)は\(\,\mathbb{Z}_p/p^{k+1}\mathbb{Z}_{p}\,\)上で一意的です。
ここで\(\,(\,\cdot\,)\,\)として\(\,f(\alpha)=0\,\)より当然\(\,\alpha\,\)が取れます。
一方\(\,f(\alpha’)=0\,\)と帰納法の仮定から\(\,\alpha’\equiv \alpha\pmod{p^{k}\mathbb{Z}_p}\,\)となるため,\(\,(\,\cdot\,)\,\)として\(\,\alpha’\,\)も取れます。
ゆえに\(\,\mathbb{Z}_p/p^{k+1}\mathbb{Z}_{p}\,\)上での一意性から\(\,\alpha\equiv\alpha’\pmod{p^{k+1}\mathbb{Z}_p}\,\)が得られ,\(\,n=k+1\,\)のときについても示されました。
したがって帰納法が完了したので,ver.1の一意性は示されました。
後半
後半ではver.2を示すことで,ヘンゼルの補題の証明を完了させます。
次節で解説しますが,ここの証明はニュートン法のイメージで説明することができます。
ニュートン法を知っている方は思い浮かべながら読むと良いかもしれません。
ver.2の前提条件\(\,f(\alpha_n)\equiv 0 \pmod{p^{n}\mathbb{Z}_p}\quad\)かつ\(\quad f'(\alpha_n)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)を満たす
\(\,f(X)\in\mathbb{Z}_p[X],\alpha_n\in \mathbb{Z}_p\,\)から,目的の条件を満たす\(\,\alpha_{n+1}\in \mathbb{Z}_p\,\)を構成していきましょう。
まず\(\,\alpha_{n+1}\equiv \alpha_{n} \pmod{p^{n}\mathbb{Z}_p}\,\)を満たす必要があるので,
\(\alpha_{n+1}=\alpha_{n}+p^{n}x\,\,(x\in \mathbb{Z}_p)\,\)となるはずです。
この\(\,x\,\)について探れば\(\,\alpha_{n+1}\,\)についての情報が得られますね。
さらに情報を得るために条件\(\,f(\alpha_{n+1})\equiv 0\pmod{p^{n+1}\mathbb{Z}_p}\,\)も考えましょう。
ここで左辺に\(\alpha_{n+1}=\alpha_{n}+p^{n}x\,\)を代入すると,
二項展開を用いた計算(もしくは形式微分のテイラー展開)をすることで,適当な\(\,y\in \mathbb{Z}_p\,\)を用いて
\(f(\alpha_{n+1})=f(\alpha_n)+f'(\alpha_n)p^{n}x+p^{2n}y\,\)
となるので,
\(f(\alpha_n)+f'(\alpha_n)p^{n}x\equiv 0\pmod{p^{n+1}\mathbb{Z}_p}\,\)
となる必要があります。
また\(\,f(\alpha_n)\equiv 0 \pmod{p^{n}\mathbb{Z}_p}\,\)より\(\,f(\alpha_n)=p^{n}\beta_{n}\,\,(\beta_n\in \mathbb{Z}_p)\,\)と書けるので,
\(p^{n}\beta_n+f'(\alpha_n)p^{n}x\equiv 0\pmod{p^{n+1}\mathbb{Z}_p}\,\)
\(p^{n}\,\)で割ることで(合同式ですが\(\,p\,\)進絶対値\(\,|\cdot|_p\,\)の表式に書き直すことで割ることは厳密に正当化されます)
\(\beta_n+f'(\alpha_n)x\equiv 0\pmod{p\mathbb{Z}_p}\,\)
さらに\(\,f'(\alpha_n)\not\equiv 0\pmod{p\mathbb{Z}_p}\,\)より\(\,\mathbb{Z}_p/p\mathbb{Z}_p\,\)上で逆数\(\,(f'(\alpha_n))^{-1}\,\)が存在するので
\(x\equiv-\beta_{n}(f'(\alpha_n))^{-1}\pmod{p\mathbb{Z}_p}\)
と\(\,x\,\)は定まります。
よって\(\,x=-\beta_{n}(f'(\alpha_n))^{-1}+pz\,\,(z\in\mathbb{Z}_p)\,\)とおけるので,\(\,\alpha_{n+1}=\alpha_{n}+p^{n}x\,\)に代入して
\(\alpha_{n+1}\equiv\alpha_{n}-p^{n}\beta_{n}(f'(\alpha_n))^{-1}\pmod{p^{n+1}\mathbb{Z}_{p}}\)
さらに\(\,f(\alpha_n)=p^{n}\beta_{n}\,\)より
\(\alpha_{n+1}\equiv\alpha_{n}-f(\alpha_n)(f'(\alpha_n))^{-1}\pmod{p^{n+1}\mathbb{Z}_{p}}\)
となる必要があることが分かりました。
この議論を逆に辿り,初めから\(\,\alpha_{n+1}=\alpha_{n}-f(\alpha_n)(f'(\alpha_n))^{-1}\,\)として\(\,\alpha_{n+1}\,\)を定めることで
目的の条件\(\,f(\alpha_{n+1})\equiv 0\pmod{p^{n+1}\mathbb{Z}_p}\,\)かつ\(\,\alpha_{n+1}\equiv \alpha_{n} \pmod{p^{n}\mathbb{Z}_p}\)
を満たす\(\,\alpha_{n+1}\in \mathbb{Z}_p\,\)の存在性は明らかです。
また一意性もさきほどの議論より,条件を満たす\(\,\alpha_{n+1}\,\)は
\(\alpha_{n+1}\equiv\alpha_{n}-f(\alpha_n)(f'(\alpha_n))^{-1}\pmod{p^{n+1}\mathbb{Z}_{p}}\,\)
となる必要があることから\(\,\mathbb{Z}_p/p^{n+1}\mathbb{Z}_{p}\,\)上で一意的に定まることも分かります。
したがって題意は示されました。\(\quad\square\)
ニューロン法との関連
ヘンゼルの補題の証明の後半の式で\(\,f(X)\,\)の\(\,\mathbb{Z}_p/p^{n+1}\mathbb{Z}_{p}\,\)の根\(\,\alpha_{n+1}\,\)は次のように定められました。
\(\alpha_{n+1}=\alpha_{n}-\dfrac{f(\alpha_n)}{f'(\alpha_n)}\)
この表式は方程式の実根を数値計算的に求めるニュートン法(wiki)の表式と完全に一致します。
※数値計算とは方程式の根などの求めたいものを,コンピュータの高度な計算能力を用いて近似的に求めることです。
そのためヘンゼルの補題は「\(\,p\,\)進体\(\,\mathbb{Q}_p\,\)におけるニュートン法の解探索」と考えることができます。
まとめ
今回の記事ではヘンゼルの補題(Hensel’s lemma)を解説いたしました。
ヘンゼルの補題の主張も面白いものですが,証明がニュートン法と関連する点も面白いですね。
ヘンゼルの補題の応用については別の記事を改めて書く予定ですので,そちらをお待ちください。\(\,\mathbb{Q}_p\,\)上の\(\,1\,\)のべき根について解説する予定です。
もし「説明がわかりにくい」などご要望・ご感想がありましたら,
X(旧:Twitter)で#トイカラでつぶやいていただけると,できる限り対応します。
ここまで読んでいただき,ありがとうございました。
参考図書
- \([1]\) “ニュートン法”.Wikipedia.2024-02-08更新.https://ja.wikipedia.org/wiki/%E3%83%8B%E3%83%A5%E3%83%BC%E3%83%88%E3%83%B3%E6%B3%95.2025-01-13参照
- \([2]\) Fernando Q. Gouvêa. “p-adic Numbers”.Third Edition.Springer Cham.2020.p.88-93