数学 のヘンゼルの補題 (ヘンゼルのほだい、英 : Hensel's lemma )とは、1変数多項式 が素数 p を法として単根 (英語版 ) を持つならば、その根は p の任意の冪乗 を法とする根に一意的に持ち上げられるという、合同算術 における補題である。この補題は、多項式が法 p で2つの互いに素な多項式 (英語版 ) に因数分解 できるならば、その因数分解は p の任意の冪乗を法とする因数分解に持ち上げることができるという補題に一般化できる。因数分解に現れる多項式の次数が1の場合が根の場合に相当する。ヘンゼルの持ち上げ補題 (英 : Hensel's lifting lemma )とも呼ばれる。名称はクルト・ヘンゼル に因む。
p の冪指数を無限に大きくしていったときの(射影極限 の意味での)極限を取ることにより、法 p での根(または因数分解)を p 進整数 上での根(または因数分解)に持ち上げることができる。
この補題は、任意の可換環 を係数とする多項式に対して、p をイデアル 、「互いに素な2つの多項式」を「2つの多項式が生成するイデアルが1を含む」に置き換えることにより一般化できる。一般化された補題も同じ名前で呼ばれる。
ヘンゼルの補題は、解析的整数論 の一分野である p 進解析学 の基礎である。
ヘンゼルの補題の証明は構成的 (英語版 ) であり、証明からヘンゼル持ち上げ の効率的なアルゴリズムが得られる。これは多項式の因数分解 のアルゴリズムの基礎である。また有理数 体上の線型代数学 についての最も効率の良いアルゴリズムが得られる[要検証 – ノート ] 。
ヘンゼルの補題は、ヘンゼルよりも早く1846年にテオドル・シェーネマン (英語版 ) によって証明されていた。また、「存在」についての主張だけならシェーネマンよりも早くカール・フリードリヒ・ガウス によっても知られていた。
還元と持ち上げを図で表したもの。還元は何の困難もなく行えるが、持ち上げは可能ではないこともある。また、可能であっても一意でないこともある。
もともとのヘンゼルの補題は、整数を係数とする多項式の因数分解と、素数 p 、もしくはその冪乗を法 とする剰余類環 を係数とする多項式の因数分解との関係についてのものであった。素数
p を極大イデアル に置き換えることで、この補題は整数から任意の可換環 へそのまま一般化できる(
Z
{\displaystyle \mathbb {Z} }
の極大イデアルはある素数 p で
p
Z
{\displaystyle p\mathbb {Z} }
と書けるのであった)。
この一般化を正確に書くためには、整数の場合の合同算術 を一般化しておく必要があるので、この文脈で通常使われる用語を正確に定義しておこう。
R を可換環、I を R のイデアル とする。R
の元を正準写像 (英語版 )
R
→
R
/
I
{\displaystyle R\to R/I}
による像で置き換えることを、I を法とする還元 、または法 I での還元 と呼ぶ。
例えば、
f
∈
R
[
X
]
{\displaystyle f\in R[X]}
を
R
係数の多項式 とするとき、その
I
を法とする還元
f
mod
I
{\displaystyle f{\bmod {I}}}
とは、f の係数を
R
/
I
{\displaystyle R/I}
での像に置き換えることで得られる
(
R
/
I
)
[
X
]
=
R
[
X
]
/
I
R
[
X
]
{\displaystyle (R/I)[X]=R[X]/IR[X]}
の多項式のことをいう。
R
[
X
]
{\displaystyle R[X]}
の2つの多項式 f と g が法
I で係数が等しくなるとき、つまり
f
−
g
∈
I
R
[
X
]
{\displaystyle f-g\in IR[X]}
であるとき、この2つの多項式は法 I で合同 であるといい、
f
≡
g
(
mod
I
)
{\textstyle f\equiv g{\pmod {I}}}
で表す。
h
∈
R
[
X
]
{\displaystyle h\in R[X]}
の法 I での因数分解とは、h を法 I で
R
[
X
]
{\displaystyle R[X]}
の2つ(以上)の多項式 f, g の積として書き表す
h
≡
f
g
(
mod
I
)
{\textstyle h\equiv fg{\pmod {I}}}
ことをいう。
持ち上げ とは還元の逆の操作である。つまり、
R
/
I
{\displaystyle R/I}
の元を使って表されている対象 があったとき、持ち上げとは対象の性質を保ったまま還元するとこの対象に等しくなるように
R
{\displaystyle R}
(もしくはある k > 1 に対する
R
/
I
k
{\displaystyle R/I^{k}}
)の元に置き換えることをいう。
例えば、多項式
h
∈
R
[
X
]
{\displaystyle h\in R[X]}
が法 I で
h
≡
f
g
(
mod
I
)
{\textstyle h\equiv fg{\pmod {I}}}
と因数分解されているとき、この因数分解を法
I
k
{\displaystyle I^{k}}
へ持ち上げるとは、多項式
f
′
,
g
′
∈
R
[
X
]
{\displaystyle f',g'\in R[X]}
であって
f
′
≡
f
(
mod
I
)
,
{\textstyle f'\equiv f{\pmod {I}},}
g
′
≡
g
(
mod
I
)
,
{\textstyle g'\equiv g{\pmod {I}},}
h
≡
f
g
(
mod
I
k
)
{\textstyle h\equiv fg{\pmod {I^{k}}}}
を満たすものを見つけることである。ヘンゼルの補題は、この因数分解の持ち上げが緩い条件のもとで常に可能であることを主張するものである。
元々のヘンゼルの補題は、整数を係数とする多項式の素数 p を法とする因数分解 を
p の冪乗を法とする因数分解、もしくは
p 進整数環 上の因数分解に持ち上げることを主張(そして証明)するものであった。この補題は、整数を任意の可換環 、素数を極大イデアル 、そして
p 進整数環をその極大イデアルについての完備化 に置き換えることで簡単に一般化できる。証明の仕方も同じである。この一般化された補題も広く用いられる。本記事で述べるのもこれである。
R を可換環、
m
{\displaystyle {\mathfrak {m}}}
をその極大イデアルの1つ、そして
h
=
α
0
X
n
+
⋯
+
α
n
−
1
X
+
α
n
{\displaystyle h=\alpha _{0}X^{n}+\cdots +\alpha _{n-1}X+\alpha _{n}}
を
R
[
X
]
{\displaystyle R[X]}
の多項式 で最高次の係数
α
0
{\displaystyle \alpha _{0}}
が
m
{\displaystyle {\mathfrak {m}}}
に含まれないものとする。
m
{\displaystyle {\mathfrak {m}}}
を極大イデアルとしているので、
その剰余環
R
/
m
{\displaystyle R/{\mathfrak {m}}}
は体 である。したがって
(
R
/
m
)
[
X
]
{\displaystyle (R/{\mathfrak {m}})[X]}
は単項イデアル整域 なので、
特に一意分解環 である。これは、任意のゼロではない
(
R
/
m
)
[
X
]
{\displaystyle (R/{\mathfrak {m}})[X]}
の多項式は
(
R
/
m
)
{\displaystyle (R/{\mathfrak {m}})}
のゼロでない元とモニック (最高次の係数が1という意味)な既約多項式 の積として一意的にかけることを意味する。
ヘンゼルの補題は、h の法
m
{\displaystyle {\mathfrak {m}}}
での互いに素な多項式への因数分解は、任意の
k
に対して
m
k
{\displaystyle {\mathfrak {m}}^{k}}
を法とする因数分解に一意的に持ち上げられることを主張する。
もう少し詳しく書くと、上述の仮定のもとで、法
m
{\displaystyle {\mathfrak {m}}}
でモニックかつ互いに素 (英語版 ) な多項式
f と g
を使って
h
≡
α
0
f
g
(
mod
m
)
{\textstyle h\equiv \alpha _{0}fg{\pmod {\mathfrak {m}}}}
と分解できたとすると、全ての正の整数 k に対してモニック多項式
f
k
{\displaystyle f_{k}}
と
g
k
{\displaystyle g_{k}}
が存在して次の式
h
≡
α
0
f
k
g
k
(
mod
m
k
)
f
k
≡
f
(
mod
m
)
g
k
≡
g
(
mod
m
)
{\displaystyle {\begin{aligned}h&\equiv \alpha _{0}f_{k}g_{k}{\pmod {{\mathfrak {m}}^{k}}}\\f_{k}&\equiv f{\pmod {\mathfrak {m}}}\\g_{k}&\equiv g{\pmod {\mathfrak {m}}}\end{aligned}}}
が成り立ち、しかもこのような性質を持つ
f
k
{\displaystyle f_{k}}
と
g
k
{\displaystyle g_{k}}
は法
m
k
{\displaystyle {\mathfrak {m}}^{k}}
で一意ということを主張する。
大切で特別な場合として
f
=
X
−
r
{\displaystyle f=X-r}
であるときを考える。この場合、互いに素という仮定は
r は
h
mod
m
{\displaystyle h{\bmod {\mathfrak {m}}}}
の単根 であるということを意味する。したがってこの場合にはヘンゼルの補題の主張は次のようになる(これもヘンゼルの補題と言われる)。
記号と仮定は今までと同じとし、r を
h
mod
m
{\displaystyle h{\bmod {\mathfrak {m}}}}
の単根とする。このとき、r は全ての正の整数 n に対して
h
mod
m
n
{\displaystyle h{\bmod {{\mathfrak {m}}^{n}}}}
の単根に一意的に持ち上げることができる。つまり、任意の正の整数 n 対して
h
mod
m
n
{\displaystyle h{\bmod {\mathfrak {m}}}^{n}}
の単根
r
n
∈
R
/
m
n
{\displaystyle r_{n}\in R/{\mathfrak {m}}^{n}}
であって
r
n
≡
r
(
mod
m
)
{\textstyle r_{n}\equiv r{\pmod {\mathfrak {m}}}}
を満たすものが一意的に存在する。
全ての正の整数 n に対して
R
/
m
n
{\displaystyle R/{\mathfrak {m}}^{n}}
に持ち上げることができるので、n
を限りなく大きくしていったときの"極限"を考えたくなる。これが p 進整数 が考案された主な理由の1つである。
R を可換環、
m
{\displaystyle {\mathfrak {m}}}
を極大イデアルとすると、
m
{\displaystyle {\mathfrak {m}}}
のベキたちは
R の
m
{\displaystyle {\mathfrak {m}}}
進位相 と呼ばれる位相 についての基本近傍系 になる。この位相による完備化は局所環
R
m
{\displaystyle R_{\mathfrak {m}}}
の完備化と同一視でき、また射影極限
lim
←
R
/
m
n
{\displaystyle \lim _{\leftarrow }R/{\mathfrak {m}}^{n}}
とも同一視できる。この完備局所環は
R
^
m
{\displaystyle {\widehat {R}}_{\mathfrak {m}}}
と一般的に書き表される。R が整数環で
m
=
p
Z
{\displaystyle {\mathfrak {m}}=p\mathbb {Z} }
(p は素数)であるときには、この完備局所環は p 進整数環
Z
p
{\displaystyle \mathbb {Z} _{p}}
である。
完備化の射影極限を使った定義と上述のヘンゼルの補題の主張から、多項式
h
∈
R
[
X
]
{\displaystyle h\in R[X]}
の法
m
{\displaystyle {\mathfrak {m}}}
での因数分解がどの2つの因子を取っても互いに素であるなら、それは
h
の
R
^
m
[
X
]
{\displaystyle {\widehat {R}}_{\mathfrak {m}}[X]}
における像の因数分解に一意的に持ち上げられることが導かれる。同様に、h の法
m
{\displaystyle {\mathfrak {m}}}
での任意の単根は
h の
R
^
m
[
X
]
{\displaystyle {\widehat {R}}_{\mathfrak {m}}[X]}
における像の単根に持ち上げられる。
ヘンゼルの補題は、
R
/
m
n
{\displaystyle R/{\mathfrak {m}}^{n}}
での因数分解を
R
/
m
n
+
1
{\displaystyle R/{\mathfrak {m}}^{n+1}}
での因数分解に持ち上げる(#1次持ち上げ )ことを繰り返すか、または
R
/
m
2
n
{\displaystyle R/{\mathfrak {m}}^{2n}}
での因数分解に持ち上げる(#2次持ち上げ )ことを繰り返すことにより証明されることが多い。
証明では、体を係数とする互いに素な多項式 (英語版 ) に対してベズーの等式 が成り立つということが重要な役割を果たす。ベズーの等式とは、体 (ここで使うのは
R
/
m
{\displaystyle R/{\mathfrak {m}}}
の場合)を係数とする互いに素な1変数多項式
f と g
があったとすると、ある多項式 a と b であって、
deg
a
<
deg
g
{\displaystyle \deg a<\deg g}
かつ
deg
b
<
deg
f
{\displaystyle \deg b<\deg f}
かつ次の式
a
f
+
b
g
=
1
{\displaystyle af+bg=1}
を満たすものが存在するということである。
ベズーの等式が成り立てば
m
{\displaystyle {\mathfrak {m}}}
が極大イデアルではなくともヘンゼルの補題を証明することができる。
それゆえ、以下では
R を可換環、I をそのイデアル 、
h
∈
R
[
X
]
{\displaystyle h\in R[X]}
を最高次係数が法 I
で可逆(
R
/
I
{\displaystyle R/I}
における像が
R
/
I
{\displaystyle R/I}
の可逆元 ということ)な多項式、I もしくは I の冪乗を法とする
h の因数分解 に現れる因子が法 I
でベズーの等式を満たす、という設定のもとで証明を行う。証明では、
A
≡
B
(
mod
I
)
{\textstyle A\equiv B{\pmod {I}}}
という式で
A
−
B
∈
I
R
[
X
]
{\displaystyle A-B\in IR[X]}
であることを表すことにする。
R を可換環 、I をそのイデアル 、
h
∈
R
[
X
]
{\displaystyle h\in R[X]}
を
R
係数の1変数多項式 で最高次の係数
α
{\displaystyle \alpha }
が法 I で可逆(
α
{\displaystyle \alpha }
の
R
/
I
{\displaystyle R/I}
における像が
R
/
I
{\displaystyle R/I}
の可逆元 という意味)であるものとする。
そして何らかの正の整数 k に対して
h
≡
α
f
g
(
mod
I
k
)
{\displaystyle h\equiv \alpha fg{\pmod {I^{k}}}}
と因数分解でき、f と
g
はモニック多項式 で法
I
で互いに素だったとする。ここで、"互いに素"というのはある
a
,
b
∈
R
[
X
]
{\displaystyle a,b\in R[X]}
が存在して
a
f
+
b
g
≡
1
(
mod
I
)
{\textstyle af+bg\equiv 1{\pmod {I}}}
という意味で使っている。このとき、多項式
δ
f
,
δ
g
∈
I
k
R
[
X
]
{\displaystyle \delta _{f},\delta _{g}\in I^{k}R[X]}
であって
deg
δ
f
<
deg
f
{\displaystyle \deg \delta _{f}<\deg f}
かつ
deg
δ
g
<
deg
g
{\displaystyle \deg \delta _{g}<\deg g}
かつ次の式
h
≡
α
(
f
+
δ
f
)
(
g
+
δ
g
)
(
mod
I
k
+
1
)
{\displaystyle h\equiv \alpha (f+\delta _{f})(g+\delta _{g}){\pmod {I^{k+1}}}}
が成り立つものが存在する。しかもこれらの条件が成り立つ
δ
f
{\displaystyle \delta _{f}}
と
δ
g
{\displaystyle \delta _{g}}
は法
I
k
+
1
R
[
X
]
{\displaystyle I^{k+1}R[X]}
で一意的に定まる。
そして
f
+
δ
f
{\displaystyle f+\delta _{f}}
と
g
+
δ
g
{\displaystyle g+\delta _{g}}
は
f と g が満たすベズーの等式を同様に満たす。つまり
a
(
f
+
δ
f
)
+
b
(
g
+
δ
g
)
≡
1
(
mod
I
)
{\displaystyle a(f+\delta _{f})+b(g+\delta _{g})\equiv 1{\pmod {I}}}
が成り立つ。なぜ直前の主張からすぐにわかるこのことをあえて述べたかというと、k の値を1つ大きくして反復計算を進めるときに、これが次のステップでの前提条件が満たされていることを意味するからである。
次に示す証明は、
R
/
I
{\displaystyle R/I}
または
I
k
/
I
k
+
1
{\displaystyle I^{k}/I^{k+1}}
を係数とする多項式だけを使って
δ
f
{\displaystyle \delta _{f}}
と
δ
g
{\displaystyle \delta _{g}}
を計算することによりなされている。
R
=
Z
{\displaystyle R=\mathbb {Z} }
で
I
=
p
Z
{\displaystyle I=p\mathbb {Z} }
の場合には、これは法
p での剰余類だけを使って計算できることを意味する。
証明: 仮定から
α
{\displaystyle \alpha }
は法 I で可逆である。したがって、ある
β
∈
R
{\displaystyle \beta \in R}
と
γ
∈
I
R
[
X
]
{\displaystyle \gamma \in IR[X]}
で
α
β
=
1
−
γ
{\displaystyle \alpha \beta =1-\gamma }
を満たすものが存在する。
多項式
δ
h
∈
I
k
R
[
X
]
{\displaystyle \delta _{h}\in I^{k}R[X]}
を、次数が
deg
h
{\displaystyle \deg h}
未満で
δ
h
≡
h
−
α
f
g
(
mod
I
k
+
1
)
{\displaystyle \delta _{h}\equiv h-\alpha fg{\pmod {I^{k+1}}}}
が成り立つものとする。
δ
h
=
h
−
α
f
g
{\displaystyle \delta _{h}=h-\alpha fg}
と置いてもよいが、他のものを選んだ方が計算が簡単になることがある。例えば
R
=
Z
{\displaystyle R=\mathbb {Z} }
で
I
=
p
Z
{\displaystyle I=p\mathbb {Z} }
の場合には、係数が区間
[
0
,
p
−
1
]
{\displaystyle [0,p-1]}
に入る整数係数の多項式
δ
h
′
{\displaystyle \delta '_{h}}
を使って
δ
h
=
p
k
δ
h
′
{\displaystyle \delta _{h}=p^{k}\delta '_{h}}
と表せるようなものを取ることができるので、こう取ったほうがよい。
g はモニックなので、多項式に対する除法の原理 を
a
δ
h
{\displaystyle a\delta _{h}}
と
g に適用し、q と c で
a
δ
h
=
q
g
+
c
{\displaystyle a\delta _{h}=qg+c}
かつ
deg
c
<
deg
g
{\displaystyle \deg c<\deg g}
となるものを見つけることができる。この
q と c は
I
k
R
[
X
]
{\displaystyle I^{k}R[X]}
に入っている。同様に、
q
′
,
d
∈
I
k
R
[
X
]
{\displaystyle q',d\in I^{k}R[X]}
で
b
δ
h
=
q
′
f
+
d
{\displaystyle b\delta _{h}=q'f+d}
かつ
deg
d
<
deg
f
{\displaystyle \deg d<\deg f}
となるものを取る。
このとき
q
+
q
′
∈
I
k
+
1
R
[
X
]
{\displaystyle q+q'\in I^{k+1}R[X]}
である。実際、まず
f
c
+
g
d
=
a
f
δ
h
+
b
g
δ
h
−
f
g
(
q
+
q
′
)
≡
δ
h
−
f
g
(
q
+
q
′
)
(
mod
I
k
+
1
)
{\displaystyle fc+gd=af\delta _{h}+bg\delta _{h}-fg(q+q')\equiv \delta _{h}-fg(q+q'){\pmod {I^{k+1}}}}
が成り立っている。
f
g
{\displaystyle fg}
はモニックなので、
f
g
(
q
+
q
′
)
{\displaystyle fg(q+q')}
の法
I
k
+
1
{\displaystyle I^{k+1}}
での次数が
deg
f
g
{\displaystyle \deg fg}
の次数よりも小さくなるのは
q
+
q
′
∈
I
k
+
1
R
[
X
]
{\displaystyle q+q'\in I^{k+1}R[X]}
のときだけである。
こうして、
I
k
+
1
{\displaystyle I^{k+1}}
を法とする合同を考えることにより次の式
α
(
f
+
β
d
)
(
g
+
β
c
)
−
h
≡
α
f
g
−
h
+
α
β
(
f
(
a
δ
h
−
q
g
)
+
g
(
b
δ
h
−
q
′
f
)
)
≡
δ
h
(
−
1
+
α
β
(
a
f
+
b
g
)
)
−
α
β
f
g
(
q
+
q
′
)
≡
0
(
mod
I
k
+
1
)
{\displaystyle {\begin{aligned}\alpha (f+\beta d)&(g+\beta c)-h\\&\equiv \alpha fg-h+\alpha \beta (f(a\delta _{h}-qg)+g(b\delta _{h}-q'f))\\&\equiv \delta _{h}(-1+\alpha \beta (af+bg))-\alpha \beta fg(q+q')\\&\equiv 0{\pmod {I^{k+1}}}\end{aligned}}}
が成り立つことがわかる。そして、
δ
f
=
β
d
,
δ
g
=
β
c
{\displaystyle \delta _{f}=\beta d,\qquad \delta _{g}=\beta c}
と置けば求めるものになっているので、存在が示せた。
記号 R 、I 、h 、
α
{\displaystyle \alpha }
は前節と同じとする。h が
h
≡
α
f
g
(
mod
I
)
{\displaystyle h\equiv \alpha fg{\pmod {I}}}
と、
deg
f
0
+
deg
g
0
=
deg
h
{\displaystyle \deg f_{0}+\deg g_{0}=\deg h}
となる互いに素な多項式(前述の意味で)に因数分解できたとする。1次持ち上げを
k
=
1
,
2
,
…
,
n
−
1
…
{\displaystyle k=1,2,\ldots ,n-1\ldots }
に適用して、多項式
δ
f
{\displaystyle \delta _{f}}
と
δ
g
{\displaystyle \delta _{g}}
であって
deg
δ
f
<
deg
f
{\displaystyle \deg \delta _{f}<\deg f}
かつ
deg
δ
g
<
deg
g
{\displaystyle \deg \delta _{g}<\deg g}
かつ次の式
h
≡
α
(
f
+
δ
f
)
(
g
+
δ
g
)
(
mod
I
)
n
{\displaystyle h\equiv \alpha (f+\delta _{f})(g+\delta _{g}){{\pmod {I}}^{n}}}
を満たすものの存在がわかる。この多項式
δ
f
{\displaystyle \delta _{f}}
と
δ
g
{\displaystyle \delta _{g}}
は法
I
n
{\displaystyle I^{n}}
で一意に定まる。つまり、同じ条件を満たす組
(
δ
f
′
,
δ
g
′
)
{\displaystyle (\delta '_{f},\delta '_{g})}
が他にあったとすると、
δ
f
′
≡
δ
f
(
mod
I
n
)
and
δ
g
′
≡
δ
g
(
mod
I
n
)
{\displaystyle \delta '_{f}\equiv \delta _{f}{\pmod {I^{n}}}\qquad {\text{and}}\qquad \delta '_{g}\equiv \delta _{g}{\pmod {I^{n}}}}
が成り立つ。
証明:
I
n
{\displaystyle I^{n}}
を法とする合同は
I
n
−
1
{\displaystyle I^{n-1}}
を法とする合同を意味するので、
数学的帰納法 を使って証明する。
n = 0 の場合は明らかである。
n − 1 の場合の一意性は証明されているものと仮定する。つまり、
δ
f
−
δ
f
′
∈
I
n
−
1
R
[
X
]
and
δ
g
−
δ
g
′
∈
I
n
−
1
R
[
X
]
{\displaystyle \delta _{f}-\delta '_{f}\in I^{n-1}R[X]\qquad {\text{and}}\qquad \delta _{g}-\delta '_{g}\in I^{n-1}R[X]}
と仮定する。仮定により
h
≡
α
(
f
+
δ
f
)
(
g
+
δ
g
)
≡
α
(
f
+
δ
f
′
)
(
g
+
δ
g
′
)
(
mod
I
n
)
{\displaystyle h\equiv \alpha (f+\delta _{f})(g+\delta _{g})\equiv \alpha (f+\delta '_{f})(g+\delta '_{g}){\pmod {I^{n}}}}
が成り立ち、これから
α
(
f
+
δ
f
)
(
g
+
δ
g
)
−
α
(
f
+
δ
f
′
)
(
g
+
δ
g
′
)
=
α
(
f
(
δ
g
−
δ
g
′
)
+
g
(
δ
f
−
δ
f
′
)
)
+
α
(
δ
f
δ
g
−
δ
f
′
δ
g
′
)
∈
I
n
R
[
X
]
{\displaystyle {\begin{aligned}\alpha (f+\delta _{f})(g+\delta _{g})&-\alpha (f+\delta '_{f})(g+\delta '_{g})\\&=\alpha (f(\delta _{g}-\delta '_{g})+g(\delta _{f}-\delta '_{f}))+\alpha (\delta _{f}\delta _{g}-\delta '_{f}\delta '_{g})\in I^{n}R[X]\end{aligned}}}
が成り立つ。帰納法の仮定から右辺の2番目の項は
I
n
{\displaystyle I^{n}}
に含まれ、(左辺もそうなので)同じことが初項についても成り立つ。
α
{\displaystyle \alpha }
は法 I で可逆なので、ある
β
∈
R
{\displaystyle \beta \in R}
と
γ
∈
I
{\displaystyle \gamma \in I}
が存在して
α
β
=
1
+
γ
{\displaystyle \alpha \beta =1+\gamma }
が成り立つ。これと帰納法の仮定から
f
(
δ
g
−
δ
g
′
)
+
g
(
δ
f
−
δ
f
′
)
=
α
β
(
f
(
δ
g
−
δ
g
′
)
+
g
(
δ
f
−
δ
f
′
)
)
−
γ
(
f
(
δ
g
−
δ
g
′
)
+
g
(
δ
f
−
δ
f
′
)
)
∈
I
n
R
[
X
]
{\displaystyle {\begin{aligned}f(\delta _{g}-\delta '_{g})&+g(\delta _{f}-\delta '_{f})\\&=\alpha \beta (f(\delta _{g}-\delta '_{g})+g(\delta _{f}-\delta '_{f}))-\gamma (f(\delta _{g}-\delta '_{g})+g(\delta _{f}-\delta '_{f}))\in I^{n}R[X]\end{aligned}}}
が成り立つ。
法 I で互いに素という仮定から、ある
a
,
b
∈
R
[
X
]
{\displaystyle a,b\in R[X]}
が存在して
1
≡
a
f
+
b
g
(
mod
I
)
{\textstyle 1\equiv af+bg{\pmod {I}}}
が成り立つ。帰納法の仮定をもう一度使うと
δ
g
−
δ
g
′
≡
(
a
f
+
b
g
)
(
δ
g
−
δ
g
′
)
≡
g
(
b
(
δ
g
−
δ
g
′
)
−
a
(
δ
f
−
δ
f
′
)
)
(
mod
I
n
)
{\displaystyle {\begin{aligned}\delta _{g}-\delta '_{g}&\equiv (af+bg)(\delta _{g}-\delta '_{g})\\&\equiv g(b(\delta _{g}-\delta '_{g})-a(\delta _{f}-\delta '_{f})){\pmod {I^{n}}}\end{aligned}}}
となる。したがって、次数が
deg
g
{\displaystyle \deg g}
未満の多項式が法
I
n
{\displaystyle I^{n}}
でモニック 多項式 g ともう1つの多項式 w の積と合同になったことになる。これが起こり得るのは
w
∈
I
n
R
[
X
]
{\displaystyle w\in I^{n}R[X]}
の場合だけなので、これから
δ
g
−
δ
g
′
∈
I
n
R
[
X
]
{\displaystyle \delta _{g}-\delta '_{g}\in I^{n}R[X]}
が得られる。同様に
δ
f
−
δ
f
′
{\displaystyle \delta _{f}-\delta '_{f}}
も
I
n
R
[
X
]
{\displaystyle I^{n}R[X]}
に含まれることが示せるので、これで一意性が証明できた。
1次持ち上げは法
I
n
{\displaystyle I^{n}}
での因数分解を法
I
n
+
1
{\displaystyle I^{n+1}}
での因数分解に持ち上げるものであった。2次持ち上げでは法
I
2
n
{\displaystyle I^{2n}}
での因数分解に一気に持ち上げる。しかし、ベズーの等式 の持ち上げも必要になり、(上述の1次持ち上げでは)法
I での計算だけで済んだが法
I
n
{\displaystyle I^{n}}
での計算が必要になるため、追加の計算コストがかかる。
どちらの方法でも大きな
N に対して法
I
N
{\displaystyle I^{N}}
まで持ち上げることができる。例えば
N
=
2
k
{\displaystyle N=2^{k}}
の場合に法
I
N
{\displaystyle I^{N}}
まで因数分解を持ち上げるためには、1次持ち上げを使うと
N − 1 回の反復計算が必要になるが、
2次持ち上げを使えば
k − 1 回の反復計算で済む。しかし、2次持ち上げを使う方法では扱わなければならない係数のサイズが計算中に増大していく。これは、一番いい持ち上げの方法は、N の値や
R の性質、
使用する乗算アルゴリズム、
ハードウェア の特性などの状況に依存することを意味する[要出典 ] 。
2次持ち上げは次の性質を利用する。
ある正の整数 k に対して因数分解
h
≡
α
f
g
(
mod
I
k
)
{\displaystyle h\equiv \alpha fg{\pmod {I^{k}}}}
があったとし、f と g はモニック多項式 で、ある
a
,
b
∈
R
[
X
]
{\displaystyle a,b\in R[X]}
が存在し
a
f
+
b
g
≡
1
(
mod
I
k
)
{\textstyle af+bg\equiv 1{\pmod {I^{k}}}}
が成り立つという意味で法
Ik
で互いに素だったとする。このとき、ある多項式
δ
f
,
δ
g
∈
I
k
R
[
X
]
{\displaystyle \delta _{f},\delta _{g}\in I^{k}R[X]}
が存在し、
deg
δ
f
<
deg
f
{\displaystyle \deg \delta _{f}<\deg f}
かつ
deg
δ
g
<
deg
g
{\displaystyle \deg \delta _{g}<\deg g}
かつ
h
≡
α
(
f
+
δ
f
)
(
g
+
δ
g
)
(
mod
I
2
k
)
{\displaystyle h\equiv \alpha (f+\delta _{f})(g+\delta _{g}){\pmod {I^{2k}}}}
が成り立つ。さらに
f
+
δ
f
{\displaystyle f+\delta _{f}}
と
g
+
δ
g
{\displaystyle g+\delta _{g}}
は次の形のベズーの等式
(
a
+
δ
a
)
(
f
+
δ
f
)
+
(
b
+
δ
b
)
(
g
+
δ
g
)
≡
1
(
mod
I
2
k
)
{\displaystyle (a+\delta _{a})(f+\delta _{f})+(b+\delta _{b})(g+\delta _{g})\equiv 1{\pmod {I^{2k}}}}
を満たす(つまり2次持ち上げの反復計算を行うための前提が満たされる)。
証明: 最初の主張は1次持ち上げを
k = 1 で
I の代わりにイデアル
I
k
{\displaystyle I^{k}}
に対して適用することでわかる。
α
=
a
f
+
b
g
−
1
∈
I
k
R
[
X
]
{\displaystyle \alpha =af+bg-1\in I^{k}R[X]}
と置く。次の式
a
(
f
+
δ
f
)
+
b
(
g
+
δ
g
)
=
1
+
Δ
{\displaystyle a(f+\delta _{f})+b(g+\delta _{g})=1+\Delta }
が、
Δ
=
α
+
a
δ
f
+
b
δ
g
∈
I
k
R
[
X
]
{\displaystyle \Delta =\alpha +a\delta _{f}+b\delta _{g}\in I^{k}R[X]}
と置くことで成り立つ。2つの多項式を
δ
a
=
−
a
Δ
{\displaystyle \delta _{a}=-a\Delta }
と
δ
b
=
−
b
Δ
{\displaystyle \delta _{b}=-b\Delta }
で定めると
(
a
+
δ
a
)
(
f
+
δ
f
)
+
(
b
+
δ
b
)
(
g
+
δ
g
)
=
1
−
Δ
2
∈
I
2
k
R
[
X
]
{\displaystyle (a+\delta _{a})(f+\delta _{f})+(b+\delta _{b})(g+\delta _{g})=1-\Delta ^{2}\in I^{2k}R[X]}
が成り立つ。これで2番目の主張も証明できた。
多項式
f
(
X
)
=
X
6
−
2
∈
Q
[
X
]
{\displaystyle f(X)=X^{6}-2\in \mathbb {Q} [X]}
を考えよう。
この多項式に対して法2でのヘンゼルの補題を適用することはできない。なぜなら
f
(
X
)
{\displaystyle f(X)}
を法 2 で還元すると単に
[ 3] pg 15-16
f
¯
(
X
)
=
X
6
−
2
¯
=
X
6
{\displaystyle {\bar {f}}(X)=X^{6}-{\overline {2}}=X^{6}}
となり、この6つの因子
X
{\displaystyle X}
はどの2つを取っても互いに素ではないからだ。しかし、アイゼンシュタインの既約判定法 を使って多項式
f
(
X
)
{\displaystyle f(X)}
が
Q
2
[
X
]
{\displaystyle \mathbb {Q} _{2}[X]}
で既約であることは示せる。
一方、
k
=
F
7
{\displaystyle k=\mathbb {F} _{7}}
では
f
¯
(
X
)
=
X
6
−
2
¯
=
X
6
−
16
¯
=
(
X
3
−
4
¯
)
(
X
3
+
4
¯
)
{\displaystyle {\bar {f}}(X)=X^{6}-{\overline {2}}=X^{6}-{\overline {16}}=(X^{3}-{\overline {4}})\;(X^{3}+{\overline {4}})}
となる。
4
{\displaystyle 4}
は
F
7
{\displaystyle \mathbb {F} _{7}}
における2の平方根である。4は
F
7
{\displaystyle \mathbb {F} _{7}}
における立方数ではないので、この2つの因子は
F
7
{\displaystyle \mathbb {F} _{7}}
上既約である。したがって
X
6
−
2
{\displaystyle X^{6}-2}
の
Z
7
[
X
]
{\displaystyle \mathbb {Z} _{7}[X]}
(または
Q
7
[
X
]
{\displaystyle \mathbb {Q} _{7}[X]}
)における既約多項式への因数分解は
f
(
X
)
=
X
6
−
2
=
(
X
3
−
α
)
(
X
3
+
α
)
,
{\displaystyle f(X)=X^{6}-2=(X^{3}-\alpha )\;(X^{3}+\alpha ),}
となる。ここで
α
=
…
450
454
7
{\displaystyle \alpha =\ldots 450\,454_{7}}
[ 注釈 1]
は
Z
7
{\displaystyle \mathbb {Z} _{7}}
における2の平方根で、先ほどの因数分解を持ち上げることで得られる。
最後に、この多項式は
F
727
[
X
]
{\displaystyle \mathbb {F} _{727}[X]}
においては
f
¯
(
X
)
=
X
6
−
2
¯
=
(
X
−
3
¯
)
(
X
−
116
¯
)
(
X
−
119
¯
)
(
X
−
608
¯
)
(
X
−
611
¯
)
(
X
−
724
¯
)
{\displaystyle {\bar {f}}(X)=X^{6}-{\overline {2}}=(X-{\overline {3}})\;(X-{\overline {116}})\;(X-{\overline {119}})\;(X-{\overline {608}})\;(X-{\overline {611}})\;(X-{\overline {724}})}
と分解する。これらの因子はどの2つを取っても互いに素なので、
Z
727
[
X
]
{\displaystyle \mathbb {Z} _{727}[X]}
(または
Q
727
[
X
]
{\displaystyle \mathbb {Q} _{727}[X]}
)において6つの多項式
X
−
β
{\displaystyle X-\beta }
の積に分解する。
β
{\displaystyle \beta }
は(有理数ではない)727進数
β
=
{
3
+
545
⋅
727
+
537
⋅
727
2
+
161
⋅
727
3
+
…
116
+
48
⋅
727
+
130
⋅
727
2
+
498
⋅
727
3
+
…
119
+
593
⋅
727
+
667
⋅
727
2
+
659
⋅
727
3
+
…
608
+
133
⋅
727
+
59
⋅
727
2
+
67
⋅
727
3
+
…
611
+
678
⋅
727
+
596
⋅
727
2
+
228
⋅
727
3
+
…
724
+
181
⋅
727
+
189
⋅
727
2
+
565
⋅
727
3
+
…
{\displaystyle \beta =\left\{{\begin{array}{rrr}3\;+&\!\!\!545\cdot 727\;+&\!\!\!537\cdot 727^{2}\,+&\!\!\!161\cdot 727^{3}+\ldots \\116\;+&\!\!\!48\cdot 727\;+&\!\!\!130\cdot 727^{2}\,+&\!\!\!498\cdot 727^{3}+\ldots \\119\;+&\!\!\!593\cdot 727\;+&\!\!\!667\cdot 727^{2}\,+&\!\!\!659\cdot 727^{3}+\ldots \\608\;+&\!\!\!133\cdot 727\;+&\!\!\!59\cdot 727^{2}\,+&\!\!\!67\cdot 727^{3}+\ldots \\611\;+&\!\!\!678\cdot 727\;+&\!\!\!596\cdot 727^{2}\,+&\!\!\!228\cdot 727^{3}+\ldots \\724\;+&\!\!\!181\cdot 727\;+&\!\!\!189\cdot 727^{2}\,+&\!\!\!565\cdot 727^{3}+\ldots \end{array}}\right.}
である。
f
(
x
)
{\displaystyle f(x)}
を整数 (または p 進整数)を係数とする多項式 とし、m と k を
m ≤ k
を満たす正の整数とする。整数 r に対して
f
(
r
)
≡
0
mod
p
k
and
f
′
(
r
)
≢
0
mod
p
{\displaystyle f(r)\equiv 0{\bmod {p}}^{k}\quad {\text{and}}\quad f'(r)\not \equiv 0{\bmod {p}}}
が成り立ったとする。このとき、任意の
m
>
0
{\displaystyle m>0}
に対してある整数 s が存在して
f
(
s
)
≡
0
mod
p
k
+
m
and
r
≡
s
mod
p
k
{\displaystyle f(s)\equiv 0{\bmod {p}}^{k+m}\quad {\text{and}}\quad r\equiv s{\bmod {p}}^{k}}
が成り立つ。この s は法
p k +m
で一意であり、次の式
s
=
r
−
f
(
r
)
⋅
a
{\displaystyle s=r-f(r)\cdot a}
で具体的に計算できる整数である。ここで
a
{\displaystyle a}
は次の式
a
≡
[
f
′
(
r
)
]
−
1
mod
p
m
{\displaystyle a\equiv [f'(r)]^{-1}{\bmod {p}}^{m}}
を満たす整数である。先程の式で s を定めれば、
f
(
r
)
≡
0
mod
p
k
{\displaystyle f(r)\equiv 0{\bmod {p}}^{k}}
なので条件
s
≡
r
mod
p
k
{\displaystyle s\equiv r{\bmod {p}}^{k}}
は満たされている。なお、
f
′
(
r
)
≡
0
mod
p
{\displaystyle f'(r)\equiv 0{\bmod {p}}}
であるときは、持ち上げ s は存在しないかもしれないし複数存在するかもしれない(あとで「#ヘンゼル持ち上げ 」で例示する)。
f の r まわりでのテイラー展開
f
(
s
)
=
∑
n
=
0
N
c
n
(
s
−
r
)
n
,
c
n
=
f
(
n
)
(
r
)
/
n
!
{\displaystyle f(s)=\sum _{n=0}^{N}c_{n}(s-r)^{n},\qquad c_{n}=f^{(n)}(r)/n!}
を使う。
r
≡
s
mod
p
k
{\displaystyle r\equiv s{\bmod {p}}^{k}}
なのである整数 t が存在して
s − r = tpk
とかける。これを使うと
f
(
s
)
=
∑
n
=
0
N
c
n
(
t
p
k
)
n
=
f
(
r
)
+
t
p
k
f
′
(
r
)
+
∑
n
=
2
N
c
n
t
n
p
k
n
=
f
(
r
)
+
t
p
k
f
′
(
r
)
+
p
2
k
t
2
g
(
t
)
g
(
t
)
∈
Z
[
t
]
=
z
p
k
+
t
p
k
f
′
(
r
)
+
p
2
k
t
2
g
(
t
)
f
(
r
)
≡
0
mod
p
k
=
(
z
+
t
f
′
(
r
)
)
p
k
+
p
2
k
t
2
g
(
t
)
{\displaystyle {\begin{aligned}f(s)&=\sum _{n=0}^{N}c_{n}\left(tp^{k}\right)^{n}\\&=f(r)+tp^{k}f'(r)+\sum _{n=2}^{N}c_{n}t^{n}p^{kn}\\&=f(r)+tp^{k}f'(r)+p^{2k}t^{2}g(t)&&g(t)\in \mathbb {Z} [t]\\&=zp^{k}+tp^{k}f'(r)+p^{2k}t^{2}g(t)&&f(r)\equiv 0{\bmod {p}}^{k}\\&=(z+tf'(r))p^{k}+p^{2k}t^{2}g(t)\end{aligned}}}
と計算できる。
m
⩽
k
{\displaystyle m\leqslant k}
としていたので、
f
(
s
)
≡
0
mod
p
k
+
m
⟺
(
z
+
t
f
′
(
r
)
)
p
k
≡
0
mod
p
k
+
m
⟺
z
+
t
f
′
(
r
)
≡
0
mod
p
m
⟺
t
f
′
(
r
)
≡
−
z
mod
p
m
⟺
t
≡
−
z
[
f
′
(
r
)
]
−
1
mod
p
m
p
∤
f
′
(
r
)
{\displaystyle {\begin{aligned}f(s)\equiv 0{\bmod {p}}^{k+m}&\Longleftrightarrow (z+tf'(r))p^{k}\equiv 0{\bmod {p}}^{k+m}\\&\Longleftrightarrow z+tf'(r)\equiv 0{\bmod {p}}^{m}\\&\Longleftrightarrow tf'(r)\equiv -z{\bmod {p}}^{m}\\&\Longleftrightarrow t\equiv -z[f'(r)]^{-1}{\bmod {p}}^{m}&&p\nmid f'(r)\end{aligned}}}
である。
f
′
(
r
)
{\displaystyle f'(r)}
は
p で割り切れないという仮定から、
f
′
(
r
)
{\displaystyle f'(r)}
は法
p
m
{\displaystyle p^{m}}
で逆元を持ち、しかもそれは一意でなければならない。したがって、最後の式の
t
についての解は法
p
m
{\displaystyle p^{m}}
で一意に存在し、s は法
p
k
+
m
{\displaystyle p^{k+m}}
で一意に存在する。
仮定は今までと同じとし、既約多項式
f
(
x
)
=
a
0
+
a
1
x
+
⋯
+
a
n
x
n
∈
K
[
X
]
{\displaystyle f(x)=a_{0}+a_{1}x+\cdots +a_{n}x^{n}\in K[X]}
が
a
0
,
a
n
≠
0
{\displaystyle a_{0},a_{n}\neq 0}
だったとすると、
|
f
|
=
max
{
|
a
0
|
,
|
a
n
|
}
{\displaystyle |f|=\max\{|a_{0}|,|a_{n}|\}}
である。
f
(
X
)
=
X
6
+
10
X
−
1
{\displaystyle f(X)=X^{6}+10X-1}
の場合だと、
Q
2
[
X
]
{\displaystyle \mathbb {Q} _{2}[X]}
で
|
f
(
X
)
|
=
max
{
|
a
0
|
,
…
,
|
a
n
|
}
=
max
{
0
,
1
,
0
}
=
1
{\displaystyle {\begin{aligned}|f(X)|&=\max\{|a_{0}|,\ldots ,|a_{n}|\}\\&=\max\{0,1,0\}=1\end{aligned}}}
であるが、
max
{
|
a
0
|
,
|
a
n
|
}
=
0
{\displaystyle \max\{|a_{0}|,|a_{n}|\}=0}
なので、この多項式は既約ではありえない。一方
Q
7
[
X
]
{\displaystyle \mathbb {Q} _{7}[X]}
では両方の値が等しいので既約である可能性がある。
既約であるかどうか決定するためにはニュートンの多角形を使う必要がある[ 4] pg 144 。
a
∈
F
p
{\displaystyle a\in \mathbb {F} _{p}}
に対してフロベニウス自己準同型
(
−
)
↦
(
−
)
p
{\displaystyle (-)\mapsto (-)^{p}}
による多項式
x
p
−
a
{\displaystyle x^{p}-a}
を考える。この微分は
d
d
x
x
p
−
a
=
p
⋅
x
p
−
1
≡
0
⋅
x
p
−
1
mod
p
≡
0
mod
p
{\displaystyle {\begin{aligned}{\frac {d}{dx}}x^{p}-a&=p\cdot x^{p-1}\\&\equiv 0\cdot x^{p-1}{\bmod {p}}\\&\equiv 0{\bmod {p}}\end{aligned}}}
となり常にゼロである。したがって
a
{\displaystyle a}
の
p
乗根は
Z
p
{\displaystyle \mathbb {Z} _{p}}
に存在しない。
a
=
1
{\displaystyle a=1}
の場合、これは
Z
p
{\displaystyle \mathbb {Z} _{p}}
には1の冪根
μ
p
{\displaystyle \mu _{p}}
が含まれないことを意味する。 [要検証 – ノート ]
1の
p
{\displaystyle p}
乗根は
F
p
{\displaystyle \mathbb {F} _{p}}
に存在しないが、方程式
x
p
−
x
=
x
(
x
p
−
1
−
1
)
{\displaystyle x^{p}-x=x(x^{p-1}-1)}
の解は存在する。次の式
d
d
x
x
p
−
x
=
p
x
p
−
1
−
1
≡
−
1
mod
p
{\displaystyle {\begin{aligned}{\frac {d}{dx}}x^{p}-x&=px^{p-1}-1\\&\equiv -1{\bmod {p}}\end{aligned}}}
は決してゼロにならないので、解が存在すればそれは
Z
p
{\displaystyle \mathbb {Z} _{p}}
に持ち上げることができる。フロベニウスにより
a
p
=
a
{\displaystyle a^{p}=a}
なので、ゼロではない元全体
F
p
×
{\displaystyle \mathbb {F} _{p}^{\times }}
が解全体である。実は、
Q
p
{\displaystyle \mathbb {Q} _{p}}
に含まれる1の冪根はこれらだけである[ 5] 。
補題を使って、多項式 f の法
pk
での根 r を
法
p k +1
での新しい根 s に
r ≡ s mod pk
となるように持ち上げることができる。
(m =1 と取る。数学的帰納法により大きい m はしたがう)。
また、法
p k +1
での根は法
pk
での根でもあるので、法
p k +1
での根はすべて法
pk
での根の持ち上げである。
持ち上げた根 s は法 p
で
r
と合同なので、
新しい根も
f
′
(
s
)
≡
f
′
(
r
)
≢
0
mod
p
{\displaystyle f'(s)\equiv f'(r)\not \equiv 0{\bmod {p}}}
を満たす。
したがって、
最初の根
rk
が
f
′
(
r
k
)
≢
0
mod
p
{\displaystyle f'(r_{k})\not \equiv 0{\bmod {p}}}
を満たせば持ち上げの操作は繰り返すことができ、
f
(
x
)
≡
0
mod
p
k
{\displaystyle f(x)\equiv 0{\bmod {p}}^{k}}
の解
rk
からはじめて、p の高次冪に対して同じ合同式を満たす解の数列
r k +1 , r k +2 , ...
を作れる。
このことはまた、
f の法
pk
での根が全て単根であれば、
f
の法
pk
での根の数は法
p k +1 , p k +2 , ...
での根の数と同じであることを示している。
r が法
p
で単根になっていないとき、このプロセスでは何が起きているのであろうか? これを見るために、次の状況
f
(
r
)
≡
0
mod
p
k
and
f
′
(
r
)
≡
0
mod
p
{\displaystyle f(r)\equiv 0{\bmod {p}}^{k}\quad {\text{and}}\quad f'(r)\equiv 0{\bmod {p}}}
を考えよう。このとき、
s
≡
r
mod
p
k
{\displaystyle s\equiv r{\bmod {p}}^{k}}
は
f
(
s
)
≡
f
(
r
)
mod
p
k
+
1
{\displaystyle f(s)\equiv f(r){\bmod {p}}^{k+1}}
を意味する。つまり任意の整数 t に対して
f
(
r
+
t
p
k
)
≡
f
(
r
)
mod
p
k
+
1
{\displaystyle f(r+tp^{k})\equiv f(r){\bmod {p}}^{k+1}}
が成り立つ。それゆえ次の2つの場合がある。
f
(
r
)
≢
0
mod
p
k
+
1
{\displaystyle f(r)\not \equiv 0{\bmod {p}}^{k+1}}
なら r の法 p k +1 への f (x ) の根の持ち上げは存在しない。
f
(
r
)
≡
0
mod
p
k
+
1
{\displaystyle f(r)\equiv 0{\bmod {p}}^{k+1}}
なら r の任意の法 p k +1 への持ち上げは f (x ) の法 p k +1 での根である。
例:
p = 2 として両方のケースを見てみよう。
f
(
x
)
=
x
2
+
1
{\displaystyle f(x)=x^{2}+1}
とし、r = 1 とする。このとき、
f
(
1
)
≡
0
mod
2
{\displaystyle f(1)\equiv 0{\bmod {2}}}
で
f
′
(
1
)
≡
0
mod
2
{\displaystyle f'(1)\equiv 0{\bmod {2}}}
である。
f
(
1
)
≢
0
mod
4
{\displaystyle f(1)\not \equiv 0{\bmod {4}}}
なので、1の法4への持ち上げで
f (x ) の法4での根になるものは存在しない。
g
(
x
)
=
x
2
−
17
{\displaystyle g(x)=x^{2}-17}
、r = 1 とする。すると
g
(
1
)
≡
0
mod
2
{\displaystyle g(1)\equiv 0{\bmod {2}}}
かつ
g
′
(
1
)
≡
0
mod
2
{\displaystyle g'(1)\equiv 0{\bmod {2}}}
である。また、
g
(
1
)
≡
0
mod
4
{\displaystyle g(1)\equiv 0{\bmod {4}}}
であるので、この解を法4へ持ち上げることができ、2つの持ち上げ(1と3)はともに解である。これらの解に対しても微分は法2でやはり0であるので、アプリオリにはこれらを法8に持ち上げられるかどうかは分からない。しかし実際には
g (1) も g (3) も法8で0と合同であるので持ち上げることができる。法8では1, 3, 5, 7が解である。これらの中で
g (1) と g (7) だけが法16で0なので、1と7だけが法16に持ち上げることができ、それらは1, 7, 9, 15である。これらの中では7と9だけが
g (x ) = 0 mod 32
なので、同様に法32での解7, 9, 23, 25が得られる。任意の整数 k ≥ 3 に対して法2での
g (x )
の根1の法
2k
の根への持ち上げは4つ存在することがわかる。
p 進数では、p の冪乗を法とする有理数の合同類というものを、分母が
p
の倍数でなければ考えることができる。このことを使うと、
法 pk での根
rk
から法 p k +1 での根
r k +1
を求める反復計算をずっと直感的に行うことができる。次の合同式
t
f
′
(
r
k
)
≡
−
(
f
(
r
k
)
/
p
k
)
mod
p
m
{\displaystyle tf'(r_{k})\equiv -(f(r_{k})/p^{k}){\bmod {p}}^{m}}
を解いて整数
t
を見つける代わりに、有理数
t
を次の式
−
(
f
(
r
k
)
/
p
k
)
/
f
′
(
r
k
)
{\displaystyle -(f(r_{k})/p^{k})/f'(r_{k})}
で定める。分母に pk が出てくるように見えるが、
f (rk ) が
pk
で割れるため実際には出てこない。そして
r
k
+
1
=
r
k
+
t
p
k
=
r
k
−
f
(
r
k
)
f
′
(
r
k
)
{\displaystyle r_{k+1}=r_{k}+tp^{k}=r_{k}-{\frac {f(r_{k})}{f'(r_{k})}}}
と置く。これは整数にはならないかもしれないが、p
進整数にはなっている。数列
rk
はある
p 進整数
に収束し、極限は
f (x ) = 0
の解になっている。そして、rk
から
r k +1
を計算する漸化式をよく見てみると、実数の場合における求根アルゴリズムであるニュートン法 の漸化式とまったく同じになっている。
p 進数の中で計算を行い
p 進絶対値 を使うことで
f
′
(
a
)
≡
0
mod
p
{\displaystyle f'(a)\equiv 0{\bmod {p}}}
となってしまう
f (a ) ≡ 0 mod p
の解についても使えるようにしたヘンゼル補題がある。
f
′
(
a
)
{\displaystyle f'(a)}
が0になってしまわないことは必要である。この一般化されたヘンゼルの補題は次のようになる。整数 a で
|
f
(
a
)
|
p
<
|
f
′
(
a
)
|
p
2
{\displaystyle |f(a)|_{p}<|f'(a)|_{p}^{2}}
を満たすものがあったとすると、p 進整数 b で
f (b ) = 0 かつ
|
b
−
a
|
p
<
|
f
′
(
a
)
|
p
{\displaystyle |b-a|_{p}<|f'(a)|_{p}}
となるものが一意的に存在する。この
b を作るにはニュートン法の漸化式が初期値
a
で
p 進数に収束することを示しその極限を
b
と置けばよい。条件
|
b
−
a
|
p
<
|
f
′
(
a
)
|
p
{\displaystyle |b-a|_{p}<|f'(a)|_{p}}
を満たす根として
b が一意であることを示すには追加の議論がいる。
先ほどのヘンゼルの補題の
m
=
1
{\displaystyle m=1}
の場合はこの一般化された補題の特殊な場合になっている。条件
f (a ) ≡ 0 mod p
と
f
′
(
a
)
≢
0
mod
p
{\displaystyle f'(a)\not \equiv 0{\bmod {p}}}
は
|
f
(
a
)
|
p
<
1
{\displaystyle |f(a)|_{p}<1}
と
|
f
′
(
a
)
|
p
=
1
{\displaystyle |f'(a)|_{p}=1}
を意味するからである。
p を奇素数、a を0ではない
p を法とする平方剰余 とする。このとき、p 進整数環
Z
p
{\displaystyle \mathbb {Z} _{p}}
の中に
a の平方根が存在することをヘンゼルの補題を使って示すことができる。これを見るために
f
(
x
)
=
x
2
−
a
{\displaystyle f(x)=x^{2}-a}
と置く。r を法 p での
a の平方根とすると
f
(
r
)
=
r
2
−
a
≡
0
mod
p
and
f
′
(
r
)
=
2
r
≢
0
mod
p
{\displaystyle f(r)=r^{2}-a\equiv 0{\bmod {p}}\quad {\text{and}}\quad f'(r)=2r\not \equiv 0{\bmod {p}}}
が成り立つ。2番目の式は
p が奇数であることによる。基本形のヘンゼルの補題を使って、r 1 = r
から出発して反復計算を行うことにより整数の列
{
r
k
}
{\displaystyle \{r_{k}\}}
を
r
k
+
1
≡
r
k
mod
p
k
,
r
k
2
≡
a
mod
p
k
{\displaystyle r_{k+1}\equiv r_{k}{\bmod {p}}^{k},\quad r_{k}^{2}\equiv a{\bmod {p}}^{k}}
が成り立つように作ることができる。この列はある
p 進整数 b に収束し
b 2 = a
を満たす。
この b は、法 p で r 1 と合同になる
Z
p
{\displaystyle \mathbb {Z} _{p}}
における
a
の唯一の平方根である。逆に、a を
Z
p
{\displaystyle \mathbb {Z} _{p}}
の平方数で
p で割り切れないものとすると、
これは0ではない法 p での平方剰余である。a
が法 p でゼロではない平方剰余かどうかは平方剰余の相互法則 で簡単に判定できるので、これで(奇素数 p に対する)p 進数が p 進平方根を持つかどうかを決定する実用的な方法が得られたことになる。p = 2
の場合にも、一般化されたヘンゼルの補題を用いることでこの方法を拡張することができる(17の2進平方根の例を後で見る)。
以上の議論をもっと具体的に理解するために、7進整数環の中で"2の平方根"、つまり方程式
x
2
−
2
=
0
{\displaystyle x^{2}-2=0}
の解を見つけてみよう。この方程式の法7での解の1つは3(もう1つの解は4)なので、
r
1
=
3
{\displaystyle r_{1}=3}
としよう。ヘンゼルの補題における
r
2
{\displaystyle r_{2}}
の計算式に現れる各種の数値は
f
(
r
1
)
=
3
2
−
2
=
7
f
(
r
1
)
/
p
1
=
7
/
7
=
1
f
′
(
r
1
)
=
2
r
1
=
6
{\displaystyle {\begin{aligned}f(r_{1})&=3^{2}-2=7\\f(r_{1})/p^{1}&=7/7=1\\f'(r_{1})&=2r_{1}=6\end{aligned}}}
となる。これらの式から、次の式
t
f
′
(
r
1
)
≡
−
(
f
(
r
1
)
/
p
k
)
mod
p
{\displaystyle tf'(r_{1})\equiv -(f(r_{1})/p^{k}){\bmod {p}}}
は
t
⋅
6
≡
−
1
mod
7
{\displaystyle t\cdot 6\equiv -1{\bmod {7}}}
となり、これは
t
=
1
{\displaystyle t=1}
を意味する。したがって、
r
2
=
r
1
+
t
p
1
=
3
+
1
⋅
7
=
10
=
13
7
{\displaystyle r_{2}=r_{1}+tp^{1}=3+1\cdot 7=10=13_{7}}
と計算できた。簡単に確かめられるように、
10
2
≡
2
mod
7
2
{\displaystyle 10^{2}\equiv 2{\bmod {7}}^{2}}
が成り立っている(ニュートン法の反復を直接7進数で使うと、
r
2
=
r
1
−
f
(
r
1
)
/
f
′
(
r
1
)
=
3
−
7
/
6
=
11
/
6
{\displaystyle r_{2}=r_{1}-f(r_{1})/f'(r_{1})=3-7/6=11/6}
となる。
11
/
6
≡
10
mod
7
2
{\displaystyle 11/6\equiv 10{\bmod {7}}^{2}}
なので整合している)。
次の反復計算を行うと
r
3
=
108
=
3
+
7
+
2
⋅
7
2
=
213
7
{\displaystyle r_{3}=108=3+7+2\cdot 7^{2}=213_{7}}
となる。この計算を1回繰り返すごとに(つまり k の値が1つ増えていく度に)次の7の冪乗の項が追加され7進数での桁が1つが増えていく。7進整数環の中でこの数列は収束し、その極限は
Z
7
{\displaystyle \mathbb {Z} _{7}}
での2の平方根となる。その7進展開の初めの方は
3
+
7
+
2
⋅
7
2
+
6
⋅
7
3
+
7
4
+
2
⋅
7
5
+
7
6
+
2
⋅
7
7
+
4
⋅
7
8
+
⋯
{\displaystyle 3+7+2\cdot 7^{2}+6\cdot 7^{3}+7^{4}+2\cdot 7^{5}+7^{6}+2\cdot 7^{7}+4\cdot 7^{8}+\cdots }
となる。
最初に
r
1
=
4
{\displaystyle r_{1}=4}
を選んだ場合でも
Z
7
{\displaystyle \mathbb {Z} _{7}}
における2の平方根が得られる。
これは法7で3ではなく4に合同になるもので、実は最初に得られた平方根を-1倍したものになっている(これは
4 = −3 mod 7
であることと辻褄があっている)。
元々のヘンゼルの補題は適用できないが一般化されたものなら適用できる例として
f
(
x
)
=
x
2
−
17
{\displaystyle f(x)=x^{2}-17}
を考える。
a
=
1
{\displaystyle a=1}
とすると
f
(
a
)
=
−
16
{\displaystyle f(a)=-16}
であり、また
f
′
(
a
)
=
2
{\displaystyle f'(a)=2}
であるので、
|
f
(
a
)
|
2
<
|
f
′
(
a
)
|
2
2
{\displaystyle |f(a)|_{2}<|f'(a)|_{2}^{2}}
が成り立つ。これから、ある2進整数 b で
b
2
=
17
and
|
b
−
a
|
2
<
|
f
′
(
a
)
|
2
=
1
2
{\displaystyle b^{2}=17\quad {\text{and}}\quad |b-a|_{2}<|f'(a)|_{2}={\frac {1}{2}}}
を満たすものが一意に存在する。二番目の式は
b ≡ 1 mod 4
を意味する。2進整数の中には17の平方根が2つ存在し、それらは符号が異なり、法2では合同であるが法4では合同ではない。これは、一般化された形のヘンゼルの補題から得られるのが法2ではなく法4で1と合同な17の2進平方根で、法4で一意であることと整合的である。最初の近似根として
a = 3
を取った場合でも一般化されたヘンゼルの補題を適用することができ、法4で3と合同になる唯一の17の2進平方根をやはり見つけることができる。これがもう1つの17の2進平方根である。
x
2
−
17
{\displaystyle x^{2}-17}
の根を法
2k
から法
2k +1
へ持ち上げるやり方の場合、法2での根1からの持ち上げの過程は次のようになる。
1 mod 2 は 1, 3 mod 4 に持ち上がる。
1 mod 4 は 1, 5 mod 8 に、3 mod 4 は 3, 7 mod 8 に持ち上がる。
1 mod 8 は 1, 9 mod 16 に、7 mod 8 は 7, 15 mod 16 に持ち上がる。一方、3 mod 8 と 5 mod 8 は mod 16 での根に持ち上がらない。
9 mod 16 は 9, 25 mod 32 に、7 mod 16 は 7, 23 mod 16 に持ち上がる。一方、1 mod 16 と 15 mod 16 は mod 32 での根に持ち上がらない。
k が3以上であれば
x 2 − 17 mod 2k
には4つ の根がある。しかし2進極限は2つ しかない。持ち上げられた根と極限の2進展開を比べてみよう。例えば、法32での4つの根を法16で等しくなるものを組にして書くと次のようになる。
9 = 1 + 23 と 25 = 1 + 23 + 24
7 = 1 + 2 + 22 と 23 = 1 + 2 + 22 + 24
一方、17の2進平方根の展開は
1
+
2
3
+
2
5
+
2
6
+
2
7
+
2
9
+
2
10
+
⋯
{\displaystyle 1+2^{3}+2^{5}+2^{6}+2^{7}+2^{9}+2^{10}+\cdots }
1
+
2
+
2
2
+
2
4
+
2
8
+
2
11
+
⋯
{\displaystyle 1+2+2^{2}+2^{4}+2^{8}+2^{11}+\cdots }
となっている。
基本形は使えないが一般化された形のヘンゼルの補題なら使えるもう1つの例として、c ≡ 1 mod 9
である任意の3進整数は
Z
3
{\displaystyle \mathbb {Z} _{3}}
で立方数になることの証明を見よう。
f
(
x
)
=
x
3
−
c
{\displaystyle f(x)=x^{3}-c}
と置き、最初の近似根として
a = 1
を取る。任意の r に対して
f
′
(
r
)
≡
0
mod
3
{\displaystyle f'(r)\equiv 0{\bmod {3}}}
となってしまうので、基本形のヘンゼルの補題を使って
f (x )
の根を見つけることはできない。
一般形のヘンゼルの補題を適用するためには
|
f
(
1
)
|
3
<
|
f
′
(
1
)
|
3
2
{\displaystyle |f(1)|_{3}<|f'(1)|_{3}^{2}}
である必要がある。これは
c
≡
1
mod
2
7
{\displaystyle c\equiv 1{\bmod {2}}7}
ということである。つまり、
c ≡ 1 mod 27
であれば一般形のヘンゼルの補題から
f (x )
が3進根を持つことがわかり、c
が3進立方数であることがわかる。しかし、
c ≡ 1 mod 9
というより弱い条件のもとでこの結果が欲しい。c ≡ 1 mod 9
であれば、c ≡ 1, 10, or 19 mod 27
である。この3つの
c mod 27
の値に応じて初期値を使い分けて一般形のヘンゼルの補題を適用する。c ≡ 1 mod 27
なら、a = 1 を使う。c ≡ 10 mod 27
なら、a = 4 を使う(4は法27での f (x ) の根)。c ≡ 19 mod 27
なら、a = 7 を使う。なお、任意の
c ≡ 1 mod 3
は3進立方数になる、という主張は正しくない。例えば、4は法9で立方数にならないので3進立方数ではない。
同様にして、少し準備が必要だが、ヘンゼルの補題を使って任意の奇素数 p に対して法
p 2
で1と合同な全ての
p 進整数 c
は
Z
p
{\displaystyle \mathbb {Z} _{p}}
の
p 冪乗数であることを示すことができる(p = 2 の場合はこれは成り立たない)[ 6] 。
ヘンゼルの補題は多変数の多項式への一般化もある。f (X 1 , X 2 , ..., X n )
を整数係数の多項式とし、ディオファントス方程式
f (X 1 , X 2 , ..., X n ) = 0
を考える。これがある素数 p に対して mod p 2m + 1 (m は非負整数)で解
a = (a 1 , a 2 , ..., a n ) ∈ Z n
を持ったとする。つまり
f (a 1 , a 2 , ..., a n ) ≡ 0 mod p 2m + 1
が成り立ったとする。さらに、少なくとも1つの変数について f の偏微分の a における値が mod p m + 1 でゼロではなかったとする。このとき、a は mod p m + 1 で a と等しい
mod p 2m + 2
での解に持ち上がる。同様に Z n p の解に持ち上げることもできるので、このディオファントス方程式は p 進整数環 Z p で解を持つ。
A をイデアル
m
{\displaystyle {\mathfrak {m}}}
について完備 な可換環 とし、
f
(
x
)
∈
A
[
x
]
{\displaystyle f(x)\in A[x]}
とする。次の式
f
(
a
)
≡
0
mod
f
′
(
a
)
2
m
.
{\displaystyle f(a)\equiv 0{\bmod {f}}'(a)^{2}{\mathfrak {m}}.}
を満たす a ∈ A のことを f の近似根と呼ぶ。f が近似根を持つなら、a に"近い"本当の根 b ∈ A も持つ。つまり、次の式
f
(
b
)
=
0
and
b
≡
a
mod
m
{\displaystyle f(b)=0\quad {\text{and}}\quad b\equiv a{\bmod {\mathfrak {m}}}}
を満たす b が存在する。さらに、
f
′
(
a
)
{\displaystyle f'(a)}
が零因子でないならば、b は一意的である。
このことは多変数の場合に次のように一般化できる[ 9] 。
定理: A を可換環でイデアル
m
⊂
A
{\displaystyle {\mathfrak {m}}\subset A}
について完備なものとする。
f
1
,
…
,
f
n
∈
A
[
x
1
,
…
,
x
n
]
{\displaystyle f_{1},\ldots ,f_{n}\in A[x_{1},\ldots ,x_{n}]}
を A 係数の n 個の n 変数多項式とする。
f
=
(
f
1
,
…
,
f
n
)
{\displaystyle \mathbf {f} =(f_{1},\ldots ,f_{n})}
を An から自身への写像と考え、
J
f
(
x
)
{\displaystyle J_{\mathbf {f} }(\mathbf {x} )}
をそのヤコビ行列 とする。a = (a 1 , ..., a n ) ∈ An を f = 0 の近似解、つまり
f
i
(
a
)
≡
0
mod
(
det
J
f
(
a
)
)
2
m
,
1
⩽
i
⩽
n
{\displaystyle f_{i}(\mathbf {a} )\equiv 0{\bmod {(}}\det J_{\mathbf {f} }(a))^{2}{\mathfrak {m}},\qquad 1\leqslant i\leqslant n}
が成り立つものとする。このとき、ある b = (b 1 , ..., b n ) ∈ An で f (b ) = 0 を満たすもの、つまり
f
i
(
b
)
=
0
,
1
⩽
i
⩽
n
{\displaystyle f_{i}(\mathbf {b} )=0,\qquad 1\leqslant i\leqslant n}
が成り立つものが存在する。さらに、この解は
b
i
≡
a
i
mod
det
J
f
(
a
)
m
,
1
⩽
i
⩽
n
{\displaystyle b_{i}\equiv a_{i}{\bmod {\det }}J_{\mathbf {f} }(a){\mathfrak {m}},\qquad 1\leqslant i\leqslant n}
が成り立つという意味で a に"近い"解である。
この定理の特別な場合として、
f
i
(
a
)
≡
0
mod
m
{\displaystyle f_{i}(\mathbf {a} )\equiv 0{\bmod {\mathfrak {m}}}}
がすべての i に対して成り立ち、しかも
det
J
f
(
a
)
{\displaystyle \det J_{\mathbf {f} }(\mathbf {a} )}
が
A
の単数なら、解
f (b ) = 0
ですべての i に対して
b
i
≡
a
i
mod
m
{\displaystyle b_{i}\equiv a_{i}{\bmod {\mathfrak {m}}}}
が成り立つものが存在することがわかる。
n = 1 の場合、
a = a
は
A の元で
J
f
(
a
)
=
J
f
(
a
)
=
f
′
(
a
)
{\displaystyle J_{\mathbf {f} }(\mathbf {a} )=J_{f}(a)=f'(a)}
である。したがって、この多変数のヘンゼルの補題の仮定は1変数の場合には通常のヘンゼルの補題の仮定と同じになっている。
環が完備 であることはヘンゼルの補題が成り立つための必要条件ではない。1950年に、東屋五郎 は可換な局所環 であって極大イデアル
m
についてヘンゼルの補題が成り立つものをヘンゼル環 と名付けた。
1950年代に永田雅宜 は、任意の可換な局所環
A とその極大イデアル m に対して
A を含む環 A h
であって
m A h
についてヘンゼルの補題が成り立つような最小の環
A h
が常に存在することを証明した。この
A h
のことを
A
のヘンゼル化 と呼ぶ。A
がネーター なら
A h
もネーターである。また、A h
はエタール近傍系 (英語版 ) の極限として構成されるので代数的である。したがって、A h
はヘンゼルの補題が成り立つにも関わらず、通常は完備化
Â
よりもずっと小さく、同じ圏 に属している[要説明 ] 。
Eisenbud, David (1995), Commutative algebra , Graduate Texts in Mathematics, 150 , Berlin, New York: Springer-Verlag , doi :10.1007/978-1-4612-5350-1 , ISBN 978-0-387-94269-8 , MR 1322960
Milne, J. S. (1980), Étale cohomology , Princeton University Press , ISBN 978-0-691-08238-7 , https://archive.org/details/etalecohomology00miln
Milne, J. S. (2006) (PDF). Elliptic Curves . BookSurge Publishers. ISBN 1-4196-5257-5 . https://www.jmilne.org/math/Books/ectext6.pdf
Conrad, Keith. “Hensel's Lemma ” (PDF). 2021年12月3日 閲覧。
Cox, David A. (2011). “Why Eisenstein proved the Eisenstein criterion and why Schönemann discovered it first” (PDF). American Mathematical Monthly 118 (1): 3–31. doi :10.4169/amer.math.monthly.118.01.003 . https://www.maa.org/sites/default/files/pdf/upload_library/22/Ford/Cox-2012.pdf .