p-adische Bewertung ganzer Zahlen: Erinnerung: Newton-Iteration zu differenzierbarer Funktion f : R → R wird x ∈ R mit f (x) = 0 gesucht. Startwert x0 Iteration: aus Approximation xn berechnet man verbesserte Approximation xn+1 = xn + y indem man in 0 νp (a) := p−m linearisiert und linke Seite = 0 setzt : 0 f (xn ) + f (xn ) · y = 0 y = −f (xn )/f 0 (xn ) νp (a · b) = νp (a) · νp (b) νp (a + b) ≤ max{νp (a), νp (b)} νp (a) ≥ 0 νp (a) = 0 ⇐⇒ a=0 p-adischer Abstand νp (a − b) ≤ p−k ⇐⇒ a ≡ b falls f 0 (xn ) 6= 0. ⇒ Quadratische Konvergenz (xn )n≥0 →n→∞ x im “Normalfall” falls pm |a und pm+1 - a Norm-Eigenschaften (nichtarchimedisch) f (xn + y) = f (xn ) + f 0 (xn ) · y + . . . also falls a = 0 (mod pk ) p-adische Konvergenz (an )n≥0 → a ⇐⇒ νp (an − a) →n→∞ 0 1 2 Basis-p-Darstellung ganzer Zahlen a = a0 + a1 p + a2 p2 + . . . + an pn mit ai ∈ Zp = {x ∈ Z : −p/2 < x ≤ p/2} “Stetigkeit” von Polynomen Approximation im p-adischen Sinne Ist f ∈ Z[X] und a, b ∈ Z, so gilt a≡b a(k) := a0 + a1 p + a2 p2 + . . . + ak−1 pk−1 für k ≥ 1. Dann gilt (mod pk ) ⇒ f (a) ≡ f (b) (mod pk ) Taylor-Formel für Polynome a(k) ≡ a (mod pk ) (k ≥ 1) sei f ∈ R[X], Y Variable, dann ex. c ∈ R[X, Y ] mit f (X + Y ) = f (X) + f 0 (X) · Y + c · Y 2 also νp (a(k) − a) ≤ p−k (k ≥ 1) in R[X, Y ]. d.h. a(k) →a k≥0 3 4 Anwendung auf Basis-p-Darstellung Nullstellenbestimmung für f ∈ Z[X] durch p-adische Newton-Iteration (lineares Lifting) beachte sei f ∈ Z[X] und a ∈ Z f (a(k+1) ) = f (a(k) + ak pk ) = f (a(k) ) + f 0 (ak ) · ak pk + c(. . .) ak pk falls a ∈ Z und f (a) = 0, so gilt f (a(k) ) ≡ f (a) = 0 f 0 (a(k) ) ≡ f 0 (a(1) ) 2 (mod pk ) und aus der Taylorformel folgt f (a(k) ) + f 0 (a(k) ) · ak pk ≡ 0 (mod pk+1 ) daher kann man — falls f 0 (a(1) ) = f 0 (a0 ) 6≡ 0 (mod p) — die Koeffizienten a1 , a2 , . . . der Basis-p-Darstellung von a durch Iteration berechnen: (f (a(k) )/pk ) ak = − (mod p) (k ≥ 1) f 0 (a0 ) 5 Nullstellensuche für f ∈ Z[X]: p-adische Newton-Iteration mit linearer Konvergenz 6 p-adische Newton-Iteration mit quadratischer Konvergenz Für k = 0, 1, 2, . . . sei – f kann als quadratfrei angenommen werden b(k) := a(2 – berechne Landau-Mignotte-Schranke M für die Koeffizienten linearer Faktoren von f und – wähle eine Primzahl p, so dass f quadratfrei (mod p) ist d.h. p - discr(f ) = res(f, f 0 ) mit ∆k ≡ 0 (mod p2 ) – löse Gleichung f (a0 ) ≡ 0 (mod p) Wegen - falls keine Lösung existiert, so hat f keine Nullstelle ∈ Z – führe p-adische Newton-Iteration durch (→ a1 , a2 , . . .) bis pk > 2M ist und teste, ob f (a(k) ) = 0 in Z - wenn ja, Nullstelle a von f mit a ≡ a0 (mod p) gefunden - wenn nein, dann gibt es keine Nullstelle a von f mit a ≡ a0 (mod p) 7 (mod p) k ) = a0 + a1 p + . . . + a2k −1 p2 k −1 k ∆k := b(k+1) − b(k) = a2k p2 + . . . + a2k+1 −1 b2 k+1 k f (b(k+1) ) = f (b(k) ) + ∆k f 0 (b(k) ) + ∆2k (. . .) kann man b(k+1) direkt aus b(k) berechnen: ∆k ≡ −f (b(k) )/f 0 (b(k) ) (mod p2 k+1 ) NB: f 0 (b(0) ) 6≡ 0 (mod p) ⇒ f 0 (b(k) ) invertierbar (mod p2 8 k+1 ) −1