Computerpraktikum

Block I

Heben von Nullstellen

Matthias Künzer Universität Stuttgart 18. November 2011

Inhalt

1 Magma  2
2 Nullstellen modulo p von rational irreduziblen Polynomen  3
3 Nullstellen modulo p^{k} – Hebungsbäume  4
4 p-adische Zahlen  8
5 Newton-Hensel-Verfahren  10
5.1 Taylor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.2 Existenzfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.3 Eindeutigkeitsfragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6 Henselbare Nullstellen in den Hebungsbäumen  15
7 Zerlegung in irreduzible Faktoren in Z_{p}[X]  21
A Hensel-Koch-Verfahren  27
A.1 Diskriminante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
A.2 Resultante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Vorwort

In diesem Drittel des Computerpraktikums soll der Frage nachgegangen werden, ob und wie man Nullstellen eines Polynoms f(X) ∈ Z[X] modulo p zu Nullstellen modulo p^{k} für k ⩾ 1 heben kann. Hierbei sollen p-adische Zahlen helfen, das Verhalten zu verstehen.

Für Hinweise auf Fehler und Unklarheiten und mögliche Verbesserungen bin ich dankbar.

Ein Dank geht an Markus Kirschmer, Gabriele Nebe und Bernd Souvignier für hilfreiche Kommentare; die Verantwortung bleibt bei mir. Ein Dank geht an Jana Franz, Juliane Deißler und weitere Studenten für Korrekturen.

Stuttgart, den 22.11.2010

Matthias Künzer

1 Magma

Wir verwenden das Computeralgebra-System Magma.

Das Handbuch findet sich unter magma.maths.usyd.edu.au/magma/htmlhelp/MAGMA.htm.

Ein Magma-Online-Rechner findet sich unter http://magma.maths.usyd.edu.au/calc/.

Am Rechner wird Magma in einer Shell mittels magma aufgerufen. Darin wird die Hilfe e.g. für den Begriff “Integers” mit ?Integers aufgerufen.

2 Nullstellen modulo p von rational irreduziblen Polynomen

Für a, b ∈ Z und m ∈ Z schreiben wir a ≡_{m} b für a − b ∈ mZ.

Beachte, daß für a, b ∈ Z, f(X) ∈ Z[X] und m ∈ Z aus a ≡_{m} b folgt, daß f(a) ≡_{m} f(b).

Ferner schreiben wir für a ∈ Z kurz Z/a := Z/aZ.

Sei p prim.

Sei f(X) ∈ Z[X] ein gegebenes Polynom mit ganzzahligen Koeffizienten. Sei f(X) in Z[X] (oder, äquivalent, in Q[X]) nicht nichttrivial in Faktoren zerlegbar, kurz, rational irreduzibel.

Dennoch kann es a ∈ Z mit f(a) ≡_{p} 0 geben. Diesenfalls sagen wir, a ist eine Nullstelle von f(X) in Z/p; oder eine Nullstelle modulo p; oder eine modulare Nullstelle.

Diese Eigenschaft hängt nur von der Restklasse von a in Z/p ab.

Beispiel. Das Polynom u_{1}(X) := X^{2} + X + 1 ∈ Z[X] ist mangels Nullstellen rational irreduzibel, hat aber die Nullstelle 1 in Z/3, da u_{1}(1) = 3 ≡_{3} 0.

Beispiel. Das Polynom u_{2}(X) := X^{4} + X + 1 ∈ Z[X] ist rational irreduzibel, hat aber die Nullstelle 3 in Z/5.

Z := Integers();
Q := Rationals();
P<X> := PolynomialRing(Q);
u := X^4 + X + 1;
IsIrreducible(u);
// Auswertung einzeln:
Evaluate(u,3);
// Oder systematischer:
for i in [1..5] do print Evaluate(u,i); end for;
// Gleich zerlegt:
for i in [1..10] do print Factorisation(Z!Evaluate(u,i)); end for;

Suche Beispiele !

Verschiedene Arbeitsgruppen sollten weitgehend verschiedene Beispiele haben.

3 Nullstellen modulo p^{k} – Hebungsbäume

Sei f(X) ∈ Z[X] ein rational irreduzibles Polynom. Sei p prim.

Sei k ⩾ 1. Sei a ∈ Z. Ist f(a) ≡_{p^{k}} 0, so sagen wir, a ist eine Nullstelle von f(X) in Z/p^{k} oder modulo p^{k}.

Sei a ∈ Z eine Nullstelle von f(X) modulo p^{k}. Sei ℓ ⩾ 1. Ist b ∈ Z eine Nullstelle von f(X) modulo p^{k+ℓ} und ist b ≡_{p^{k}} a, dann sagen wir, daß b eine Nullstelle modulo p^{k+ℓ} ist, die die Nullstelle a modulo p^{k} hebt.

Wir zeichnen einen Hebungsbaum wie folgt.

In der Ebene 1 werden alle Nullstellen in Z/p eingetragen, mit Repräsentanten in [0, p − 1] (^{1}).

In der darüberliegenden Ebene 2 werden alle Nullstellen in Z/p^{2} eingetragen, mit Repräsentanten in [0, p^{2}−1]. Reduziert eine solche Nullstelle zu einer darunter eingetragenen Nullstelle in Z/p, so werden sie durch eine Kante verbunden.

In der darüberliegenden Ebene 3 werden alle Nullstellen in Z/p^{3} eingetragen, mit Repräsentanten in [0, p^{3}−1]. Reduziert eine solche Nullstelle zu einer darunter eingetragenen Nullstelle in Z/p^{2}, so werden sie durch eine Kante verbunden.

In der darüberliegenden Ebene 4 werden alle Nullstellen in Z/p^{4} eingetragen, mit Repräsentanten in [0, p^{4}−1]. Reduziert eine solche Nullstelle zu einer darunter eingetragenen Nullstelle in Z/p^{3}, so werden sie durch eine Kante verbunden.

Usf.

Z := Integers();
Q := Rationals();
P<X> := PolynomialRing(Q);
p := 5;
u := X^4 - 4*X + 1;
for k in [1..5] do
 print "Ebene:", k;
 for i in [0..p^k-1] do
  if Z!Evaluate(u,i) mod p^k eq 0 then print(i); end if;
 end for;
end for;

1Oder, wahlweise, in [−(p − 1)/2, +(p − 1)/2].

Oder mit eingebauter Suche nach interessanten Beispielen :

Z := Integers();
Q := Rationals();
P<X> := PolynomialRing(Q);
p := 5; height := 5;
for a in [-3..3] do for b in [-3..3] do for c in [-3..3] do for d in [-3..3] do
 u := X^6 + a*X^3 + b*X^2 + c*X + d;
 if IsIrreducible(u) then
  tree := [];
  for k in [1..height] do
   for i in [0..p^k-1] do
    if Z!Evaluate(u,i) mod p^k eq 0 then Append(~tree,<k,i>); end if;
   end for;
  end for;
  if #[x : x in tree | x[1] eq 1] lt #[x : x in tree | x[1] eq 2] then
   print "a =", a, "b =", b, "c =", c, "d =", d, tree;
  end if;
 end if;
end for; end for; end for; end for;

Vorstehendes Programm ist nicht optimal, da die Bäume immer komplett angelegt werden und dann erst anhand der Ebenen 1 und 2 entschieden wird, ob sie interessant sind.

Beispiel. Sei u_{1}(X) := X^{2} + X + 1. Sei p = 3. Der Hebungsbaum hat nur den Eintrag 1 in Ebene 1.

1

Beispiel. Sei u_{2}(X) := X^{4} + X + 1. Sei p = 5. Wir erhalten folgenden Hebungsbaum.

⋮

1588

338

88

13 Beispiel. Sei u_{3}(X) := X^{4} + 3X + 3. Sei p = 5. Wir erhalten folgenden Hebungsbaum.

[figure: 2; 7; 12; 17; 22; 2]

Beispiel. Sei u_{4}(X) := X^{4} − 3X^{3} − 3X^{2} + X − 1. Sei p = 5. Wir erhalten folgenden Hebungsbaum.

[figure: 8; 33; 58; 83; 108; 3; 8; 13; 18; 23; 1; 3]

Beispiel. Sei u_{5}(X) := X^{6} − 6X^{3} − 6X^{2} − 5X + 2. Sei p = 5. Wir erhalten folgenden Hebungsbaum.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; 28; 153; 278; 403; 528; 3; 28; 53; 78; 103; 3; 8; 13; 18; 23; 3]

Beispiel. Sei u_{6}(X) := X^{3}+X^{2}−X+17. Sei p = 3. Wir erhalten folgenden Hebungsbaum.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋮; 11; 38; 65; 5; 32; 59; 37; 2; 11; 20; 5; 14; 23; 10; 2; 5; 8; 1; 2; 1]

Beispiel. Sei u_{7}(X) := X^{6}−4X^{4}−6X^{3}+5X^{2}−3X −2. Sei p = 3. Wir erhalten folgenden Hebungsbaum.

[figure: 4; 31; 58; 13; 40; 67; 22; 49; 76; 4; 13; 22; 1; 4; 7; 2; 5; 8; 1; 2]

Beispiel. Sei u_{8}(X) := X^{6} −X^{4} −6X^{3} −4X^{2} +6X −5. Sei p = 3. Wir erhalten folgenden Hebungsbaum.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; 68; 311; 554; 149; 392; 635; 230; 473; 716; 50; 293; 536; 131; 374; 617; 212; 455; 698; 14; 95; 176; 41; 122; 203; 68; 149; 230; 23; 104; 185; 50; 131; 212; 77; 158; 239; 5; 32; 59; 14; 41; 68; 23; 50; 77; 5; 14; 23; 1; 4; 7; 2; 5; 8; 1; 2]

Nicht-Beispiel. Sei u_{9}(X) := X^{2}, was natürlich nicht rational irreduzibel ist. Sei p = 2. Wir erhalten folgenden Hebungsbaum.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; 0; 16; 8; 24; 0; 8; 4; 12; 0; 4; 0; 2; 0]

Erstelle Hebungsbäume für die in §2 selbstgefundenen Beispiele (oder bessere) !

Das Ziel des Praktikums ist es, möglichst viel über diese Bäume in Erfahrung zu bringen.

4 p-adische Zahlen

Sei p prim.

Sei

Z_{p} := {(a_{[i]} + p^{i}Z)_{i⩾1} : a_{[i]} ∈ Z mit a_{[i+1]} ≡_{p^{i}} a_{[i]} für i ⩾ 1} ⊆ ∏_{i⩾1}Z/p^{i} .

Die eckigen Klammern dienen dabei nur der Kenntlichmachung einer ganzen Zahl als Repräsentant eines Eintrags eines Elements von Z_{p}.

Ein Element von Z_{p} ist somit gegeben durch eine Folge

a = (⋯, a_{[3]} + p^{3}Z, a_{[2]} + p^{2}Z, a_{[1]} + p^{1}Z)

mit

⋯ ≡_{p^{3}} a_{[3]} ≡_{p^{2}} a_{[2]} ≡_{p^{1}} a_{[1]} .

Wir schreiben auch kurz a = (a_{[i]})_{i} := (a_{[i]} + p^{i}Z)_{i⩾1} ∈ Z_{p}.

Durch eintragsweise Addition und Multiplikation wird ∏_{i⩾1} Z/p^{i} zu einem Ring. Hierin ist Z_{p} ein Teilring, da für (a_{[i]})_{i} , (b_{[i]})_{i} ∈ Z_{p} sich wegen

a_{[i+1]} − b_{[i+1]} ≡_{p^{i}} a_{[i]} − b_{[i]}

für i ⩾ 1 auch (a_{[i]})_{i} − (b_{[i]})_{i} = (a_{[i]} − b_{[i]})_{i} ∈ Z_{p} ergibt, da sich wegen

a_{[i+1]} · b_{[i+1]} ≡_{p^{i}} a_{[i]} · b_{[i]}

für i ⩾ 1 auch (a_{[i]})_{i} · (b_{[i]})_{i} = (a_{[i]} · b_{[i]})_{i} ∈ Z_{p} ergibt, und da schließlich auch 1 = (1)_{i} ∈ Z_{p} ist. Dementsprechend heißt Z_{p} auch der Ring der p-adischen Zahlen. Wir haben einen Ringmorphismus

[figure: Z; Z_{p}; z; (z)_{i} .]

Dieser ist injektiv, da (z)_{i} = 0 bedeutet, daß z ≡_{p^{i}} 0 für alle i ⩾ 1, d.h. daß z = 0. Wir fassen ihn als Einbettung eines Teilrings auf und schreiben Z ⊆ Z_{p}. Insbesondere ist char Z_{p} = 0. Für k ⩾ 1 gibt es einen surjektiven Ringmorphismus

[figure: Z_{p}; ρ_{k}; Z/p^{k}; (a_{[i]})_{i}; a_{[k]} + p^{k}Z .]

Es ist Z_{p} nullteilerfrei. Angenommen, nicht. Dann gibt es (a_{[i]})_{i} , (b_{[i]})_{i} ∈ Z_{p} ∖ {0} mit (a_{[i]}b_{[i]})_{i} = 0, i.e. mit a_{[i]}b_{[i]} ≡_{p^{i}} 0 für i ⩾ 1. Nun gibt es k, ℓ ⩾ 1 mit a_{[k]} ≢_{p^{k}} 0 und b_{[ℓ]} ≢_{p^{ℓ}} 0. Es folgt a_{[k+ℓ]} ≢_{p^{k}} 0 und b_{[k+ℓ]} ≢_{p^{ℓ}} 0. Somit ist 0 ≡_{p^{k+ℓ}} a_{[k+ℓ]}b_{[k+ℓ]} ≢_{p^{k+ℓ}} 0, und wir haben einen Widerspruch. Die eindeutige p-adische Zifferndarstellung eines Elements a = (a_{[i]})_{i} ∈ Z_{p} ist gegeben durch

a =: [… z_{4}z_{3}z_{2}z_{1}]_{p} ,

wobei 0 ⩽ z_{i} ⩽ p − 1 und a_{[i]} ≡_{p^{i}} ∑_{j=1}^{i} z_{j} p^{j−1} für i ⩾ 1. Eine solche Zifferndarstellung breche ab, sobald nach links nur noch Nullen folgen. Diesenfalls liegt ein Element von Z_{⩾0} ⊆ Z_{p} vor. Dahingegen ist

−1 = [… (p − 1)(p − 1)(p − 1)]_{p} ,

und allgemeiner −[… z_{4}z_{3}z_{2}z_{1}]_{p} = [… (p − 1 − z_{4})(p − 1 − z_{3})(p − 1 − z_{2})(p − z_{1})]_{p}

Ähnlich wie in R kann auch in Z_{p} bei praktischen Rechnungen im allgemeinen nur bis zu einer gewissen Genauigkeit gerechnet werden. Beispiel. In Z_{5} ist 2 eine Einheit, und es ergibt sich

1/2 = [… 2223]_{5} In Z_{11} ist 4 eine Einheit, und es ergibt sich

1/4 = [… 28283]_{11}

Mit einer gewissen Genauigkeit wird dies auch von Magma geliefert (Reihenfolge invertiert).

Z := Integers();
precision := 20;
R := pAdicRing(11,precision); // auf 20 Stellen genau
Intseq(Z!(R!(1/4)) mod 11^precision,11);

Sei z ∈ Z_{⩾1}∖pZ gegeben. Sei k ⩾ 1 minimal so, daß z ein Teiler von p^{k} −1 ist. In anderen Worten, es ist k die Ordnung von p + zZ in (Z/z)^{∗}. Schreibe p^{k} − 1 = zw mit w ∈ Z, wobei natürlich 1 ⩽ w ⩽ p^{k} − 1. Schreibe w = ∑_{j=1}^{k} w_{j} p^{j−1} mit w_{j} ∈ [0, p − 1]. Es ist

\frac{1}{1 − p^{k}} = [… 01 \underbrace{0 … 0}_{k−1} 1 \underbrace{0 … 0}_{k−1} 1]_{p} ,

da man (1 − p^{k})[… 010 … 010 … 01]_{p} = 1 berechnen kann. Also wird

−\frac{1}{z} = −\frac{w}{wz} = w \frac{1}{1 − p^{k}} = w[… 010 … 010 … 01]_{p} = [… w_{k} … w_{1}w_{k} … w_{1}w_{k} … w_{1}]_{p}

periodisch. Also hat 1/z eine ab der zweiten Stelle periodische Zifferndarstellung in Z_{p}.

5 Newton-Hensel-Verfahren

Sei p prim. Sei f(X) ∈ Z[X].

Das Invertieren in Z_{p} eines Elements z ∈ Z ∖ pZ läuft auf die Bestimmung der Nullstelle in Z_{p} des Polynoms zX − 1 hinaus. Dies können wir auf beliebige Polynome in Z[X] verallgemeinern (^{2}).

Der Zusammenhang mit unserer Fragestellung aus §3 ist folgender. Eine Nullstelle in Z_{p} von f(X) ∈ Z[X] ist eine Folge a = (a_{[i]})_{i}, wobei a_{[i]} eine Nullstelle von f(X) in Z/p^{i} und a_{[i+1]} ≡_{p^{i}} a_{[i]} ist für i ⩾ 1.

5.1 Taylor

Definition. Für z ∈ Z ∖ {0} schreiben wir z =: p^{v_{p}(z)}z̃ mit z̃ ∈ Z ∖ pZ (engl. valuation, dt. Bewertung). Ferner sei v_{p}(0) := +∞.

2Eine Erweiterung auf Polynome in Z_{p}[X] ist ebenfalls möglich.

Ist f(X) = ∑_{i⩾0} z_{i}X^{i} ∈ Z[X] ein gegebenes Polynom, so setzen wir seine (formale) Ableitung zu f′(X) := ∑_{i⩾1} iz_{i}X^{i−1}. Es gilt die Produktregel

(u(X)v(X))′ = u′(X)v(X) + u(X)v′(X)

für u(X), v(X) ∈ Z[X]. Denn da beide Seiten Z-bilinear in u und v sind, ist o.E. u(X) = X^{a} und v(X) = X^{b} für gewisse a, b ⩾ 0. Falls a = 0, dann steht auf beiden Seiten (X^{b})′. Falls b = 0, dann steht auf beiden Seiten (X^{a})′. Falls a ⩾ 1 und b ⩾ 1, dann steht links (X^{a+b})′ = (a + b)X^{a+b−1} und rechts aX^{a−1}X^{b} + X^{a}bX^{b−1}, was dasselbe gibt. Sei x_{0} ∈ Z. Polynomdivision von f(X) − f(x_{0}) durch X − x_{0} zeigt, daß

f(X) = f(x_{0}) + (X − x_{0})h(X)

für ein h(X) ∈ Z[X]. Wenden wir diese Tatsache nun auch noch auf h(X) an, so erhalten wir

f(X) = f(x_{0}) + (X − x_{0})h(x_{0}) + (X − x_{0})^{2}w(X)

für ein w(X) ∈ Z[X]. Ableiten gibt

f′(X) = h(x_{0}) + 2(X − x_{0})w(X) + (X − x_{0})^{2}w′(X) .

Einsetzen von x_{0} liefert dann h(x_{0}) = f′(x_{0}). Insgesamt erhalten wir die Taylorsche Formel in erster Näherung,

(∗)  f(X) = f(x_{0}) + (X − x_{0})f′(x_{0}) + O((X − x_{0})^{2}) ,

wobei wir mit dem Landauschen O((X − x_{0})^{2})-Symbol ein nicht näher interessantes Vielfaches von (X − x_{0})^{2} bezeichnen.

5.2 Existenzfragen

Lemma 1. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei x_{0} ∈ Z mit v_{p}(f(x_{0})) > 2 v_{p}(f′(x_{0})) gegeben. Schreibe d := v_{p}(f(x_{0}))−v_{p}(f′(x_{0})) > 0. Wähle ein m ∈ Z mit mf′(x_{0}) ≡_{p^{2d}} f(x_{0}). Beachte, daß v_{p}(m) = d, aber v_{p}(f′(x_{0})) < d. Setze x_{1} := x_{0} − m. Es ist v_{p}(f(x_{1})) ⩾ 2d > v_{p}(f(x_{0})). Es ist v_{p}(f′(x_{1})) = v_{p}(f′(x_{0})). Mehr noch, es ist v_{p}(f′(x_{0} + sp^{d})) = v_{p}(f′(x_{0})) für alle s ∈ Z. Insbesondere ist

v_{p}(f(x_{1})) > 2 v_{p}(f′(x_{1}))

und

v_{p}(f(x_{1})) − v_{p}(f′(x_{1})) > v_{p}(f(x_{0})) − v_{p}(f′(x_{0})) = d .

Lemma 1 heißt auch das Newton-Hensel -Verfahren. Cf. [4, II.§2.2]. Beweis. Zum einen wird

f(x_{1}) = f(x_{0} − m)
=^{(∗)}  \underbrace{f(x_{0}) − mf′(x_{0})}_{≡_{p^{2d}} 0} + O( \underbrace{m^{2}}_{≡_{p^{2d}} 0})
≡_{p^{2d}} 0 .

Ferner ist 2d = v_{p}(f(x_{0})) + (v_{p}(f(x_{0})) − 2 v_{p}(f′(x_{0}))) > v_{p}(f(x_{0})). Sei schließlich s ∈ Z gegeben. Es wird

f′(x_{0} + sp^{d}) =^{(∗)} \underbrace{f′(x_{0})}_{≢_{p^{d}} 0} − \underbrace{sp^{d}f′′(x_{0})}_{≡_{p^{d}} 0} + O(p^{2d}) ,

und also v_{p}(f′(x_{0} + sp^{d})) = v_{p}(f′(x_{0})).

Korollar 2. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei x_{0} ∈ Z mit v_{p}(f(x_{0})) > 2 v_{p}(f′(x_{0})) gegeben. Schreibe d := v_{p}(f(x_{0}))−v_{p}(f′(x_{0})) > 0. Dann gibt es eine Folge (x_{ℓ})_{ℓ⩾0} ganzer Zahlen mit

x_{ℓ+1} ≡_{p^{d+ℓ}} x_{ℓ}

und

v_{p}(f(x_{ℓ})) ⩾ v_{p}(f(x_{0})) + ℓ

und

v_{p}(f′(x_{ℓ})) = v_{p}((f′(x_{0}))

für ℓ ⩾ 0. Setzen wir y = (y_{[ℓ]})_{ℓ⩾1} := (x_{ℓ})_{ℓ⩾1} ∈ Z_{p}, so wird also f(y) = 0 und ρ_{d}(y) = ρ_{d}(x_{0}). Beweis. Die Konstruktion der Folge der x_{ℓ} erfolge iterativ mit Lemma 1. Beispiel. Sei z ∈ Z ∖ pZ. Sei g(X) := zX − 1. Es ist g′(X) = z. Wähle x_{0} ∈ Z mit zx_{0} ≡_{p} 1. Dann ist v_{p}(g(x_{0})) > 0 und v_{p}(g′(x_{0})) = 0. Also gibt es ein x ∈ Z_{p} mit g(x) = 0, i.e. mit zx = 1. In anderen Worten, in Z_{p} können wir 1/z bilden. Cf. §4.

Lemma 3. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei x_{0} ∈ Z gegeben. Schreibe a := v_{p}(f(x_{0})). Sei ℓ ⩾ 1 so, daß f′(x_{0}) ≡_{p^{ℓ}} 0. Sei k ∈ Z so, daß \frac{a}{2} < k ⩽ a und k > a − ℓ.

Dann gibt es kein x_{1} ∈ Z mit f(x_{1}) ≡_{p^{a+1}} 0 und x_{1} ≡_{p^{k}} x_{0} . Insbesondere gibt es kein y ∈ Z_{p} mit f(y) = 0 und ρ_{k}(y) = ρ_{k}(x_{0}). Ist f′(x_{0}) ≡_{p} 0, dann läßt sich also x_{0} nicht zu einer Nullstelle modulo p^{v_{p}(f(x_{0}))+1} heben. Beweis. Annahme, es gibt ein x_{1} ∈ Z mit f(x_{1}) ≡_{p^{a+1}} 0 und x_{1} ≡_{p^{k}} x_{0} . Dann ist

0 ≢_{p^{a+1}} −f(x_{0}) ≡_{p^{a+1}} f(x_{1}) − f(x_{0}) =^{(∗)} \underbrace{f′(x_{0})}_{≡_{p^{ℓ}} 0} \underbrace{(x_{1} − x_{0})}_{≡_{p^{k}} 0} + O(\underbrace{(x_{1} − x_{0})^{2}}_{≡_{p^{2k}} 0}) ≡_{p^{a+1}} 0 ,

und das ist ein Widerspruch. Gäbe es ein y = (y_{[i]})_{i} ∈ Z_{p} mit f(y) = 0 und ρ_{k}(y) = ρ_{k}(x_{0}), so wäre f(y_{[a+1]}) ≡_{p^{a+1}} 0 und y_{[a+1]} ≡_{p^{k}} y_{[k]} ≡_{p^{k}} x_{0} , was im Widerspruch zum eben Gezeigten steht.

Definition. Sei x_{0} ∈ Z. Sei weiterhin f(X) ∈ Z[X]. Schreibe a := v_{p}(f(x_{0})). Sei a ⩾ 1 vorausgesetzt. Schreibe a′ := v_{p}(f′(x_{0})). Sei a′ < +∞ vorausgesetzt, d.h. f′(x_{0}) ≠ 0. Wir sagen, x_{0} ist eine henselbare modulare Nullstelle von f(X), falls a > 2a′. Sei k > a′. Wir sagen, x_{0} ist eine k-direkt henselbare modulare Nullstelle von f(X), falls a ⩾ k + a′. Wegen k > a′ ist eine k-direkt henselbare modulare Nullstelle insbesondere henselbar. Ist umgekehrt x_{0} eine henselbare modulare Nullstelle, so ist x_{0} auch k-direkt henselbar für a′ < k ⩽ a − a′. Henselbare modulare Nullstellen sind also immer k-direkt henselbar für geeignete k. Ist x_{0} eine k-direkt henselbare modulare Nullstelle, so ist x_{0} eine Nullstelle modulo p^{k}, die wir nach Lemma 1 zu einer Nullstelle x_{1} modulo p^{k+1} heben können; hierbei ist v_{p}(f′(x_{1})) = v_{p}(f′(x_{0})). Dieses x_{1} ist (k + 1)-direkt henselbar, denn zum einen folgt aus x_{1} ≡_{p^{a−a′}} x_{0} mit a − a′ ⩾ k, daß auch x_{1} ≡_{p^{k}} x_{0} , zum anderen ist v_{p}(f(x_{1})) − v_{p}(f′(x_{1})) größer als v_{p}(f(x_{0})) − v_{p}(f′(x_{0})), und also größer als k. Ist x_{0} eine k-direkt henselbare modulare Nullstelle für ein k > a′, so ist auch x_{0} + sp^{k} eine k-direkt henselbare modulare Nullstelle für alle s ∈ Z. Denn zum einen ist

f(x_{0} + sp^{k}) =^{(∗)} f(x_{0}) + sp^{k}f′(x_{0}) + O(p^{2k}) ≡_{p^{k+a′}} 0 ,

zum anderen ist

f′(x_{0} + sp^{k}) =^{(∗)} f′(x_{0}) + sp^{k}f′′(x_{0}) + O(p^{2k}) ≡_{p^{a′+1}} f′(x_{0}) ,

und also v_{p}(f′(x_{0} + sp^{k})) = a′. Bemerkung. Sei weiterhin f(X) ∈ Z[X]. Sei ein y = (y_{[i]})_{i} ∈ Z_{p} mit f(y) = 0 gegeben. In anderen Worten, sei f(y_{[i]}) ≡_{p^{i}} 0 für alle i ⩾ 1.

Im Hebungsbaum zeigt sich ein solches y als unendlicher Kantenzug.

Sei a′ := v_{p}(f′(y)), wobei v_{p} in kanonischer Weise von Z nach Z_{p} ausgedehnt wurde. Sei f′(y) ≠ 0, i.e. a′ ≠ +∞ vorausgesetzt. In anderen Worten, es gebe ein j ⩾ 1 mit f′(y_{[j]}) ≢_{p^{j}} 0, für welches wir a′ := v_{p}(f′(y_{[j]})) setzen.

Dann ist v_{p}(f′(y_{[i]})) = a′ für i > a′. Da v_{p}(f(y_{[i]})) ⩾ i für alle i ⩾ 1 ist, folgt, daß y_{[i]} eine henselbare modulare Nullstelle ist für i > 2a′.

Kurz, gibt es ein y ∈ Z_{p} mit f(y) = 0, aber f′(y) ≠ 0, dann hat f(X) auch eine henselbare modulare Nullstelle. Cf. auch Nicht-Beispiel am Ende von §6.

5.3 Eindeutigkeitsfragen

Lemma 4. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei k ⩾ 1. Sei x_{0} ∈ Z so, daß f(x_{0}) ≡_{p^{k}} 0. Sei 1 ⩽ ℓ ⩽ k so, daß f′(x_{0}) ≡_{p^{ℓ}} 0.

Ist x_{1} ∈ Z mit f(x_{1}) ≡_{p^{k+ℓ}} 0 und x_{1} ≡_{p^{k}} x_{0} gegeben, dann ist auch f(x_{1} + sp^{k}) ≡_{p^{k+ℓ}} 0 für alle s ∈ Z.

Beweis. Wir rechnen

f(x_{1} + sp^{k}) =^{(∗)} f(x_{1}) + sp^{k}f′(x_{1}) + O(p^{2k}) ≡_{p^{k+ℓ}} sp^{k}f′(x_{1}) ≡_{p^{k+ℓ}} sp^{k}f′(x_{0}) ≡_{p^{k+ℓ}} 0 .

Lemma 5. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei k ⩾ 1. Sei x_{0} ∈ Z so, daß f(x_{0}) ≡_{p^{k}} 0. Sei 1 ⩽ ℓ ⩽ k so, daß f′(x_{0}) ≢_{p^{ℓ}} 0.

Ist x_{1} ∈ Z mit f(x_{1}) ≡_{p^{k+ℓ}} 0 und x_{1} ≡_{p^{k}} x_{0} gegeben, dann ist f(x_{1} + sp^{k}) ≢_{p^{k+ℓ}} 0 für alle s ∈ Z ∖ pZ.

Beweis. Wir rechnen

f(x_{1} + sp^{k}) =^{(∗)} f(x_{1}) + sp^{k}f′(x_{1}) + O(p^{2k}) ≡_{p^{k+ℓ}} sp^{k}f′(x_{1}) ≡_{p^{k+ℓ}} sp^{k}f′(x_{0}) ≢_{p^{k+ℓ}} 0 .

Korollar 6. Sei weiterhin f(X) ∈ Z[X] gegeben. Seien x_{0} ∈ Z und k ⩾ 1 so gegeben, daß f(x_{0}) ≡_{p^{k}} 0. Es ist

|{t ∈ [0, p^{k+1} − 1] : f(t) ≡_{p^{k+1}} 0, t ≡_{p^{k}} x_{0}}| ∈ {0, 1, p} .

Eine Nullstelle modulo p^{k} kann also auf keine, eine oder p Weisen zu einer Nullstelle modulo p^{k+1} gehoben werden.

Beweis. Gebe es ein x_{1} ∈ [0, p^{k+1} − 1] mit f(x_{1}) ≡_{p^{k+1}} 0 und x_{1} ≡_{p^{k}} x_{0} .

Fall f′(x_{0}) ≡_{p} 0. Nach Lemma 4, angewandt mit ℓ := 1, ist f(x_{1} + sp^{k}) ≡_{p^{k+1}} 0 für alle s ∈ Z. Somit ist

{t ∈ [0, p^{k+1} − 1] : f(t) ≡_{p^{k+1}} 0, t ≡_{p^{k}} x_{0}} = {t ∈ [0, p^{k+1} − 1] : t ≡_{p^{k}} x_{0}}

und besteht aus p Elementen.

Fall f′(x_{0}) ≢_{p} 0. Nach Lemma 5, angewandt mit ℓ := 1, ist

{t ∈ [0, p^{k+1} − 1] : f(t) ≡_{p^{k+1}} 0, t ≡_{p^{k}} x_{0}} = {x_{1}}

und besteht aus einem Element.

Lemma 7. Sei weiterhin f(X) ∈ Z[X] gegeben. Sei x_{0} ∈ Z. Sei a′ := v_{p}(f′(x_{0})). Sei k > a′. Sei x_{0} eine k-direkt henselbare modulare Nullstelle von f(X).

Dann gibt es genau eine (k + 1)-direkt henselbare modulare Nullstelle x_{1} ∈ Z von f(X) mit x_{1} ∈ [0, p^{k+1} − 1] und x_{1} ≡_{p^{k}} x_{0} . Es ist v_{p}(f′(x_{1})) = a′.

Ferner ist v_{p}(f(x_{1} + sp^{k})) ⩽ k + a′ für alle s ∈ Z ∖ pZ.

Beweis. Die Existenz einer (k + 1)-direkt henselbaren modularen Nullstelle x_{1} ∈ Z von f(X) mit x_{1} ∈ [0, p^{k+1} − 1] und x_{1} ≡_{p^{k}} x_{0} wurde schon in §5.2 angemerkt, unmittelbar bei der Definition.

Sei s ∈ Z ∖ pZ. Wir haben zu zeigen, daß f(x_{1} + sp^{k}) keine (k + 1)-direkt henselbare modulare Nullstelle von f(X) ist. In §5.2 wurde schon bemerkt, daß v_{p}(f′(x_{1})) = a′. Es wird

f(x_{1} + sp^{k}) =^{(∗)} f(x_{1}) + sp^{k}f′(x_{1}) + O(p^{2k}) ≡_{p^{k+a′+1}} sp^{k}f′(x_{1}) ≢_{p^{k+a′+1}} 0 .

6 Henselbare Nullstellen in den Hebungsbäumen

Wir setzen die Beispiele aus §2 fort, indem wir jeweils die Aussagen von §5 zur Anwendung bringen. Hierbei seien die Nullstellen modulo p durch eine direkte Suche bekannt; davon ausgehend versuchen wir, mit theoretischen Mitteln den Hebungsbaum im endlichen Fall möglichst ohne weitere Suche zu rekonstruieren, sowie im unendlichen Fall überhaupt erst einmal komplett zu beschreiben.

Sei p prim.

Beispiel. Betrachte u_{1}(X) = X^{2} + X + 1 bei p = 3. Der Hebungsbaum hat nur den Eintrag 1 in Ebene 1.

1

Es ist v_{3}(u_{1}(1)) = 1 und v_{3}(u′_{1}(1)) = 1. Insbesondere ist 1 keine henselbare modulare Nullstelle, da v_{3}(u_{1}(1)) = 1 ⩽ 2 = 2 v_{3}(u′_{1}(1)).

Z := Integers();
Q := Rationals();
P<X> := PolynomialRing(Q);
p := 3;
u := X^2 + X + 1;
uu := Derivative(u);
print Valuation(Z!Evaluate(u,1),p), Valuation(Z!Evaluate(uu,1),p);

In der Bezeichnung von Lemma 3 haben wir f(X) = u_{1}(X), x_{0} = 1, a = v_{3}(u_{1}(1)) = 1, v_{p}(f′(1)) = v_{3}(u′_{1}(1)) = 1, und können k := 1 und ℓ := 1 setzen. Also gibt es kein x_{1} ∈ Z mit u_{1}(x_{1}) ≡_{9} 0 und x_{1} ≡_{3} 1. In anderen Worten, wir können die Nullstelle 1 modulo 3 nicht zu einer Nullstelle modulo 9 heben.

Beispiel. Betrachte u_{2}(X) = X^{4}+X +1 bei p = 5. Wir erhalten folgenden Hebungsbaum, in welchem wir in der k-ten Ebene die k-direkt henselbaren modularen Nullstellen markiert haben, viz. alle.

Es ist u′_{2}(3) ≢_{5} 0.

⋮ 1588 338 88 13 3

Z := Integers();
Q := Rationals();
P<X> := PolynomialRing(Q);
p := 5;
u := X^4 + X + 1;
uu := Derivative(u);
for x in [3,13,88,338,1588] do
 a := Valuation(Z!Evaluate(u,x),p); aa := Valuation(Z!Evaluate(uu,x),p);
 print x, a, aa, a - 2*aa;
end for;

Korollar 2 findet Anwendung.

Lemma 5 jeweils mit ℓ = 1 angewandt liefert die Eindeutigkeit der Hebungen. Insbesondere haben wir nun sichergestellt, daß der Baum sich wie erwartet als einzelner Zweig fortsetzt.

Beispiel. Betrachte u_{3}(X) = X^{4} + 3X + 3 bei p = 5. Wir erhalten folgenden Hebungsbaum, in welchem kein Eintrag eine henselbare modulare Nullstelle ist. Es ist v_{5}(u_{3}(2)) = 2 und v_{5}(u′_{3}(2)) = 1.

[figure: 2; 7; 12; 17; 22; 2]

Die Nullstelle 2 modulo 5 hebt wegen v_{5}(u_{3}(2)) = 2 natürlich zur Nullstelle 2 modulo 25. Gemäß Lemma 4, angewandt mit k = 1 und ℓ = 1, sind also auch 7, 12, 17 und 22 Nullstellen modulo 25.

Wenden wir Lemma 3 auf x_{0} = 2 an, so wird a := v_{5}(u_{3}(2)) = 2, so daß wir ℓ := 1 und k := 2 setzen können. Wir erhalten so die Aussage, daß es kein x_{1} ∈ Z gibt mit u_{3}(x_{1}) ≡_{125} 0 und x_{1} ≡_{25} 2. Wir können also die Nullstelle 2 modulo 25 nicht zu einer Nullstelle modulo 125 heben.

Genauso die Nullstellen 7, 12, 17 und 22 modulo 25. Berichtenswert ist hierbei noch, daß v_{5}(u′_{3}(7)) = 3 und dort natürlich trotzdem Lemma 3 mit ℓ := 1 verwandt werden kann.

Beispiel. Betrachte u_{4}(X) = X^{4} − 3X^{3} − 3X^{2} + X − 1 bei p = 5. Wir erhalten folgenden Hebungsbaum, in welchem kein Eintrag eine henselbare modulare Nullstelle ist.

[figure: 8; 33; 58; 83; 108; 3; 8; 13; 18; 23; 1; 3]

Zur modularen Nullstelle 1. In der Bezeichnung von Lemma 3 haben wir f(X) = u_{4}(X), x_{0} = 1, a = 1, v_{p}(f′(1)) = v_{p}(u′_{4}(1)) = 1, und können k := 1 und ℓ := 1 setzen. Also gibt es kein x_{1} ∈ Z mit u_{4}(x_{1}) ≡_{25} 0 und x_{1} ≡_{5} 1. In anderen Worten, wir können die Nullstelle 1 modulo 5 nicht zu einer Nullstelle modulo 25 heben.

Zur modularen Nullstelle 3. Es ist v_{5}(u_{4}(3)) = 2 und v_{5}(u′_{4}(3)) = 1.

Die Nullstelle 3 modulo 5 hebt wegen v_{5}(u_{4}(3)) = 2 natürlich zur Nullstelle 3 modulo 25. Gemäß Lemma 4, angewandt mit k = 1 und ℓ = 1, sind also auch 3, 8, 13, 18 und 23 Nullstellen modulo 25.

Wenden wir Lemma 3 auf x_{0} = 3 an, so wird a := v_{5}(u_{4}(2)) = 2, so daß wir ℓ := 1 und k := 2 setzen können. Wir erhalten so die Aussage, daß es kein x_{1} ∈ Z gibt mit u_{3}(x_{1}) ≡_{125} 0 und x_{1} ≡_{25} 3. Wir können also die Nullstelle 3 modulo 25 nicht zu einer Nullstelle modulo 125 heben.

Genauso die Nullstellen 13, 18 und 23 modulo 25.

Es ist v_{5}(u_{4}(8)) = 3 und v_{5}(u′_{4}(8)) = 2.

Die Nullstelle 8 modulo 25 hebt wegen v_{5}(u_{4}(8)) = 3 natürlich zur Nullstelle 8 modulo 125. Gemäß Lemma 4, angewandt mit k = 2 und ℓ = 1, sind also auch 33, 58, 83 und 108 Nullstellen modulo 125.

Wenden wir Lemma 3 auf x_{0} = 8 an, so wird a := v_{5}(u_{4}(8)) = 3, so daß wir ℓ := 1 und k := 3 setzen können. Wir erhalten so die Aussage, daß es kein x_{1} ∈ Z gibt mit u_{4}(x_{1}) ≡_{625} 0 und x_{1} ≡_{125} 8. Wir können also die Nullstelle 8 modulo 125 nicht zu einer Nullstelle modulo 625 heben.

Genauso die Nullstellen 33, 58, 83 und 108 modulo 125. Berichtenswert ist noch, daß v_{5}(u′_{2}(33)) = 4.

Beispiel. Betrachte u_{5}(X) = X^{6} −6X^{3} −6X^{2} −5X +2 bei p = 5. Wir erhalten folgenden Hebungsbaum, in welchem wir in der k-ten Ebene die k-direkt henselbaren modularen Nullstellen markiert haben.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; 28; 153; 278; 403; 528; 3; 28; 53; 78; 103; 3; 8; 13; 18; 23; 3]

Von den dargestellten Einträgen sind 3, 28, 53, 78, 103, 153, 278, 403 und 528 henselbare modulare Nullstellen.

Es ist v_{5}(u_{5}(3)) = 3 und v_{5}(u′_{5}(3)) = 1.

Es ist 3 eine Nullstelle modulo 25. Dank Lemma 4 sind auch 8, 13, 18 und 23 Nullstellen modulo 25. Dank Lemma 3 lassen sich letztere nicht heben.

Da 3 eine 2-direkt henselbare modulare Nullstelle ist, ergibt sich die Gestalt (wenn auch nicht die genauen Einträge) des restlichen Baumes aus Lemma 7, Lemma 4 und Lemma 3.

Beispiel. Betrachte u_{6}(X) = X^{3} + X^{2} − X + 17 bei p = 3. Wir erhalten folgenden Hebungsbaum, in welchem wir in der k-ten Ebene die k-direkt henselbaren modularen Nullstellen markiert haben.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋮; 11; 38; 65; 5; 32; 59; 37; 2; 11; 20; 5; 14; 23; 10; 2; 5; 8; 1; 2; 1]

Unter den angeführten Einträgen ist nur 8 keine henselbare modulare Nullstelle.

Da 1 eine 1-direkt henselbare modulare Nullstelle ist, ergibt sich die Gestalt (wenn auch nicht die genauen Einträge) des rechten Baumteils aus Lemma 5 und Lemma 7.

Es ist 2 eine Nullstelle modulo 9. Dank Lemma 4 sind auch 5 und 8 Nullstellen modulo 9. Dank Lemma 3 läßt sich 8 nicht heben.

Da 2 und 5 zwei 2-direkt henselbare modulare Nullstellen sind, ergibt sich die Gestalt (wenn auch nicht die genauen Einträge) des restlichen Baumes aus Lemma 7, Lemma 4 und Lemma 3.

Beispiel. Betrachte u_{7}(X) = X^{6} − 4X^{4} − 6X^{3} + 5X^{2} − 3X − 2 bei p = 3. Wir erhalten folgenden Hebungsbaum, in welchem kein Eintrag eine henselbare modulare Nullstelle ist.

[figure: 4; 31; 58; 13; 40; 67; 22; 49; 76; 4; 13; 22; 1; 4; 7; 2; 5; 8; 1; 2]

Es ist 2 eine Nullstelle modulo 9. Dank Lemma 4 sind auch 5 und 8 Nullstellen modulo 9. Dank Lemma 3 lassen sich weder 2 noch 5 noch 8 zu einer Nullstelle modulo 27 heben.

Es ist 1 eine Nullstelle modulo 9. Dank Lemma 4 sind auch 4 und 7 Nullstellen modulo 9. Dank Lemma 3 lassen sich weder 1 noch 7 zu einer Nullstelle modulo 27 heben.

Es ist 4 eine Nullstelle modulo 81. Dank Lemma 4 sind auch 4, 31, 58, 13, 40, 67, 22, 49 und 76 Nullstellen modulo 81. Dank Lemma 3 läßt sich keine von diesen zu einer Nullstelle modulo 243 heben.

Beispiel. Betrachte u_{8}(X) = X^{6} − X^{4} − 6X^{3} − 4X^{2} + 6X − 5 bei p = 3. Wir erhalten folgenden Hebungsbaum, in welchem wir in der k-ten Ebene die k-direkt henselbaren modularen Nullstellen markiert haben.

[figure: ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; ⋯; 68; 311; 554; 149; 392; 635; 230; 473; 716; 50; 293; 536; 131; 374; 617; 212; 455; 698; 14; 95; 176; 41; 122; 203; 68; 149; 230; 23; 104; 185; 50; 131; 212; 77; 158; 239; 5; 32; 59; 14; 41; 68; 23; 50; 77; 5; 14; 23; 1; 4; 7; 2; 5; 8; 1; 2]

Unter den angeführten Einträgen sind 1, 4, 7, 2, 5, 8, 32 und 59 keine henselbaren modularen Nullstellen.

Es ist 1 eine Nullstelle modulo 9. Dank Lemma 4 sind auch 4 und 7 Nullstellen modulo 9. Dank Lemma 3 lassen sich weder 1 noch 4 noch 7 zu einer Nullstelle modulo 27 heben.

Es ist 2 eine Nullstelle modulo 9. Dank Lemma 4 sind auch 5 und 8 Nullstellen modulo 9. Dank Lemma 3 lassen sich weder 2 noch 8 zu einer Nullstelle modulo 27 heben.

Es ist 5 eine Nullstelle modulo 81. Dank Lemma 4 sind auch 14, 23, 32, 41, 50, 59, 68 und 77 Nullstellen modulo 81. Dank Lemma 3 lassen sich weder 5 noch 32 noch 59 zu einer Nullstelle modulo 243 heben.

Es sind 14 und 23 zwei 3-direkt henselbare modulare Nullstellen. Damit ergibt sich die Form (ohne Einträge) des weiteren Baums wie folgt.

Betrachten wir einmal die 14. Diese gibt nach Lemma 7 Anlaß zu genau einem unendlichen Kantenzug, welcher in Ebene k ⩾ 3 einen k-direkt henselbaren Eintrag hat.

Gemäß Lemma 4 hebt 14 zu insgesamt 8 nicht 5-direkt henselbaren modularen Nullstellen modulo 243 in [0, 242]. Bei diesen hat u_{8} also Bewertung ⩾ 5. Nach Lemma 7 hat u_{8} bei den 6 Einträgen davon, die nicht kongruent modulo 3 zur 4-direkt henselbaren Hebung 68 von 14 sind, aber Bewertung ⩽ 5. Diese 6 Einträge sehen wir im Baum also in der 5-ten Ebene, und zwar über 14 aus der 3-ten Ebene, nicht aber über 68 aus der 4-ten Ebene : 14, 95, 176, 41, 122 und 203. Dank Lemma 3 hebt nun keine dieser 6 Nullstellen zu einer Nullstelle modulo 729.

Genauso fahre man fort zu argumentieren mit 68 in der 4-ten Ebene, mit 68 in der 5-ten Ebene, mit 554 in der 6-ten Ebene, usf. Beachte dabei, daß nach Lemma 7 die Bewertung v_{3} der Auswertung von u′_{8} an jeder k-direkt henselbaren Nullstelle über 14 gleich der Bewertung der Ableitung bei 14 ist, nämlich 2. Beachte ferner, daß die jeweilige Anwendung von Lemma 3 ohne weitere Rechnung vonstatten gehen kann, da man die dafür nötigen Bewertungen schon von Lemma 7 geliefert bekommt.

Analog der Kantenzug, der bei 23 in der 3-ten Ebene beginnt.

Nicht-Beispiel. Sei u_{9}(X) := X^{2}. Sei p = 2. Für die modulare Nullstelle 0 ist Henselbarkeit nicht definiert. Keine modulare Nullstelle z ∈ 2Z ∖ {0} ist henselbar, da dort v_{2}(u_{9}(z)) − 2 v_{2}(u′_{9}(z)) = v_{2}(z^{2}) − 2 v_{2}(2z) = 2 v_{2}(z) − 2(v_{2}(z) + 1) = −2 ist.

Wende die Aussagen aus §5 auf die selbstgefundenen Beispiele an !

Besonders interessant sind hierbei Beispiele, in denen die Theorie nicht zu einer Erklärung des Hebungsbaums ausreicht.

7 Zerlegung in irreduzible Faktoren in Z_{p}[X]

Sei p prim.

Es verfügt im Gegensatz zu den Ringen (Z/p^{k})[X] für k ⩾ 2 der Ring Z_{p}[X] über eine (bis auf Reihenfolge der Faktoren) eindeutige Zerlegung eines normierten Polynoms in irreduzible normierte Polynome.

Begründe diese Aussage !

Sei f(X) ∈ Z[X]. Die Anzahl der unendlichen Kantenzüge im Hebungsbaum von f(X) ist durch den Grad von f(X) nach oben beschränkt. Denn f(X) kann in Z_{p} höchstens deg f verschiedene Nullstellen haben.

Da char Q = 0, ist Q separabel. Also hat ein in Z[X] irreduzibles normiertes Polynom in Z_{p}[X] irreduzible Faktoren nur von Multiplizität 1, und insbesondere Nullstellen nur von Multiplizität 1.

Wir zerlegen f(X) via Magma mit einer gewissen Genauigkeit in Z_{p}[X] in unseren Beispielen, i.e. mit einer gewissen Stellenzahl in Z_{p} in der p-adischen Darstellung.

Diese Genauigkeit s sollte, setzt man t := Valuation(Discriminant(f),p), mindestens t + (Degree(f)-1)*(t div 2) + 1 Stellen sein. Warum dies so ist, wird im fakultativen Anhang A erläutert; siehe die Anwendung dort. Wir müssen unser gegebenes Polynom mit Genauigkeit von s Stellen via Magma zerlegen. Es resultieren m Faktoren. Dann müssen wir testen, ob diese Zerlegung bei einer Rechnung auf s - (m-1)*(t div 2) Stellen genau weiter zerfällt. Ist dies nicht der Fall, so haben wir in der auf s Stellen genauen Zerlegung die irreduziblen Faktoren in Z_{p}[X] erhalten, welche wir dort aber nur auf s - (m-1)*(t div 2) Stellen genau sehen.

Beispiel. Betrachte u_{1}(X) := X^{2} + X + 1 bei p = 3. Es ist die Diskriminante gleich −3, und also brauchen wir eine Genauigkeit von mindestens

v_{3}(−3) + (deg u_{1} − 2)⌊v_{3}(−3)/2⌋ + 1 = 2

Stellen. Bei einer Berechnung auf 2 Stellen genau bleibt u_{1}(X) in Z_{3}[X] irreduzibel. Bei einer Berechnung auf 2 − (1 − 1) · ⌊v_{3}(−3)/2⌋ = 2 Stellen genau ändert sich natürlich nichts. Also ist u_{1}(X) in Z_{3}[X] irreduzibel.

In der Tat konnten wir im Hebungsbaum in §6 auch keine Nullstelle von u_{1}(X) in Z_{3} erkennen.

R := pAdicRing(3,2); // die 2 ist die Genauigkeit
P<X> := PolynomialRing(R);
u1 := P ! X^2+X+1;
Factorisation(u1);

Es ist hier und im folgenden auch interessant, ein wenig mit der Genauigkeit zu spielen, sie einmal etwas zu tief anzusetzen, etc.

Beispiel. Betrachte u_{2}(X) := X^{4} + X + 1 bei p = 5. Es ist die Diskriminante gleich 229, und also brauchen wir eine Genauigkeit von mindestens

v_{5}(229) + (deg u_{2} − 2)⌊v_{5}(229)/2⌋ + 1 = 1

Stellen. Bei einer Berechnung auf 1 Stelle genau zerfällt u_{2}(X) in Z_{5}[X] in ein Produkt irreduzibler Faktoren von Grad 1 und 3, und bei einer Berechnung auf

1 − (2 − 1) · ⌊v_{5}(229)/2⌋ = 1

Stelle genau ändert sich natürlich nichts. Also haben wir u_{2}(X) in Z_{5}[X] in irreduzible Faktoren zerlegt, und sehen diese auf 1 Stelle genau.

Den Linearfaktor haben wir als einzige Nullstelle von u_{2}(X) in Z_{5} im Hebungsbaum in §6 gesehen.

R := pAdicRing(5,1);
P<X> := PolynomialRing(R);
u2 := P ! X^4+X+1;
Factorisation(u2);

Beispiel. Betrachte u_{3}(X) = X^{4} +3X +3 bei p = 5. Es ist die Diskriminante gleich 4725, damit v_{5}(4725) = 2, und also brauchen wir eine Genauigkeit von mindestens

v_{5}(4725) + (deg u_{3} − 2)⌊v_{5}(4725)/2⌋ + 1 = 5 .

Stellen. Bei einer Berechnung auf 5 Stellen genau zerfällt u_{3}(X) in Z_{5}[X] in ein Produkt zweier irreduzibler Faktoren vom Grad 2, und bei einer Berechnung auf

5 − (2 − 1) · ⌊v_{5}(4725)/2⌋ = 4

Stellen genau zerfallen diese nicht weiter. Also haben wir u_{3}(X) in Z_{5}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 4 Stellen genau.

Im Hebungsbaum in §6 konnten wir ebenfalls keine Nullstelle von u_{3}(X) in Z_{5} erkennen.

R := pAdicRing(5,5);
P<X> := PolynomialRing(R);
u3 := P ! X^4+3*X+3;
fac := Factorisation(u3);
print fac;
R := pAdicRing(5,4);
P<X> := PolynomialRing(R);
Factorisation(P!fac[1][1]);
Factorisation(P!fac[2][1]);

Beispiel. Betrachte u_{4}(X) = X^{4} − 3X^{3} − 3X^{2} + X − 1 bei p = 5. Es ist die Diskriminante gleich −11875, damit v_{5}(−11875) = 4, und also brauchen wir eine Genauigkeit von mindestens

v_{5}(−11875) + (deg u_{4} − 2)⌊v_{5}(−11875)/2⌋ + 1 = 9

Stellen. Bei einer Berechnung auf 9 Stellen genau zerfällt u_{4}(X) in Z_{5}[X] in ein Produkt zweier irreduzibler Faktoren vom Grad 2, und bei einer Berechnung auf Stellen genau zerfallen diese nicht weiter. Also haben wir u_{4}(X) in Z_{5}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 7 Stellen genau.

Im Hebungsbaum in §6 konnten wir ebenfalls keine Nullstelle von u_{4}(X) in Z_{5} erkennen.

Beispiel. Betrachte u_{5}(X) = X^{6}−6X^{3}−6X^{2}−5X +2 bei p = 5. Es ist die Diskriminante gleich 253056125, damit v_{5}(253056125) = 3, und also brauchen wir eine Genauigkeit von mindestens

v_{5}(253056125) + (deg u_{5} − 2)⌊v_{5}(253056125)/2⌋ + 1 = 8

Stellen. Bei einer Berechnung auf 8 Stellen genau zerfällt u_{5}(X) in Z_{5}[X] in ein Produkt irreduzibler Faktoren von Grad 1, 2 und 3, und bei einer Berechnung auf

8 − (3 − 1) · ⌊v_{5}(253056125)/2⌋ = 6

Stellen genau zerfallen diese nicht weiter. Also haben wir u_{5}(X) in Z_{5}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 6 Stellen genau.

Den Linearfaktor haben wir als einzige Nullstelle von u_{5}(X) in Z_{5} im Hebungsbaum in §6 gesehen.

R := pAdicRing(5,8);
P<X> := PolynomialRing(R);
u5 := P ! X^6-6*X^3-6*X^2-5*X+2;
fac := Factorisation(u5);
print fac;
R:=pAdicRing(5,6);
P<X>:=PolynomialRing(R);
Factorisation(P!fac[1][1]);
Factorisation(P!fac[2][1]);
Factorisation(P!fac[3][1]);
Factorisation(P ! u5); // out of interest

Versucht man also, anders vorzugehen und u_{5}(X) über pAdicRing(5,6) abermals in Faktoren zu zerlegen, um dann zu vergleichen, so wird man mit dem Problem konfrontiert, daß in (Z/5^{6})[X] die Zerlegung in irreduzible Faktoren im allgemeinen nicht eindeutig ist.

Beispiel. Betrachte u_{6}(X) = X^{3} + X^{2} − X + 17 bei p = 3. Es ist die Diskriminante gleich −8172, damit v_{3}(−8172) = 2, und also brauchen wir eine Genauigkeit von mindestens

v_{3}(−8172) + (deg u_{6} − 2)⌊v_{3}(−8172)/2⌋ + 1 = 4

Stellen. Bei einer Berechnung auf 4 Stellen genau zerfällt u_{6}(X) in Z_{3}[X] in ein Produkt dreier Linearfaktoren, welches natürlich auch bei einer Berechnung auf Stellen genau nicht weiter zerfällt. Also haben wir u_{6}(X) in Z_{3}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 2 Stellen genau.

Diese Linearfaktoren haben wir als Nullstellen von u_{6}(X) in Z_{3} im Hebungsbaum in §6 gesehen.

Schreiben wir u_{6}(X) = (X −α)(X −β)(X −γ) in Z_{3}[X], so ist (bei geeigneter Reihenfolge) α ≡_{3} β ≢_{3} γ. Dies hat zur Folge, daß für k ⩾ 1 aus x_{0} ≡_{3^{k}} α immer auch x_{0} ≡_{3} β folgt, und also u_{6}(x_{0}) ≡_{3^{k+1}} 0 gilt. Ändern wir x_{0} um ein Vielfaches von 3^{k}, so ändern wir an letzterer Kongruenz nichts. Dies hat zur Folge, daß mit einer Nullstelle x_{0} modulo 3^{k+1} auch x_{0} + 3^{k} und x_{0} + 2 · 3^{k} Nullstellen modulo 3^{k+1} sind, wie im Hebungsbaum in §6 gesehen. Man “sieht dort α in jeder Ebene dreifach”. Dito β.

Beispiel. Betrachte u_{7}(X) = X^{6} − 4X^{4} − 6X^{3} + 5X^{2} − 3X − 2 bei p = 3. Es ist die Diskriminante gleich 2489614461, damit v_{3}(2489614461) = 6 und also brauchen wir eine Genauigkeit von mindestens

v_{3}(2489614461) + (deg u_{7} − 1)⌊v_{3}(2489614461)/2⌋ + 1 = 22

Stellen. Bei einer Berechnung auf 22 Stellen genau zerfällt u_{7}(X) in Z_{3}[X] in ein Produkt dreier irreduzibler Faktoren vom Grad 2, und bei einer Berechnung auf

22 − (3 − 1) · ⌊v_{3}(2489614461)/2⌋ = 16

Stellen genau zerfallen diese nicht weiter. Also haben wir u_{7}(X) in Z_{3}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 16 Stellen genau.

Im Hebungsbaum in §6 konnten wir ebenfalls keine Nullstelle von u_{7}(X) in Z_{3} erkennen.

Beispiel. Betrachte u_{8}(X) = X^{6} − X^{4} − 6X^{3} − 4X^{2} + 6X − 5 bei p = 3. Es ist die Diskriminante gleich 8320584384, damit v_{3}(8320584384) = 6, und also brauchen wir eine Genauigkeit von mindestens

v_{3}(8320584384) + (deg u_{8} − 1)⌊v_{3}(8320584384)/2⌋ + 1 = 22

Stellen. Bei einer Berechnung auf 22 Stellen genau zerfällt u_{8}(X) in Z_{3}[X] in ein Produkt irreduzibler Faktoren von Grad 1, 1, 2 und 2, und bei einer Berechnung auf

22 − (4 − 1) · ⌊v_{3}(2489614461)/2⌋ = 13

Stellen genau zerfallen diese nicht weiter. Also haben wir u_{8}(X) in Z_{3}[X] in irreduzible Faktoren zerlegt, und sehen diese in ersterer Berechnung auf 13 Stellen genau.

Die beiden Linearfaktoren haben wir als Nullstellen von u_{8}(X) in Z_{3} im Hebungsbaum in §6 gesehen.

R := pAdicRing(3,22);
P<X> := PolynomialRing(R);

u8 := P ! X^6-X^4-6*X^3-4*X^2+6*X-5;
fac := Factorisation(u8);
print fac;
R := pAdicRing(3,13);
P<X> := PolynomialRing(R);
Factorisation(P!fac[1][1]);
Factorisation(P!fac[2][1]);
Factorisation(P!fac[3][1]);
Factorisation(P!fac[4][1]);

Schreiben wir u_{8}(X) = (X − α)(X − β)r(X) in Z_{3}[X], so ist α ≡_{9} β. Dies hat zur Folge, daß für k ⩾ 2 aus x_{0} ≡_{3^{k}} α immer auch x_{0} ≡_{9} β folgt, und also u_{6}(x_{0}) ≡_{3^{k+2}} 0 gilt. Ändern wir x_{0} um ein Vielfaches von 3^{k}, so ändern wir an u_{6}(x_{0}) ≡_{3^{k+2}} 0 nichts. Dies hat zur Folge, daß mit einer Nullstelle x_{0} modulo 3^{k+2} auch x_{0} + 3^{k}, x_{0} + 2 · 3^{k}, …, x_{0} + 8 · 3^{k} Nullstellen modulo 3^{k+2} sind, wie im Hebungsbaum in §6 gesehen. Man “sieht dort α in jeder Ebene neunfach”. Dito β.

Zerlege die selbstgefundenen Polynome in Z_{p}[X]

Vermutlich ergibt sich die Struktur des Hebungsbaums von f(X) ∈ Z[X] am besten aus einer Zerlegung von f(X) in Linearfaktoren in Q̄_{p}[X] und den Kongruenzen der Nullstellen in Q̄_{p} untereinander. Diese Zerlegung existiert, doch das Kongruenzverhalten der Nullstellen untereinander dem Polynom f(X) zu entnehmen, steht auf einem anderen Blatt. Man könnte sich fragen, ob das Newton-Polygon hier hilft.

A Hensel-Koch-Verfahren

Folgende Ausführungen übersteigen den Rahmen des Kurses. Wir folgen [2, §4.4]. Sei R ein kompletter diskreter Bewertungsring mit maximalem Ideal erzeugt von π ∈ R und mit Quotientenkörper K = frac R von Charakteristik 0. E.g. R = Z_{p} und π = p. Wir bezeichnen Idealerzeugnisse in R[X] mit spitzen Klammern. Das Nullpolynom habe Grad deg 0 = −∞.

A.1 Diskriminante

Sei f(X) = ∑_{i⩾0} a_{i}X^{i} ∈ R[X] ein normiertes Polynom von Grad n := deg f. Sei L ein Zerfällungskörper von f(X) ∈ K[X], so daß L|K. Bemerkung [3, II.§2, Prop. 3]. Der ganze Abschluß S von R in L ist ein diskreter Bewertungsring und ein freier R-Modul von Rang [S : R] = [L : K]. Es zerfällt f(X) in S[X] in Linearfaktoren,

f(X) = ∏_{i∈[1,n]}(X − α_{i}) .

Definition. Sei Δ(f) := ∏_{i, j∈[1,n], i<j}(α_{i} − α_{j})^{2} die Diskriminante von f. Diese ist invariant unter Gal(L|K), also in S ∩ K = R enthalten. In Magma erhalten wir die Diskriminante von f mittels Discriminant(f). Bemerkung. Da Δ(f) ein symmetrisches Polynom in α_{1}, …, α_{n} mit Koeffizienten in Z ist, ist Δ(f) auch ein Polynom in a_{1}, …, a_{n} mit Koeffizienten in Z [5, §29].

A.2 Resultante

Seien g(X) = ∑_{i⩾0} b_{i}X^{i}, h(X) = ∑_{i⩾0} c_{j}X^{j} ∈ K[X] gegeben. Schreibe k := deg g und ℓ := deg h. Definition. Schreibe

Result(g, h) := det ( \begin{matrix}b_{0} & b_{1} & … & … & b_{k} \\ & b_{0} & b_{1} & … & … & b_{k} \\ & & ... & & & & ... \\ & & & b_{0} & b_{1} & … & … & b_{k} \\ c_{0} & c_{1} & … & … & c_{ℓ} \\ & c_{0} & c_{1} & … & … & c_{ℓ} \\ & & ... & & & & ... \\ & & & c_{0} & c_{1} & … & … & c_{ℓ} \end{matrix}  ) ^{\} ℓ Zeilen} _{\} k Zeilen}

für die Resultante von g(X) und h(X). Es ist also Result(g, h) ∈ R. Der einzige Summand in der Leibnizformel, der b_{0}^{ℓ} enthält, ist b_{0}^{ℓ}c_{ℓ}^{k}. Cf. [5, §30, §31]. In Magma erhalten wir die Resultante mittels Resultant(g,h). Lemma. Seien g(X) ≠ 0 und h(X) ≠ 0. Sei L ein Zerfällungskörper von g(X)h(X) ∈ K[X]. Schreibe g(X) = b_{k} ∏_{i∈[1,k]}(X − β_{i}) und h(X) = c_{ℓ} ∏_{j∈[1,ℓ]}(X − γ_{j}) in L[X].

(1) Es ist

Result(g, h) = b_{k}^{ℓ}c_{ℓ}^{k} ∏_{i∈[1,k]} ∏_{j∈[1,ℓ]}(β_{i} − γ_{j})

(2) Es ist

Result(g, h) = b_{k}^{ℓ} ∏_{i∈[1,k]} h(β_{i}) .

(3) Es ist

Result(g, h) = (−1)^{kℓ}c_{ℓ}^{k} ∏_{j∈[1,ℓ]} g(γ_{j}) .

Beweis. Es folgen (2) und (3) aus (1). Wir wollen (1) zeigen.

Wir dürfen g(X) und h(X) als normiert annehmen, i.e. b_{k} = 1 und c_{ℓ} = 1.

Wir wollen nun stattdessen in L̂ := K[β̂_{1} , …, β̂_{k} , γ̂_{1} , …, γ̂_{ℓ}][X] für ĝ(X) := ∏_{i∈[1,k]}(X − β̂_{i}) und ĥ(X) := ∏_{j∈[1,ℓ]}(X − γ̂_{j}) zeigen, daß

Result(ĝ, ĥ) =^{!} ∏_{i∈[1,k]} ∏_{j∈[1,ℓ]}(β̂_{i} − γ̂_{j}) =: P

Die Bemerkung wird sich daraus durch Spezialisierung L̂ ^{\overline{}^{σ}} L, β̂_{i} \overline{}β_{i} für i ∈ [0, k] und γ̂_{j} \overline{}γ_{j} für j ∈ [0, ℓ] ergeben.

Wir behaupten, daß (β̂_{i} − γ̂_{j}) ein Teiler von Result(ĝ, ĥ) ist für i ∈ [1, k] und j ∈ [1, ℓ].

Polynomdivision in K[β̂_{1} , …, β̂_{k} , γ̂_{1} , …, γ̂_{ℓ}] bezüglich β̂_{i} gibt

Result(ĝ, ĥ) = u · (β̂_{i} − γ̂_{j}) + v ,

wobei v konstant in β̂_{i} ist. Spezialisieren wir zu β̂_{i} \overline{}γ̂_{j} , so bleibt v ungeändert. Die linke Seite wird jedoch 0, da wir die Gleichung

\underbrace{(ĥ/(X − γ̂_{j}))}_{deg = ℓ−1} ·ĝ − \underbrace{(ĝ/(X − β̂_{i}))}_{deg = k−1} ·ĥ = 0

dann zum Nachweis des Verschwindens der Result(ĝ, ĥ) definierenden Determinante heranziehen können. Also ist v = 0. Dies zeigt die Behauptung.

In L̂ ist nach dem Satz von Gauß jedes irreduzible Polynom prim [5, §26], wie e.g. (β̂_{i} − γ̂_{j}) für i ∈ [0, k] und j ∈ [0, ℓ]. Also teilt P insgesamt Result(ĝ, ĥ).

Es ist Result(ĝ, ĥ) ein Polynom in den β̂_{i}, wobei i ∈ [1, k], mit Koeffizienten in K[γ̂_{1} , …, γ̂_{ℓ}]. Als solches hat es gemäß Leibniz Grad kℓ und den Koeffizienten 1 bei β_{1}^{ℓ} ⋯ β_{k}^{ℓ}. Dies trifft auch auf P zu. Also ist

Result(ĝ, ĥ) = P .

Korollar. Seien g(X), h(X) ∈ R[X] normierte Polynome. Schreibe k := deg g und ℓ := deg h. Es ist

Δ(gh) = Δ(g)Δ(h) Result(g, h)^{2} .

Beweis. Sei L ein Zerfällungskörper für g(X)h(X) ∈ K[X]. Schreibe g(X) := ∏_{i∈[1,k]}(X − β_{i}) und h(X) := ∏_{j∈[1,ℓ]}(X − γ_{j}) in L[X]. Es wird

Δ(gh) = (∏_{1⩽i<j⩽k}(β_{i} − β_{j})^{2}) (∏_{1⩽i<j⩽ℓ}(γ_{i} − γ_{j})^{2}) (∏_{i∈[1,k]} ∏_{j∈[1,ℓ]}(β_{i} − γ_{j})^{2})
= Δ(g)Δ(h) Result(g, h)^{2} .

Korollar. Seien f(X) ∈ R[X] ein normiertes Polynom. Es ist

Δ(f) = (−1)^{( \begin{matrix}n \\ 2 \end{matrix} )} Result(f, f′) .

Insbesondere sehen wir abermals, daß Δ(f) ein ganzzahliges Polynom in den Koeffizienten von f ist. Beweis. Sei S der ganze Abschluß von R in einem Zerfällungskörper L von f(X) ∈ K[X]. Schreibe f(X) = ∏_{i∈[1,n]}(X − α_{i}) ∈ S[X]. Es wird

f′(X) = ∑_{j∈[1,n]} ∏_{i∈[1,n]∖{j}}(X − α_{i}) ,

und also

f′(α_{j}) = ∏_{i∈[1,n]∖{j}}(α_{j} − α_{i}) ,

so daß sich

Δ(f) = (−1)^{( \begin{matrix}n \\ 2 \end{matrix} )} ∏_{j∈[1,n]} f′(α_{j}) = (−1)^{( \begin{matrix}n \\ 2 \end{matrix} )} Result(f, f′)

ergibt. Bemerkung. Seien f(X), g(X), h(X) ∈ R[X] normierte Polynome mit f(X) ≡_{πΔ(f)} g(X)h(X). Dann ist

v_{π}(Result(g, h)) ⩽ \frac{1}{2} v_{π}(Δ(f))

Beweis. Da die Diskriminante ein ganzzahliges Polynom in den Koeffizienten ihres Arguments ist, ist

Δ(f) ≡_{πΔ(f)} Δ(gh) = Δ(g)Δ(h) Result(g, h)^{2} ,

folglich

v_{π}(Δ(f)) = v_{π}(Δ(g)Δ(h) Result(g, h)^{2})

und also v_{π}(Result(g, h)^{2}) ⩽ v_{π}(Δ(f)). Satz (Hensel-Koch). Sei f(X) ∈ R[X] normiert. Sei Δ(f) ≠ 0. Schreibe t := v_{π}(Δ(f)). Schreibe t′ := ⌊\frac{t}{2}⌋ = max\{z ∈ Z : z ⩽ \frac{t}{2}\}. Sei s > t. Seien g(X), h(X) ∈ R[X] normiert mit

f(X) ≡_{π^{s}} g(X)h(X)

gegeben. Dann gibt es ĝ(X), ĥ(X) ∈ R[X] normiert mit

ĝ(X) ≡_{π^{s−t′}} g(X) , ĥ(X) ≡_{π^{s−t′}} h(X)

und mit

f(X) = ĝ(X)ĥ(X) .

Für diese Verallgemeinerung des üblichen Henselschen Lemmas ist mir als Quelle nur [2, Satz 4.4.3] bekannt. Beweis. Mit Induktion genügt es, g̃(X), h̃(X) ∈ R[X] normiert mit

g̃(X) ≡^{!}_{π^{s−t′}} g(X) ,  h̃(X) ≡^{!}_{π^{s−t′}} h(X)

und mit

f(X) ≡^{!}_{π^{s+1}} g̃(X)h̃(X)

zu finden. Wir suchen diese von der Form

\begin{aligned}g̃(X) & = & g(X) + π^{s−t′}u(X) \\ h̃(X) & = & h(X) + π^{s−t′}v(X) , \end{aligned}

wobei u(X), v(X) ∈ R[X] mit deg u < deg g und deg v < deg h. Es sollte also

\begin{aligned}f(X) & ≡^{!}_{π^{s+1}} & (g(X) + π^{s−t′}u(X))(h(X) + π^{s−t′}v(X)) \\ & = & g(X)h(X) + π^{s−t′}(v(X)g(X) + u(X)h(X)) + π^{2(s−t′)}u(X)v(X) \end{aligned}

gelten. Beachte, daß 2(s − t′) ⩾ s + 1. Schreibe b(X) := π^{t′−s}(f(X) − g(X)h(X)) ≡_{π^{t′}} 0. Es genügt also, unsere angesetzten u(X), v(X) ∈ R[X] so zu finden, daß

b(X) =^{!} v(X)g(X) + u(X)h(X) .

Da mit vorstehender Bemerkung v_{π}(Result(g, h)) ⩽ t′ ist und da Result(g, h) die Determinante des entstehenden linearen Gleichungssystems für die Koeffizienten von v(X) und u(X) ist, folgt dies mit der Cramerschen Regel, auch als Adjunktenformel bekannt. Und jetzt wird es unschön. Korollar. Seien f(X) ∈ R[X] normiert. Sei Δ(f) ≠ 0. Schreibe t := v_{π}(Δ(f)). Schreibe t′ := ⌊\frac{t}{2}⌋. Sei m ⩾ 2. Schreibe t′′ := (m − 2)t′. Sei s > t + t′′. Für i ∈ [1, m] seien g_{i}(X) ∈ R[X] normiert so gegeben, daß

f(X) ≡_{π^{s}} g_{1}(X)g_{2}(X) ⋯ g_{m}(X) .

Dann gibt es ĝ_{i}(X) ∈ R[X] normiert mit ĝ_{i}(X) ≡_{π^{s−t′−t′′}} g_{i}(X) für i ∈ [1, m] und mit f(X) = ĝ_{1}(X)ĝ_{2}(X) ⋯ ĝ_{m}(X) .

Beweis. Induktion über m ⩾ 2. Der Induktionsanfang m = 2 ist Hensel-Koch. Induktionsschritt. Sei m ⩾ 3. Sei die Aussage für m − 1 bekannt. Schreibe h(X) := g_{1}(X) ⋯ g_{m−1}(X). Es ist Δ(h) ein Teiler von Δ(f). Es ist

f(X) ≡_{π^{s}} h(X)g_{m}(X) .

Dank Hensel-Koch gibt es ĝ_{m}(X), ĥ(X) ∈ R[X] normiert mit

ĝ_{m}(X) ≡_{π^{s−t′}} g_{m}(X) ,  ĥ(X) ≡_{π^{s−t′}} h(X)

und mit

f(X) = ĥ(X)ĝ_{m}(X) .

Nun ist

ĥ(X) ≡_{π^{s−t′}} h(X) = g_{1}(X) ⋯ g_{m−1}(X) ,

weswegen es nach Induktionsvoraussetzung ĝ_{i}(X) ∈ R[X] normiert gibt mit ĝ_{i}(X) ≡_{π^{(s−t′)−t′′}} g_{i}(X) für i ∈ [1, m − 1] und mit

ĥ(X) = ĝ_{1}(X) ⋯ ĝ_{m−1}(X) .

Insgesamt ist also ĝ_{i}(X) ≡_{π^{s−t′−t′′}} g_{i}(X) für i ∈ [1, m] und

f(X) = ĥ(X)ĝ_{m}(X) = ĝ_{1}(X) ⋯ ĝ_{m}(X) .

Anwendung. Sei f(X) ∈ Z[X] ein normiertes und rational irreduzibles Polynom mit deg f ⩾ 2. Sei p prim.

Schreibe t := v_{p}(Δ(f)). Schreibe t′ := ⌊\frac{t}{2}⌋. Schreibe t′′ := (deg f − 2)t′.

Sei s > t + t′′.

Sei m ⩾ 1 und g_{i}(X) ∈ Z[X] normiert für i ∈ [1, m] so, daß

f(X) ≡_{p^{s}} g_{1}(X) ⋯ g_{m}(X)

eine auch modulo p^{s−(m−1)t′} nicht weiter zerfallende Zerlegung ist. Da m ⩽ deg f, gibt es nach vorstehendem Korollar ĝ_{i}(X) ∈ Z_{p}[X] normiert mit ĝ_{i}(X) ≡_{p^{s−(m−1)t′}} g_{i}(X) für i ∈ [1, m] und

f(X) = ĝ_{1}(X) ⋯ ĝ_{m}(X)

Für i ∈ [1, m] ist nun ĝ_{i}(X) irreduzibel in Z_{p}[X], denn wäre es etwa für i = 1 reduzibel, sagen wir, ĝ_{1}(X) = u(X)v(X) mit u(X), v(X) ∈ Z_{p}[X] normiert von Grad ⩾ 1, dann wäre auch f(X) = u(X)v(X)ĝ_{2}(X) ⋯ ĝ_{m}(X) ≡_{p^{s−(m−1)t′}} u(X)v(X)g_{2}(X) ⋯ g_{m}(X) mit g_{1}(X) ≡_{p^{s−(m−1)t′}} ĝ_{1}(X) = u(X)v(X), was nicht geht, da modulo p^{s−(m−1)t′} jedes Polynom in Z_{p}[X] von einem Polynom in Z[X] repräsentiert wird und unsere Zerlegung als nicht weiter zerfallend vorausgesetzt war.

Also sehen wir diesenfalls in der Zerlegung f(X) ≡_{p^{s}} g_{1}(X) ⋯ g_{m}(X) auf s Stellen genau bereits die irreduziblen Faktoren von f(X) in Z_{p}[X], aber eben nur bis auf s − (m − 1)t′ Stellen genau. Die Grade dieser irreduziblen Faktoren in Z_{p}[X] können wir jedenfalls ablesen.

Die Kalamität, modulo p^{s−(m−1)t′} nochmals die weitere Zerlegbarkeit prüfen zu müssen, rührt daher, daß ich nicht die hypothetische Zerlegung f(X) = u(X)v(X)ĝ_{2}(X) ⋯ ĝ_{m}(X) modulo p^{s} direkt mit der Zerlegung f(X) ≡_{p^{s}} g_{1}(X) ⋯ g_{m}(X) dort vergleichen und schon über die Anzahl der Faktoren einen Widerspruch herleiten kann, da in (Z/p^{s})[X] die Eindeutigkeit der Zerlegung in irreduzible Faktoren im allgemeinen nicht gilt. Ich kann auch nicht ausschließen, daß es in (Z/p^{s})[X] zwei nicht weiter zerlegbare Faktorisierungen gibt, in denen die Grade der Faktoren auch bis auf Permutation nicht übereinstimmen. Gegen die Eindeutigkeit kann man (X − 3)(X + 3) ≡_{9} X^{2} anführen. Gegen die Eindeutigkeit der Gradzahlverteilung bis auf Permutation kenne ich kein Beispiel.

Abschließend soll noch ein Ansatz über Linearfaktoren erwähnt werden, vgl. die erste Bemerkung in §A.1.

Bemerkung. Sei n ⩾ 1. Seien α_{i} ∈ R für i ∈ [1, n]. Sei f(X) := ∏_{i∈[1,n]}(X − α_{i}). Sei t := v_{π}(Δ(f)).

Sei s > t. Sei s′ := ⌈\frac{s}{2}⌉ = min\{ z ∈ Z : z ⩾ \frac{s}{2} \}.

Sei r ∈ R mit f(r) ≡_{π^{s}} 0.

Dann gibt es genau ein i ∈ [1, n] mit r ≡_{π^{s′}} α_{i}.

Polynomdivision von f(X) durch (X − r) zeigt übrigens, daß f(r) ≡_{π^{s}} 0 gleichbedeutend ist mit f(X) ≡_{π^{s}} (X − r)h(X) für ein normiertes h(X) ∈ R[X]. Die Bemerkung sagt, daß diesenfalls f(X) = (X − α_{i})ĥ(X) für ein i ∈ [1, n] und ein ĥ(X) ∈ R[X] normiert so, daß (X − r) ≡_{π^{s′}} (X − α_{i}).

Beweis. Zur Existenz. Annahme, v_{i} := v_{π}(r − α_{i}) ⩽ s′ − 1 für i ∈ [1, n]. Sei o.E. v_{1} ⩽ v_{2} ⩽ ⋯ ⩽ v_{n}.

Es ist s ⩽ v_{π}(f(r)) = ∑_{i∈[1,n]} v_{i}.

Es ist α_{i} ≡_{π^{v_{i}}} r ≡_{π^{v_{j}}} α_{j} für 1 ⩽ i < j ⩽ n. Also ist α_{i} ≡_{π^{v_{i}}} α_{j} , und somit

s > t = v_{π}(Δ(f)) ⩾ 2 ∑_{1⩽i<j⩽n} v_{i} ⩾ 2 ∑_{i∈[1,n−1]} v_{i} .

Zusammen ist v_{n} > ∑_{i∈[1,n−1]} v_{i}, und also 2v_{n} > ∑_{i∈[1,n]} v_{i} ⩾ s. Aber v_{n} ⩽ s′ − 1, und wir haben einen Widerspruch.

Zur Eindeutigkeit. Annahme, es gibt 1 ⩽ i < j ⩽ n mit r ≡_{π^{s′}} α_{i} und r ≡_{π^{s′}} α_{j} . Dann ist α_{i} − α_{j} ≡_{π^{s′}} 0, und also v_{π}(Δ(f)) ⩾ 2s′ ⩾ s > t, was einen Widerspruch darstellt.

Literatur

[1] Bosma, W.; Cannon, J.J.; Fieker, C.; Steel, A. (eds.), Handbook of Magma functions, Edition 2.16, 2010; cf. magma.maths.usyd.edu.au, magma.maths.usyd.edu.au/calc.

[2] Koch, H., Zahlentheorie, Vieweg, 1997.

[3] Serre, J.-P., Local Fields, Springer GTM 67, 1979.

[4] Serre, J.-P., A Course in Arithmetic, Springer GTM 7, 5. Aufl., 1996.

[5] van der Waerden, B. L., Algebra, Springer Grundlehren, 5. Aufl., 1960.