vorlesungen von prof. dr. c.p. schnorr - math.uni-frankfurt.dedmst/teaching/ss2014/vorlesung/... ·...

113
Vorlesungen von Prof. Dr. C.P. Schnorr: Gitter und Kryptographie an der Johann Wolfgang Goethe-Universit¨ at Frankfurt/Main im Sommersemester 2013 13. Mai 2014

Upload: trankhanh

Post on 29-Aug-2019

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Vorlesungen von Prof. Dr. C.P. Schnorr:

Gitter und Kryptographie

an der Johann Wolfgang Goethe-Universitat Frankfurt/Main

im Sommersemester 2013

13. Mai 2014

Page 2: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

2

Page 3: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Inhaltsverzeichnis

1 Gitter in linearen Raumen 5

1.1 Die Geometrie der Gitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2 Dualitat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.3 Diskretheit, Primitive Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.4 Elementare Reduktionsverfahren zur `2-Norm || || . . . . . . . . . . . . . . . . . . . 12

1.5 Hermite Normalform, Untergitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2 Sukzessive Minima und Minkowski-Satze 17

2.1 Sukzessive Minima und erster Satz von Minkowski . . . . . . . . . . . . . . . . . . 17

2.2 Packungsdichte, Hermite-Konstante, kritische Gitter . . . . . . . . . . . . . . . . . 19

2.3 Zweiter Satz von Minkowski. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3 Gauß-Reduktion 25

3.1 Reduzierte Basis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.2 Reduktionsverfahren fur die Euklidische Norm . . . . . . . . . . . . . . . . . . . . 26

4 LLL-reduzierte Gitterbasen 31

4.1 Definition und Eigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.2 Das LLL-Reduktionsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3 LLL-Reduktion ganzzahliger Erzeugendensysteme . . . . . . . . . . . . . . . . . . . 37

4.4 LLL-Reduktion mit Gleitkomma-Arithmetik . . . . . . . . . . . . . . . . . . . . . . 38

4.5 LLL-Reduktion mit ganzzahliger Gram-Matrix . . . . . . . . . . . . . . . . . . . . 40

4.6 LLL-Basen mit großem Approximationsfaktor . . . . . . . . . . . . . . . . . . . . . 40

5 Losen von Subsetsum-Problemen durch kurze Gittervektoren 43

5.1 Das Subsetsum-Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.2 Die Lagarias-Odlyzko-Gitterbasis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.3 Das CJLOSS-Gitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.4 Gitter mit großer Packungsdichte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6 HKZ- und Block-Reduktion von Gitterbasen 49

6.1 HKZ-Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

3

Page 4: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4 INHALTSVERZEICHNIS

6.2 Semi Block 2k-Reduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

6.3 Primal-Duale Reduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

6.4 Block-Korkine Zolotareff Reduktion, BKZ . . . . . . . . . . . . . . . . . . . . . . . 57

6.5 BKZ-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.6 Kritische k-reduzierte Basen fur k = 2, 3 . . . . . . . . . . . . . . . . . . . . . . . . 61

7 NP-vollstandige Gitterprobleme 63

7.1 NP-Vollstandigkeit von Rucksack. . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

7.2 NP-Vollstandigkeit von SVP`∞ ,CVP`∞ ,CVP`2 . . . . . . . . . . . . . . . . . . . . 64

8 Konstruktion eines kurzesten Gittervektors 67

8.1 Algorithmus mit vollstandiger Aufzahlung . . . . . . . . . . . . . . . . . . . . . . . 67

8.2 Algorithmus mit geschnittener Aufzahlung . . . . . . . . . . . . . . . . . . . . . . . 68

9 Gitterreduktion in beliebiger Norm 71

9.1 Grundbegriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

9.2 Reduzierte Basen zur Norm ‖·‖ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

9.3 Konstruktion einer HKZ-reduzierten Gitterbasis . . . . . . . . . . . . . . . . . . . 80

9.4 Alternative zur Reduktion in ‖·‖ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

9.5 Konstruktion eines ‖·‖-kurzesten Gittervektors . . . . . . . . . . . . . . . . . . . . 81

10 Anwendungen der Gitterreduktion 85

10.1 Gitterbasis zu 3-SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

10.2 Angriff auf Damgards Hashfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . 87

10.3 Faktorisieren ganzer Zahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

11 Komplexitat, NP-Vollstandigkeit 95

11.1 NP-Vollstandigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

11.2 Schwierige, algorithmische Gitterprobleme . . . . . . . . . . . . . . . . . . . . . . . 96

12 Grundlagen 101

12.1 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Algorithmenverzeichnis 103

Index 103

Page 5: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 1

Gitter in linearen Raumen

Gitter als Punktmengen des Vektorraums Rm sind Gegenstand der Geometrie der Zahlen, dieMinkowski um 1900 entwickelt hat. Der ganzzahlige Losungsraum eines linearen, reellen Glei-chungssystems ist ein Gitter, der großere reelle Losungsraum ist ein linearer Raum. Gitter sindalso ein diskretes Analogon zu linearen Raumen. Probleme der Linearen Algebra werden durchGitter diskretisiert. Dabei geht es insbesondere um die Konstruktion kleiner Losungen, also kur-zer Gittervektoren. Die alteren Arbeiten von Hermite, Gauß und Korkine - Zolotareff behandelnGitter in der Sprache der quadratischen Formen.

Ein Gitter ist eine diskrete, additive Untergruppen eines reellen Vektorraums Rm. Wir behan-deln Gittterbasen sowie ihre Teilbasen, primitive Systeme, die Gitterdeterminante, das einer Basiszugehorige Orthogonalsystem, isometrische Transformationen und die QR-Zerlegung von Basen.Wir definierenen ferner duale Gitter und duale Basen, Hermite-Normalformen, sowie elementareAlgorithmen zur Reduktion von Gitterbasen. Der Leser sollte mit Linearer Algebra vertraut sein.

Gitter-Notation. Es bezeichne R die Menge der reellen Zahlen und Z die der ganzen Zahlen,fener sei Rm der reelle Vektorraum der Dimension m. Es seien b1, . . . ,bn ∈ Rm beliebige Vektorenund B = [b1, ...,bn] ∈ Rm×n die Matrix mit Spaltenvektoren b1, . . . ,bn. Dann bezeichnet

L(B) = L(b1, . . . ,bn) =def {Bz|z ∈ Zn} =∑ni=1 biZ

die von den Vektoren b1, ...,bn erzeugte additive Untergruppe des Rn. Sind die Vektoren b1, ...,bnlinear unabhangig, so nennen wir L(B) ein Gitter mit Basis b1, ...,bn bzw. B und Dimensionoder Rang dim(L) =def rang(B). Der vom Gitter L = L(B) aufgespannte lineare Raum istspan(L) =def {Bz|z ∈ Rn} =

∑ni=1 biR. Alle Basen B von L erzeugen denselben linearen Raum

span(L) und haben damit denselben Rang.

1.1 Die Geometrie der Gitter

Es sei 〈·, ·〉 : Rm×Rm → R das Standard-Skalarprodukt, 〈x,y〉 = xty. Es bezeichne ‖x‖ =√〈x,x〉

die Lange des Vektors x. Die multiplikative Gruppe GLn(Z) der ganzzahligen n×n-Matrizen mitDeterminante ±1 nennt man die allgemeine lineare Gruppe uber Z. Die Matrizen U ∈ GLn(Z)heißen unimodular. Die Basen B eines Gitters sind die transformierten einer beliebigen BasisB ∈ Rm×n, transformiert durch unimodulare Matrizen.

Satz 1.1.1Die Basen des Gitters L(B) mit B ∈ Rm×n sind genau die Matrizen B U mit U ∈ GLn(Z).

5

Page 6: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Beweis. Sei B eine weitere Basis zu L(B). Dann gibt es ein U ∈ Zn×n mit B = B U, dennjeder Spaltenvektor von B ist ganzzahlige Linearkombination von Spaltenvektoren von B. We-gen rang(B) = rang(B) gilt det U 6= 0, und somit B U−1 = B. Wegen L(B) = L(B) ist U−1

ganzzahlig, und somit |det U| = 1 und U ∈ GLn(Z).

Umgekehrt gilt fur U ∈ GLn(Z) offenbar dass L(B U) = L(B), somit ist B U Basis zu L(B). �

-

- -

� �-

-�

-

-� �

-

-

-

� ��

b

a

p ppp ppppp pppppppp ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp pppppp pppp pp

0

Abbildung 1.1.1: Grundmasche des Gitters mit Basis a,b ∈ R2

Grundmasche, Gram-Matrix, Determinante. Die Grundmasche zur Basis B = [b1, . . . ,bn]ist das Parallelepiped

P = P(B) = {∑ni=1 tibi | 0 ≤ t1, . . . , tn < 1} ⊂ span(L) .

Jeder Punkt x ∈ span(L) hat eine eindeutige Zerlegung x = b + m mit m ∈ P und b ∈ L.Damit ist der Raum span(L) zerlegt in die verschobenen Maschen b + P mit b ∈ L und esgilt span(L) =

⋃b∈L b + P = P + L. Die Gram-Matrix zur Basis B ist die n × n-Matrix

BtB = [〈bi,bj〉]1≤i,j≤n bestehend aus den Skalarprodukten der Basisvektoren.

Die Determinante detL des Gitters L = L(B) ⊂ Rm ist das Volumen von P(B) ⊂ span(L),

detL =def volP(B) = ( det BtB )12 .

Die Gleichheit vol P(B) = ( det BtB )12 gilt offenbar fur Basen B ∈ Rn×n. Sie gilt allgemein weil

sie bei Isometrie erhalten bleibt, siehe Lemma 1.1.3.

Die Determinante det(BtB) ist unabhangig von der Wahl der Basis B von L. Denn seien B, BBasen des Gitters mit B = B U, U ∈ GLn(Z). Wegen |det U| = 1 und der Multiplikativitat der

Determinante gilt det(BtB)12 = det(UtBtBU)

12 = det( BtB )

12 .

Theorem 1.1.2Sei L ⊂ Rm Gitter und Bn(0, r) ⊂ span(L) die Kugel mit Mittelpunkt 0 und Radius r. Dann gilt

limr→∞ | L ∩ Bn(0, r) |/volBn(0, r) = 1/detL(B),

d.h. detL(B) ist der Kehrwert der Dichte der Gitterpunkte.

Beweis. Sei L = L(B) Gitter mit Grundmasche P(B), dim(L) = n. Dann ist span(L) die disjunk-te Vereinigung der um Gitterpunkte b verschobenen Grundmasche, span(L) =

⋃b∈L b + P(B).

Da b + P(B) nur den Gitterpunkt b enthalt, gibt es pro detL Volumeneinheiten genau einenGitterpunkt. Diejenigen Gitterpunkte b, deren Maschen b +P(B) die Kugel Bn(0, r) echt schnei-den, konnen entweder in L ∩ Bn(0, r) oder im Komplement liegen. Dies fuhrt in der Gleichung| L ∩ Bn(0, r) |/volBn(0, r) = 1/detL(B) + O(nr ) zu einem Fehler O(nr ), der proportional zumVerhaltnis Oberflache zu Volumen von Bn(0, r) ist. �

Page 7: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

1.1. DIE GEOMETRIE DER GITTER 7

Beispiel-Gitter. Wir behandeln Gitter zu dichtesten Kugelpackungen. Das erste sukzessive Mini-mum λ1 ist die Lange des kurzesten Gittervektors ungleich 0. Die (Packungs-) Dichte des GittersL mit dim L = n ist4(L) = (λ1/2)nVn/ detL, dabei ist Vn = volBn(0, 1) das Volumen der n-dim.

Einheitskugel: Vn = πn/2/(n/2)! ≈(

2 e πn

)n/2/√πn und (n/2)! = Γ(1 + n/2) fur die Gammafunk-

tion Γ. Das Gitter

An :={

(x0, x1, . . . , xn) ∈ Zn+1∣∣ ∑n

i=0 xi = 0}

fur n = 1, 2, ... hat die Basis

Bn =

−1 0 0 · · · · · · 01 −1 0 0

0. . .

. . .. . .

......

. . .. . .

. . .. . .

......

. . .. . . −1 0

0 0 1 −10 · · · · · · · · · 0 1

∈ Z(n+1)×n.

Offenbar gilt λ1 =√

2, (detAn)2 = n+ 1. Die Dichte ist 4(An) = Vn 2−n/2(n+ 1)−1/2.

Das Schachbrettgitter

Dn := {(x1, . . . , xn) ∈ Zn |∑ni=1 xi = 0 mod 2}

hat die Basis

Bn =

2 1 0 · · · · · · 0

0 1 1. . .

......

. . .. . .

. . .. . .

......

. . . 1 1 00 0 1 10 · · · · · · 0 0 1

∈ Zn×n.

Offenbar gilt λ1 =√

2 und det(Dn) = 2. Die Dichte ist 4(Dn) = Vn 2−n/2−1.

Das folgende Gitter En ist fur n = 0 mod 4 Untergitter von Dn:

En :=

{(x1, . . . , xn) ∈ Zn

∣∣∣∣ ∑ni=1 xi = 0 mod 4 und

xj = xj+1 mod 2 fur 1 ≤ j < n.

}Es hat die Basen

Bn =

4 2 0 · · · 0 1

0 2 2. . .

......

.... . .

. . .. . . 0

......

. . . 2 2 10 0 2 10 · · · · · · 0 0 1

,

4 2 2 · · · 2 10 2 0 · · · 0 1...

. . .. . .

. . ....

......

. . . 2 0 10 0 2 10 · · · · · · 0 0 1

∈ Zn×n.

Offenbar gilt fur n ≥ 8 dass λ1 =√

8 und detEn = 2n, 4(En) = Vn 2−n/2.

Die Gitter E6,E7 sind Untergitter von E8,

E6 := {x ∈ E8 | x6 = x7 = x8 }, E7 := {x ∈ E8 | x7 = x8 }.

Page 8: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

8 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Isometrie, orthogonale Matrix, Aquivalenz. Eine lineare Abbildung T : V →W mit linearenRaumen V,W heißt isometrisch, bzw. eine Isometrie (von V ), wenn T das Skalarprodukt erhalt,d.h. wenn 〈b,b′〉 = 〈T (b), T (b′)〉 fur alle b,b′ ∈ V . Eine Matrix Q ∈ Rm×n, m ≥ n, heißtisometrisch, bzw.Isometrie, wenn die Abbildung x 7→ Qx isometrisch ist. Damit ist Q ∈ Rm×ngenau dann isometrisch, wenn QtQ = In die Einheitsmatrix In ∈ Rn×n ist. Das Produkt vonisometrischen Matrizen ist isometrisch. Eine isometrische Quadratmatrix Q ∈ Rn×n bezeichnetman als orthogonale Matrix. Q ist orthogonal genau dann, wenn Q−1 = Qt. Mit Q ist auch Qt

orthogonal. Damit ist Q ∈ Rm×n genau dann isometrisch, wenn Q durch Hinzunahme von Spaltenzu einer orthogonalen Matrix erganzbar ist.

Zwei Gitter L, L heißen isometrisch, wenn es eine Isometrie T von span(L) gibt mit T (L) = L.Zwei Basen B, B heißen isometrisch, wenn es eine isometrische Matrix Q gibt mit B = QB.Offenbar sind B,B genau dann isometrisch, wenn BtB = BtB. Isometrische Basen B, B erzeugenisometrische Gitter L(B),L(B). Umgekehrt haben isometrische Gitter stets isometrische Basen.

Zwei Gitter L, L heißen aquivalent oder ahnlich, wenn es ein c > 0 gibt so dass L und c Lisometrisch sind, Bez.: L ∼= L. Die Gitter L, cL heißen proportional oder bis auf Skalierung gleich.Es gilt D3

∼= A3. Folgende Basen sind isometrisch:

B :=

[√2 1/

√2

0√

3/2

], B :=

1 01 10 1

, BtB = BtB =

[2 11 2

].

Geometrische Großen sind Großen, die bei isometrischen Abbildungen erhalten bleiben, also Inva-rianten von Isometrien. Volumeninhalte, Determinanten, Skalarprodukte und Langen von Vektorensind geometrische Großen. Ein Gitter L ⊂ Rm heißt vollstandig, wenn dimL = m. VollstandigeGitter reichen fur geometrische Betrachtungen aus, weil jedes Gitter nach Lemma 1.1.3(2) isome-trisch zu einem vollstandigen Gitter ist. Fur kombinatorische und algorithmische Untersuchungenreichen vollstandige Gitter dagegen nicht. Isometrische Abbildungen erhalten nicht die Ganzzah-ligkeit von Vektoren.

Orthogonalsystem, orthogonale Projektion. Zur Basis b1, ...,bn ∈ Rm bezeichneπi : Rm → span(b1, . . . ,bi−1)

⊥die orthogonale Projektion, derart dass fur alle b ∈ Rm

πi(b) ∈ span(b1, . . . ,bi−1)⊥, b− πi(b) ∈ span(b1, . . . ,bi−1) .

Offenbar sind die Vektoren bi := πi(bi) fur i = 1, ..., n paarweise orthogonal. Man berechnet

b1, . . . , bn durch das Gram-Schmidt-Verfahren

b1 := b1, bi := πi(bi) = bi −∑i−1j=1〈bi,bj〉〈bj ,bj〉

bj fur i = 2, 3, . . . , n.

Fur die Gram-Schmidt-Koeffizienten µi,j :=〈bi,bj〉〈bj ,bj〉

gilt insbesondere µi,i = 1 und µi,j = 0 fur

j > i, sowie bi = bi +∑i−1j=1 µi,jbj fur i = 1, ..., n. In Matrizenschreibweise bedeutet dies

[b1, . . . ,bn] = [ b1, . . . , bn] [µi,j ]t1≤i,j≤n.

QR-Zerlegung und geometrische Normalform (GNF). Die QR-Zerlegung B = QR derBasis B = [b1, ...,bn] ∈ Rm×n ist die eindeutige Zerlegung B = QR, so dass Q ∈ Rm×n iso-metrisch ist und R ∈ Rn×n obere Dreiecksmatrix mit positiven Diagonalelementen. Wir nen-nen R die geometrische Normalform (GNF) der Basis, Bez.: R = GNF (B). Es gilt Q :=

Page 9: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

1.2. DUALITAT 9

[b1/‖b1‖, ..., bn/‖bn‖] ∈ Rm×n und fur R = [ri,j ]1≤i,j≤n gilt ri,i = ‖bi‖, µj,i = ri,j/ri,i,

R :=

‖b1‖ 0 · · · · · · 0

0 ‖b2‖ 0 · · · 0...

. . .. . .

. . ....

.... . . ‖bn−1‖ 0

0 · · · · · · 0 ‖bn‖

·

1 µ2,1 µ3,1 · · · µn,10 1 µ3,2 µn,2...

. . .. . .

. . ....

.... . . 1 µn,n−1

0 · · · · · · 0 1

.

Lemma 1.1.31. Zwei Basen B, B sind genau dann isometrisch, wenn GNF (B) = GNF (B), d.h. wenn

BtB = BtB. Insbesondere ist R = GNF (B) eindeutig bestimmt.

2. L(B) ist isometrisch zum vollstandigen Gitter L(R) mit R = GNF (B).

Beweis. 1. Aus BtB = BtB mit QR-Zerlegungen B = QR und B = QR folgt RtR = RtR.Weil R, R obere Dreiecksmatrizen mit positiven Diagonalelementen sind, folgt R = R nach einemelementaren Beweis. Umgekehrt folgt aus GNF (B) = R = GNF (B), dass BtB = RtR = BtB,und damit sind B, B isometrisch.2. Fur jede QR-Zerlegung B = QR sind L(B),L(R) isometrisch mit der Isometrie Q. �

Fur beliebige Basen B = QR gilt det(BtB) = det(RtR) =∏ni=1‖bi‖2. Insbesondere bleibt

detL(B) = (det BtB)12 , bei Isometrie erhalten.

Das orthogonale Gitter. Das zum Vektor a = (a1, . . . , an)t ∈ Zn \ {0} orthogonale Gitter ist

La := span(a)⊥ ∩ Zn = {z ∈ Zn | 〈a, z〉 = 0} .

Wir zeigen detLa = ‖a‖ / ggT(a1, . . . , an).

Offenbar gilt dimLa = n − 1. Sei b2,b3, . . . ,bn eine Basis von La. Wegen span(La) ∩ Zn =La ist diese Basis nach Satz 1.3.2 zu einer Basis von Zn erganzbar. Es gibt ein b1 ∈ Zn mitL(b1, . . . ,bn) = Zn. Die Eintrage des Vektors b1 sind teilerfremd, da b1 ein primitiver Vektor von

Zn ist. Der Anteil von b1, der senkrecht auf La steht, ist 〈b1,a〉‖a‖2 a und hat die Lange |〈b1,a〉|

‖a‖ . Die

Grundmasche P(B) von Zn hat die Grundflache detLa und Hohe |〈b1,a〉|‖a‖ . Die Determinante von

Zn ist vol(Grundmasche) = Flache × Hohe, 1 = detZn = (detLa) |〈b1,a〉|‖a‖ . Also gilt detLa =

‖a‖/| 〈b1,a〉 |.Nach Konstruktion von b1 ist |〈b1,a〉| die kleinste, positive, ganze Zahl in

∑ni=1 Z ai =

Z ggT(a1, . . . , an). Somit gilt | 〈b1,a〉 | = | ggT(a1, . . . , an) | und die Behauptung.

1.2 Dualitat

Duales Gitter. Das duale ( bzw. polare, reziproke) Gitter L∗ zum Gitter L ist

L∗ =def {x ∈ span(L) | 〈x,b〉 ∈ Z fur alle b ∈ L}.

Aufgrund der Identitat (A−1)t = (At)−1 fur A ∈ Rn×n, kurzen wir ab A−t := (A−1)t. Es gilt(AB)−1 = B−1A−1, (AB)t = BtAt und somit (AB)−t = A−tB−t.

Satz 1.2.11. Fur jede Basismatrix mit QR-Zerlegung B = QR ∈ Rm×n gilt L(B)∗ = L(QR−t),

2. dimL∗ = dimL, 3. detL∗ = 1/ detL, 4. (L∗)∗ = L,

5. Ist BtB Gram-Matrix zu L dann ist (BtB)−1 Gram-Matrix zu L∗.

Page 10: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

10 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Die Basis B ist genau dann invertierbar, wenn L(B) vollstandig ist. Fur invertierbare B giltoffenbar L(B)∗ = L(B−t) und ferner (BtB)−1 = B−1B−t.

Beweis. 1. Offenbar gilt fur B := Q R−t wegen QtQ = In und RtR−t = In dass

BtB = (QR)tQ R−t = RtQtQ R−t = In.

Wegen BtB = In liefern die Vektoren b ∈ L(B) alle ganzzahligen Vektoren (〈b1, b〉, ..., 〈bn, b〉)∈ Zn zu den Basisvektoren b1, ...,bn. Damit gilt L∗ = L(B).

2. - 5. Aus dimL = rang(R) = rang(R−1) folgt dimL∗ = dimL. Weiter folgt detL∗ = 1/detLaus detL = det R = 1/det R−t. Mit (R−t)−t = R gilt somit (L∗)∗ = L. Schließlich gilt 5. wegenBtB = R−1R−t = (RtR)−1 = (BtB)−1. �

Duale Basis. Zur Basis b1, . . . ,bn ∈ Rm von L ist die duale Basis b∗1, . . . ,b∗n von L∗ definiert

durch 〈bi,b∗n−j+1〉 = δi,j . Die QR-Zerlegung B = QR liefert die duale Basis B∗ = Q R−tUn. Die

Umkehrmatrix Un =def

1

∈ Rn×n, ist die Matrix mit Einsen in der Gegendiagonalen.

Die QR-Zerlegung der dualen Basis B∗ zu B = QR ist B∗ = (QUn) (UnR−tUn).

Denn zur QR-Zerlegung B = QR ist R−t untere Dreiecksmatrix und UnR−tUn obere Dreiecks-matrix. Der Ubergang von R−t nach UnR−tUn invertiert die Spalten- und die Zeilenreihenfolgein R−t. Wegen Ut

n = Un = U−1n ist QUn isometrisch.

Korollar 1.2.2Zur Basis b1, . . . ,bn mit Orthogonalsystem b1, . . . , bn ist bn/‖bn‖2, . . . , b1/‖b1‖2 das Orthogo-nalsystem der dualen Basis b∗1, . . . ,b

∗n.

Beweis. Es gilt 〈bi, bj〉 ‖bj‖2 = δi,j fur 1 ≤ i, j ≤ n. �

Satz 1.2.3Fur jedes Gitter L und jede Isometrie T von span(L) gilt T (L∗) = T (L)∗.

Beweis. Sei L = L(B) mit QR-Zerlegung B = QR ∈ Rm×n und sei T : x 7→ Qx eine Isometrie.Weil QR−t Basis von L∗ ist, gilt nach Satz 1.2.1

L∗ = L(Q R−t), T (L∗) = L(QQ R−t).

Andererseits ist QQ isometrisch und damit ist (QQ)R die QR-Zerlegung der Basis QQR vonT (L). Es folgt T (L)∗ = L(QQR)∗ = L(QQ R−t) = T (L∗). �

Selbstduale und ganze Gitter. Ein Gitter L heißt selbstdual oder unimodular, wenn L = L∗.Offenbar gilt L = L∗ gdw die Gram-Matrix BtB unimodular ist, d.h., BtB ist ganzzahlig unddet BtB = 1. Die Gitter Zn und die geschichteten Gitter Λ8

∼= E8,√

2Λ24 sind selbstdual.

Ein Gitter L heißt ganz (integral), wenn BtB ganzzahlig ist. Ein Gitter L ist also genau dannganz, wenn L ⊂ L∗.

1.3 Diskretheit, Primitive Systeme

Diskretheit. Eine Menge S ⊂ Rm heißt diskret, wenn S keinen Haufungspunkt in Rm hat.

Fur jede additive Untergruppe G ⊂ Rm sind offenbar folgende Aussagen aquivalent:

Page 11: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

1.3. DISKRETHEIT, PRIMITIVE SYSTEME 11

1. G ist diskret,

2. 0 ist kein Haufungspunkt von G,

3. Es gibt einen kurzesten Vektor in G \ {0}.Jedes Gitter ist diskret. Zum Nachweis der Diskretheit sei ϕ : Rn → span(L(B)) ⊂ Rm die

lineare Abbildung ϕ : z 7→ Bz. ϕ ist ein Isomorphismus der Vektorraume Rn und span(L) mitϕ(Zn) = L. Weil Zn diskret und ϕ−1 stetig auf span(L), ist auch L diskret.

Umgekehrt, ist jede diskrete additive Untergruppe von Rm ein Gitter. Die Diskretheit charak-terisiert also die Gitter unter den additiven Untergruppen des Rm.

Satz 1.3.1Jede diskrete, additive Untergruppe des Rm ist ein Gitter erzeugt von einer Basis.

Beweis. Sei L ⊂ Rm eine diskrete, additive Untergruppe und n die Maximalzahl linear unabhangi-ger Vektoren in L. Offenbar gilt n ≤ m. Durch Induktion uber n zeigen wir die Existenz einerBasis.

n = 1: Sei b ∈ L ein kurzester Vektor mit b 6= 0 (ein solcher Vektor existiert, da 0 keinHaufungspunkt von L ist). Dann gilt L(b) = L.

n > 1: Wahle b1 ∈ L \ {0} derart dass 1k b1 6∈ L fur alle k ≥ 2. Offenbar gilt L(b1) =

L∩span(b1). Betrachte die orthogonale Projektion π : Rm → span(b1)⊥

mit π(b) = b− 〈b1,b〉〈b1,b1〉 b1.

Die Induktionsbehauptung ergibt sich aus den beiden Aussagen

1. π(L) ist diskret und ein Gitter vom Rang n− 1,

2. Fur jede Basis π(b2), . . . , π(bn) von π(L) mit b2, . . . ,bn ∈ L gilt L = L(b1, . . . ,bn).

Beweis von 1. Wir zeigen, dass 0 kein Haufungspunkt von π(L) ist. Angenommen, die paarweiseverschiedenen Vektoren π(y(i)) mit y(i) ∈ L konvergieren gegen 0. Wir konstruieren unendlich vielekurze Vektoren in L, im Widerspruch zur Diskretheit von L.

Zu den Vektoren π(y(i)) erhalten wir kurze π-Urbilder y(i) ∈ L nach der Vorschrift y(i) :=y(i)−

⌈⟨y(i),b1

⟩/〈b1,b1〉

⌋b1. Dabei bezeichnet drc := dr− 1

2c die nachste ganze Zahl zur reellen

Zahl r. Offenbar gilt ‖y(i) − π(y(i))‖ ≤ 12 ‖b1‖. Wegen lim

i→∞‖π(y(i))‖ = 0 gibt es unendlich viele

Vektoren y(i) ∈ L mit ‖π(y(i))‖ ≤ ‖b1‖, im Widerspruch zur Diskretheit von L.

Beweis zu 2. Die Maximalzahl der linear unabhangigen Vektoren in π(L) ist n − 1. NachInduktionsvoraussetzung ist π(L) ein Gitter vom Rang n − 1. Sei π(b2), . . . , π(bn) eine Basisvon π(L) mit b2, . . . ,bn ∈ L. Die Vektoren b1, ...,bn sind linear unabhangig. Wir zeigen, dassL ⊂ L(b1, . . . ,bn). Zu beliebigem b ∈ L gilt π(b) ∈ π(L) = L (π(b2), . . . , π(bn)), somit gibtes ein b ∈ L(b2, . . . ,bn) mit π(b) = π( b ). Es gilt b − b ∈ span(b1). Nach Wahl von b1 giltL(b1) = L ∩ span(b1) und somit b− b ∈ L(b1). Es folgt b ∈ L(b1, . . . ,bn). �

Primitive Systeme. Wir charakterisieren Teilbasen b1, ...,bk mit k ≤ n von Gitterbasen b1, ...,bn.Offenbar gilt fur Teilbasen b1, ...,bk dass

1. b1, . . . ,bk sind linear unabhangig, 2. span(b1, . . . ,bk) ∩ L = L(b1, . . . ,bk).

Eine Menge von Gittervektoren b1, ...,bk nennt man ein primitives System zum Gitter L, wenn1. und 2. gilt. Ein einzelner Vektor b ∈ L ist primitiv, wenn 1

kb 6∈ L fur alle k ∈ Z \ {0}.

Satz 1.3.2Genau dann konnen die Gittervektoren b1, . . . ,bk zu einer Basis von L erganzt werden, wenn sieein primitives System zu L bilden.

Page 12: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

12 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Beweis. Teilbasen bilden offenbar primitive Systeme. Sei nun umgekehrt b1, . . . ,bk ein primitivesSystem und π : span(L) → span(b1, . . . ,bk)

⊥die orthogonale Projektion. Aus dem Beweis zu

Satz 1.3.1 folgt, dass π(L) ein Gitter der Dimension n − k ist. Das Gitter π(L) habe die Basisπ(bk+1), . . . , π(bn) mit bk+1, . . . ,bn ∈ L.

Wir zeigen, dass b1, ...,bn Basis von L ist. Nach Konstruktion sind b1, ...,bn linear unabhangig.Sei b ∈ L. Wegen π(b) ∈ L(π(bk+1), . . . , π(bn)) gibt es ein b ∈ L(bk+1, . . . ,bn) mit π( b ) =π(b), also ist b− b ∈ span(b1, . . . ,bk). Weil b1, . . . ,bk nach Voraussetzung ein primitives Systembildet, gilt b− b ∈ L(b1, . . . ,bk). Somit gilt b ∈ L(b1, . . . ,bn) und b1, ...,bn ist Basis von L. �

1.4 Elementare Reduktionsverfahren zur `2-Norm || ||

Ziel der Reduktionsverfahren sind Gitterbasen bestehend aus kurzen Gittervektoren.

Definition 1.4.1Die Basis b1, . . . ,bn ist langenreduziert, wenn |µi,j | ≤ 1

2 fur 1 ≤ j < i ≤ n.

Fur jede langenreduzierte Basis b1, . . . ,bn gilt wegen bi = bi +∑i−1j=1 µi,jbj und |µi,j | ≤ 1

2

‖bi‖2 ≤ ‖bi‖2 + 14

∑i−1j=1‖bj‖2 fur i = 1, . . . , n.

Algorithmus 1.4.1 zur Langenreduktion

EINGABE : Basis b1, . . . ,bn ∈ Rm

FOR i = 2, . . . , n DO

FOR j = i− 1, . . . , 1 DO bi := bi − dµi,jc · bj

AUSGABE : langenreduzierte Basis b1, . . . ,bn

Korrektheit.1. Der Schritt bi := bi − dµi,jcbj bewirkt, dass µneu

i,j := µalti,j − dµalt

i,j cµj,j = µalti,j − dµalt

i,j c.2. Insbesondere gilt

∣∣µneui,j

∣∣ ≤ 12 , und die µi,ν bleiben fur ν > i unverandert.

Die Orthogonalvektoren bleiben erhalten. Die Langenreduktion ist nur eine schwache Reduktion.

Definition 1.4.2Die Vektoren b1, . . . ,bn ∈ Rn \ {0} nennen wir paarweise reduziert, wenn

1.| 〈bi,bj〉 |‖bj‖2 ≤ 1

2 fur 1 ≤ j < i ≤ n, 2. ‖b1‖ ≤ ‖b2‖ ≤ · · · ≤ ‖bn‖ .

Die Eigenschaft 1. bezieht sich nicht auf den Gram-Schmidt-Koeffizienten µi,j =〈bi,bj〉‖bj‖2

. Sie ist

aquivalent zu ‖bi‖ ≤ ‖bi ± bj‖ fur 1 ≤ j < i ≤ n, denn wegen

‖bi ± bj‖2 = 〈bi ± bj ,bi ± bj〉 = ‖bi‖2 ± 2 〈bi,bj〉+ ‖bj‖2 gilt

‖bi‖2 ≤ ‖bi ± bj‖2 ⇐⇒ ±〈bi,bj〉 ≤ 12 ‖bj‖

2 ⇐⇒ |〈bi,bj〉| ≤ 12 ‖bj‖

2.

Korrektheit. Algorithmus 1.4.2 terminiert und bei Abbruch des Verfahrens sind die Vektorenpaarweise reduziert. Bei jedem Reduktionsschritt wird namlich der Vektor bi echt kleiner, und dieubrigen Vektoren bleiben unverandert. Somit hat jedes Gitter eine paarweise reduzierte Basis.

Die Laufzeit der paarweisen Reduktion ist nicht polynomial. Aber es gibt hochstens polynomialviele Schritte bi := bi − drcbj , welche ‖bi‖ um mindestens ε‖bi‖ fur festes ε > 0 erniedrigen.

Page 13: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

1.5. HERMITE NORMALFORM, UNTERGITTER 13

Algorithmus 1.4.2 zur paarweise Reduktion

EINGABE : Vektoren b1, . . . ,bn ∈ Zm (moglicherweise linear abhangig)

1. Ordne b1, . . . ,bn so, dass 1 ≤ ‖b1‖ ≤ · · · ≤ ‖bn‖2. FOR i = 1, . . . , n DO

FOR j = 1, . . . , i− 1 DO

r := 〈bi,bj〉 ‖bj‖−2

IF |r| > 12 THEN bi := bi − drcbj

IF bi = 0 THEN [entferne bi, n := n− 1, GO TO 1.]

AUSGABE : paarweise reduzierte Vektoren b1, . . . ,bn (∑ni=1 biZ bleibt erhalten)

Satz 1.4.3Algorithmus 1.4.2 sichert nach hochstens log1/(1−ε)(

∏ni=1 ‖bi‖) ≤ n log1/(1−ε)M Schritten

bi := bi − drcbj mit ‖bi‖neu ≤ ‖bi‖(1− ε) dass ‖bi‖(1− ε) ≤ ‖bi ± bj‖ fur 1 ≤ j < i ≤ n.

1.5 Hermite Normalform, Untergitter

Ganzzahlige und rationale Matrizen haben eine eindeutig bestimmte Hermite-Normalform (HNF).Fur reelle Matrizen und relle Gitterbasen gilt dies nicht. Aus der HNF einer TransformationsmatrixT ∈ Zn×n kann man detL(B)/ detL(BT) = |det T| ablesen.

Definition 1.5.1Eine Matrix A = [aij ] ∈ Rm×n mit n ≤ m ist in Hermite-Normalform (kurz HNF), wenn

1. aij = 0 fur j > i, d.h. A ist eine untere Dreiecksmatrix.

2. aii > 0 fur i = 1, 2, . . . ,m.

3. 0 ≤ aij < aii fur j < i.

Die Hermite-Normalform ist eine reduzierte Basis, in dem Sinne dass der i-te Basisvektor diei-te Koordinate minimiert unter der Bedingung, dass seine ersten i−1 Koordinaten Null sind. Fureine HNF A = [aij ] = [a1, ...,an] mit Spaltenvektoren a1, ...,an ist aii also die absolut kleinstei-te Koordinate 6= 0 der Vektoren in L(ai, ...,an). Dabei ist L(ai, ...,an) das Teilgitter, dessenVektoren in den ersten i− 1 Koordinaten Null sind.

In der Definition der HNF kann man statt einer ’unteren’ Dreiecksmatrix ebenso gut eine’obere’ Dreiecksmatrix verlangen. Der zulassige Bereich der Zahlen aij in 3. ist ein Intervall derLange |aii|, die Lage dieses Intervals ist willkurlich. In [DKT87] fordern die Autoren

aij ≤ 0 und |aij | < aii fur j < i.

A. Paz und C.P. Schnorr [PS87] fordern, dass die Elemente links der Diagonalen betragsmaßigminimal sind:

|aij | < 12 |aii| fur j < i.

Die verschiedenen Varianten von Hermite-Normalformen sind einfach ineinander uberfuhrbar. Istz.B. A ∈ Rm×n untere Dreiecksmatrix, dann ist UmAUn obere Dreiecksmatrix fur die MatrizenUm, Un mit Einsen auf der Gegendiagonalen.

Nach C. Hermite [He1850] gilt folgender Satz.

Page 14: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

14 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Satz 1.5.2 (Hermite 1850)Zu jeder Matrix A ∈ Qm×n mit Rang(A) = n gibt es genau eine HNF A U mit U ∈ GLn(Z).

Beweis. Konstruktion der HNF. Sei L(A) ⊂ Rm das Gitter zur Basis A. Konstruiere die Vektorena′1, ....,a

′n ∈ L(A), [a′1, ....,a

′n] = [a′ij ] ∈ Rm×n so dass

a′ii = min{ |ai| | (a1, ..., an)t ∈ L(A), a1 = · · · = ai−1 = 0, ai 6= 0}.

Weil A rational ist, existiert das Minimum der Absolutwerte |ai|. Wegen der Dreiecksform von[a′1, ....,a

′j ] ist a′1, ...,a

′j ein primitives System, und a′1, ...,a

′n ist Basis zu L(A). a′ := [a′1, ...,a

′n]

hat die HNF-Eigenschaften 1. und 2. Um die HNF-Eigenschaft 3. zu sichern, transformiert mana′2, ...,a

′n gemaß

a′i := a′i − da′ij/a′jjea′j fur j = 1, ..., i− 1.

Eindeutigkeit der HNF. Die Diagonalelemente a′ii der HNF sind offenbar durch obige Formeleindeutig bestimmt. Angenommen 0 < a′ij < a′′ij < a′ii sind verschiedene Elemente zweier HNF’smit j < i und i ist minimal gewahlt. Dann gilt fur j′ < j dass a′ij′ = a′′ij′ und es folgt |a′ij−a′′ij | ≥ a′ii,im Widerspruch zu |a′ij − a′′ij | < a′ii. �

Reelle Matrizen haben im allgemeinen keine HNF, weil die Koordinaten der Gittervektorenkein absolutes Minimum annehmen mussen. Die Basis

A :=

[1√

23 4

]∈ R2×2.

erzeugt ein Gitter L(A) mit absolut beliebig kleinen ersten Koordinaten der Gittervektoren.

Teilgitter, Untergitter. Sind L′,L Gitter mit L′ ⊂ L, so heißt L′ Teilgitter von L. Haben L′und L gleichen Rang, dann heißt L′ Untergitter von L.

Die Basis A =

[2 00 2

]erzeugt das Untergitter 2Z2 von Z2. Die Faktorgruppe Z2/L(A) besteht

aus den vier Aquivalenzklassen, [Zn : L(A)] = 4.

s s s ssss

sss

sss

sss

(0,0) (2,0) (4,0) (6,0)

(0,2)

(0,4)

(0,6)

(2,2)

(2,4)

(2,6)

(4,2)

(4,4)

(4,6)

(6,2)

(6,4)

(6,6)

Abbildung 1.5.1: Untergitter L(A) von Z2

Lemma 1.5.3Sei L = L(B) Gitter und L′ = L(BT) Untergitter von L mit T ∈ Zn×n. Dann giltdetL′ = detL · |det T|.

Page 15: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

1.5. HERMITE NORMALFORM, UNTERGITTER 15

Index des Untergitters. Die ganze Zahl |det T| = detL′detL aus Lemma 1.5.3 ist die Elementzahl

und ’Ordnung’ der Faktorgruppe L/L′, genannt der Index des Untergitters L′ in L, Bez.: [L : L′].Sei L′ = L(BT) Untergitter von L = L(B) und T = [tij ] ∈ Zn×n eine obere (bzw. untere)

Dreiecksmatrix. Dann gilt

[L : L′] =detL′

detL= det T =

∏ni=1 |tii| .

Insbesondere gilt L′ = L genau dann wenn |det T| = 1.

Korollar 1.5.4Zu a = (a1, . . . , an) ∈ Zn \ {0}, b ∈ N hat das Gitter La,b = {x ∈ Zn | xta = 0 (mod b)} dieDeterminante detLa,b = b/ ggT(a1, . . . , an, b) .

Beweis. La,b ⊂ Zn ist offenbar Gitter der Dimension n. Sei O.B.d.A. ggT(a1, ..., an, b) = 1, denndurch Herausdividieren des ggT aus a1, ..., an, b andert sich La,b nicht. Die Faktorgruppe Zn/La,b

besteht den Restklassen

Ri :={x ∈ Zn

∣∣ xta = i (mod b)}

fur i = 0, ..., b− 1.

Offenbar sind diese Restklassen nicht leer. Es folgt [Zn : La,b] = b und damit detLa,b = b. �

Satz 1.5.5Sei L′ ein Untergitter von L = L(B). Dann gibt es eine untere (bzw. obere) Dreiecksmatrix T ∈Zn×n mit L′ = L(BT). Umgekehrt gibt es zu jeder Basis B′ von L′ eine Basis B von L und eineuntere (bzw. obere) Dreiecksmatrix T ∈ Zn×n mit B′ = B T.

Beweis. Wir weisen die unteren Dreiecksmatrizen nach, Die oberen Dreiecksmatrizen erhalt mandurch Transformation mit Umkehrmatrizen Un,Um. Sei B′ eine beliebige Basis zu L′ und B′ =B T mit T ∈ Zn×n. Dann gibt es ein S ∈ GLn(Z) so dass T S eine HNF von T ist. Es folgtB′S = B(TS) und TS ist untere Dreiecksmatrix. Also ist die Basis B′ := B′ S von L′ von dergewunschten Form.

Ist umgekehrt B′ gegeben und B von der Form B′ = B T, dann wahlt man S ∈ GLn(Z) so dassS T eine untere Dreiecksmatrix ist. Zur Basis B von L ist dann B S−1 eine Basis der gewunschtenForm. �

Page 16: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

16 KAPITEL 1. GITTER IN LINEAREN RAUMEN

Page 17: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 2

Minkowski-Satze,Hermite-Konstante

Die sukzessiven Minima λ1 ≤ ... ≤ λn eines Gitters der Dimension n sind wichtige geometrischeInvarianten. Eine Gitterbasis b1, ...,bn gilt als “stark reduziert“, wenn ‖bi|| nicht viel grosser istals λi

√i. Fur Gitter L der Dimension n gilt λ2

1 ≤ γn det(L)2/n, dabei ist γn die Hermite-Konstante.

2.1 Sukzessive Minima und erster Satz von Minkowski

Sukzessive Minima. Eine allgemeine Norm ‖·‖ : Rm → R≥0 ist durch ihren EichkorperK = {x ∈ Rm | ‖x‖ ≤ 1} definiert.K ⊂ Rm ist eine beliebige kompakte, konvexe, nullsymmetrischeMenge. Es gilt ‖x‖ = min{r ∈ R≥0 |x ∈ rK}. Der Eichkorper der `2-Norm ist die Einheitsku-gel Bm(0, 1) der Dimension m, der Eichkorper der sup-Norm `∞ = || | ∞ ist der Wurfel mitSeitenlangen 2.

Die sukzessiven Minima λ1, . . . , λn des Gitters L ⊂ Rm der dimL = n zur Norm ‖·‖ sind

λi = λi(L) := inf

{r > 0

∣∣∣∣ ∃ linear unabhangige a1, . . . ,ai ∈ Lmit ‖a1‖, ..., ‖ai‖ ≤ r.

}.

Offenbar gilt λ1 ≤ λ2 ≤ · · · ≤ λn. Die Definition der sukzessiven Minima geht auf H. Minkowskizuruck. Wenn nicht anders vermerkt bezieht sich λi stets auf die Euklidische Norm, λi,∞(L) beziehtsich auf die sup-Norm ‖ ‖∞. Die sukzessiven Minima zur Euklidischen Norm sind geometrischeInvarianten, sie bleiben bei isometrischen Transformationen erhalten. Die Große λ1,∞(L) ist keinegeometrische Invariante. Fur Gitter L ⊂ Rm und x ∈ Rm gilt ‖x‖∞ ≤ ‖x‖ ≤

√m ‖x‖∞.

Die sukzessiven Minima sind Maßstab fur die Reduziertheit einer Gitterbasis. Eine Basis giltals

”reduziert“, wenn die Großen ‖bi‖ /λi fur i = 1, . . . , n

”klein“ sind. Fur reduzierte Basen sind

deren Vektoren nahezu orthogonal. Im allgemeinen gibt es keine Basis b1, . . . ,bn mit ‖bi‖ = λifur i = 1, . . . , n. Fur das Gitter L := Zn + Z ( 1

2 , . . . ,12 )t gilt offenbar λ1 = λ2 = · · · = λn = 1 fur

n ≥ 4. Fur n ≥ 5 gibt es aber keine Basis bestehend aus Vektoren der Lange 1.

Lemma 2.1.1 (Blichfeldt 1914)Sei L Gitter und S ⊂ span(L) kompakt mit vol(S) ≥ detL. Dann gibt es ein b ∈ L \ {0} mitS ∩ (S + b) 6= ∅, d.h. es existieren x,y ∈ S mit x− y ∈ L \ {0}.

Beweis. Zu i ∈ N sind die Mengen(1 + 1

i

)S + b mit b ∈ L nicht paarweise disjunkt, weil das

Volumen von(1 + 1

i

)S das der Grundmasche ubersteigt. Zu jedem i gibt es ein bi ∈ L \ {0}, so

dass der folgende Durchschnitt nicht leer ist und somit ein yi enthalt:

17

Page 18: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

18 KAPITEL 2. SUKZESSIVE MINIMA UND MINKOWSKI-SATZE

yi ∈(1 + 1

i

)S ∩

[(1 + 1

i

)S + bi

]Da S kompakt ist, hat die Folge (yi)i∈N einen Haufungspunkt y ∈ S. Fur jede Teilfolge

(yα(i)

)i∈N

die gegen y konvergiert ist die Folge(bα(i)

)i∈N ⊂ L beschrankt und hat einen Haufungspunkt

b ∈ L \ {0}. Es folgt: y ∈ S ∩ (S + b). �

Satz 2.1.2 (Minkowski’s Convex Body Theorem)Sei L ⊂ Rn Gitter der dimL = n und S ⊂ span(L) konvex, kompakt und nullsymmetrisch.Wenn vol(S) ≥ 2n det(L) dann gilt |S ∩ L| ≥ 3.

Beweis. Fur S′ := 12S gilt vol(S′) = 2−n vol(S) ≥ detL. Nach Lemma 2.1.1 gibt es x,y ∈ S′, x 6=

y so dass x−y ∈ L. Somit gilt 2x, 2y ∈ S und −2x ∈ S weil S nullsymmetrisch ist. Weil S konvexist folgt ±(2x− 2y)/2 = ±(x− y) ∈ S. �

Satz 2.1.3Sei L ⊂ Rn Gitter der dimL = n und K ⊂ Rn Eichkorper einer beliebigen Norm ‖ ‖. Dann gilt

λ1,‖ ‖(L) ≤ 2 vol(K)−1/n

detL1/n.

Beweis. S := (detL/ vol(K))1/nK ist konvex und nullsymmetrisch mit vol(S) = detL. NachLemma 2.1.1 gibt es ein b ∈ L \{0} mit S∩(S+b) 6= ∅. Sei y im Durchschnitt, also y,b−y ∈ S.Die Dreiecksungleichung liefert ‖b‖ ≤ ‖b− y‖+ ‖y‖ ≤ 2 (detL/ vol(K))1/n. �

Das Volumen Vn der n-dimensionalen Einheitskugel Bn(b, 1) = {x ∈ Rn : ‖x− b‖ ≤ 1} ist

Vn := πn2 /Γ(1 + n

2 ) = ( 2 eπn )

n2 ( 1

πn )1/2(1−Θ( 1n )).(2.1)

Dabei gilt Γ(1 + n2 ) = (n2 )!, Γ(1 + x) = x Γ(x), ( 1

2 )! =√π/2 fur n ∈ N, x ∈ R. Fur x ∈ R>0 gilt

nach Stirling Γ(1 + x) =√

2πx (xe )x (1 + 112x + Θ( 1

x2 )) [Knuth 71, Sektion 1.2.5, 1.2.11.2].

Nach Satz 2.1.3 gilt damit fur Gitter der Dimension n dass λ21(L) ≤ 2n+o(n)

eπ (detL)2/n.

Im Falle der Norm `∞ mit Eichkorper K∞ gilt in Satz 2.1.3 dass vol(K∞) = 2n. Damit liefert

Satz 2.1.3 die scharfe Schranke λ1,∞(L) ≤ (detL)1n . Es gilt λ1,∞(Zn) = 1 = (detZn)

1n .

Satz 2.1.4 (Dirichlet 1842)Zu beliebigen reellen Zahlen α1, . . . , αn und ε ∈

]0, 1

2

[gibt es ganze Zahlen p1, . . . , pn und q mit

0 < q ≤ ε−n, so dass |αi − pi/q | ≤ ε/q fur i = 1, . . . , n.

Beweis. Eine Losung (p1, ..., pn, q) findet man durch Konstruktion eines kurzesten Vektors in dersup-Norm `∞ zum Gitter L(B) mit folgender Gitterbasis

B =

1 0 · · · 0 α1

0 1. . .

... α2

.... . .

. . . 0...

0 0 1 αn0 · · · · · · 0 εn+1

∈ R(n+1)2 .

Wegen det B = εn+1 gilt nach Satz 2.1.3 λ1,∞(L(B)) ≤ (det B)1

n+1 = ε. Fur den ‖ ‖∞-kurzestenGittervektor B(p1, ..., pn, − q)t gilt also |pi − αiq | ≤ ε und |qεn+1| ≤ ε und somit |q| ≤ ε−n. �

Page 19: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

2.2. PACKUNGSDICHTE, HERMITE-KONSTANTE, KRITISCHE GITTER 19

Dirichlet bewies Satz 2.1.4 inkonstruktiv mit dem Schubfachprinzip.

Satz 2.1.5Sei L Gitter der Dimension n und b1, ..., bn ∈ L linear unabhangig mit ||bi|| = λi fur i = 1, ..., n.Dann gibt es eine Basis b1, ...,bn von L so dass fur i = 1, ..., n

1. L(b1, ...,bi) = span(b1, ..., bi) ∩ L,

2.(

bi = bi oder ||πi(bi)|| ≤ 12λi

)und ||bi||2 ≤ max(1, i4 )λ2

i .

Damit hat jedes Gitter L eine Basis b1, ...,bn so dass ||bi|| ≤ λi√i/4 fur i = 4, .., n. Insbesondere

gilt ||bi|| = λi fur i = 1, .., 4 und die Schranke ||bi|| ≤ λi√i/4 ist scharf fur i > 4.

Beweis durch Induktion nach n. Die Induktionsannahme fur n− 1 sei fur b1, ...,bn−1 ∈ L erfullt.Wir konstruieren bn. Im Fall

L ∩ P(b1, ...,bn−1, bn) = {0}

gilt L(b1, ...,bn−1, bn) = L und damit gilt die Induktionsbehauptung fur bn := bn. Andernfallswahlt man fur bn eine Minimalstelle von

||πn(b)|| 6= 0 fur b ∈ L ∩ P(b1, ...,bn−1, bn).

Diese Wahl von bn minimiert volP(b1, ...,bn−1,bn) sowie detL(b1, ...,bn). Somit sichert sie dassL(b1, ...,bn) = L, denn fur echte Untergitter L ⊂ L gilt det L > detL.

Weil ||πn(bn)|| minimal ist mit ||πn(bn)|| 6= 0 folgt

||πn(bn)|| ≤ 12 ||bn|| =

12λn.

Schliesslich reduzieren wir bn mod bi fur i = n − 1, ...., 1 so dass ||πi(bn)|| ≤ 12 ||bi|| fur die

orthogonale Projektion πi : span(b1, ..., bi) → span(b1, ..., bi−1)⊥. Im Fall bi = bi sichert diesπi+1(bn) = πi(bn). Es folgt

||bn||2 ≤∑ni=1 ||πi(bn)− πi+1(bn)||2 ≤ 1

4

∑ni=1 ||bi||2 = 1

4

∑ni=1 λ

2i ≤ n

4λ2n.

Dabei ist πi(bn)− πi+1(bn) der Orthogonalanteil von bn in span(b1, ..., bi)∩ span(b1, ..., bi−1)⊥.Im Fall bi = bi ist dieser Anteil 0. Diese Anteile sind fur alle i paarweise orthogonal. �

2.2 Packungsdichte, Hermite-Konstante, kritische Gitter

Gitterartige Kugelpackung. Die gitterartige Kugelpackung⋃

b∈L Bn(b, λ1/2) zum Gitter Lbesteht aus allen Kugeln Bn(b, λ1/2) mit Radius λ1/2 und Mittelpunkten b ∈ L.

Dichte des Gitters. Die (Packungs-)Dichte 4(L) des Gitters L ist der Volumenanteil derKugelpackung

⋃b∈L Bn(b, λ1/2) von span(L) und 4n das Supremum fur alle L mit dimL = n:

4(L) =def λn1 2−nVn/ detL, 4n =def sup{4(L) | dimL = n}.

4(L) ist invariant gegen Aquivalenz, bleibt also bei Isometrie und Skalierung von L erhalten. Furkonstante n und det(L) ist die Dichte genau dann maximal, wenn λ1 maximal ist.

Der analoge Kode zum Gitter L. Nachrichten werden in Gittervektoren b ∈ L kodiert. DieKodeworte b ∈ L werden mit reellen Fehlervektoren e ∈ span(L) ubertragen. Ein gestortesKodewort b + e ist genau dann eindeutig dekodierbar, wenn ‖e‖ < λ1/2. Dann ist b namlichnachster Gittervektor zu b + e. Mit der Dichte 4(L) von L wachst also das Korrekturpotentialdes analogen Kodes.

Page 20: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

20 KAPITEL 2. SUKZESSIVE MINIMA UND MINKOWSKI-SATZE

Hermite-Konstante. Die Hermite-Konstante γn der Dimension n ist

γn =def sup{λ1(L)2/(detL)2n | dimL = n} = 4 (4n/Vn)2/n.

Es genugt das Supremum uber die vollstandigen Gitter L mit λ1(L) = 1 (bzw. mit detL = 1) zunehmen, denn γ(L) bleibt bei Aquivalenz erhalten. Weil beschrankte Basen dieser Gitter uber einenkompakten Bereich des Rn×n variieren, wird das Supremum angenommen, ist also ein Maximum.

Global extreme, kritische Gitter. Ein Gitter L mit dim(L) = n heißt global extrem oderkritisch, wenn 4(L) = 4n.

Extreme Gitter. Ein Gitter L heißt extrem, wenn 4(L) bei infinitesimal kleiner Veranderungder Basisvektoren nicht zunimmt. Diese Eigenschaft hangt nicht von der Wahl der Basis von Lab. Jedes kritische Gitter ist extrem, aber die Umkehrung gilt nicht.

Satz 2.2.1γn = 4 (4n/Vn)2/n < 4

π Γ(1 + n

2

) 2n < 2

eπ (n+ ln(πn)) fur n > n0.

Beweis. Sei L Gitter mit dim(L) = n und γ(L) = γn, 4(L) = 4n sowie detL = 1. NachAbbildung 2.2.1 ergeben die 2n Kugelteile in der Grundmasche des Gitters zusammen gerade eineKugel vom Radius λ1/2. Es folgt Vn(λ1/2)n = 4n < 1 somit λ1 = 2 (4n/Vn)1/n. Nach Satz

2.1.3 und (2.1) gilt γn = λ21 detL = 4 (4n/Vn)2/n < 4

π Γ(1 + n

2

) 2n = 2n

eπ (πn)1n (1 + Θ( 1

n )). Aus

1 + ε := (πn)1/n erhalt man (1 + ε)n = πn und n ln(1 + ε) = ln(πn), also nε ≈ ln(πn) und somit

n(πn)1n ≈ n+ ln(πn). �

q qqq]

λ1/2 p p p p p p p p p p p p p p ppp ppppp ppppppp pppppppppp pppppppppppp ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp ppppppppppppp ppppppppppppp pppppppppppp pppppppppppp ppppppppppp pppppppppp ppppppppp pppppppp ppppppp pppp p p p p p p p p p p p p p p p

ppppppppppppp pppppppppppppp pppppppppppppp ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp pppppppppp pppppppp pppppp ppp ppp pppppp pppppppp ppppppppp pppppppppp ppppppppppp pppppppppppp

Abbildung 2.2.1: Veranschaulichung von Vn(λ1/2)n < detL

Der Beweis von Satz 2.2.1 benutzt nur 4n < 1. Blichfeldt [Bli14] zeigt 4n ≤ (√

2 + o(1))−n

und damit die bessere Schranke

γn ≤ 2π Γ(2 + n

2

) 2n ≤ 1

eπ (n+ ln(πn)).(2.2)

Z.B. gilt γ10 ≤ 2π (6!)0,2 ≈ 2, 373. Kabatiansky, Levenshtein [KaLe78] zeigen dass

γn ≤ 1,7442eπ n fur n ≥ n0.

Satz 2.2.2 (Minkowski, Hlawka)

4n ≥∑∞k=1 k

−n2−n+1 > 2−n+1 und γn ≥ n+ln(πn)2eπ (1 + Θ(n−2)).

Minkowski bewies 1905 inkonstruktiv dass 4n > 2−n+1, siehe auch [Hlawka, 44].Explizite Gitter mit Dichte 4(L) > 2−n+1 sind nur fur wenige Dimensionen n < 200 bekannt.Aus 4n > 2−n+1 folgt nach (2.1)

γn = 4(4n/Vn)2/n > (2/Vn)2/n = n2eπ (πn)1/n(1 + Θ(n−2)) = n+ln(πn)

2eπ (1 + Θ(n−2)).

Page 21: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

2.2. PACKUNGSDICHTE, HERMITE-KONSTANTE, KRITISCHE GITTER 21

Umgekehrt zeigt die Gauß’sche Volumen-Heuristik dass γn . V−2/nn ≈ n

2eπ . Fur Gitter L ⊂ Rnmit dimL = n, detL = 1 und zufallige t ∈ Rn gilt namlich:

E[|L ∩ Bn(t, (2/Vn)1/n)|] = Vn(2/Vn)n/n = 2.

Verhalt sich t = 0 wie ein zufalliges t dann gilt λ1(L) ≤ (2/Vn)1/n, also γn . (2/Vn)2/n ≈n

2eπ (eπ)1/n.

Vermutlich gilt also γn ≈ n2eπ (4eπ)1/n und somit4n = 2−nnO(1). Vermutlich sind die Hermite-

Konstanten γn als Funktion in n monoton wachsend. Weder dies noch die Existenz des Grenzwerteslimn→∞ γn/n ist bewiesen.

n 2 3 4 5 6 7 8 24

γnn43 2 4 8 26/3 26 28 248

4n 0, 907 0, 740 0, 617 0, 465 0, 373 0, 295 0, 254 V24 ≈ (eπ)11.5

1212

δ 1/2√

3 1/4√

2 1/8 1/8√

2 1/8√

3 1/16 1/16 1

krit. Gitter A2 A3∼= D3 D4 D5 E6 E7 E8 Leech G. Λ24

Tabelle 2.2.2

Die bekannten Hermite-Konstanten. Die Hermite-Konstanten γ3, γ4, γ5 wurden von Gauß(γ3) sowie Korkine und Zolotareff (γ4, γ5) [KZ1872, KZ1873, KZ1877] bestimmt. Blichfeldt [Bli35]hat γ6, γ7, γ8 ermittelt. Blichfeldts Beweis ist kompliziert und wurde von Watson [W66] und Vet-chinkin [V82] bestatigt. Fur Dimension n ≤ 8 sind die kritischen Gitter bis auf Aquivalenz (Iso-metrie und Skalierung) eindeutig bestimmt. Dies wurde von Barnes [Bar59] und Vetchinkin [V82]bewiesen. Cohn [Co05] hat gezeigt, dass das Leech-Gitter Λ24 kritisch und bis aud Aquivalenz ein-deutig ist. Die Tabelle 2.2.2 zeigt die bewiesenen γnn , die gerundeten maximalen Dichten 4n, sowiekritische Gitter. Zu Dn,En siehe Seite 7. Chaundy (1946) fand geschichtete Gitter der Dimension9 und 10 so dass γ9

9 ≥ 29 und γ1010 ≥ 210/3. Er zeigte aber nicht, dass diese Gitter kritisch sind.

Einfache GNF’s und Gram-Matrizen der kritischen Gitter. Die kritischen Gitter derDimension n = 1, ..., 8, skaliert zu λ1 =

√2 haben Basen mit einfacher GNF Rn = [r1, ..., rn]:

R8 :=√

2

1 12

12 0 0 0 0 0

0 12

√3 1

2√

31√3

0 0 0 0

0 0√

23

1√2·3

12

√32 0 0 0

0 0 0 1√2

12√

21√2

0 0

0 0 0 0 1√2

12√

21√2

0

0 0 0 0 0 12

√32

1√2·3

√23

0 0 0 0 0 0 1√3

12

1√3

0 0 0 0 0 0 0 12

, det R8 = 1.

Es gilt R1 ⊂ R2 ⊂ · · · ⊂ R8, dabei bedeutet ⊂ ‘obere linke Teilmatrix von’. Fur die Gram-Matrizen Rt

nRn = [〈ri, rj〉]1≤i,j≤n gilt fur n = 1, ..., n:

〈ri, rj〉 =

2 fur i = j

1 fur 1 ≤ |i− j| ≤ 2 und 1 ≤ i, j ≤ n0 sonst

(2.3)

Page 22: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

22 KAPITEL 2. SUKZESSIVE MINIMA UND MINKOWSKI-SATZE

Rt8R8 :=

2 1 1 0 · · · · · · · · · 0

1 2 1. . .

. . ....

1 1 2. . .

. . ....

0. . .

. . .. . .

. . ....

.... . .

. . .. . .

. . . 0...

. . .. . . 2 1 1

.... . .

. . . 1 2 10 · · · · · · · · · 0 1 1 2

∈ Z8×8. det R8 = 1

Nach Lemma 2.2.3 gilt λ1(Rn) =√

2. Die δ-Werte von L(Rn) stimmen fur n ≤ 8 mit denδ-Werten der Tabelle 2.2.2 uberein. Die Gitter L(Rn) sind kritisch und aquivalent zu A2,A3

∼=D3,D4,D5,E6,E7,E8. Λn := L(Rn). Sie realisieren die Hermite-Konstanten γn.

Das Gitter L(R8) ist wegen det R8 = 1 selbstdual, L(R8) = L(R8)∗. Damit ist jeder Vektorb ∈ span(L(R8)) mit 〈ri,b〉 ∈ Z fur i = 1, ..., 8 bereits in L(R8). Man erhalt R9 als geschichtetesGitter z.B. mit 〈r9, ri〉 = 1

2 fur i = 1, ..., 8 oder mit 〈r9, r4〉 = 〈r9, r6〉 = 1 , 12 = 〈r9, r5〉 und

〈r9, ri〉 = 0 sonst.

B24 =1√8

8 4 4 4 4 4 4 2 4 4 4 2 4 2 2 2 4 2 2 2 0 0 0 −3

0 4 0 0 0 0 0 2 0 0 0 2 0 2 0 0 0 0 0 2 2 0 0 1

0 0 4 0 0 0 0 2 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 1

0 0 0 4 0 0 0 2 0 0 0 2 0 0 0 2 0 0 2 0 2 0 0 1

0 0 0 0 4 0 0 2 0 0 0 0 0 2 2 2 0 2 2 2 2 0 0 1

0 0 0 0 0 4 0 2 0 0 0 0 0 2 0 0 0 0 2 0 0 0 0 1

0 0 0 0 0 0 4 2 0 0 0 0 0 0 2 0 0 0 0 2 0 0 0 1

0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 0 2 0 0 0 0 0 1

0 0 0 0 0 0 0 0 4 0 0 2 0 2 2 2 0 2 2 2 2 2 2 1

0 0 0 0 0 0 0 0 0 4 0 2 0 2 0 0 0 2 0 0 0 2 0 1

0 0 0 0 0 0 0 0 0 0 4 2 0 0 2 0 0 0 2 0 0 0 2 1

0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 0 0 0 2 0 0 0 1

0 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 0 0 0 0 2 2 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 2 2 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

GNF-Basis B24 = GNF(B24) des Leech Gitters Λ24, skaliert zu λ1 = 2, det B24 = 1.

Lemma 2.2.3Fur jede ganze Gram-Matrix BtB ∈ Zn×n mit ‖b1‖2 = · · · = ‖bn‖2 = 2 gilt λ1(L(B)) =

√2.

Page 23: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

2.3. ZWEITER SATZ VON MINKOWSKI. 23

Beweis. Wegen ‖b1‖ =√

2 gilt λ1(L) ≤√

2. Offenbar gilt ‖b‖2 ∈ 2Z fur alle b ∈ L

‖∑ni=1 tibi‖2 =

∑1≤i,j≤n titj 〈bi,bj〉=

∑ni=1 t

2i 〈bi,bi〉+ 2

∑j<i titj 〈bi,bj〉 ∈ 2Z.

Es folgt ‖∑ni=1 tibi‖2 ∈ 2Z und somit λ1 =

√2. �

Definition 2.2.4Der Punkt z ∈ span(L) heißt tiefes Loch des Gitters L, wenn

‖z− L‖ = max{‖z′ − L‖ : z′ ∈ span(L)}.

Der Abstand ‖z − L‖ = min{‖z − y‖ : y ∈ L} zum tiefen Loch z ist der Uberdeckungsradius(covering radius) von L.

q qq q

qqq

tiefe Locher

L(b1,b2)q qq�b2

tiefes LochL(b1)

Abbildung 2.2.2: Tiefe Locher in Λ1 und Λ2

Definition 2.2.5Das Gitter L(b1, . . . ,bn) ist geschichtet (laminated) wenn fur alle j ≤ n bj−bj ∈ span(b1, . . . ,bj−1)tiefes Loch des Gitters L(b1, . . . ,bj−1) ist. Es bezeichne Λn ein geschichtetes Gitter.

Die geschichteten Gitter Λn, skaliert zu λ1 =√

2, erweitern fur n > 8 die GNF R8 des kritischenGitters L(R8) durch Schichtung, so dass R8 ⊂ Rn und Rt

nRn ∈ 12Z

n×n, siehe [CoSl88, chapter6]. Fur n = 11, 12, 13 und n > 24 gibt es jedoch mehrere Isometrieklassen geschichteter Gitterverschiedener Dichte 4, siehe [CoSl88, Figur 6.1].

2.3 Zweiter Satz von Minkowski.

Satz 2.3.1Fur jedes Gitter L ⊂ Rm mit dimL = n gilt fur die `2-Norm

∏ni=1 λi(L) ≤ γn/2n detL.

Satz 2.3.1 verscharft die Ungleichung λ21 ≤ γn(detL)2/n. Fur kritische Gitter L gilt λn1 = γ

n/2n detL

und wegen λi ≥ λ1 folgt somit λ1 = λ2 = · · · = λn.

Beweis. Seien a1, ...,an ∈ L linear unabhangige Vektoren, so dass ‖ai‖ = λi fur i = 1, . . . , n.L(a1, . . . ,an) ist ein Untergitter von L. Wahle die Basis b1, ...,bn von L so dass mit einer oberenDreiecksmatrix T ∈ Zn×n nach Satz 1.5.5 gilt [b1, . . . ,bn] T = [a1, . . . ,an]. Es gilt dann

b ∈ L(b1, . . . ,bn) \ L(b1, . . . ,bs−1) =⇒ ‖b‖ ≥ λs fur s = 2, ..., n,(2.4)

weil b /∈ span(b1, . . . ,bs−1) = span(a1, . . . ,as−1).

Wir setzen bi :=∑ij=1 µi,jbj/λj fur 1 ≤ i ≤ n, L := L

(b1, . . . , bn

)und zeigen λ1( L ) ≥ 1.

Sei b :=∑si=1 tibi ∈ L \ {0} ein beliebiger Vektor, ts 6= 0 und b :=

∑si=1 tibi. Dann gilt∥∥b∥∥2

=∑sj=1(

∑si=j tiµi,j)

2‖bj‖2λ−2j ≥

∑sj=1(

∑si=j tiµi,j)

2‖bj‖2λ−2s = λ−2

s ‖b‖2,

so dass wegen (2.4) und ts 6= 0 die Behauptung ‖b‖2 ≥ 1 und damit λ1( L ) ≥ 1 folgt.

Page 24: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

24 KAPITEL 2. SUKZESSIVE MINIMA UND MINKOWSKI-SATZE

Aus det L = detL/∏ni=1 λi sowie λ1( L ) ≥ 1 und nach Definition von γn folgt

1 ≤ λ1(L)2 ≤ γn (det L)2/n = γn (detL)2/n(∏ni=1 λi)

−2/n.

Diese Ungleichung potenxiert mit n/2 und multipliziert mit∏ni=1 λi liefert die Behauptung. �

Lemma 2.3.2Fur jedes Gitter L mit dim L = n gilt fur die `2-Norm

∏ni=1 λi ≥ detL.

Beweis. Seien a1, . . . , an linear unabhangige Gittervektoren mit ‖ai‖ = λi fur i = 1, . . . , n. WeilL(a1, . . . , an) ein Untergitter von L ist, gilt detL(a1, . . . , an) ≥ detL. Ferner liefert die Unglei-chung von Hadamard

∏ni=1 λi =

∏ni=1 ‖ai‖ ≥ detL(a1, . . . , an). Es folgt die Behauptung. �

Satz 2.3.3 verallgemeinert Satz 2.3.1 auf eine allgemeine Norm mit Eichkorper K. Der Satzstammt von Minkowski 1907, siehe Paragraph 9.1, Kapitel 2, [GrLek87].

Satz 2.3.3Seien λ1, . . . , λn die sukzessiven Minima des Gitters L ⊂ Rm mit dimL = n bezuglich einerbeliebigen Norm mit Eichkorper K, dann gilt detL/n! ≤ vol(K ∩ span(L)) 2−n

∏ni=1 λi ≤ detL.

Im Fall der sup-Norm `∞ gilt vol(K ∩ L) ≥ 2n und somit∏ni=1 λi,∞ ≤ detL. Diese Schranke

ist scharf, denn fur L = Zn gilt λi,∞ = 1 und detL = 1.

Page 25: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 3

Gauß-Reduktion

Ziel ist es, fur Gitter der Dimension 2 eine Basis a,b zu finden, bestehend aus einem kurzestenVektor a 6= 0 und einem dazu kurzesten, linear unabhangigen Vektor b. Fur beliebige Norm ‖ ‖sind dies genau die Basen mit ‖a‖ ≤ ‖b‖ ≤ ‖a±b‖. Wir behandeln Reduktionsverfahren, erst furdie Euklidische Norm dann fur eine allgemeine Norm.

3.1 Reduzierte Basis

Reduzierte Basis. Sei ‖ ‖ : Rn → R≥0 eine beliebige Norm. Eine geordnete Gitterbasisa,b ∈ Rn ist reduziert bezuglich der Norm ‖·‖ wenn ‖a‖ ≤ ‖b‖ ≤ ‖a± b‖ .

Ist die Basis a,b reduziert, so sind auch ±a,±b reduzierte Basen des Gitters L(a,b). Abge-sehen von Ausnahmegittern gibt es nur diese vier reduzierten Basen. Die Basen ±a,±b sind innaturlicher Weise aquivalent. Wir nennen zwei Basen a,b und a′,b′ aquivalent, wenn a = ±a′,b = ±b′. Zwei der reduzierten Basen ±a,±b erfullen die Zusatzbedingung ‖a − b‖ ≤ ‖a + b‖.Der folgende Satz gilt fur eine allgemeine Norm ‖ ‖.

Satz 3.1.1Fur jede reduzierte Basis a,b ∈ Rn ist a ein kurzester Gittervektor 6= 0 und b ein dazu linearunabhangiger kurzester Gittervektor.

Beweis. Zu zeigen ist fur allgemeine Norm

‖a‖ ≤ ‖ra + sb‖ for all(r, s) ∈ Z2 \ {(0, 0)} ,‖b‖ ≤ ‖ra + sb‖ for all(r, s) ∈ Z2 \ {(0, 0), (1, 0)} , s 6= 0.

Abb. 4.1.1 illustriert die Lage einer reduzierten Basis a,b. Betrachte das Parallelepiped Pmit den Eckpunkten ±a±b. Die Reduktionsbedingungen bedeuten, dass auf jeder der vier dickenKanten von P der mittlere Gitterpunkt ±a, ±b minimale Norm gegenuber den beiden Eckpunktenhat:

‖±a− b‖ ≥ ‖±a‖ ≤ ‖±a + b‖‖±a− b‖ ≥ ‖±b‖ ≤ ‖±a + a‖ .

Fur eine allgemeine Norm und c > 0 ist der Bereich der Vektoren Kc = {x | ‖x‖ ≤ c} konvex.Wegen dieser Konvexitat hat die Norm auf jeder der vier Grenzgeraden von P, den Geraden±a + tb, ±b + ta fur t ∈ R, ihr Minimum jeweils auf der Kante des Randes von P. Damit nimmtdie Norm in jedem der vier gepunkteten Bereiche der Abb. 4.1.1 ihr Minimum im jeweiligenEckpunkt ±a± b an. Daher sind a,b offenbar zwei kleinste, linear unabhangige Gitterpunkte. �

25

Page 26: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

26 KAPITEL 3. GAUSS-REDUKTION

rr

rr

r

r r rr r r

r rr r

r rr

r p pp p pp p p pp p p pp pp p p p p p pp p p p p p pp p p p p pp p p p p p

p p p p p p p

p p p p p p p pp p p p p p p pp p p p p p p pp p p p p p pp p p p p p pp pp pp p

p p p

-

s

0

a

b

+a+ b

−a+ b

1

p pp p

p p p−a− b

−b

+a− b

Abbildung 3.1.1: Reduzierte Basis a,b

3.2 Reduktionsverfahren fur die Euklidische Norm

Fur die Euklidischen Norm ‖x‖ =√xtx gilt offenbar mit µ2,1 = atb ‖a‖−2

dass

µ2,1 ≤ 12 ⇐⇒ ‖b‖ ≤ ‖a− b‖ ,

µ2,1 ≥ 0 ⇐⇒ ‖a− b‖ ≤ ‖a + b‖ .Damit ist die Basis a,b genau dann reduziert, wenn ‖a‖ ≤ ‖b‖ , |µ2,1| ≤ 1

2 . Wir betrachten nurreduzierte Basen mit der Zusatzbedingung µ2,1 ≥ 0.

-

-a

Yµ2,1 = 1

2

)‖a‖ = ‖b‖

R

µ2,1 = 0

b

ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp

ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp

Abbildung 3.2.1: Bereich der reduzierten Basen a,b mit µ2,1 ≥ 0

Abbildung 3.2.1 zeigt zu festem a den gepunkteten Bereich der Vektoren b der reduziertenBasen a,b mit µ2,1 ≥ 0. Sei φ = ∠(a,b) der Winkel zwischen den Gittervektoren a,b, cosφ =

atb‖a‖·‖b‖ . Fur reduzierte Basen a,b gilt 60◦ ≤ φ ≤ 90◦.

Im Fall µ2,1 = 12 ist mit a,b auch a,a− b reduziert. Im Fall ‖a‖ = ‖b‖ ist mit a,b auch b,a

reduziert. In den ubrigen Fallen gibt es nur die reduzierten Basen ±a,±b.

Page 27: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

3.2. REDUKTIONSVERFAHREN FUR DIE EUKLIDISCHE NORM 27

Algorithmus 3.2.1 Gauß-Reduktionsverfahren fur die Euklidische Norm

EINGABE : Gitterbasis b1,b2 ∈ Rn mit ‖b1‖ ≤ ‖b2‖

WHILE |µ2,1| > 12 DO /∗ µ2,1 = r1,2/r1,1 ∗/

1. b2 := b2 · sign(µ2,1) /∗ wir erreichen µ2,1 ≥ 0 ∗/2. b2 := b2 − dµ2,1cb1

3. IF ‖b1‖ > ‖b2‖ THEN vertausche b1 und b2

AUSGABE : Reduzierte Basis b1,b2

Eine Runde der Schritte 1. 2. 3. sichert in Schritt 1. durch Vorzeichenwahl von b2 dassµ2,1 ≥ 0, reduziert in Schritt 2. gemaß b2 := b2 − dµ2,1cb1 und vertauscht in Schritt 3. sofernnicht schon ‖b1‖ ≤ ‖b2‖ gilt. Nach Schritt 1. gilt stets ‖b1‖ ≤ ‖b2‖ und µ2,1 ≥ 0. Die Schritte 2.3. lauten bei Vertauschung in Matrizenschreibweise

[b1,b2] := [b1,b2]

[−dµ2,1c 1

1 0

].

In Schritt 3. wird bis auf die letzte Runde notwendigerweise vertauscht.

Zu gegebener reduzierten Ausgabebasis b1,b2 und Rundenzahl k der Gauß-Reduktion identi-fizieren wir eine minimale Eingabebasis, welche in k Runden auf b1,b2 reduziert wird. Die Mini-malitat der Basis bedeutet, dass ihre Vektoren minimale Lange haben. Eine solche Eingabebasisheißt eine minimale k-te Vorgangerbasis zu b1,b2.

Satz 3.2.11. Zur reduzierten Basis b1,b2 und Rundenzahl k ist [b1,b2]Ak minimale k-te Vorgangerbasis

mit Ak =def

[0 11 1

] [0 11 2

]k−2 [0 11 1

].

2. Algorithmus 3.2.1 macht zur Eingabe b1,b2 hochstens log1+√

2(‖b1‖ /λ2) + 2.54 Runden.

Wohlgeordnete Basis. Eine Basis b1,b2 heißt wohlgeordnet wenn ‖b1‖ ≤ ‖b1−b2‖ < ‖b2‖.Dies ist fur die Euklidischen Norm aquivalent zu 1

2 < µ2,1 ≤ 1, ‖b1‖ < ‖b2‖. In Schritt 2. wirdalso eine wohlgeordnete Basis erzeugt, es sei denn die Basis ist schon reduziert. Offenbar geltenfolgende Aussagen.

Lemma 3.2.2Fur jede nicht reduzierte Basis mit ‖b1‖ ≤ ‖b2‖ ist genau eine der Basen b1,±b2 wohlgeordnet.

Lemma 3.2.3Wendet man die Schritte 2. 3. an auf zwei equivalente Basen b1,b2 und b′1,b

′2, so bleibt die

Aquivalenz erhalten.

Wegen Lemma 3.2.3 gibt es zu gegebener reduzierten Basis eine minimale k-te Vorgangerbasis,bei deren Reduktion das Vorzeichen von b2 in Schritt 1. nie verandert wird. Dies folgt aus demLemma, weil aquivalente Basen in der Lange der Vektoren gleich sind.

Die Gauß-Reduktion mit k Runden erzeugt in Schritt 1. eine Folge wohlgeordneter Basen(bk+1,bk+2), (bk,bk+1), . . . , (b2,b3) und schließlich die reduzierte Basis (b1,b2). Bleibt das Vor-

Page 28: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

28 KAPITEL 3. GAUSS-REDUKTION

zeichen von b2 in Schritt 1. stets unverandert, und wird in der letzten Runde in Schritt 3. ge-tauscht, dann ist die k-te Vorgangerbasis (bk+1,bk+2) zur reduzierten Basis (b1,b2) von der Form

[bk,bk+1] = [b1,b2]∏

i=1,...,k

[0 11 µ(i)

].

Dabei ist µ(i) = dµ2,1c der ganzzahlige Reduktionskoeffizient der i-ten Runde. Die behauptete

Form von (bk+1,bk+2) folgt, weil

[0 11 µ(i)

]die Inverse zur Matrix

[−µ(i) 1

1 0

]ist, welche die

Schritte 2. 3. beschreibt. Wegen µ2,1 >12 gilt µ(i) ≥ 1.

Lemma 3.2.4Sei b1,b2 ∈ Rn wohlgeordnete Basis, welche durch die Schritte 2. 3. in die wohlgeordnete Basis

b′1 = b2 − dµ2,1cb1, b′2 = b1 transformiert wird. Im Fall ∠(b1,b′1) < 30o gilt µ′2,1 >

32 .

Im Fall ∠(b1,b′1) ≥ 30o gibt es eine reduzierte Basis bestehend aus den Vektoren b′1,b

′2,b′2−b′1.

Das Lemma zeigt, dass der ganzzahlige Reduktionskoeffizient µ(i) = dµ2,1c stets mindestens 2ist, ausgenommen die erste und letzte Runde.

Beweis. Wir betrachten nur den Fall dass 〈b1,b′1〉‖b1‖−2 = 1

2 , weil dann ‖b′1‖/‖b1‖ maximalist.

Abbildung 3.1: Der Fall ∠(b1,b′1) = 30, 〈b1,b

′1〉‖b1‖−2 = 1

2

Im Fall ∠(b1,b′1) = 30o gilt 3

4‖b′1‖2 = 1

4‖b1‖2. Daher gilt im Falle ∠(b1,b′1) < 30o offenbar

‖b1‖2 < 3 ‖b′1‖2. Es folgt die Behauptung

µ′2,1 = 〈b1,b′1〉‖b′1‖−2 ≥ 3 〈b1,b

′1〉‖b1‖−2 > 3

2 .

Im Falle ∠(b1,b′1) > 30o gilt 1

2 < µ′2,1 <32 . Sofern die Basis b′1,b

′2 nicht schon reduziert ist,

wird in der nachsten Runde b′2 − b′1 gebildet und die Reduktion bricht ab. �

Beweis von Satz 3.2.1. Betrachte nun den Fall dass (b2,b3) = (b′1,b′2) direkte Vorgangerbasis

ist zur reduzierten Basis b1,b2 gemaß Lemma 3.2.4. Es sei also b1,b2 eine Auswahl von b′1,b′2,b′2−

b′1. Dann ist

[bk+1,bk+2] = [b1,b2]

[0 11 1

] [0 11 2

]k−2 [0 11 1

].

eine minimale k-te Vorgangerbasis (bk+1,bk+2) zur reduzierten Basis (b1,b2). Wegen Lemma3.2.4 gilt namlich µ(i) ≥ 2 fur die ganzzahligen Reduktionskoeffizienten mit 1 < i < k undµ(1) = µ(k) = 1. Offenbar wird bk+1,bk+2 minimal, wenn in der letzten Runde in Schritt 3.getauscht wird.

Die Koeffizienten ak der Matrix

[0 11 2

]k=

[ak−2 ak−1

ak−1 ak

]genugen der Rekursion

a0 = 0, a1 = 1, a2 = 2 und ak = 5 ak−2 +2 ak−3 fur k ≥ 3. Es gilt 2ak−3 +ak−2 ≥ 1.5 (1+√

2)k−3.

Somit gilt

[bk+1,bk+2] [bk+1,bk+2]t = Ak [b1,b2]t[b1,b2]Atk

Page 29: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

3.2. REDUKTIONSVERFAHREN FUR DIE EUKLIDISCHE NORM 29

fur die Matrix Ak =

[ak−2 ak−2 + ak−3

ak−4 + ak−3 ak−4 + 2ak−3 + ak−2

]. Wegen 〈b1,b2〉 ≥ 0 folgt

‖bk+1‖ ≥ (ak−4 + 2ak−3 + ak−2)‖b2‖ ≥ 1.5 (1 +√

2)k−3 λ2.

Somit gilt k ≤ 2.54 + log1+√

2(‖bk+1‖/λ2), weil 2.54 > 3− log 1.5/ log(1 +√

2). �

Algorithmus 3.2.2 Gauß-Reduktionsverfahren fur beliebige Norm

EINGABE : Wohlgeordnete Gitterbasis b1,b2 ∈ Rn mit ‖b1‖ ≤ ‖b2‖

WHILE ‖b2‖ > ‖b1 − b2‖ DO

1. b2 := b2 − µb1 mit µ ∈ Z derart, dass ‖b2 − µb1‖ minimal ist

2. IF ‖b1 + b2‖ < ‖b1 − b2‖ THEN b2 := −b2

3. vertausche b1 und b2

AUSGABE : Reduzierte Basis b1,b2

Korrektheit. Nach Schritt 1. gilt ‖|b2‖| ≤ ‖b1 ± b2‖, nach Schritt 2. gilt ‖b2‖ ≤ ‖b1 − b2‖ ≤‖b1 + b2‖ und nach Schritt 3. gilt ‖b1‖ ≤ ‖b1 − b2‖ ≤ ‖b1 + b2‖. Falls nach Schritt 3. ‖b2‖ ≤‖b1 − b2‖ gilt, dann gilt auch ‖b1‖, ‖b2‖ ≤ ‖b1 ± b2‖.

Die Rundenzahl fur dieses Verfahren ist beschrankt durch log1+√

2(‖b1‖/λ2,‖ ‖) +O(1). Dabeiist λ2,‖ ‖ das zweite sukzessive Minimum zur Norm ‖ ‖. Eine ausfuhrliche Analyse findet sichin [KS96] sowie in [Ka94]. Dort werden effiziente Algorithmen fur den Schritt 1. in der l1- undsup-Norm vorgestellt.

Page 30: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

30 KAPITEL 3. GAUSS-REDUKTION

Page 31: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 4

LLL-reduzierte Gitterbasen

LLL-reduzierte Gitterbasen b1, . . . ,bn ∈ Rm beliebigen Ranges n wurde 1982 von A.K. Lenstra,H.W. Lenstra und L. Lovasz [LLL82] eingefuhrt. Der LLL-Algorithmus ist das erste Reduktions-verfahren fur ganzzahlige Gitterbasen mit einer polynomiellen Laufzeit und Approximationsfaktor‖bi‖2/λ2

i ≤ 2n. Es iteriert die Gauß-Reduktion in Dimension n = 2.

4.1 Definition und Eigenschaften

Wir fuhren den Begriff der LLL-reduzierten Basis ein und zeigen, dass die Langen der Basisvektorendie sukzessiven Minima des Gitters grob approximieren. Sei [b1, ...,bn] = B = QR ∈ Rm×nGitterbasis mit R = [ri,j ] ∈ Rn×n.

Definition 4.1.1 (LLL-reduzierte Basis)Eine Gitterbasis B = QR ∈ Rm×n heißt LLL-reduziert (oder LLL-Basis) mit δ, 1

4 < δ ≤ 1, wenn

1. |rj,i| ≤ 12rj,j fur 1 ≤ j < i ≤ n,

2. δ r2k−1,k−1 ≤ r2

k−1,k + r2k,k fur k = 2, . . . , n.

Basen mit 1. sind langenreduziert. Der Parameter δ kontrolliert die Gute der reduzierten Ba-sis: je kleiner δ um so schwacher ist die Reduktion. A.K. Lenstra, H.W. Lenstra und L. Lovasz[LLL82] studieren die LLL-Reduktion speziell fur den Parameter δ = 3

4 . Fur δ < 1 hat dasLLL-Reduktionsverfahren polynomielle Laufzeit. Die Eigenschaft ’LLL-Basis’ zu sein bleibt beiIsometrie erhalten : B = QR ist LLL-Basis gdw R LLL-Basis ist.

Die LLL-Basen mit δ = 1 und n = 2 sind genau die Gauß-reduzierten Basen. B ist LLL-Basis

mit δ gdw die Matrizen

[rk−1,k−1 rk−1,k

0 rk,,k

]∈ R2×2 fur k = 2, ..., n LLL-Basen mit δ sind.

Lemma 4.1.2Fur jede LLL-Basis B = QR ∈ Rm×n mit δ und α = (δ − 1

4 )−1 gilt

r2i,i ≤ αj−i r2

j,j fur 1 ≤ i ≤ j ≤ n.

Fur δ = 34 , α = 2, i = 1 gilt ‖b1‖2 = r2

1,1 ≤ 2j−1 r2j,j , so dass die ‖bj‖2 = r2

j,j fur große j nichtbeliebig klein werden.

Beweis. Die Eigenschaften einer LLL-Basis implizieren

δ r2k−1,k−1 ≤ r2

k−1,k + r2k,k ≤ 1

4 r2k−1,k−1 + r2

k,k

31

Page 32: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

32 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

und somit(δ − 1

4

)r2k−1,k−1 ≤ r2

k,k. Durch Induktion uber j − i folgt r2i,i ≤ αj−i r2

j,j . �

Lemma 4.1.3Fur jede Basis b1, . . . ,bn des Gitters L gilt λj(L) ≥ min{rj,j , . . . , rn,n} fur j = 1, ..., n.

Beweis. Es seien a1, . . . ,an ∈ L linear unabhangig , so dass ‖aj‖ = λj(L) fur j = 1, . . . , n. Sei

ak =∑ni=1 ti,kbi =

∑ni=1 ti,kbi fur k = 1, . . . , n.

Dabei sind die Koeffizienten ti,k ganzzahlig und die ti,k reell. Sei µ(k) := max {i : ti,k 6= 0}.

Wegen bi =∑ij=1 µi,jbj und µi,i = 1, ist tµ(k),k = tµ(k),k ganzzahlig. Wegen der linearen

Unabhangigkeit der Vektoren a1, . . . ,aj gibt es zu jedem j ein k ≤ j mit µ(k) ≥ j. Denn aus derAnnahme µ(k) < j fur k = 1, . . . , j folgt a1, . . . ,aj ∈ span(b1, . . . ,bj−1), so dass a1, . . . ,aj linearabhangig sind — Widerspruch. Aus k ≤ j, µ(k) ≥ j folgt

λ2j ≥ λ2

k = ‖ak‖2 ≥ t2µ(k),k r

2µ(k),µ(k) ≥ r

2µ(k),µ(k) ≥ min{r2

j,j , ..., r2n,n} �

Die untere Schranke zu λj in Lemma 4.1.3 gilt fur beliebige Basen. Fur LLL-reduzierten Basen ist‖bj‖ grobe Approximation zu λj , es gilt namlich

Satz 4.1.4 (Lenstra, Lenstra, Lovasz 1982)Jede LLL-Basis b1, ...,bn mit δ des Gitters L erfullt mit α = (δ − 1

4 )−1

1. α1−j ≤ r2j,j/λj(L)2 fur j = 1, . . . , n,

2. ‖bj‖2 /λj(L)2 ≤ αn−1 fur j = 1, . . . , n,

3. ‖bk‖2 ≤ αj−1 r2j,j fur k ≤ j.

Beweis. Wir zeigen 1. und 3. : Offenbar gibt es ein k ≤ j so dass λj ≤ ‖bk‖. Es folgt

λ2j ≤ ‖bk‖2 ≤ r2

k,k + 14

∑k−1i=1 r

2i,i

≤ r2j,j(α

j−k + 14

∑k−1i=1 α

j−i) (nach Lemma 4.1.2)

= r2j,jα

j−1(α1−k + 14

∑k−1i=1 α

1−i).

Damit gilt 3. fur alle k ≤ j mit λj ≤ ‖bk‖ und somit auch fur die k′ ≤ j mit ‖b′k‖ ≤ λj wegen‖bk′‖2 ≤ ‖bk‖2 ≤ r2

j,jαj−1. Es bleibt noch zu zeigen, dass

α1−k + 14

∑k−1i=1 α

1−i ≤ 1.

Fur k = 1 gilt die Ungleichung offenbar. Fur k ≥ 2 gilt mit α−1 = δ − 14 ≤

34 dass

α1−k + 14

∑k−1i=1 α

1−i︸ ︷︷ ︸geom. Reihe

≤(

34

)k−1+ 1

4

1−( 34 )k−1

1− 34

= 14

11− 3

4

= 1.

Damit sind 1. und 3. gezeigt. Nach Lemma 4.1.3 gibt es ein k ≥ j, so dass λj ≥ rk,k. Es folgt

λ2j ≥ r2

k,k ≥ α−k+j r2j,j (wegen Lemma 4.1.2)

≥ α−k+1 ‖bj‖2 (wegen 3. Aussage des Satzes mit k = j)

≥ α−n+1 ‖bj‖2 (wegen k ≤ n und α ≥ 1 �

Page 33: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4.2. DAS LLL-REDUKTIONSVERFAHREN 33

Korollar 4.1.5Jede LLL-Basis b1, . . . ,bn mit δ erfullt

1. ‖b1‖2 ≤ αn−12 (detL)

2n , 2.

∏ni=1 ‖bi‖

2 ≤ α(n2)(detL)2.

Beweis. Aus∏ni=1 r

2i,i = (detL)2 und ‖b1‖2 ≤ r2

i,i αi−1 ( Lemma 4.1.2 ) folgt

‖b1‖2n ≤ α1α2 · · · αn−1n∏i=1

r2i,i = α(n2) (detL)2

und somit ‖b1‖2 ≤ αn−12 (detL)

2n .

Die zweite Aussage folgt aus∏ni=1 r

2i,i = (detL)2 und ‖bi‖2 ≤ r2

i,i αi−1, der dritten Aussage

von Satz 4.1.4 fur k = j = i. �

Definition 4.1.6 (relative Dichte)Die relative Dichte rd(L) des Gitters L wird definiert durch λ2

1 = rd(L)2(detL)2/n.

Aus Satz 4.1.4 und Korollar 4.1.5 folgt

‖b1‖2/λ21 ≤ α

n−12 /(rd(L)2γn).

Diese obere Schranke fur LLL-Basen ist im allgemeinen besser als 2. von Satz 4.1.4.

4.2 Das LLL-Reduktionsverfahren

Wir beschreiben ein Verfahren zur LLL-Reduktion von ganzzahligen Gitterbasen mit polynomiellerLaufzeit. Es handelt sich bis auf kleine Verbesserungen um das Verfahren von A.K. Lenstra,H.W. Lenstra und L. Lovasz [LLL82]. Wir zahlen die Anzahl der arithmetischen Schritte aufganzen Zahlen und beschranken den Absolutwert der im Verfahren auftretenden ganzen Zahlen.

4.2.1 LLL-Verfahren

Algorithmus 4.2.1 transformiert eine ganzzahlige Gitterbasis in eine LLL-Basis mit δ desselben Git-ters. Der Algorithmus reduziert sukzessive einen moglichst großen Anfangsabschnitt b1, ...,bk−1

der Basis. Bei Eintritt in Stufe k ist die Teilbasis b1, . . . ,bk−1 stets LLL-Basis mit δ. Am Endeist k = n+ 1 und die gesamte Basis b1, ...,bn ist LLL-Basis.

Das Verfahren operiert auf Stufe k mit den rationalen Zahlen µi,j , r2i,i fur 1 ≤ i, j ≤ k und den

ganzzahligen Vektoren b1, ...,bk, siehe Lemma 4.2.2. Die Langenreduktion von bk sichert, dassdie im Verfahren auftretenden ganzen Zahlen polynomielle Bitlange zur Lange der Eingabe haben.Dies gilt insbesondere fur Zahler und Nenner der rationalen Zahlen µk,j , r

2k,k, siehe Satz 4.2.6. Es

bezeichneM := max( ‖b1‖2, ..., ‖bn‖2 ),

Di := detL(b1, ...,bi)2 = det [〈bs,bt〉]1≤s,t≤i =

∏ij=1r

2j,j ∈ N,(4.1)

D :=∏n−1i=1 Di, M := maxi=1,...,n( ‖bi‖2, Di ).

Die Gram-Determinante Di ist die Determinante der Gram-Matrix der Teilbasis b1, ...,bi. DieGroßen M,M beziehen sich im Folgenden immer auf die Eingabebasis, wahrend Di und D sichbei Basistransformationen andern. DStart ist der Wert von D zur Eingabe.

Page 34: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

34 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

Algorithmus 4.2.1 zur LLL-Reduktion in Z-Arithmetik

EINGABE : Basis B = [b1, . . . ,bn] ∈ Zm×n, δ mit 14 < δ < 1

1. k := 2, r21,1 := ‖b1‖2 /∗ k ist die Stufe ∗/

2. WHILE k ≤ n DO /∗ b1, . . . ,bk−1 ist stets LLL-reduziert ∗/berechne µk,j = rj,k/rj,j fur j = 1, . . . , k und r2

k,k gemaß Lemma 4.2.2

Langenreduziere bk, aktualisiere µk,1, . . . , µk,k−1

IF δ r2k−1,k−1 > r2

k−1,k + r2k,k

THEN vertausche bk−1 und bk /∗ kurz bk−1 ↔ bk ∗/IF k = 2 THEN aktualisiere r2

1,1 = ‖b1‖2

k := max(k − 1, 2)

ELSE k := k + 1 end while

AUSGABE : LLL-Basis B = [b1, ...,bn].

Korrektheit. Auf Stufe k ist die Teilbasis b1, ...,bk−1 stets LLL-Basist. Dies folgt durch Induktionuber die Abfolge der Iterationen. Eine Iteration ist die Abfolge der Schritte der WHILE-Schleifebis zur Aktualisierung von k.

Lemma 4.2.1Die LLL-Reduktion fuhrt zu gegebener ganzzahligen Basis b1, ...,bn ∈ Zm hochstens

log1/δ

(DStart

)≤ n log1/δM Austausche bk−1 ↔ bk durch.

Beweis. Die Gram-Determinante Di ist ganzzahlig und positiv. Wir zeigen, dass jeder Austauschbk−1 ↔ bk D um den Faktor δ erniedrigt, Dneu ≤ δ Dalt. Wegen DEnde ∈ N folgt dann

DStart ≥ DEnde (1/δ)#Austausche ≥ (1/δ)#Austausche.(4.2)

Die Gitter L(b1, . . . ,bi) mit i 6= k − 1 werden beim Austausch bk−1 ↔ bk nicht verandert. DieDeterminanten Di mit i 6= k− 1 bleiben erhalten. Im LLL-Verfahren wird nur ausgetauscht wenn

δ r2k−1,k−1 > r2

k−1,k + r2k,k.

Wegen Dk−1 =∏k−1i=1 r

2i,i bewirkt der Austausch bk−1 ↔ bk, dass

Dneuk−1 ≤ δ Dalt

k−1und Dneu ≤ δ Dalt.

Nach (4.2) ist die Anzahl der Austausche hochstens log1/δ

(DStart

). Wegen DStart

i ≤ Di ≤ M

folgt DStart =∏n−1i=1 Di ≤M

n−1und somit #Austausche ≤ (n− 1) log1/δM . �

Wieviele arithmetische Schritte fuhrt das LLL-Verfahren pro Austausch durch ? WievieleSchritte kostet die Berechnung von µk,1, ..., µk,k und r2

k,k auf Stufe k ?

Lemma 4.2.2Die Berechnung von µk,1, ..., µk,k und r2

k,k, sowie die Langenreduktion von bk auf Stufe k gehenin O(km) arithmetischen Schritten.

Page 35: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4.2. DAS LLL-REDUKTIONSVERFAHREN 35

Beweis. Die µk,j = rj,k/rj,j fur j = 1, ..., k und r2k,k werden durch folgende O (km) Schritte

berechnet

FOR j = 1, . . . , k − 1 DO µk,j := (〈bk,bj〉 −∑j−1i=1 µk,i µj,i r

2i,i)/r

2j,j ,

µk,k := 1, r2k,k := 〈bk,bk〉 −

∑k−1j=1 µ

2k,jr

2j,j .

Die Langenreduktion von bk geht mit folgenden O(km) Schritten

FOR j = k − 1, ..., 1 DO bk := bk − dµk,jcbj , µk,i := µk,i − dµk,jcµj,i fur i = 1, ..., k. �

Aufgrund von Lemma 4.2.1 und 4.2.2 fuhrt das LLL-Verfahren hochstens O(n2m log1/δM)arithmetischen Schritte aus, siehe Satz 4.2.6. Wie groß werden aber die wahrend des LLL-Verfahrensauftretenden ganzen Zahlen ? Wir schatzen in den nachsten drei Lemmata die Absolutwerte derZahler und Nenner der rationalen Zahlen µj,i, r

2i,i wahrend der LLL-Reduktion ab.

Lemma 4.2.3Fur jede ganzzahlige Eingabebasis b1, ...,bn ∈ Zm gilt 1. Di−1 bi ∈ Zm, 2. Dj µi,j ∈ Z.

Beweis. 1. Aus [b1, ...,bn] = [b1, . . . , bn]1≤i,j≤n [µi,j ]T1≤i,j≤n folgt fur [νi,j ] := [µi,j ]

−1: dass

[b1, . . . , bn] = [b1, ...,bn] [νi,j ]T1≤k,j≤n.

Dabei sind [νi,j ]>, [µi,j ]

> ∈ Qn×n obere Dreiecksmatrizen mit Einsen auf der Diagonalen.

Wegen 〈bi,bj〉 = 0 fur j = 1, 2, . . . , i− 1 folgt aus bi = bi +∑i−1t=1 νi,tbt und νi,i = 1 dass

−〈bi,bj〉 =

i−1∑t=1

νi,t 〈bt,bj〉 fur j = 1, 2, . . . , i− 1.

Diese i − 1 Gleichungen definieren νi,1, νi,2, . . . , νi,i−1. Die Determinante des Gleichungssy-stems ist Di−1 = det [〈bj ,bk〉]1≤j,k≤i−1 6= 0. Nach der Cramer’schen Regel gilt

Di−1 νi,j ∈ Z fur j = 1, . . . , i− 1.

Aus bi = bi +∑i−1j=1 νi,jbj folgt Di−1 bi ∈ Zm.

2. Wegen Dj =∏ji=1 r

2i,i gilt

Dj µi,j = Dj〈bi, bj〉r2j,j

= Dj−1 〈bi, bj〉 = 〈bi, Dj−1 bj〉.

Aus Dj−1 bj ∈ Zm folgt somit Dj µi,j ∈ Z. �

Lemma 4.2.4Auf Stufe k des LLL-Verfahrens gilt stets

1. ‖bi‖2 ≤ i+34 M fur i = 1, . . . , k,

2. |µi,j |2 ≤ i+34 M αj−1 fur 1 ≤ j < i < k.

Beweis.1. Im LLL-Verfahren bleiben bis auf die Langenreduktion von bk auf Stufe k die Langen der

Basisvektoren unverandert. Nach der Langenreduktion von bk gilt

‖bk‖2 =∑kj=1µ

2k,jr

2j,j ≤ r2

k,k + k−14 max( r2

1,1, ..., r2k−1,k−1 ) ≤ k+3

4 M.

Denn im LLL-Verfahren gilt stets maxi r2i,i ≤ M := max( ‖b1‖2 , ..., ‖bn‖2 ). Fur jeden

Austausch bk−1 ↔ bk gilt namlich (rneuk−1,k−1)2 ≤ δ (ralt

k−1,k−1)2, (rneuk,k )2 ≤ (ralt

k−1,k−1)2.

Page 36: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

36 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

2. Nach Definition der Gram-Schmidt-Koeffizienten und der Cauchy-Schwarz-Ungleichung gilt

|µi,j |2 =|〈bi, bj〉2|

r4j,j

≤ ‖bi‖2 ‖bj‖2

r4j,j

=‖bi‖2

r2j,j

.

Weil b1, ...,bk−1 LLL-reduziert ist, gilt

|µi,j |2 ≤ i+34 M r−2

j,j (wegen ‖bi‖2 ≤ i+34 M)

≤ i+34 M αj−1 r−2

1,1 (nach Lemma 4.1.2)

≤ i+34 M αj−1 (weil ‖b1‖2 = r2

1,1 ∈ Z). �

Lemma 4.2.5Wahrend der Langenreduktion von bk auf Stufe k gilt |µk,j |2 ≤ k+3

4 M(

9α4

)k−1fur j < k.

Beweis. Der Reduktionsschritt

bk := bk − dµk,icbi fur i < k

der Langenreduktion wird begleitet von

µk,j := µk,j − dµk,ic µi,j︸︷︷︸|µi,j |≤1/2

fur j = 1, 2, ..., k − 1.(4.3)

Jeder dieser k − 1 Schritte verandert Mk := maxj<k |µk,j | wegen dµk,ic ≤Mk + 12 derart dass

Mneuk ≤Malt

k + 12

(Maltk + 1

2

)≤ 3

2 Maltk + 1

4(4.4)

Nach Lemma 4.2.4 gilt vor der Langenreduktion von bk dass

Mk ≤√

k+34 M αk−1.

Wegen (4.4) erhoht sich die Große Mk wahrend der Langenreduktion von bk hochstens um den

Faktor(

32

)k−1(der Summand 1

4 kann vernachlassigt werden). Also gilt

|µk,j |2 ≤(

32

)2(k−1) (k+34 M αk−1

)= k+3

4 M(

9α4

)k−1. �

Satz 4.2.6Zu gegebener ganzzahliger Basis b1, . . . ,bn ∈ Zm liefert Algorithmus 4.2.1 eine LLL-Basis. Mit

M := maxi(‖bi‖2, Di) macht der Algorithmus hochstens O(n2m log1/δM) arithmetische Schritte

auf den Koordinaten der bi und den rationalen Zahlen µi,j , r2i,i. Die Bitlange der auftretenden

ganzen Zahlen, insbesondere der Zahler und Nenner von µi,j , r2i,i ist hochstens O(n+ log2M).

Beweis. Nach Lemma 4.2.1 gilt

#Austausche ≤ log1/δDStart ≤ (n− 1) log1/δM ≤

(n2

)log2M.

Die LLL-Reduktion beginnt mit Stufe k = 2 und endet mit Stufe k = n + 1. Jeder Austauscherniedrigt die Stufe k gemaß k := min(k − 1, 2). Jede Stufenerniedrigung wird durch eine Stufe-nerhohung ohne Austausch ausgeglichen. Es folgt

#Iterationen ≤ n− 1 + 2 #Austausche = n+ 2n log1/δM.

Page 37: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4.3. LLL-REDUKTION GANZZAHLIGER ERZEUGENDENSYSTEME 37

Jede Iteration erfordertO(km) = O(nm) arithmetische Schritte. Damit ist die Schrittzahl hochstensO(n3m log1/δM).

Nach Lemma 4.2.3, 4.2.4 und 4.2.5 sind die auftretenden Zahlen wie folgt beschrankt

|µk,j |2 ≤ k+34 M

(9α4

)k−1, ‖bk‖2 ≤ k k+3

4 M(

9α4

)k−1,

und fur i < k:

|µi,j |2 ≤ i+34 M αj−1, ‖bi‖2 ≤ i+3

4 M.

Der Nenner von µi,j ist absolut beschrankt durch Dj−1 ≤ M . Damit ist der Zahler von µi,jabsolut beschrankt durch √

n+34 M

12

(9α4

)n−12 M.

Zahler und Nenner von r2j,j =

DjDj−1

sind durch M beschrankt. Damit sind alle im Verfahren

auftretenden, ganzen Zahlen absolut beschrankt durch

nM12

(9α4

)n−12 M

und haben somit eine Bitlange O(n+ log2M) mit einer O-Konstante nahe 1,5 fur δ ≈ 1. �

Nach dem Austausch bk−1 ↔ bk kann man die Gram-Schmidt-Koeffizienten µk−1,1, ..., µk−1,k−2,sowie r2

k−1,k−1 schnell aktualisieren. Dies erfordert nur O(1) Rechenschritte und O(k) Datentrans-porte wahrend die Neuberechnung nach Lemma 4.2.2 O(km) Rechenschritte erfordert.

Lemma 4.2.7Der Austausch bk−1 ↔ bk bewirkt mit µ := µk,k−1 dass

1. µneu = µr2k−1,k−1

(rneuk−1,k−1)2

mit (rneuk−1,k−1)2 = µ2r2

k−1,k−1 + r2k,k,

2. [µneuk,i , µ

neuk−1,i] = [µk−1,i , µk,i] fur i = 1, . . . , k − 2.

Beweis. 1. Es gilt µneu =〈bneuk ,bneu

k−1〉‖bneuk−1‖2

=〈πk−1(bneu

k−1),πk−1(bneuk )〉

‖bneuk−1‖2

.

Weil 〈πk−1(bk−1), πk−1(bk)〉 bei der Vertauschung bk−1 ↔ bk erhalten bleibt, folgt dass µneu =µ r2

k−1,k−1/(rneuk−1,k−1)2. 2. ist offensichtlich. �

4.3 LLL-Reduktion ganzzahliger Erzeugendensysteme

Wir erweitern die LLL-Reduktion auf ganzzahlige Erzeugendensysteme b1, ...,bn ∈ Zm \ 0. Esgenugt, die im LLL-Verfahren entstehenden Nullvektoren zu eliminieren. Der Nullvektor kann nurdurch Langenreduktion von bk auf Stufe k entstehen.

Korrektheit. Algorithmus 4.3.1 operiert auf Stufe k mit den rationalen Zahlen µi,j , r2i,i fur i, j ≤ k

und den ganzzahligen Basisvektoren. Das Verfahren ist korrekt, weil die Vektoren b1, . . . ,bk−1 aufStufe k stets linear unabhangig und somit LLL-reduziert sind. Sind namlich nach der Langereduk-tion von bk die Vektoren b1, . . . ,bk erstmals linear abhangig, so gilt bk ∈ L(b1, . . . ,bk−1). DieLangenreduktion von bk erzeugt den Nullvektor. Dieser wird sofort entfernt.

Page 38: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

38 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

Algorithmus 4.3.1 LLL-Reduktion von ganzzahligen Erzeugendensystemen

EINGABE : Erzeugendensystem b1, ...,bn ∈ Zm \ {0}, δ mit 14 < δ < 1

/∗ L :=∑n

i=1 biZ ist ein Gitter ∗/

1. k := 2, r21,1 := ‖b1‖2 /∗ k ist die Stufe ∗/

2. WHILE k ≤ n DO

/∗ b1, . . . ,bk−1 ist LLL-reduziert ∗/berechne µk,j fur j = 1, . . . , k und r2

k,k gemaß Lemma 4.2.2

Langenreduziere bk, aktualisiere µk,1, . . . , µk,k−1

IF bk = 0 THEN entferne bk aus dem Erzeugendensystem, n := n− 1 RETURN

IF δ r2k−1,k−1 > r2

k−1,k + r2k,k

THEN vertausche bk−1 und bk /∗ kurz bk−1 ↔ bk ∗/IF k = 2 THEN aktualisiere r2

1,1

k := max(k − 1, 2)

ELSE k := k + 1 end while

AUSGABE : LLL-Basis b1, ...,bn des Gitters L.

Laufzeitanalyse. Zu den Teilgittern L(b1, . . . ,bi) =∑ij=1 bjZ und den Gram-Determinanten

Di = (detL(b1, . . . ,bi))2 setzt man wieder

D :=∏n−1i=1 Di ,

M := maxi‖bi‖, M := max

i(‖bi‖2, Di) .

Dann gilt#Austausche ≤ log1/δD

Start ≤ (n− 1) log1/δM

#Iterationen ≤ n− 1 + 2 #Austausche ≤ n+ 2n log1/δM

#arithm. Schritte = O(n2m log1/δM).

Damit ubertragt sich der Beweis von Satz 4.2.6. Insbesondere gelten die Zahlen-Schranken vonLemma 4.2.3 4.2.4 und 4.2.5 auch fur die Werte im Verlauf von Algorithmus 4.3.1. Somit gilt der

Satz 4.3.1Zu gegebenen ganzzahligen Vektoren b1, ...,bn ∈ Zm \ 0 liefert Algorithmus 4.3.1 eine LLL-

reduzierte Basis des von b1, ...,bn erzeugten Gitters. Mit M := maxi(‖b‖2, Di) macht das LLL-Verfahren hochstens O(n2m log1/δM) arithmetische Schritte auf den Koordinaten der bi und den

rationalen Zahlen µi,j , r2i,i. Die Bitlange der auftretenden ganzen Zahlen, insbesondere der Zahler

und Nenner von µi,j , r2i,i ist hochstens O(n+ log2M).

4.4 LLL-Reduktion mit Gleitkomma-Arithmetik

Fur eine schnelle LLL-Reduktion muß man die Rechnung uberwiegend in Gleitkomma-Arithmetikdurchfuhren. Ein Schritt in Gleitkomma-Arithmetik geht in einem Maschinenzyklus, die Arith-metik auf langen ganzen Zahlen erfordert dagegen spezielle Software und ist recht langsam. DieRechnung auf den Basisvektoren b1, . . . ,bn wird in exakter Arithmetik durchgefuhrt. Fur dieRechnung auf den rationalen Zahlen µi,j , r

2i,i fur i, j ≤ k genugen dagegen gute Naherungen in

Gleitkomma-Arithmetik.

Page 39: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4.4. LLL-REDUKTION MIT GLEITKOMMA-ARITHMETIK 39

Definition 4.4.1 (Relativer Fehler)Eine Naherung f ′ zu f ∈ R hat relativen Fehler ε > 0, wenn |f − f ′| ≤ εmin(|f |, |f ′|). 1

Wir betrachten die LLL-Reduktion nach Algorithmus 4.2.1 fur den Fall, dass alle rationalenZahlen µi,j , r

2j,j mit relativem Fehler ε berechnet werden. Dann fuhrt die Langenreduktion des

Vektors bk nur zu |µk,j | ≤ 12 + ε anstelle von |µk,j | ≤ 1

2 fur j = 1, . . . , k − 1. Wir vernachlassigendiese geringfugige Abschwachung der Langenreduktion.

Satz 4.4.2Haben bei der LLL-Reduktion mit δ die rationalen Zahlen ‖πk−1(bk−1)‖2, ‖πk−1(bk)‖2 bei derEntscheidung uber den Austausch bk−1 ↔ bk stets relativen Fehler ≤ ε, dann ist die AusgabebasisLLL-reduziert mit δ− := δ(1 − ε)/(1 + ε). Die Anzahl der Austausche bk−1 ↔ bk ist hochstensn log1/δ+ M mit δ+ := δ(1 + ε)/(1− ε), sofern δ+ < 1.

Beweis. Angenommen, bei der LLL-Reduktion mit δ− und exakter Rechnung erfolgt ein Aus-tausch bk−1 ↔ bk. Dann gilt δ−‖πk−1(bk−1)‖2 > ‖πk−1(bk)‖2. Fur die Naherungen mit relativemFehler ≤ ε folgt — es bezeichnet stets f ′ eine Naherung zu f :

δ−(1 + ε)‖πk−1b‖′2 > ‖πk−1(bk)‖′2(1− ε).

Somit erfolgt der Austausch bk−1 ↔ bk auch mit δ = δ−(1 + ε)/(1 − ε) und Naherungen. Weilalle Austausche bk−1 ↔ bk der LLL-Reduktion mit δ− und exakter Rechnung korrekt ausgefuhrtwerden, ist die Ausgabebasis LLL-reduziert mit δ−

Wir zeigen, dass die LLL-Reduktion mit Naherungen abbricht sofern δ+ := δ(1+ε)/(1−ε) < 1.Es folgt namlich ein Austausch bk−1 ↔ bk mit δ und Naherungen, dann gilt

δ‖πk−1(bk−1)‖′2 > ‖πk−1(bk)‖′2

und somit δ(1+ε)‖πk−1(bk−1)‖2 > ‖πk−1(bk)‖2(1−ε). Dann wird Dk−1 beim Austausch bk−1 ↔bk um den Faktor δ+ = δ(1 + ε)/(1− ε) erniedrigt, sofern δ+ < 1. Damit ist die Anzahl der Aus-tausche hochstens n log1/δ+(M). �

Wegen Satz 4.4.2 gilt es bei der LLL-Reduktion mit Gleitkomma-Zahlen µi,j , rj,j den relativenFehler zu begrenzen. Wichtigste Punkte dabei sind

1. War vor der Langenreduktion von bk auf Stufe k |µk,j | ≈ 2m, dann gehen bei der Reduktionauf |µk,j | ≤ 1

2 die m+ 1 fuhrenden Bits der Gleitkomma-Zahl µ′k,j verloren. Man kann denrelativen Fehler von µ′k,j wieder klein machen durch Neuberechnung von µk,j gemaß Lemma4.2.2.

2. Bei der Neuberechnung von µk,j gemaß Lemma 4.2.2 rechnet man 〈b′k,b′j〉 in Gleitkomma.Im Falle dass |bk,bj〉| ≈ 2−m‖bk‖‖bj‖, gehen dabei m Prazisionsbits verloren. Ist m zugroß, rechnet man besser 〈bk,bj〉 exakt.

Mit diesen Maßnahmen haben Schnorr, Euchner [SE94] ein LLL-Verfahren implementiert. DieserAlgorithmus ist stabil, etwa bis zur Dimension 350.

Auf Stufe k sind die µi,j mit i, j > k im allgemeinen sehr groß. Statt der Schranke vonLemma 4.2.4 gilt nur |µi,j |2 ≤ i+3

4 Dj−1. Unsere Variante des LLL-Verfahrens vermeidet die Gram-Schmidt-Koeffizienten µi,j mit i, j > k und rechnet auf Stufe k nur mit den Großen µi,j , r

2j,j mit

1 ≤ j ≤ i ≤ k nach den Formeln von Lemma 4.2.2. Diese sind geeignet fur das Rechnen mit

1Wir definieren den relativen Fehler ε von f ′ zu f symmetrisch in f und f ′, ublich ist es nur |f − f ′| ≤ ε|f | zufordern.

Page 40: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

40 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

Gleitkommazahlen µi,j , r2j,j . Weil die Basis b1, . . . ,bk−1 stets LLL-reduziert ist, gilt nach Lemma

4.1.2

r2j,j ≥ ‖/mathbfb1‖

2α1−j fur j = 1, . . . , k − 1.

Die Divisoren r2j,j bei der Berechnung von µk,j gemaß Lemma 4.2.2 sind daher nicht beliebig klein.

Dies ist wichtig fur die Begrenzung von Gleitkommafehlern.

4.5 LLL-Reduktion mit ganzzahliger Gram-Matrix

Fur die LLL-Reduktion einer Basismatrix B ∈ Rm×n in ganzzahliger Arithmetik ist es nichterforderlich, daß B ganzzahlig ist. Es genugt, die Ganzzahligkeit der Gram-Matrix B>B. IstB>B ∈ Zn×n gegeben, so kann man mit den Eintragen von B>B rechnen. Genauer gesagt,genugen die

(n+1

2

)Eintrage 〈bi,bj〉 fur 1 ≤ i ≤ j ≤ n. Gegebenenfalls fuhrt man auch die Trans-

formationsmatrix T ∈ Zn×n mit, welche die Startbasis BStart in die aktuelle Basis B uberfuhrt,B = BStartT .

Aktualisierung von B>B. Beim Schritt bk := bk − µbj der Langenreduktion von bk auf Stufek wird B>B wie folgt aktualisiert:

〈bk,bi〉 := 〈bk,bi〉 − µ〈bj ,bi〉 fur i = 1, . . . , n, i 6= k

〈bk,bk〉 := 〈bk,bk〉 − 2µ〈bk, bj〉+ µ2〈bj ,bj〉

Die Aktualisierung von B>B bei der Langenreduktion von bk geht in O(kn) arithmetischen Schrit-ten.

Aktualisierung von T. Die Aktualisierung von T = [ti,j ]1≤i,j∈n beim Schritt bk := bk − µbjgeht in O(n) Schritten

tj,i := tj,i + µ tk,i fur i = 1, . . . , n.

Dann geht die Aktualisierung von T bei der Langenreduktion von bk in O(kn) arithmetischenSchritten. Beim Austausch bk−1 ↔ bk werden B>B und T durch O(n) Datentransporte aktua-lisiert, indem O(n) Eintrage in B>B und T getauscht werden. Damit kostet eine Iteration derLLL-Reduktion O(n2) Schritte und es folgt der

Satz 4.5.1Zu gegebener ganzzahliger Gram-Matrix B>B ∈ Zn×n geht die LLL-Reduktion gemaß Alg. 4.2.1

in O(n3 log1/δM) arithmetischen Schritten auf ganzen Zahlen der Bitlange O(n+ log2M).

Dabei ist M wie fur ganzzahlige Eingabebasen erklart. Im Falle einer ganzzahligen Basis B ∈ Zm×nmit m >> n ist es wegen Satz 4.5.1 gunstig, vorweg B>B in O(n2m) Schritten zu berechnen. DieLLL-Reduktion geht so in O(n2m+n3 log1/δM) Schritten, gegenuber O(n2m log1/δM) Schrittenvon Algorithmus 4.2.1.

4.6 LLL-Basen mit großem Approximationsfaktor

Wir konstruieren LLL-Basen mit großem Approximationsfaktor ‖b1‖ /λ1, vergleiche Satz 4.1.4.

Satz 4.6.1Jede Gitterbasis b1, . . . ,bn mit |µi,j | = |rj,i/ri,i| ≤ 1

2 und |µi+1,i|2 ≤ 112 fur 1 ≤ i < j ≤ n und

r2i+1.i+1 = r2

i,i · (1− µ2i+1,i) fur i = 1, . . . , n− 1(4.5)

Page 41: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

4.6. LLL-BASEN MIT GROSSEM APPROXIMATIONSFAKTOR 41

ist eine LLL-Basis mit γn ‖b1‖2 ≥ λ21

(1211

)n−12 .

Beweis. Die Basis ist LLL-reduziert mit δ = 1, weil nach (4.5):

r2i+1,i+1 = r2 + i, i+ µ2

i+1,ir2i,i = r2i,i

Es folgt: λ21 ≤ γn(detL)

2n = γn

∏ni=1 r

2ni,i = γn ‖b1‖2

∏n−1i=1 (1− µ2

i+1,i)n−in

und somit fur |µi+1,i|2 ≥ 1/12

‖b1‖2 /λ21 ≥ ·

(1211

) 1n

∑n−1i=1 i

/γn ≥ ·(

1211

) 1n (n−1

2 )/γn ≥ ·

(1211

)n−12 /γn. �

Beachte, fur zufallige µi+1,i ∈R [− 12 ,+

12 ] ist der Erwartungswert von µ2

i+1,i gerade 112 . Damit

ist der Approximationsfaktor ‖b1‖ /λ1 fur zufallige LLL-Basen im Mittel Θ( 1211

n−12 /n).

Page 42: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

42 KAPITEL 4. LLL-REDUZIERTE GITTERBASEN

Page 43: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 5

Losen von Subsetsum-Problemendurch kurze Gittervektoren

Wir losen fast alle Subsetsum-Probleme kleiner Dichte d durch Vektoren der Lange λ1 des Lagarias-Odlyzko-Gitters und dann des CJLOSS-Gitter. Im CJLOSS-Gitter entsprechen Losungen desSubsetsum-Problems besonders kurzen Gittervektoren. Die Losung gelingt fur fast alle Subsetsum-Probleme der Dichte kleiner 0.9408 und fur Dimension n ≤ 80 in der Praxis sogar effektiv durchLLL-Reduktion. Fast alle CJLOSS-Gitter fur Subsetsum-Probleme der Dichte d < 0.9408 habeneine Packungsdichte 4 mit 1

n log24 ≥ −1.0158 fur hinreichend grosse Dimension n.

5.1 Das Subsetsum-Problem

Definition 5.1.1 (Subsetsum-Problem, oder Knapsack- bzw. Rucksack-Problem.)• Gegeben: n ∈ N, Gewichte a1, . . . , an ∈ N und s ∈ N

• Finde e ∈ {0, 1}n mitn∑i=1

aiei = s oder zeige, daß kein solcher Vektor existiert.

Nach Satz 11.2.5 auf Seite 97 ist das Subsetsum-Entscheidungsproblem NP-vollstandig, sogar furbeliebig kleine Dichte d.

Annahmen. Der Gewichtsvektor (a1, . . . , an) variiere uber [1, A]n ⊂ Nn fur ein beliebiges A ∈ N.Es wird die Existenz einer Losung e = (e1, . . . , en) ∈ {0, 1}n vorausgesetzt.

Die Wahrscheinlichkeiten und die”fast alle“-Aussagen in diesem Kapitel beziehen sich auf

zufallig gewahlte (a1, . . . , an) ∈R [1, A]n.

Definition 5.1.2 (Inverses Subsetsum-Problem)Im inversen Problem wird s durch s := t− s mit t =

∑ni=1 ai ersetzt.

Jede Losung e des Ausgangsproblems liefert eine Losung e des inversen Problems und umgekehrt:

ei := 1− ei i = 1, . . . , n

Eine der beiden Losungen e, bzw e hat hochstens n/2 Einsen.

Wir losen das Subsetsum-Problem durch ein SVP-Orakel welches zur Basis des Gitters Leinen Gittervektor der Lange λ1 in Euklidischer Norm liefert. Wir zeigen, daß das SVP-Orakelfur fast alle (a1, ..., an) ∈ [1, A]nentweder das gegebene Subsetsum-Problem oder sein inverses lost.Die Wahrscheinlichkeit eines Misserfolgs wird fur zufallige (a1, ..., an) ∈ [1, A]n mit wachsendem n

43

Page 44: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

44KAPITEL 5. LOSEN VON SUBSETSUM-PROBLEMEN DURCH KURZE GITTERVEKTOREN

beliebig klein, wenn nur die Dichte d hinreichend klein ist.

Dichte d des Subsetsum-Problems

d :=n

log2( maxi=1,...,n

ai)und somit max

i=1,...,nai = 2n/d.

Fur Dichte d � 1 gibt es bei zufalliger Wahl der Gewichte a1, . . . , an “in der Regel“ vieleLosungen. Am schwierigsten gelten zufallige Subsetsum-Probleme mit Dichte nahe bei 1.

In kleiner Dimension n findet man einen kurzesten Gittervektor durch Gitterbasenreduktionsiehe [SH95, SE94]. Dies fuhrt zu Angriffen auf Krypto-Schemata, die auf Subsetsum-Problemenbasieren. C.P. Schnorr und H.H. Horner [SH95] haben das Chor-Rivest-System [CR88] mittelsGitterreduktion angegriffen.

5.2 Die Lagarias-Odlyzko-Gitterbasis

J.C. Lagarias und A.M. Odlyzko [LaOd85] schlagen die folgende Gitterbasis B vor um das Subsetsum-Problem durch ein SVP-Orakel zu L(B) zu losen. Die letzte Zeile von B wird von uns zur Be-weisvereinfachung hinzugefugt. Wir uberarbeiten die Darstellung von [CJLOSS92].

B = [b1, · · · ,bn+1] :=

1 0 · · · 0 00 1 0 0...

. . ....

...0 0 1 0

Na1 Na2 · · · Nan Ns0 0 · · · 0 1

∈ Z(n+2)×(n+1)(5.1)

und L(B) = LLO sei das zugehorige Gitter. Die Losung e ∈ {0, 1}n von∑ni=1 xiei = s liefert den

Losungsvektor

e :=(∑n

i=1 eibi)− bn+1 = (e1, . . . , en, 0,−1)t ∈ LLO.(5.2)

Entweder e oder e = 1 − e, die Losung zum inversen Subsetsum-Problem, hat hochstens n/2Einsen und liefert damit einen Losungsvektor in LLO der Lange ≤

√n/2 + 1. Fur jeden Vektor

x = (x1, ..., xn+1,−y) ∈ LLO mit ‖x‖ = λ1 gilt somit fur N ≥√n/2:

∑i 6=n+1 |xi| ≥ 2, xn+1 = 0.

Satz 5.2.1Fur n > n0 und N ≥

√n/2 werden fast alle losbare Subsetsum-Probleme zu (a1, . . . , an) ∈ [1, A]n

der Dichte d < 0.6463 durch jeden Vektor der Lange λ1 von LLO fur s oder s = t− s gelost.

Beweis. Sei ‖e‖2 ≤ n/2. Das SVP-Orakel liefere den Gittervektor x :=∑ni−1 xibi − ybn+1 der

Lange λ1 mit y ≥ 0. Lost x das Subsetsum-Problem nicht so gilt

‖x‖ = λ1 ≤√n/2 + 1, x 6= e.(5.3)

Wir analysieren die Wahrscheinlichkeit des Misserfolgs

P (n) := Ws[ Es existiert ein x ∈ LCJLOSS mit (5.3)]

bezuglich zufalliger (a1, . . . , an) ∈R [1, A]n. Fur N ≥√n/2 wurde oben gezeigt dass xn+1 = 0

und somit∑ni=1 aixi = ys. Offenbar gilt 0 ≤ y < λ1 ≤

√n/2 + 1. Wir setzen x := (x1, ..., xn).

Page 45: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

5.3. DAS CJLOSS-GITTER 45

Dann gilt

P (n) ≤Ws

[∃x ∈ Zn, x /∈ {0,±e}, ‖x‖ ≤ ‖e‖

∃y ∈ Z : 0 ≤ y <√n/2 + 1,

∑ni=1 ai(xi − eiy) = 0

]

Faktor 1︷ ︸︸ ︷Ws[∑n

i=1 ai(xi − eiy) = 0 fur feste e, x, y mit ‖x‖ ≤ ‖e‖, x 6= e, 0 ≤ y <√n/2 + 1

]·∣∣∣{x ∈ Zn : ‖x‖ ≤

√n/2

}∣∣∣︸ ︷︷ ︸Faktor 2

·∣∣∣{y ∈ Z : 0 ≤ y <

√n/2 + 1

}∣∣∣︸ ︷︷ ︸Faktor 3

Wir schatzen die drei Faktoren nach oben ab:

1. Fur feste e1, ..., en, x1, ..., xn, y ist die Gleichung∑ni=1 ai(xi − eiy) = 0 hochstens mit

Wahrscheinlichkeit n/A erfullt, denn falls xi 6= eiy ist ai durch die aj mit j 6= i bestimmt.

2. J.C.Lagarias und A.M. Odlyzko [LaOd85] haben gezeigt, daß fur hinreichend große n gilt:∣∣∣{x ∈ Zn : ‖x‖ ≤√n/2

}∣∣∣ ≤ 2c0n mit c0 = 1.54725

3. Es gilt:∣∣∣{y ∈ Z : 0 ≤ y <

√n/2 + 1

}∣∣∣ ≤√n/2 + 1.

Damit folgt P (n) ≤ 2c0n

A n√n/2 + 1. Wegen 1/d > 1.547269 > c0 und maxi=1,...,n ai =

2n/d gilt A ≥ maxi=1,...,n

ai ≥ 2n/d und somit limn→∞

P (n) = 0 fur d < 0.6463. �

5.3 Das CJLOSS-Gitter

M.J. Coster, A. Joux, B.A. LaMacchina, A.M. Odlyzko, C.P. Schnorr und J. Stern [CJLOSS92]ersetzen den Vektor bn+1 der Basis (5.1) durch b′n+1 := ( 1

2 , . . . ,12 , Ns, 1)t und erhohen damit die

Grenzdichte von 0, 6463 auf 0, 9408. Die CJLOSS-Basis ist

B′ = [b1, · · · ,bn,b′n+1] :=

1 0 · · · 0 12

0 1 0 12

.... . .

......

0 0 1 12

Na1 Na2 · · · Nan Ns

0 0 · · · 0 1

∈ 1

2 Z(n+2)×(n+1)(5.4)

und LCJLOSS = L(B′) sei das zugehorige Gitter. Die letzte Zeile von B′ dient der Beweisverein-fachung. Die Losung e ∈ {0, 1}n des Subsetsum-Problems liefert den Losungsvektor

e′ :=∑ni=1eibi − b′n+1 = (e1 − 1

2 , e2 − 12 , . . . , en −

12 , 0,−1)t ∈ LCJLOSS(5.5)

Offenbar gilt ‖e′‖ =√n/4 + 1 und damit ist der Losungsvektor e′ der CJLOSS-Basis bis zu einem

Faktor√

2 kleiner als der Losungsvektor e der Lagarias-Odlyzko-Basis.

Satz 5.3.1Fur n > n0 und N ≥

√n/4 werden fast alle losbare Subsetsum-Probleme zu (a1, . . . , an)

t ∈ [1, A]n

der Dichte d < 0.9408 durch jeden Vektor der Lange λ1 von LCJLOSS gelost.

Beweis. Das SVP-Orakel liefere x′ =∑ni=1 yibi−yb′n+1 = (x1, ..., xn+2)t ∈ LCJLOSS mit y ≥ 0.

Bei Misserfolg gilt

‖x′‖ = λ1 ≤ ‖e′‖ =√n/4 + 1, x′ 6= e′, 0 ≤ y < λ1(5.6)

Page 46: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

46KAPITEL 5. LOSEN VON SUBSETSUM-PROBLEMEN DURCH KURZE GITTERVEKTOREN

Beh.: xn+1 = N(∑ni=1 aiyi − ys) = 0.

Denn aus xn+1 6= 0 und N ≥√n/4 und weil offenbar xi 6= 0 fur zwei i 6= n+1 folgt ‖x′‖2 > n

4 +1,ein Widerspruch. Ferner gilt:

xi = yi − 12y fur i = 1, . . . , n(5.7) ∑n

i=1 ai(yi − yei) = 0(5.8)

Es bezeichne P ′(n) := Ws[ ∃x′ ∈ LCJLOSS mit (5.6), (5.7), (5.8) ] die Wahrschein-lichkeit des Misserfolgs fur zufallige (a1, . . . , an)t ∈R [1, A]n, ferner 1/2 := ( 1

2 , ...,12 )t, x :=

(x1, ..., xn)t ∈ Zn− 1/2 · {0, 1}. Offenbar gilt x′ 6= e′ gdw ∃j : yj 6= yej . Zwar hangen x, y von denai ab, werden aber in der Ws-Analyse fixiert. Es folgt

P ′(n) ≤

Faktor 1︷ ︸︸ ︷Ws

[fur feste e ∈ {0, 1}n, x ∈ Zn − 1/2 · {0, 1}, y ∈ Z, 0 ≤ y <

√n/4 + 1,

∃j : yj 6= yej , ‖x‖ ≤√n/4,

∑ni=1 ai(yi − yei) = 0

]

·∣∣∣{x ∈ Zn − 1/2 · {0, 1} : ‖x‖ ≤

√n/4

} ∣∣∣︸ ︷︷ ︸Faktor 2

·∣∣∣{y ∈ Z : 0 ≤ y <

√n/4 + 1

}∣∣∣︸ ︷︷ ︸Faktor 3

Wir schatzen die drei Faktoren nach oben ab:

1. Fur festes j mit yj 6= yej ist die Gleichung∑ni=1 ai(yi − yei) = 0 mit Wahrscheinlichkeit

≤ 1/A erfullt, denn aj ist durch die ai mit i 6= j bestimmt. Somit fur alle j: Faktor 1 ≤ n/A.

2 J.E. Mazo und A.M. Odlyzko [MaOd90] beweisen fur hinreichend grosses n und alle u ≥ 0∣∣∣{x ∈ Zn + 1/2 · {0, 1} : ‖x‖ ≤√n/4

}∣∣∣ ≤ eδ(u)n + 2n fur δ(u) = u/4 + ln θ(e−u),

θ(z) := 1+2∑∞k=1 z

k2 . Fur uo = 1.8132 gilt δ ≈ 0.7367 und eδ(uo)n ≤ 2c′on mit c′o = 1.0629 · · · .

3. Offenbar gilt Faktor 3 ≤ 1 +√n/4 + 1.

Somit gilt P ′(n) ≤ (1 +√n/4 + 1) 2c

′0n n/A und wegen 1/d > 1.0628 · · · > c′0 und

A ≥ maxi=1,...,n

ai ≥ 2n/d folgt die Behauptung limn→∞

P ′(n) = 0. �

Towards NP-hardness of SVP. Die Menge der losbaren Subsetsum-Probleme der Dichted < 0.9408 ist NP-vollstandig. Satz 5.3.1 liefert eine Polynomialzeit-Transformation von Sub-setsumproblemen mit d < 0.9408 auf SVP, mit Ausnahme der Misserfolge. Wir eliminieren dieMisserfolge fur losbare Subsetsumprobleme mit hochstens c(a, s) = O(1) linear unabhangigenVektoren b =

∑ni=1 yibi − yb′n+1 6= ±e′ in L = LCJLOSS der Lange ‖b‖2 ≤ n

4 + 1.

Fur c = c(a, s) gibt es 1 ≤ i1 < · · · < ic ≤ n so dass die reduzierten Vektoren∑ck=1 yikbik fur

c solcher b linear unabhangig von∑ck=1 eikbik sind. Wir erraten i1, ...., ic und ei1 , ..., eic ∈ {0, 1}.

Wir reduzeren die Basisvektoren auf die Zeilen i ∈ [1, n]red := [1, n] − {i1, ..., ic}, und reduzierensomit L auf ein Gitter Lred der Dimension n− c und das Subsetsumproblem auf∑

i∈[1,n]redaiei = sred, sred := s−

∑ck=1 aikeik

einem Subsetsumproblem der Dimension n − c. In Lred ist b′n+1 durch b′redn+1 mit sred ersetzt.Das SVP-Orakel liefert zum Gitter Lred den Vektor e′red =

∑i∈[1,n]red

aiei − b′redn+1 der Lange√(n− c)/4 + 1. Entscheidend ist, dass die storenden kurzen Vektoren b 6= ±e′ von L durch die

Reduktion stark vergrossert werden, sofern∑ck=1 aik(yik − eik) 6= 0. Dies beweist Teil 1. von

Satz 5.3.21. Durch 2c

(nc

)Aufrufe des SVP-Orakels auf die Gitter Lred zu L = LCJLOSS mit 1 ≤ i1 < · · · <

ic ≤ n und ei1 , ..., eic ∈ {0, 1} werden alle Subsetsumprobleme mit c(a, s) ≤ c fur alle d gelost.

2. Der Anteil der Subsetsumprobleme mit c(a, s) > c unter den (a, s) ∈ [1, A]n[1, n2A], A ≥ 2 ·2n/dist hochstens P ′(n)c.

Page 47: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

5.4. GITTER MIT GROSSER PACKUNGSDICHTE 47

Beweis. 2. Wir schatzen den Anteil der (a, s) ∈ [1, A]n[1, n2A] mit c(a, s) > c ab, analogzur oberen Schranke von P ′(n) im Beweis von Satz 5.3.1. Es gibt c(a, s) linear unabhangige(y1,j , ..., yn,j , yj)

t ∈ Zn+1 fur j = 1, ..., c mit bj =∑ni=1 yi,jbi− yjb′n+1 6= ±e′ und ‖bj‖2 ≤ n

4 + 1.Fur diese c Vektoren bj ∈ L gilt

∑ni=1 aiyi,j = yjs und somit

(5.8)∑ni=1 ai(yi,j − yjei) = 0 fur j = 1, ..., c

Diese Gleichungen bestimmen c der a1, ..., an durch die ubrigen n − c der ai. Der Anteil der(a1, ..., an) ∈ [1, A]n der Dichte d < 0.9408, der diese c Gleichungen (5.8) erfullt, ist dem Beweisvon Satz 5.3.1 folgend kleiner gleich P ′(n)c mit lim

n→∞P ′(n) = 0. �

Fakt. Nach Satz 5.3.2 lost das SVP-Orakel alle Subsetsumprobleme mit konstantem c(a, s) durchpolynomial viele Aufrufe. Dies macht den Anteil der Misserfolge bei der Reduktion von Subsetsummit d < 0.9408 auf SVP vernachlassigbar klein, kleiner als jeder polynomiale Bruchteil.

Satz 5.3.3Losbare Subsetsum-Probleme werden fur n ≥ no und N ≥ 1.163n−1

√n/4 + 1 fur fast alle

(a1, . . . , an)t ∈ [1, A]n der Dichte d < 4.8/n durch den ersten Vektor jeder LLL-Basis zu δ = 0.99

von LCJLLOSS gelost, und zwar in Polynomialzeit.

Beweis. (Bezeichnungen wie im Beweis von Satz 5.3.1, B′ = [b1.....b′n+1] ist die Basis (5.4) )

Fur den ersten Vektor b einer LLL-Basis von LCJLOSS gilt ‖b‖2 ≤ λ21/(δ−1/4)n−1 nach Satz 4.1.4

und somit fur δ = 0.99 dass ‖b‖ ≤ 1.163n−1λ1 ≤ 1.163n−1√n/4 + 1. Sei b =

∑ni=1 yibi − yb′n+1

mit y ≥ 0. Aus N ≥ 1.163n−1√n/4 + 1 folgt

∑ni=1 aiyi = ys und somit gilt (5.8). Das x von (5.7)

erfullt ‖x‖ <√n/4 + 1 · 1.163n.

J.C. Lagarias und A.M. Odlyzko [LaOd85] zeigen im Anschluss an Theorem 3.5 fur das GitterLLO: der Anteil der (a1, . . . , an)

t ∈ [1, A]n der Dichte d < 4.8/n mit b 6= e fur den Losungsvektore ∈ LLO wird fur n → ∞ beliebig klein. Damit gilt fur fast alle (a1, ..., an) ∈ [1, A]n dass b = e.Die Grenzdichte 4.8/n erhoht sich weiter durch starkere Reduktion als LLL. �

Fur n ≤ 80 gilt Satz 5.3.2 in der Praxis schon fur N = 16 und d < 0, 9408 fur den Hauptfalldass

∑ni=1 ei = n/2. Hierzu ersetzt man die LLL-Reduktion durch die starkere BKZ-Reduktion

mit Blockweite 32 und erweitert B′ durch die (n+ 3)-te Zeile (N, ..., N,N 12 ). Siehe [SS12].

5.4 Gitter mit großer Packungsdichte

Zu a = (a1, . . . , an) ∈ Zn bezeichne La = L(Ba) ⊂ Rn+1 das Gitter mit Basismatrix

La := L(Ba). Ba =

1

. . . OO 1

Na1 · · · Nan

∈ R(n+1)n, det BtaBa = 1 +N2

n∑i=1

a2i

Korollar 5.4.1Fur n ≥ n0 und N ≥

√n/4 gilt λ1(La) ≥

√n/4 fur fast alle a ∈ [1, A]n der Dichte d < 0, 9408.

Beweis. Ba = [b1, ...,bn] ist die Basis (5.4) ohne die letzte Zeile und letzte Spalte. Erganze Ba zueiner CJLOSS-Basis (ohne letzte Zeile) mit losbarem Subsetsum-Problem. Im Fall λ1(La) <

√n/4

gibt es einen Gittervektor in LCJLOSS der Lange λ1, der nicht die vorgegebene Subsetsum-Losunge liefert. Dies ist nach Satz 5.3.1 fur fast alle a mit Dichte d < 0, 9408 ausgeschlossen. Satz 5.3.1gilt auch ohne die letzte Zeile der Basismatrix (5.4). Der Beweis in [CJLOSS92] kommt ohne diese

letzte Zeile aus. Dann gilt fur den Losungsvektor e′ ∈ LCJLOSS dass ‖e′‖2 = n/4. �

Page 48: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

48KAPITEL 5. LOSEN VON SUBSETSUM-PROBLEMEN DURCH KURZE GITTERVEKTOREN

Satz 5.4.2Fur n ≥ n0, N2 = n

4 haben fast alle a ∈ [1, 2 ·2n/0,9408]n Dichte d < 0, 9408 und La hat Packungs-

dichte 4 mit 1n log24 ≥ −1, 01583.

Beweis. Fur fast alle a ∈ [1, 2 · 2n/0,9408]n gilt d = nlog2( max

i=1,...,nai)

< 0, 9408. Nach Kor. 5.4.1 gilt

λ21 ≥ n/4 fur fast alle a ∈ [1, A]n. Wegen 4N2n = n2 sowie n1/n = 1 + o(1) und

(detLa)2 = 22n(1 +N2∑ni=1a

2i ) ≤ 22n(1 + 4N2n22n/d)

folgt fur n ≥ n0 dass λ21/(det(La)2/n ≥ n 2−2−2/0,9408(1− o(1)) und somit

4 (La) = 2−nλn1 Vn/ detLa > (n 2−2−2/0,9408(1− o(1)) eπ2nn)n/2 > 0.4945438n > 2−1.01583 n.�

Vergleich mit expliziten Konstruktionen dichter Gitter. Die unendlichen Klassenkorperturmevon Gold, Shafarevitch, Martinet, liefern eine unendliche Folge von Gittern mit

1n log24 ≥ −2, 218,

siehe [CoSl88, Kap. 8, Sektion 7.4]. Eine praktische Methode zum Auffinden solcher Gitter istnicht bekannt. Explizite Konstruktionen von Gittern gibt es [CoSl88], so dass

1n log24 ≥ −1, 2454 fur n ≤ 98328,

1n log24 ≥ −2, 0006 fur n ≤ 1051.

Verglichen damit kann man nach Satz 5.4.2 die grossere Dichte

1n log24 ≥ −1, 0158

fur beliebige n und fast alle a = (a1, . . . , an) ∈ [0, A]n der Dichte d < 0, 9408 leicht erreichen. Manwahlt a zufallig und verifiziert dass λ1(La) = n/4.

Dichteste bekannte Gitterpackung. J.A. Rush [R89] zeigt die Existenz von Gitterpackungender Dimension n = p2 mit p prim und Packungsdichte

1

nlog2(4) ≥ −1− 2(log2 e)/e

2π2

) & −1, 000000007719...

Dies gilt fur die Konstruktion A von [CoSl88] angewandt auf fehlerkorrigierende [n, k, d, p,H]-Codes. Das Ergebnis ist nicht konstruktiv aber der Suchraum fur geeignete Codes ist erheblichkleiner als beim Beweis der Minkowski-Schranke 1

n log24 ≥ −1.

Die obere Schranke fur P′(n) ist scharf und die Grenzdichte d = 0,9408... maximal.Angenommen der kurzeste Gittervektor x′ =

∑ni=1 yibi − yb′n+1 = (x1, ..., xn+2)t von LCJLOSS

lost das Subsetsum-Problem zu a = (a1, ..., an), s nicht. Dann gilt xn+1 = 0 und der Losungsvektore′ :=

∑ni=1 eibi − b′n+1 ∈ LCJLOSS erfullt (5.6).

Satz 5.3.1 schatzt die Anzahl der Losungen (x1, ..., xn, y) ∈ 12Z

n+1 mit (√n/4 + 1)2c

′0 n ab.

Ferner ist fur xi = yi − y2 die Wahrscheinlichkeit fur

∑ni=1 ai(yi − yei) = 0 hochstens n/A. Wegen∑n

i=1 ai(yi − yei) = 0 schranken die Bedingungen

aj = −n∑

i=1,i6=j

aiyi − yeiyj − yej

∈ [1, A] ∩ N fur alle j mit yj 6= yej

die Anzahl der (x1, ..., xn, y) weiter ein. Fur die Varianz V (X) = E[(X − E(X) )2] von X =−∑ni=1,i6=j ai

yi−yeiyj−yej gilt V (X) = O(A2

√n) . Daraus folgt Ws[X ∈ [1, A] ] ≥ Θ(1/

√n). Damit ist

Ws[X ∈ [1, A] ∩ N ] so groß dass dies c′0 nicht erniedrigt. Somit ist die Grenzdichte d = 0, 9408...maximal.

Page 49: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 6

HKZ- und Block-Reduktion vonGitterbasen

Die LLL-Reduktion in Kapitel 4 liefert in Polynomialzeit LLL-Basen b1, ...,bn mit exponentiel-len Approximationsfaktoren ‖b2

i ‖/λ2i ≤ αn fur i = 1, ..., n. Die HKZ-Reduktion nach Hermite

und Korkine-Zolotareff liefert dagegen in Exponentialzeit HKZ-Basen b1, ...,bn mit polynomialenApproximationsfaktoren ‖bi‖2/λ2

i ≤ i+34 fur i = 1, ..., n. Schnorr [S87] entwickelt eine Hierarchie

von Block-Reduktionsverfahren, welche LLL- und HKZ-Reduktion uberbruckt, derart dass hohereLaufzeit die Approximationsfaktoren erniedrigt.

6.1 HKZ-Basen

Zur Basis b1, . . . ,bn des Gitters L sind die projizierten Gitter Li fur i = 1, . . . , n erklart durch

Li = πi(L) ∈ span(b1, ...,bi−1)⊥.

Insbesondere gilt fur jede GNF B = R ∈ Rn×n dass

πi : (r1, ..., rn)t 7→ (0, ..., 0, ri, ..., rn)t ∈ 0i−1Rn−i+1.

C. Hermite [He1850] sowie unabhangig A. Korkine und G. Zolotareff [KZ1873, KZ1877] definiertenHKZ-Basen in der Sprache quadratischer Formen.

Definition 6.1.1 (HKZ-Basis)Eine LLL-Basis B = QR ∈ Rm×n ist HKZ-Basis, wenn fur R = [ri,j ] ∈ Rn×n gilt:

ri,i = λ1(Li(B)) fur i = 1, . . . , n.

Fur jede HKZ-Basis [b1, . . . ,bn] = B = QR sind auch πj{bj , . . . ,bn} und [ri,`]j≤k,`≤n fur1 ≤ j ≤ n HKZ-Basen. Es gilt λ1(Li(B)) = λ1(Li(R)). Jede -Basis approximiert λ2

i mit Approxi-mationsfaktor i+3

4 (fast so gut wie der Approximationsfaktor max(1, i/4) von Satz 2.1.5):

Satz 6.1.2Fur jede HKZ-Basis b1, . . . ,bn von L gilt 4

i+3 ≤ ‖bi‖2/λi(L)2 ≤ i+3

4 fur i = 1, . . . , n.

Dagegen gilt fur LLL-Basen b1, . . . ,bn nach Satz 4.1.4 mit α = 1δ−1/4

α1−i ≤ ‖bi‖2/λi(L)2 ≤ ‖bi‖2 /λi(L)2 ≤ αn−1.

49

Page 50: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

50 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Beweis. Obere Schranke ‖bi‖2λi(L)2 ≤

i+34 : Fur das Gitter Li = πi(L) gilt

‖bi‖ = ri,i = λ1(Li) ≤ λi(L),(6.1)

denn es gibt linear unabhangige Gittervektoren a1, . . . ,ai ∈ L mit ‖a1‖ ≤ · · · ≤ ‖ai‖ ≤ λi(L).Daher gilt πi(aj) 6= 0 fur ein j ≤ i, also πi(aj) ∈ Li \ {0} und somit λ1(Li) ≤ ‖πi(aj)‖ ≤ λi(L).Fur die HKZ-Basis R = [r1, . . . , rn] gilt nach (6.1) dass

‖bi‖2 = ‖ri‖2 =

i∑j=1

r2j,i ≤ r2

i,i + 14

i−1∑j=1

r2j,j ≤ i+3

4 λi(L)2.

Untere Schranke 4i+1 ≤

‖bi‖2λi(L)2 : Nach Definition der HKZ-Basis gilt fur j ≤ i:

r2j,j = λ1(Lj)2 ≤ ‖πj(bi)‖2 ≤ ‖bi‖2 .

Somit ‖bj‖2 =∑j`=1 r

2`,j ≤ r2

j,j + 14

∑j−1`=1 r

2`,` ≤

j+34 ‖bi‖

2.

Es folgt die Behauptung λi(L)2 ≤ maxj=1,...,i ‖bj‖2 ≤ i+34 ‖bi‖

2. �

Zu HKZ-Basen siehe auch [LLS90] von J.C. Lagarias, H.W. Lenstra und C.P. Schnorr.

6.2 Semi Block 2k-Reduktion

Block-reduzierte Gitterbasen bilden eine Brucke, die HKZ-Basen und LLL-Basen verbindet, sieheC.P. Schnorr [S87] [S94]. Wahrend die Algorithmen zur HKZ-Reduktion in Dimension n expontielleLaufzeit in n haben, ist die Block-Reduktion fur Blockweite 20 ahnlich effizient wie die schwachereLLL-Reduktion. Die Variante der Semi-Block-2k-Reduktion hat polynomielle Laufzeit [S87].

Einer GNF R ∈ Rn×n mit n = hk ordnen wir die Untermatrizen R` = [ri,j ]`k−k<i,j≤`k ∈Rk×k der Blockweite k zu fur ` = 1, ..., h. Ferner sei R`,`+1 = [ri,j ]`k−k<i,j≤`k+k ∈ R2k×2k die2k × 2k-Untermatrix von R die R` und R`+1 umfasst. Es bezeichnet D` := (det R`)

2 und B` :=[bk`−k+1, ...,bk`] ist der `-te Block von B.

Definition 6.2.1 (Semi Block 2k-Basis)

Eine Basis B = QR ∈ Rm×n, n = hk ist eine Semi Block-2k-Basis zu δB > 0 wenn

1. R1, ...,Rh ⊂ R HKZ-Basen sind und B langenreduziert.ist

2. HKZ-Reduktion von R`,`+1 fuhrt zu D neu` > δkB Dalt` fur ` = 1, ..., h− 1.

Die Bedingung 2. impliziert dass δkB (D`/D`+1)1/k ≤ βk fur ` = 1, ..., h− 1 fur das folgende βk.

Definition 6.2.2

αk := max r21,1/r

2k,k maximiert uber alle HKZ-GNF R ∈ Rk×k

βk := max(D1/D2

)1/kmaximiert uber alle HKZ-GNF R ∈ R2k×2k.

Fur das α = 43 = 1/(δL − 1/4) der LLL-Basen mit δL = 1 gilt offenbar α2 = β1 = 4

3 . Ferner gilt

αk ≤ k1+ln k [S87]

k/12 ≤ βk ≤ (1 + k/2)2 ln 2+1/k. [GHKN06]

Damit gilt β1/kk → 0 fur k →∞.

Page 51: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.2. SEMI BLOCK 2K-REDUKTION 51

Satz 6.2.3Fur jede Semi Block 2k-Basis B = QR ∈ Rm×n, n = hk zu δB > 0 von L gilt

1. ‖b1‖2 ≤ γk(βk/δkB)

h−12 (detL)2/n,

2. ‖b1‖2 ≤ γkαk(βk/δkB)h−1λ2

1.

Im Vergleich gilt fur LLL-Basen ‖b1‖2 ≤ αn−12 (detL)2/n, ‖b1‖2 ≤ αn−1λ2

1.

Fur Semi Block 2k-Basen wird das α von LLL-Basen ersetzt durch β1/kk /δB = o(1) fur n→∞.

Beweis. 1. Sei D` := (det R`)2. Fur die HKZ-Basis R1 ∈ Rk×k gilt ‖b1‖2 ≤ γkD1/k

1 .

Nach Definition von βk und Definition 6.2.1, Teil 2 gilt D` ≤ (βk/δkB)kD`+1.

Es folgt durch Induktion uber ` fur ` = 1, ..., h = n/k

‖b1‖2 ≤ γkD1/k1 ≤ γk(βk/δ

kB)`−1D1/k

` .(6.2)

Wir ziehen aus dem Produkt dieser h Ungleichungen die h-te Wurzel. Dies liefert die Behauptung:

‖b1‖2 ≤ γk(βk/δkB)(

h2)

1h (detL)

1hk = γk(βk/δ

kB)

h−12 (detL)2/n.

2. Sei b =∑ni=1 uibi ∈ L mit ‖b‖ = λ1, un 6= 0. O.B.d.A. sei n > n− k. Es gilt

‖b1‖2 ≤ γk(βk/δkB)h−1D1/k

h = γk(βk/δkB)h−1(r2

n−k+1,n−k+1 · · · r2n,n)1/k,

Es folgt aus r2n−i,n−i/r

2n,n ≤ αi+1 ≤ αk fur n− k < n− i wegen αi+1 ≤ αi+2 dass

‖b1‖2 ≤ γk(βk/δkB)

h−12 αk r

2n,n ≤ γk(βk/δ

kB)

h−12 αk λ

21 wegen |un| ≥ 1, n > n− k. �

Algorithmus 6.2.1, Semi Block 2k-ReduktionEINGABE LLL-Basis B ∈ Zm×n zu δ, α, n = hk und δB mit 0 < δB < 1.

1. HKZ-reduziere B1 = [b1, ...,bk] und R1, ` := 1

2. HKZ-reduziere R`+1 zu R`+1Tk mit Tk ∈ GLk(Z).

B`+1 := B`+1Tk, erneuere R`,`+1.

3. HKZ-reduziere R`,`+1 zu R`,`+1T2k mit T2k ∈ GL2k(Z).

IF D neu` ≤ δk2B D alt

` THEN [B`,B`+1] := [B`,B`+1]T2k, ` := max(`− 1, 1)

ELSE ` := `+ 1.

IF ` < h THEN GO TO 2 ELSE langenreduziere B.

AUSGABE Semi Block 2k-Basis B.

Korrektheit. Nach Schritt 3 ist b1, ...,bk` nach Langenreduktion eine Semi Block 2k-Basis.

Satz 6.2.41. Alg. 6.2.1 macht hochstens ( 2h2

k +h) log1/δB M Iterationen fur den Wert M := max(‖b1‖ , ..., ‖bn‖)der Eingabebasis. Eine Iteration geht in (2k)k/4 (2k)O(1) arithmetischen Schritten.

2. Alg. 6.2.1 macht hochstens h3

12 log1/δB α Iterationen bis DB ≤ 1 erreicht ist.

Page 52: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

52 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Beweis. 1. Jeder Schritt 3 mit ` := max(`− 1, 1) erniedrigt die Lovasz Invariante zu k

D := Dh−11 Dh−2

2 · · · D1h−1 so dass Dneu ≤ δk

2

B Dalt.

Die Eingabebasis hat den D-Wert DEin ≤Mn(h−1) und fur die Ausgabebasis gilt DAus ≥ 1.Damit ist die Anzahl #It−der Schritte 3 mit ` := max(`− 1, 1) beschrankt durch

#It− ≤ n(h−1)k2 log1/δB M = h

k (h− 1) log1/δB M.

Fur die Gesamtzahl #It der Schritte 3 folgt die Behauptung

#It = h− 1 + 2#It− ≤ ( 2h2

k + h) log1/δB M .

Die HKZ-Reduktion von R`,`+1 ∈ R2k×2k geht in (2k)k/4+o(k) arithmetischen Schritten.

2. Wir ersetzen die Lovasz Invariante D durch die folgende Invariante

DB :=∏h−1`=1 (D`/D`+1)h

2/4−(h/2−`)2 .

Der Exponent h2/4 − (h/2 − `)2 ist maximal bei ` = h/2, er ist null fur ` = 0 und ` = h und ist

symmetrisch zu ` = h/2. Fur die LLL-Eingabebasis gilt D` ≤ αk2D`+1 und somit gilt fur ihren

DB-Wert DEinB dass DEin

B ≤ αk2s fur s =def

∑h−1`=1 h

2/4− (h/2− `)2.

Die bekannte Summe s :=∑h−1`=1 `

2 = h(h− 1)(h− 1/2)/3 liefert∑h−1`=1 (h/2− `)2 = −h2(h− 1)/4 + s = h(h− 1)(h− 2)/12

und somit s = (h+ 1)h(h− 1)/6 = (h3 − h)/6.

Es folgt DEinB ≤ αk2(h3−h)/6.Ein aktiver Schritt 3 andert von DB nur den Faktor∏

t=`−1,`,`+1

(Dt/Dt+1)t(h−t) = D(`−1)(h−`+1)`−1 (D`D`+1)h−2`−1D2

` .

Ein aktiver Schritt 3 lasst D`−1 und D`D`+1 unverandert und bewirkt somit D neuB ≤ δ2k2

B D altB .

Fur die Anzahl der Iterationen zum Erreichen von DB ≤ 1 folgt

#It ≤ log1/δ2k

2BDEinB ≤ k2h3

61

2k2 logδB α = h3

12 logδB α. �

Die Schrittzahl (2k)k/4+O)1) fur die HKZ-Reduktion von R`,`+1 ∈ R2k×2k ist polynomial wenn

(2k)k/4 = nO(1), also wenn k = O(log n/ log log n).

Alternativer Beweis zu 2. Beh.: #It ≤ h3(1+o(1))2 log1/δB α — auch fur DAus

B � 1. Fur die

LLL-Eingabebasis gilt r2j,j ≤ αn−1λ2

j . Damit gilt fur den Startwert DEin der Lovasz InvarianteD der Eingabebasis

DEin = Dh−11 Dh−2

2 · · · D1h−1

≤ (λ2(h−11 · · ·λ2(h−1)

k ) (λ2(h−2)k+1 · · ·λ2(h−2)

2k ) · · · · · · (λ2kh−2k+1 · · ·λ2

kh−k)α(n−1)nh−12 .

Andererseits gilt fur HKZ-Basen dass r21,1/r

2j,j ≤ αj < j1+ln j [S87] und somit

D ≥ (λ2(h−1)1 · · ·λ2(h−1)

k ) (λ2(h−2)k+1 · · ·λ2(h−2)

2k ) · · · · · · (λ2kh−2k+1 · · ·λ2

kh−k) /n(1+lnn)n(h−1)/2

Der D-Wert der Ausgabebasis ist nicht kleiner als der einer HKZ-Basis, daher folgt

#It ≤ log1/δBk

2 (DEin/DAus)

≤ 1k2

(n−1)n(h−1)2 log1/δB α+ n(h−1)

2k2 log1/δB n1+lnn

Page 53: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.3. PRIMAL-DUALE REDUKTION 53

≤ h3(1+o(1))2 log1/δB α sofern log1/δB n

1+lnn = o(n).

Demgegenuber liefert der Beweis zu Satz 6.2.4, Teil 2 eine obere Schranke fur #It, die um denFaktor 1

6 kleiner ist, aber die Voraussetzung min`D`/D`+1 ≥ 1 gilt mit wenigen Ausnahmen.

Algorithmus 6.2.2, Beschleunigte Semi Block 2k-Reduktion

EINGABE LLL-Basis B = QR ∈ Zm×n zu (δL, α), n = hk; δB mit 0 < δB < 1.

1. Wahle `, 1 ≤ ` < n so dass D`/D`+1 maximal ist.

HKZ-reduziere R` zu R`Tk mit Tk ∈ GLk(Z), B` := B`Tk.

2. HKZ-reduziere R`+1 zu R`+1Tk mit Tk ∈ GLk(Z),

B`+1 := B`+1Tk, erneuere R`,`+1.

3. HKZ-reduziere R`,`+1 zu R`,`+1T2k mit T2k ∈ GL2k(Z).

IF D neu` ≤ δk2B D alt

` THEN [B`,B`+1] := [B`,B`+1]T2k, GO TO 1

HKZ-reduziere alle R` zu R`Tk, B` := B`Tk, und langenreduziere B.

AUSGABE Semi Block 2k-Basis B.

Satz 6.2.5 (zu Alg. 6.2.2)

1. Bei der Wahl von ` ist B Semi Block 2k-Basis fur δB mit δkB(D`/D`+1)1/k = βk.

2. Sobald max` (D`/D`+1) ≤ αk2/2tβkk erreicht ist, erreicht Alg. 6.2.2 mit hochstens h3/12

Iterationen und δB = α−1/2t dass DB ≤ 1 und damit dass im Mittel der ` : D`/D`+1 ≤ βkk .

Beweis. 2. Wir folgen dem Beweis zu Satz 6.2.4, Teil 2. Wie fur die Schranke von DEinB gilt

beim Erreichen von max` D`/D`+1 ≤ αk2/2tβkk dass DB ≤ (αk

2/2tβkk )s ≤ (αk2/2tβkk )h

3/6. Danach

fuhrt jeder Schritt 3 mit δB = α−1/2t zu D neuB ≤ δ2k2

B D alt = α−k2/2tD alt. Nach h3

12 log1/δB α

solchen Iterationen gilt D neuB ≤ βksk ≤ β

k h3/6k und somit im Mittel D`/D`+1 ≤ βkk . �

Folgerungen. Wenn fur die Ausgabebasis von Alg. 6.2.2 mit δB := α−1/2t gilt dass D`/D`+1 & βkkfur alle ` dann folgt #It . h3

12 . Offen bleibt, wie sich die D neu` /D alt

` -Werte der Schritte 3 verteilen,welche D`/D`+1 weiter zu D`/D`+1 � βkk erniedrigen. Wenn auch hier kleine Werte D neu

` /D alt`

ahnlich haufig sind, dann macht Alg. 6.2.2 mit wachsendem δB = α−1/2j fur j = 1, ..., t δB =α−1/2t → 1 fur t→∞ nur O(h3t) Iterationen, wahrend Alg. 6.2.1 nach Satz 6.2.4 bis zu O(h32t)Iterationen ausfuhrt. Dies ermoglicht einen exponentiellen Speed-up durch Alg. 6.2.2.

6.3 Primal-Duale Reduktion

Koy’s primal-duale Reduktion [Ko05] erniedrigt D` = (det R`)2 wie folgt durch HKZ-Reduktion in

Dimension k: Maximiere rk`,k` uber alle GNF von R`T mit T ∈ GLk(Z) zu maxT

rk`,k` durch HKZ-

Reduktion der dualen Basis R∗` . Minimiere rk`+1,k`+1 durch HKZ-Reduktion von R`+1. DanachLLL-reduziert man R`,`+1, wenn dies rk`,k` und damit D` erniedrigt.

Fur Gitter der Dimension n = hk wird mit polynomial vielen HKZ-Reduktionen der Dimensionk die Approximation ‖b1‖2 /λ2

1 ≤ γk(αγ2k)h−1 erreicht. Damit wird βk/δ

kk in Satz 6.2.3 ersetzt

durch αγ2k. Die primal-duale Reduktion iteriert HKZ-Reduktion in Dimension k, wahrend Semi

Block 2k-Reduktion auf der HKZ-Reduktion in Dimension 2k aufbaut. Primal-duale Reduktionmit Blockbreite 2k ersetzt βk/δ

kk in Satz 6.2.3 durch die kleinere Konstante

√αγk = Θ(k).

Page 54: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

54 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Definition 6.3.1Eine Basis B = QR ∈ Rm×hk ist primal-duale Basis mit Blockweite k wenn

1. R1, ...,Rh ⊂ R HKZ-Basen sind und B langenreduziert ist,

2. maxT

r2k`,k` ≤ α r2

k`+1,k`+1 fur ` = 1, ..., h− 1,

dabei wird r2k`,k` von GNF(R`T) maximiert uber alle T ∈ GLk(Z).

Satz 6.3.2 (Ko05, GHKN06)Fur jede primal-duale Basis B = QR ∈ Rm×n, n = hk, des Gitters L gilt:

1. ‖b1‖2 ≤ γk(αγ2k)

h−12 (detL)2/n,

2. ‖b1‖2 ≤ γ2k(αγ2

k)h−1λ21.

Beweis. 1. Nach Def. 6.3.1 gilt fur [ri,j ] = R dass maxT

r2k`,k` ≤ α r2

k`+1,k`+1. Die Hermite

Ungleichung λ21(L(R∗` )) ≤ γkD

−1/k` fur L(R∗` ) und die HKZ-Reduktion von R∗` sichern dass

D1/k` ≤ γk max

Tr2k`,k` = γk/λ

21(L(R∗` )).

Fur die HKZ-Basis R`+1 gilt λ21(L(R`+1)) = r2

k`+1,k`+1 ≤ γkD1/k`+1.

Die Kombination dieser beiden Ungleichungen fuhrt zu

D1/k` ≤ γk max

Tr2k`,k` ≤ α r2

k`+1,k`+1 ≤ αγ2k D

1/k`+1.(6.3)

Mit der HKZ-Basis R1 folgt durch Induktion uber ` dass

‖b1‖2 ≤ γkD1/k1 ≤ γk(αγ2

k)`D1/k`+1 fur ` = 0, ..., h− 1.

Die h-te Wurzel des Produkts dieser h Ungleichungen ergibt die Behauptung.

2. Die Ungleichung (6.3) gilt auch in dualer Form fur D∗` = (det R∗` )2. Daher gilt auch das duale

1∗ zu Satz 6.3.2, Teil 1 :

1∗. maxT

r2k`,k` ≥ γ−1

k (αγ2k)−h+1

2 (detL)2/n

mit r2k`,k` maximiert uber die GNF von R`T mit T ∈ GLk(Z)

1 und 1∗ ergeben zusammen normb12 ≤ γ2

k(αγ2k)`−1max

Tr2k`,k`. Somit liefert Def. 6.3.1 Teil 2.

‖b1‖2 ≤ γ2k(αγ2

k)`−1 maxT

r2k`,k`

≤ (αγ2k)`r2

k`+1,k`+1 fur ` = 0, ..., h− 1.

Es folgt die Behauptung, denn es gilt fur b =∑nj=1 ujbj ∈ L, un 6= 0 mit normb1 = λ1 O.B.d.A.

dass n > n− k und folglich rn−k+1,n−k+1 ≤ ‖πn−k+1(b)‖ ≤ λ1 . �

Erlauterungen zu Alg. 6.3.1.1. Schritt 2 maximiert den letzten Diagonaleintrag rk,k von GNF(R`T) ∈ Rk×k uber alle T ∈GLk(Z) wie folgt: HKZ-reduziere R∗` = UkR

−t` Uk zu R∗`T∗ mit T∗ ∈ GLk(Z). Diese HKZ-

Reduktion minimiert den ersten Diagonaleintrag r1,1 von GNF(R∗`T∗) und 1/r1,1 ist der letzteDiagonaleintrag von GNF(R`UkT

−t∗ Uk). Die Transformation T∗ von R∗` wird als Transformation

UkT−t∗ Uk auf R` ubertragen.

2. Bei der LLL-Reduktion von R`,`+1 in Schritt 3 sind nur Austausche der Spalten k und k + 1von R`,`+1 moglich. Denn das letzte Diagonalement rk,k von R` ist maximal und rk−i,k−i ist ma-ximal bei festen rk−i1,k−i+1, ..., rk,k. Ebenso sind die Diagonalemente von R`+1 nininimal wennalle vorangehenden Diagonalelemente von R`+1 festgehalten werden.

Page 55: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.3. PRIMAL-DUALE REDUKTION 55

Algorithmus 6.3.1, Primal-Duale Reduktion

EINGABE LLL-Basis B = QR ∈ Zm×n, n = hk, zu δ, α.

0. ` := 1,

1. HKZ-reduziere R`+1 zu R`+1Tk mit Tk ∈ GLk(Z), B`+1 := B`+1Tk.

2. HKZ-reduziere R∗` zu R∗`T? mit T? ∈ GLk(Z), B` := B`UkT−t? Uk,

erneuere R`,`+1 , LLL-reduziere R`,`+1 mit δ zu R`,`+1T2k

3. IF in Schritt 2 erfolgte ein LLL-Austausch der Spalten k und k + 1 von R`,`+1

THEN [B`,B`+1] := [B`,B`+1]T2k, ` := max(`− 1, 1) ELSE ` := `+ 1.

4. IF ` < h THEN GO TO 1 ELSE langenreduziere B.

AUSGABE primal-duale Basis B

Satz 6.3.31. Alg. 6.3.1 macht hochstens 2nh log1/δM Iterationen fur den Wert M := max(‖b1‖ , ..., ‖bn‖)

der Eingabebasis. Eine Iteration geht in (2k)k/4 kO(1) arithmetischen Schritten.

2. Alg. 6.3.1 macht hochstens n2h12 log1/δ α Iterationen bis DB ≤ 1 erreicht ist.

Beweis. 1. Jeder Schritt 3 mit ` := max(`− 1, 1) erniedrigt D := Dh−11 Dh−2

2 · · · D1h−1 so dass

Dneu ≤ δDalt fur das δ < 1 der LLL-Reduktion und D` = (det R`)2.

Die Eingabebasis hat den DB-Wert DEin ≤ Mn(h−1) und fur die Ausgabebasis gilt DAus ≥ 1.Dies beschrankt die Anzahl #It− der Schritte 3 mit ` := max(`− 1, 1) zu

#It− ≤ log1/δ DEin ≤ n(h− 1) log1/δM .

Die Gesamtzahl #It der Schritte 3 ist #It = h− 1 + 2#It− ≤ 2nh log1/δM .

2. Wir folgen dem Beweis von Satz 6.2.4, Teil 2. Jede Iteration mit D neu` ≤ δD alt

` erniedrigt wiegezeigt DB zu D neu

B ≤ δ2D altB . Fur die Anzahl #It der Iterationen bis zum Erreichen von DB ≤ 1

folgt mit s =∑h`=1(h2/4− (h/2− `)2) = (h3 − h)/6

#It ≤ 12 log1/δ DEin

B ≤ 12 log1/δ α

k2s ≤ k2h3

12 log1/δ α = n2h12 log1/δ α. �

Die Klausel 2. von Def. 6.3.1 wurde von Gama, Nguyen [GN08] verscharft zu

2+. maxT

r2k`+1,k`+1 ≤ (1 + ε)2 r2

k`+1,k`+1 fur ` = 1, ..., h− 1. ( slide-reduction [GN08] )

Es bezeichne R′` := [ri,j ]k`−k+2≤i,j≤k`+1 ∈ Rk×k das um eine Einheit nach rechts verschobeneSegment R` von R = [ri,j ] ∈ Rn×n. Es bezeichnet max

Tr2k`+1,k`+1 das Maximum uber r2

k`+1,k`+1

von [ri,j ] = GNF(R′`T) uber alle T ∈ GLk(Z). Ferner sei B′` = [bk`−k+2, ...,bk`+1] der um eineEinheit nach rechts verschobenen Block B`.

Def. Eine langenred. Basis B = QR ∈ Rm×n mit n = hk ist streng primal-dual, wenn R1, ...,Rh

HKZ-Basen sind und wenn 2+ fur ` = h−1 und fur ein ` = `max gilt, welches D`/D`+1 maximiert.

Satz 6.3.4 (GN08b)Fur jede streng primal-duale Basis B = QR ∈ Rm×n, n = hk, des Gitters L gilt:

1. ‖b1‖ ≤ ((1 + ε) γk)12n−1k−1 (detL)1/n,

2. ‖b1‖ ≤ ((1 + ε) γk)n−kk−1 λ1.

Page 56: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

56 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Fur slide-reduced Basen wird in [GN08b] 2+ fur ` = 1, ..., h − 1 gefordert und es wird Satz6.3.4 fur slide reduzierte Basen gezeigt. Weil die Bedingung 2+ nur fur zwei Werte von ` gefordertwird, macht die streng primal-duale Reduktion hochstens 2 HKZ-Reduktionen pro Iteration undist damit schneller als die slide Reduktion von [GN08b].

Beweis. Fur D′` := (detR′`)2 folgt D′`/r2

k`+1,k`+1 ≤ ((1 + ε)γk)k r2(k−1)k`+1,k`+1 fur ` = `max und

` = h− 1 aus 2+. Weiter gilt fur die HKZ-Basis R` dass

r2(k−1)k`−k+1,k`−k+1 ≤ γ

kk D`/r2

k`−k+1,k`−k+1.(6.4)

Kombination der beiden Ungleichungen und D′`/r2k`+1,k`+1 = D`/r2

k`−k+1,k`−k+1 liefert

rk`−k+1,k`−k+1 ≤ ((1 + ε)γk)kk−1 rk`+1,k`+1 fur ` = `max und ` = h− 1.(6.5)

Wir zeigen zunachst, dass

D` ≤ ((1 + ε) γk)2k2

k−1D`+1 fur ` = 0, ..., h− 1.(6.6)

Bew.: Fur ` = `max wurde oben gezeigt dass

D′` ≤ (1 + ε)kγkkr2kk`+1,k`+1 ≤ (1 + ε)kγ2k

k D`+1.

Die zweite Ungleichung gilt weil R`+1 HKZ-Basis ist. Aus (6.5) folgt

D` = r2k`−k+1,k`−k+1D′`/r2

k`+1,k`+1 ≤ ((1 + ε) γk)2kk−1D′`.(6.7)

Die Kombination der beiden vorangehenden Ungleichungen liefert fur ` = `max

D` < ((1 + ε) γk)2kk−1 +2kD`+1 = ((1 + ε) γk)

2k2

k−1D`+1.

Weil (6.6) fur `max gilt, muss (6.6) fur alle ` = 1, ..., h− 1 gelten.

1. Weil R1 HKZ-Basis ist, folgt aus (6.6) fur ` = 1, ..., h dass

‖b1‖2 ≤ γkD1/k1 ≤ γk((1 + ε) γk)

2k(`−1)k−1 D1/k

` .

Multiplikation dieser h Ungleichungen liefert

‖b1‖2h ≤ γhk ((1 + ε) γk)kh(h−1)k−1 (detL)2/k.

Es folgt die Behauptung

‖b1‖2 ≤ γk((1 + ε) γk)n−kk−1 (detL)2/n < ((1 + ε) γk)

n−1k−1 (detL)2/n.

2. Im Beweis zu 1. wurde fur ` = h− 1 gezeigt

‖b1‖2 ≤ γk((1 + ε) γk)2k(h−2)k−1 D1/k

h−1.

Aus 2+ fur ` = h− 1 folgt (6.5) und (6.7) fur ` = h− 1. Dies und 2+ impliziert dass

‖b1‖2 ≤ γk((1 + ε) γk)2k(h−2)k−1 + 2

k−1 (D′h−1)1/k

≤ γk((1 + ε) γk)2kh−4k+2)

k−1 (1 + ε)γkr2n−k+1,n−k+1.

= ((1 + ε) γk)2n−kk−1 r2n−k+1,n−k+1.

O.B.d.A. ist πn−k+1(b) 6= 0 fur ein b ∈ Lmit ‖b‖ = λ1, sonst kann man n um k erniedrigen. Somitgilt rn−k+1,n−k+1 ≤ ‖πn−k+1(b)‖ ≤ λ1. Die letzten beiden Ungleichungen liefern die Behauptung

‖b1‖ ≤ ((1 + ε) γk)n−kk−1 λ1. �

Page 57: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.4. BLOCK-KORKINE ZOLOTAREFF REDUKTION, BKZ 57

Algorithmus 6.3.2, Beschleunigte, Streng Primal-Duale Reduktion

EINGABE LLL-Basis B = QR ∈ Zm×n, n = hk, ε > 0.

1. Wahle `, 1 ≤ ` < n so dass D`/D`+1 maximal ist.

2. HKZ-reduziere R`+1 zu R`+1T mit T ∈ GLk(Z), B`+1 := B`+1T, erneuere R`+1.

HKZ-reduziere (R′`)∗ zu (R′`)

∗T? mit T? ∈ GLk(Z), [r neuk`+i,k`+j ]2≤i,j≤1+k := GNF(R′`T−1? Uk),

3. IF r neuk`+1,k`+1 > (1 + ε) r altk`+1,k`+1 THEN B′` := B′`T−1` Uk, erneuere R`,`+1, GO TO 1

4. Fuhre die Schritte 2, 3 fur ` = h− 1 durch, falls dies fur das aktuelle Rh−1,h noch aussteht;

langenreduziere B.

AUSGABE streng primal-duale Basis B.

Satz 6.3.5Alg. 6.3.2 fuhrt hochstens n2h

6 log1+ε α Iterationen durch bis DB ≤ 1 erreicht ist.

Beweis. Analog zu Satzc 6.2.4 Teil 2; δk2

B in Alg. 6.2.1 entspricht (1 + ε)2. �

6.4 Block-Korkine Zolotareff Reduktion, BKZ

Definition 6.4.1 (k-reduzierte Basis)

Eine Basis [b1, . . . ,bn] = B = QR ∈ Rm×n ist k-reduziert, wenn

1. |ri,j | ≤ 12ri,i fur 1 ≤ i < j ≤ n

2. Die Basen [ri,j ]`<i,j≤`+k ∈ Rk×k fur ` = 0, ..., n− k sind HKZ-Basen.

Jede k-reduzierte Basis ist (k − 1)-reduziert. Es sei stets k ≥ 2 sonst ist die Eigenschaft 2. leer.

Satz 6.4.2Die 2-reduzierten Basen sind genau die LLL-Basen zu δ = 1.

Beweis. Sei b1, . . . ,bn eine 2-reduzierte Basis. Dann gilt fur i = 1, . . . , n− 1:

λ1

(πi L(bi,bi+1)

)2= r2

i,i ≤ r2i,i+1 + r2

i+1,i+1.

Fur δ = 1 ist dies die zweite LLL-Eigenschaft. Ferner ist b1, . . . ,bn langenreduziert und somitLLL-Basis.

Umgekehrt ist offenbar jede LLL-Basis fur δ = 1 auch 2-reduziert. �

Die Approximationsfaktoren von k-reduzierten Basen sind wie folgt durch die Hermite-Konstanteγk nach oben und unten beschrankt.

Satz 6.4.3 (S94)Fur jede k-reduzierte Basis b1, . . . ,bn des Gitters L gilt mit der Hermite-Konstanten γk

1. ‖bi‖2/λi(L)2 ≤ γ2n−ik−1

k fur i = 1, . . . , n,

2. ‖bi‖2 /λi(L)2 ≤ γ2n−ik−1

ki+34 fur i = 1, . . . , n.

Page 58: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

58 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Verdoppelung der Blockweite k reduziert somit den Approximationsfaktor γ2n−ik−1

k annahernd aufdie Quadratwurzel multiplixiert mit 22/k.

Wie fur LLL- und HKZ-Basen sind die oberen Schranken zu ‖bi‖2λi(L)2 und λi(L)2

‖bi‖2fast gleich.

Satz 6.4.4Fur jede k-reduzierte Basis b1, . . . ,bn des Gitters L gilt

λi(L)2/ ‖bi‖2 ≤ γ2 i−1k−1

ki+34 fur i = 1, . . . , n.

Die Werte γ2k−1

k sind bekannt fur k = 2, 3, . . . , 8, 24:

k 2 3 4 5 6 7 8 24

γ2k−1

k43 21/3 21/3 23/10 22/5/315 22/7 22/7 24/23

≈ 1, 333 1, 260 1, 260 1, 231 1, 226 1, 219 1, 219 1.128

Ajtai [Aj03] zeigt, dass die Schranken von Satz 6.4.3 bis auf einen konstanten Faktor im Expo-nenten von γk optimal sind. Dagegen sind die minimalen oberen Schranken Ck,n zum Satz 6.4.3

nicht bekannt Die Schranke aus Satz 6.4.3 ist fur n ≥ 3 nicht scharf. Es gilt dass C2,n =(

43

)n−1

[BaKa84] und C3,n =(√

3/2)n−3

fur ungerade n ≥ 3 [S94].

Lemma 6.4.5Fur jede k-reduzierte Basis b1, . . . ,bn ∈ Rm gilt ‖b1‖ ≤ γ

n−1k−1

k M mit

M := max(‖bn−k+2‖, . . . , ‖bn‖

).

Beweis. Wir erweitern die Basis b1, . . . ,bn durch k − 2 linear unabhangige Vektoren zu

b−k+3, . . . ,b−1,b0,b1, . . . ,bn(6.8)

so, dass gilt

‖bi‖ = ‖b1‖ fur i ≤ 0(6.9)

〈bi,bj〉 = 0 fur i ≤ 0, i < j und j = −k + 3, . . . , n.(6.10)

Dazu betten wir die Basis in den Rm+k−2 ein: Wir wahlen b−k+3,b−k+4, . . . ,b−1,b0 als ‖b1‖-Vielfaches der kanonischen Einheitsvektoren in die zusatzlichen k− 2 Richtungen. Die Gitterbasis(6.8) ist k-reduziert. Fur jedes i mit −k + 3 ≤ i ≤ n− k + 1 bilden die Vektoren

πi(bi), . . . , πi(bi+k−1)

eine HKZ-reduzierte Basis. Nach Definition der Hermite-Konstanten γk gilt

‖bi‖k ≤ γk2

k

k−1∏s=0

‖bi+s‖ fur i = −k + 3, . . . , n− k + 1.

Durch Multiplikation dieser n− 1 Ungleichungen erhalten wir

n−k+1∏i=−k+3

‖bi‖k ≤ (γk)k(n−1)

2 ‖b−k+3‖1‖b−k+4‖2 · · · ‖b1‖k−1

Page 59: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.4. BLOCK-KORKINE ZOLOTAREFF REDUKTION, BKZ 59

· ‖b2‖k‖b3‖k · · · ‖bn−k+1‖k ‖bn−k+2‖k−1 · · · ‖bn−1‖2‖bn‖1.Durch Kurzen folgt

‖b−k+3‖k−1 · · · ‖b0‖2‖b1‖1 ≤ (γk)k(n−1)

2 ‖bn−k+2‖k−1‖bn−k+2‖k−1 · · · ‖bn−1‖2 · ‖bn‖1.

Nach Konstruktion gilt ‖bi‖ = ‖b1‖ fur i ≤ 0 und es folgt

‖b1‖(k2) ≤ (γk)

k(n−1)2 ·M(k2) und somit ‖b1‖ ≤ γ

n−1k−1

k M. �

Korollar 6.4.6Fur jede k-reduzierte Basis b1, . . . ,bn des Gitters L gilt ‖b1‖ ≤ γ

n−1k−1

k λ1(L).

Die Schranke von Korollar 6.4.6 ist suboptimal fur k ≈ n denn fur k = n gilt ‖b1‖ = λ1. Sie ist

besser als die in Theorem 2.6 [S87] fur den Fall k|n bewiesene Schranke ‖b1‖ ≤ γ1/2k/2 (2k)

nk−1λ1.

Beweis. Induktion uber n: Fur n = k ist b1, . . . ,bn eine HKZ-Basis mit ‖b1‖ = λ1(L) undsomit gilt die Behauptung.

Sei n > k und v 6= 0 ein kurzester Gittervektoren. O.B.d.A. sei v /∈ L(b1,b2, . . . ,bn−1), dennsonst folgt die Behauptung aus der Induktionsannahme fur n− 1. Wegen v /∈ L(b1, . . . ,bn−1) giltπi(v) 6= 0 fur i = n− k + 1, . . . , n− 1. Wir erhalten mit Li = πi(L) fur i = n− k + 1, . . . , n:

λ1(L) = ‖v‖ ≥ λ1(Li) = ‖bi‖.

Die Gleichheit λ1(Li) = ‖bi‖ gilt, weil πn−k+1(bi), fur i = n − k + 1, . . . , n HKZ-Basis ist. Fur

das M von Lemma 6.4.5 gilt λ1(L) ≥ max{‖bi‖ : i = n− k + 1, . . . , n

}= M . Somit folgt die

Behauptung aus Lemma 6.4.5: ‖b1‖ ≤ (γk)n−1k−1 ·M ≤ (γk)

n−1k−1 · λ1(L). �

Beweis (zu Satz 6.4.3). . Korollar 6.4.6 liefert fur die Gitter Li = πi(L) mit i = 1, . . . , n:

‖bi‖ ≤ γn−ik−1

k λ1(Li)(6.11)

Ferner ist λ1(Li) ≤ λi(L), denn es gibt i linear unabhangige Gittervektoren v, deren Langehochstens λi(L) ist und von denen ein Vektor πi(v) 6= 0 erfullt. Also λ1(Li) ≤ πi(v) ≤ λi(L).

Wir erhalten die erste Behauptung, daß fur i = 1, . . . , n gilt: ‖bi‖2λi(L)2 ≤ γ

2·n−ik−1

k .

Aus (6.11), µ2i,j ≤ 1

4 (die Basis ist langenreduziert) und λ1 ≤ λ2 ≤ · · · ≤ λj folgt:

‖bi‖2 = ‖bi‖2 +

i−1∑j=1

(µi,j)2 ‖bj‖2

≤ γ2·n−ik−1

k · λi(L)2 + 14

i−1∑j=1

γ2·n−jk−1

k · λj(L)2

≤ γ2· nk−1

k ·

2· −ik−1

k + 14

i−1∑j=1

γ2· −jk−1

k

)· λi(L)2

Wir schatzen die Summanden durch γ2· −1k−1

k nach oben ab und erhalten:

‖bi‖2 ≤ γ2· nk−1

k · γ2· −1k−1

k ·(

1 +i− 1

4

)· λi(L)2

≤ γ2·n−1k−1

k · i+ 3

4· λi(L)2

Damit haben wir die zweite Behauptung auch gezeigt. �

Page 60: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

60 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Beweis (zu Satz 6.4.4). Nach Definition der sukzessiven Minima gilt λ2i ≤ maxj=1,...,i ‖bj‖2.

Fur B = QR, R = [ri,j ] ∈ Rn×n gilt ‖bi‖2 =∑ij=1 r

2j,i ≤ 1

4

∑nj=1 r

2j,j und somit

λ2i ≤ i+3

4 · maxj=1,...,i

‖bj‖2(6.12)

Lemma 6.4.5 angewandt auf die k-reduzierte Basis πj(bj), . . . , πj(bi) liefert fur 1 ≤ j ≤ i− k+ 1:

‖bj‖ ≤ γi−jk−1

k max(‖bi−k+2‖, . . . , ‖bi‖).(6.13)

Andererseits gilt fur i− k + 2 ≤ j ≤ i

‖bj‖ ≤ ‖πj(bj)‖ ≤ ‖bi‖(6.14)

Aus (6.13) und (6.14) erhalten wir fur 1 ≤ j ≤ i: ‖bj‖ ≤ γi−jk−1

k ‖bi‖. Diese Ungleichung liefert mit(6.12) die Behauptung, daß fur i = 1, . . . , n gilt:

λi(L)2/ ‖bi‖2 ≤ γ2 i−1k−1

ki+34 . �

6.5 BKZ-Algorithmus

Definition 6.5.1 ((k, δ)-reduzierte Basis)Eine Basis B = QR ∈ Rm×n ist (k, δ)-reduziert zu 2 ≤ k ≤ n und 1

4 < δ < 1 wenn

1. |ri,j | ≤ 12ri,i fur 1 ≤ i < j ≤ n,

2. δ r2j,j ≤ λ1 (πj L(bj , . . . ,bj+k−1))

2fur j = 1, . . . , n− k + 1.

Algorithmus 6.5.1, BKZ-Algorithmus

EINGABE: LLL-Basis [b1, . . . ,bn] = B = QR ∈ Zm×n, 2 ≤ k ≤ n, 14 < δ < 1.

FOR j = 1, ..., n− 1 DO

j := min(j + k − 1, n)

ENUM(j, j) : Find minimal point (uj , . . . , uj) ∈ Zk \ {0} of:

cj(uj , . . . , uj) :=∑ji=j

∑is=j(uirs.i)

2 = ‖πj(∑ji=j uibi)‖2,

bneuj :=

∑js=jusbs, cj := cj(uj , . . . , uj) .

IF δcj > cj THEN L3FP (b1, . . . ,bj−1,bneuj ,bj , . . . ,bj+k, δ)

ELSE L3FP (b1, . . . ,bj+k, δ)

IF some bj has been changed THEN repeat with the new basis B ELSE terminate

AUSGABE (k, δ)-reduzierte Basis b1, . . . ,bn.

Der Algorithmus 6.5.1 aus [SE94] transformiert eine gegebene Basis in eine (k, δ)-reduzierteBasis des gleichen Gitters. Die Routine L3FP aus Kapitel 4.4 macht LLL-Reduktion mit Gleit-kommazahlen; Sie transformiert linear abhangige Eingabevektoren in eine Basis mit vorangehen-den Nullvektoren. Die Routine ENUM(j, j) minimiert cj(uj , . . . , uj), siehe Algorithmus 8.1.1 undGAUSS-ENUM in Kapitel 8.

Offenbar ist eine Ausgabebasis (k, δ)-reduziert. Die Variable j wird zyklisch durch die Zahlen1, . . . , n− k + 1 geschoben. Durch LLL-Reduktion wird die Ausgabebasis langenreduziert. In derPraxis [SE94, GN08a] ist der Algorithmus fur k ≤ 20 recht schnell. Zu experimentell erreichtenApproximationsfaktoren ‖b1‖/λ1 und Laufzeiten siehe [GN08a].

Page 61: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

6.6. KRITISCHE K-REDUZIERTE BASEN FUR K = 2, 3 61

6.6 Kritische k-reduzierte Basen fur k = 2, 3

In diesem Abschnitt konstruieren wir kritische k-reduzierte Basen fur k = 2, 3.

Definition 6.6.1 (kritische k-reduzierte Basis)Eine k-reduzierte Basis b1, . . . ,bn des Gitters L heißt kritisch fur n und k, falls ‖b1‖

λ1(L) maximal

fur alle k-reduzierten Basen vom Rang n ist.

Fur k = 2 konstruieren wir die Basismatrix An := [b1, . . . ,bn] ∈Mn,n(R) wie folgt. Sei ρ :=√

34 :

An :=

1 12 0 · · · · · · 0

0 ρ 12ρ

. . . 0...

... 0 ρ2 12ρ

2 . . ....

.... . .

. . .. . . 0

.... . . ρn−2 1

2ρn−2

0 · · · · · · · · · 0 ρn−1

(6.15)

Es gilt

A2 :=

1 1

2

0√

34

und fur n ≥ 2 die Rekursion:

An :=

1 1

2 0 · · · 00... ρ ·An−1

0

Satz 6.6.2Fur die Basismatrix An = [b1, . . . ,bn], des Gitters L = L(b1, . . . ,bn) und ρ =

√34 gilt

1. b1, . . . ,bn ist eine kritische, 2-reduzierte Basis,

2.‖b1‖λ1(L)

=1

ρn−2= ρ−n+2,

3. λ1(L) = ρ2(n+2)(

14 + ρ2

)= ρ2(n+2).

Beweis. Siehe [S94, Theorem 9]. �

Fur k = 3 definieren wir die Basismatrix Bn := [b1, . . . ,bn] ∈Mn,n(R) wie folgt (zur Konstruktionsiehe [S94]):

B4 :=

1 12

12 0

0√

32

−12√

31

2√

3

0 0√

23

12

√23

0 0 0 1√2

(6.16)

Page 62: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

62 KAPITEL 6. HKZ- UND BLOCK-REDUKTION VON GITTERBASEN

Die Matrizen B2,B3 seien die 2× 2- bzw. 3× 3-Matrizen in der linken, oberen Ecke von B4. Furn ≥ 4 definieren wir die Basismatrix Bn rekursiv:

Bn :=

1 12

12 0 0 · · · 0

0√

32

−12√

31

2√

30 · · · 0

0 0...

...√

23 ·Bn−2

0 0

(6.17)

Satz 6.6.3Die Basismatrix B2k+1 = [b1, . . . ,b2k+1] aus (6.17) bzw. (6.16) ist fur k = 1, 2, . . . eine kritische,3-reduzierte Basis.

Beweis. Siehe [S94, Theorem 14]. �

Page 63: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 7

NP-vollstandige Gitterprobleme

7.1 NP-Vollstandigkeit von Rucksack.

Sei Σ endl. Alphabet, o.B.d.A. Σ = {0, 1}. Es bezeichne P die Klasse der polynomial-Zeit ent-scheidbaren Sprachen L ⊂ Σ∗, d.h.

L ∈ P gdw ∃ Turing Maschine M , welche x 7→ χL(x) in |x|O(1) Turingschrit-ten berechnet. D.h. ∃c > 0, so dass die Schrittzahl der Berechnungx 7→ χL(x) hochstens c|x|c ist. Dabei ist |x| die Lange von x ∈ Σ∗.

Die Klasse NP der nichtdeterministischen polynomial-Zeit Sprachen:

L ∈ NP gdw ∃c > 0 : ∃R ⊂ Σ∗ × Σ∗ polynomial-Zeit entscheidbar so dass

L = {x ∈ Σ∗ | ∃y : |y| ≤ |x|c, (x, y) ∈ R} (y ist Zeuge fur x ∈ L).

Offenbar gilt P ⊂ NP.

Karp-Reduktion. Sei A,B ⊂ Σ∗. A ist Karp-reduzierbar auf B, Bez.: A ≤pol B, wenn∃ polynomial Zeit berechenbares f : Σ∗ → Σ∗, so dass x ∈ A ⇐⇒ f(x) ∈ B fur alle x ∈ Σ∗.

Fakt A ≤pol B, B ∈ P ⇒ A ∈ PA ≤pol B ≤pol C ⇒ A ≤pol C.

Definition 7.1.1L ∈ NP ist NP-vollstandig, wenn A ≤pol L fur alle A ∈ NP.

Fakt Sei A ≤pol B und A L-vollstandig, dann ist B NP-vollstandig.

Satz 7.1.2 (Cook, Levin 1973)Fur jedes NP-vollstandige L gilt L ∈ P gdw P = NP.

Cook’sche Hypothese. P 6= NP.

Begrundung: Schwierige NP-Probleme sind seit Jahrhunderten bekannt, z.B. Entscheide zugegebenen n, s ∈ N : ∃ Primzahl p ≤ s mit p teilt n.

Satz 7.1.3 (Cook, Karp 1973)

Rucksack :=

{(a1, . . . , an, b) ∈ Nn+1

∣∣∣∣ ∃x1, . . . , xn ∈ {0, 1} :Σni=1aixi = b, n ∈ N

}ist NP-vollstandig.

63

Page 64: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

64 KAPITEL 7. NP-VOLLSTANDIGE GITTERPROBLEME

Cook zeigte : SAT ist NP-vollstandig, Karp zeigte: SAT ≤pol Rucksack.

7.2 NP-Vollstandigkeit von SVP`∞,CVP`∞,CVP`2.

Siehe Micciancio, Goldwasser, Complexity of Lattice Problems, KAP 2002 [MG02], Kapitel 3, 4.

Wir formulieren SVP‖ ‖,CVP‖ ‖ als Sprachen

CVP‖ ‖ = {(B,y, t) ∈ Zm×n+m+1 | ∃x ∈ Zn : ‖Bx− y‖ ≤ t}

SVP‖ ‖ = {(B, t) ∈ Zm×n+1 | ∃x ∈ Zn\{0} : ‖Bx‖ ≤ t}.

Satz 7.2.1SVP`∞ ,CVP`∞ sind NP-vollstandig.

Beweis. I. Rucksack ≤pol SVP‖ ‖∞ . Reduziere gemaß f : (a1, . . . , an, b) 7→ (B, 1) mit

B = [b1, . . . ,bn+1] =

2 1

. . . O...

O 2 12a1 · · · 2an 2b0 · · · 0 1

∈ Z(n+2)(n+1).

Beh.: (a1, . . . , an, b) ∈ Rucksack ⇔ λ1,∞(L(B)) = 1.

Bew.: “ ⇒“ (trivial) Sei (x1, . . . , xn) ∈ {0, 1}n Rucksacklosung, Σni=1aixi = b. Dann gilt furx := (x1, . . . , xn,−1)t, dass

Bx = Σni=1bixi − bn+1, ‖Bx‖∞ = 1 ,

denn |2xi − 1| = 1 fur xi ∈ {0, 1} und 2(Σni=1aixi − b) = 0.“ ⇐” Ang. ‖Σn+1

i=1 xibi‖∞ = 1. Wir zeigen 1. x1, . . . , xn ∈ {0, 1}, 2. Σni=1aixi = b.1. Offenbar gilt |2xi − 1| ≤ 1 fur i = 1, . . . , n. Aus 2xi − 1 = 0 folgt der Widerspruch xi = 1

2 .Somit gilt 2xi − 1 = ±1 und xi ∈ {1, 0} fur i = 1, . . . , n. Offenbar sichert die letzte Zeile von B,dass |xn+1| = 1.2. O.B.d.A. sei xn+1 = −1. Wegen |xn+1| ≤ 1, xn+1 6= 0 liefert die Multiplikation von x mit−sign(xn+1) dass xn+1 = −1. Aus 2 |

∑ni=1 aixi − b| ≤ 1 folgt

∑ni=1 aixi = b.

II. Rucksack ≤pol CVP`∞ : Reduziere gemaß f : (a1, . . . , an, b) 7→ (B′,y, 1) mit

[B′,y] =

2 1

. . . O...

O 2 12a1 · · · 2an 2b

∈ Z(n+1)2 .

Wir zeigen: (a1, ..., an, b) ∈ Rucksack⇔ (B′,y, 1) ∈ CVP.

“⇒” trivial. “⇐” Aus ‖B′x− y‖∞ = 1 folgt (a1, . . . , an, b) ∈ Rucksack nach Teil I des Beweises.�

Satz 7.2.1 wurde von van Emde Boas [EmBoas 81] bewiesen. Er ist wichtig fur den Fall,dass man Quantencomputer bauen kann. Fur Quantencomputer sind Faktorisieren ganzer Zahlen,Brechen von RSA, Diskreter Logarithmus in pol.-Zeit. Aber P 6= NP, d.h. PQu 6= NPQu giltwohl weiter.

Page 65: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

7.2. NP-VOLLSTANDIGKEIT VON SVP`∞ ,CVP`∞ ,CVP`2 . 65

Satz 7.2.2CVP`2 ist NP-vollstandig,( `2 = ‖ ‖ ).

Beweis. Wir zeigen Rucksack≤pol CVP`2 und reduzieren gemaß f : (a1, . . . , an, b) 7→ (B′,y,√n)

mit

[B′,y] =

2 1

. . . O...

O 2 12a1 · · · 2an 2b

∈ Z(n+1)2 .

Zu zeigen: (a1, . . . , an, b) ∈ Rucksack ⇔ (B′,y,√n) ∈ CVP`2 .

“⇒” Sei (a1, . . . , an, b) ∈ Rucksack und Σni=1aixi = b, xi ∈ {0, 1} Rucksacklosung. Es folgt

‖∑ni=1 bixi − bn+1‖ = ‖(±1, . . . ,±1, 0)‖ =

√n.

“⇐” Ang. ‖Σni=1bixi−y‖2 ≤√n fur x1, . . . , xn ∈ Z. Es folgt ‖Σni=1bixi−y‖ =

√n und xi ∈ {0, 1},

somit Σni=1aixi = b. �

Vergleich CVP, SVP fur die `2-Norm. SVP ist nicht schwieriger als CVP, es giltSVP ≤pol,multi CVP, d.h. SVP ≤Cook CVP, siehe [MG02, Sektion 4]. Wir vereinfachen SVP undCVP zu GAP-SVPγ und GAP-SVPγ mit γ ≥ 1.

GAP-SVPγ-Problem. Gesucht ist ein deterministischer Algorithmus, der alle Ja-Instanzen ak-zeptiert und alle Nein-Instanzen ablehnt und beliebig reagiert, falls die Eingabe weder Ja- nochNein-Instanz ist.

Ja-Instanzen sind Paare (B, t) ∈ Zm×n+1, so dass ∃x ∈ Zn\{0} : ‖Bx‖ ≤ t.

Nein-Instanzen sind Paare (B, t) ∈ Zm×n+1, so dass ∀x ∈ Zn\{0} : ‖Bx‖ ≥ γt.

GAP-CVPγ-Problem. Gesucht ist ein deterministischer Algorithmus, der alle Ja-Instanzen ak-zeptiert und alle Nein-Instanzen ablehnt und beliebig reagiert, falls die Eingabe weder Ja- nochNein-Instanz ist.

Ja-Instanzen sind Tripel (B,y, t) ∈ Zm×n+m+1 mit ∃x ∈ Zn : ‖Bx− y‖ ≤ t.

Nein-Instanzen sind Tripel (B,y, t) ∈ Zm×n+m+1 mit ∀x ∈ Zn : ‖Bx− y‖ ≥ γt.

Satz 7.2.3GAP-CVP√

1+8/nist NP-hart.

Beweis. Wir zeigen Rucksack ≤pol GAP-CVP√1+8/n

, es folgt NP ≤pol GAP-CVP√1+8/n

. Wir

reduzieren gemaß f : (a1, . . . , an, b) 7→ (B′,y,√n) mit

[B′|y] :=

2 1

. . . O...

O 2 13 a1 · · · 3 an 3 b

∈ Z(n+1)2 .

Korrektheit der Reduktion.

(a1, . . . , an, b) ∈ Rucksack ⇒ (B′,y,√n) Ja-Instanz, d.h. ∃x ∈ {0, 1}n : ‖B′x−y‖ ≤

√n.

(a1, . . . , an, b) 6∈ Rucksack ⇒ (B′,y,√n) Nein-Instanz. (wird wie folgt gezeigt)

Im Fall (a1, . . . , an, b) 6∈ Rucksack gilt fur x ∈ Zn entweder ∃i : xi 6∈ {0, 1}, somit |2x − 1| ≥ 3,

Page 66: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

66 KAPITEL 7. NP-VOLLSTANDIGE GITTERPROBLEME

|2xi − 1|2 ≥ 9 = 1 + 8, oder∑ni=1 aixi 6= b, somit 9(Σni=1aixi − b)2 ≥ 9. Wegen |2xi − 1| ≥ 1 fur

xi ∈ Z folgt ∀x ∈ Zn : ‖B′x− y‖ ≥√n+ 8. Somit ist (B′,y,

√n) Nein-Instanz. �

Satz 7.2.4 (MG02, Cor. 3.9, 3.11)GAP-CVPγ ist NP-hart fur γ = c log n und γ = (log n)c fur alle c > 0.

Satz 7.2.5 (Ajtai 1998, Micciancio 2001, MG02, Sektion 4)GAP-SVPγ ist fur γ <

√2 NP-hart bzgl. probabilistischen Karp-Reduktionen.

Satz 7.2.6 (Khot 2005)GAP-SVPγ ist fur beliebige γ > 1 NP-hart bzgl. probabilistischen Karp-Reduktionen.

Die probabilistischen Karp-Reduktionen von Khot erzeugen recht große Zahlen polynomialerLange.

Probabilistische Karp-Reduktionen werden erklart wie ≤pol, aber die pol. Zeit Transformationf = f(x,w) benutzt einen Munzwurf w. Der Satz von Ajtai-Micciancio zeigt

Rucksack, NP ≤pol,prob. SVP`2 .

Die Reduktion Rucksack ≤pol SVP konnte bisher nur fur probabilistische Karp-Reduktionengezeigt werden. Man reduziert Rucksack auf das CVP-Problem eines Gitters L(b1, ...,bn+1) undbenotigt fur die Korrektheit, dass λ1(L(b1, ...,bn)) >

√2n. Diese Bedingung kann man nur pro-

babilistisch sichern. Wir geben die Reduktion ohne diese nicht triviale Bedingung zu sichern. Wirreduzieren Rucksack auf SVP durch die Reduktion

f : (a1, . . . , an, b) 7→ (B,√n) mit

B = [b1, . . . ,bn+1] =

2 1

. . . O...

O 2 1√na1 · · ·

√nan

√n b

0 · · · 0√n

∈ R(n+2)×(n+1).

Satz 7.2.7Rucksack ≤pol SVP falls fur (a1, ..., an, b) ∈ Rucksack und f(a1, ..., an, b) := ([b1, ...,bn+1] gilt

dass λ1(L(b1, ...,bn)) >√

2n.

Beweis. (a1, . . . , an, b) ∈ Rucksack impliziert (B,√

2n) ∈ SVP, denn fur jede Rucksack-LosungΣni=1aixi = b, xi ∈ {0, 1} gilt |2xi − 1| = 1 und

‖Σni=1bixi − bn+1‖ = ‖(±1, . . . ,±1, 0,√n)‖ =

√2n.

Umgekehrt sichert λ1(L(b1, ...,bn)) >√

2n dass (B,√

2n) ∈ SVP⇒ (a1, . . . , an, b) ∈ Rucksack:Angenommen ‖Σni=1bixi + bn+1xn+1‖ ≤

√2n. Wegen λ1(L(b1, ...,bn)) >

√2n gilt

∑ni=1 aixi +

xn+1b = 0 mit xn+1 6= 0, dabei gilt |xn+1| ≤ 1, denn andernfalls ware ‖Σni=1bixi + bn+1xn+1‖ ≥2√n >√

2n.

Sei O.B.d.A. xn+1 = −1. Es folgt |2xi − 1| = 1 fur i = 1, . . . , n, somit xi ∈ {0, 1}. Also(a1, . . . , an, b) ∈ Rucksack. �

Page 67: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 8

Konstruktion eines kurzestenGittervektors

Die Algorithmen zur Blockreduktion benotigen einen kurzesten Gittervektor ungleich 0. Alg. 8.1.1Enum [SE94, SH95] findet einen kurzesten Gittervektor durch vollstandige Aufzahlung kurzerGittervektoren. Die Laufzeit von Enum ist im worst case exponentiell nn/2+o(n). New Enum’sLaufzeit ist unter GSA und der Volumen Heuristik polynomiell fur Gitter L kleiner Dichte, so

dass ‖b1‖ eπ√n ≤ γ1/2

n (detL)1/n zu gegebenem b1 [S10]. New Enum fuhrt die Stufen (ut, ..., un)geordnet nach aufsteigendem t und zu festem t mit absteigender Erfolgsquote βt durch.

8.1 Algorithmus mit vollstandiger Aufzahlung

Gegeben sei eine Basis B = [b1, . . . ,bn] = QR ∈ Rm×n. Wir berechnen ein b ∈ L(B) mit ‖b‖ =

`2(b) = λ1(L). Sei b1, . . . ,bn ∈ Rm die Basis mit zugehorigem Orthogonalsystem b1, . . . , bn und

Gram-Schmidt-Koeffizienten µi,j , also bi =∑ij=1 µi,jbj =

∑ij=1 ri,j/ri,ibj fur i = 1, . . . , n.

Zur orthogonalen Projektion πi : Rm → span(b1, . . . ,bi−1)⊥

bezeichne:

ct(ut, . . . , un) := ‖πt(∑ni=t uibi)‖2 =

∑ni=t(

∑ij=t uirj,i)

2.

Die Funktion u′ := next(u, r) liefert zu u ∈ Z und r ∈ R die in der Reihenfolge nach ubetragsmaßig nachste, ganze Zahl zur reellen Zahl r (siehe Grafik 8.1.1). Es gilt:

• |u− r| ≤ |u′ − r| ≤ |u− r|+ 1

• sign(u′ − r) 6= sign(u− r)

Falls es zu r zwei ganze Zahlen mit Abstand 12 gibt, fordern wir zusatzlich, daß zunachst der

kleinere Wert gewahlt wird, also aus |u− r| = |u′ − r| folgt u < r < u′.

3. 1. 2. 4.

rZ-

Abbildung 8.1.1: Reihenfolge der Approximationen bei der Iteration u′ := next(u· , r)

67

Page 68: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

68 KAPITEL 8. KONSTRUKTION EINES KURZESTEN GITTERVEKTORS

Algorithmus 8.1.1, Enum [SE94], Finden eines kurzesten Gittervektors

EINGABE: B = QR ∈ Zm×n, R = [ri,j ]1≤i,j≤n ∈ Rn×n.

1. FOR i = 1, . . . , n DO ci := ui := ui := yi := 0.

2. t := 1, u1 := u1 := 1, cmin1 := c1 := r2

1,1. /? stets ist ct = ct(ut, . . . , un) und

cmin1 = c1(u1, ..., ut) ist aktuelles Minimum von c1 ?/

3. WHILE t ≤ n DO

3.1 ct := ct+1 + (yt + ut)r2t,t

3.2 IF ct < cmin1 THEN

IF t > 1 THEN t := t− 1, yt :=n∑

i=t+1

ui rt,i/rt,t, ut := b−yte

ELSE cmin1 = c1, FOR i = 1, . . . , n DO ui := ui

ELSE, t := t+ 1, ut :=

{ut + 1 falls t = tmax

next(ut,−yt) sonst.

/? tmax bezeichne den bisherigen maximalen Wert von t vor der Erhohung ?/

AUSGABE: Minimalstelle (u1, . . . , un) ∈ Zn \ {0} und Minimalwert cmin1 = λ2

1 fur Funktion c1

Die Korrektheit von Alg. 8.1.1 folgt aus den folgenden Beobachtungen:

• Stets gilt: ct = ct(ut, , . . . , un). Beweis durch Induktion uber Anzahl der Iterationen. Durchdie Zuweisungen im ersten Schritt gelten die Behauptungen vor der ersten Iteration (Induk-

tionsverankerung). Induktionsschluß: Es gilt fur y1 :=n∑

i=t+1

ui rt,i dass

ct(ut, . . . , un) = ct+1(ut+1, . . . , un)︸ ︷︷ ︸nach Ind.Ann. = ct+1

+(∑n

i=t uirt,i)2

= ct+1 + (yt + ut)2 r2

t,t.

• Der Algorithmus zahlt in Depth-First-Order alle Vektoren (ut, . . . , un) ∈ Zn−t+1 \ {0} furt = 1, . . . , n auf mit ct(ut, . . . , un) < cmin

1 (cmin1 ist das aktuelle Minimum der Funktion c1).

Es werden nur Vektoren aufgezahlt so dass ui > 0 fur das großte i mit ui 6= 0.

• Fur feste ut+1, . . . , un liefert die Folge der ut-Werte, erzeugt durch next(·ut,−yt) mono-ton wachsende Werte |yt + ut|, ct(ut, . . . , un). Wenn ct ≥ cmin

1 fur den aktuellen Vektor(ut, . . . , un), dann kann die Aufzahlung der weiteren ut -Werte entfallen.

8.2 Algorithmus mit geschnittener Aufzahlung

Wir schneiden die Aufzahlung an der Stelle (ut, ..., un) ab, wenn nach der Vol. Heur. ein kurzererVektor

∑ni=1 uibi nur mit Wahrscheinlichkeit < 2−s zu gegebenem s zu erwarten ist, siehe [SH95].

8.2.1 Volumen-Heuristik und Gauß-ENUM

Folgendes Lemma geht auf C.F. Gauß zuruck. Fur nicht zufallige z ist es die Volumen-Heuristik.

Lemma 8.2.1 (Volumen-Heuristik)Sei S ⊆ span(L) Jordan-meßbar, z ∈R span(L) mod L zufallig, dann gilt:

Ez [ |(z + S) ∩ L|] = vol(S) / detL.

Page 69: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

8.2. ALGORITHMUS MIT GESCHNITTENER AUFZAHLUNG 69

Beweis. Denn1

detL=

Anzahl Gitterpunkte

Volumen Grundmasche=

Anzahl Gitterpunkte

Volumeneinheit. �

Angenommen, wir halten (ut, . . . , un) ∈ Zn−t+1 \ {0} fest und suchen u1, . . . , ut−1 ∈ Z mitc1(u1, . . . , un) < cmin

1 . Setze Lt := L(b1, . . . ,bt−1)

Wir addieren zum gegebenem Gittervektor b =∑ni=t uibi einen Vektor b =

∑t−1i=1 uibi ∈ Lt so

daß∥∥b + b

∥∥2< cmin

1 . Wir zerlegen b in orthogonale Anteile (es sei Q = [q1, ...,qn] mit B = QR):

b =

t−1∑j=1

n∑i=1

uirj,i qj︸ ︷︷ ︸−z∈span(Lt)

+

n∑j=t

n∑i=t

uirj,i qj︸ ︷︷ ︸y∈span(Lt)⊥

= −z + y(8.1)

Wir suchen einen Punkt in (b + Lt ) ∩ Bt−1(y, ρt) in der Kugel Bt−1(y, ρt) der Dimension t − 1

mit Mittelpunkt y und Radius ρt =√cmin1 − ct. Es gilt fur b = −z + y:∣∣(b + Lt

)∩ Bt−1

(y, ρt

)∣∣ =∣∣Lt ∩ Bt−1(z, ρt)

∣∣.Die Grafik 8.2.1 verdeutlicht diese Aufgabe, hier ist S(

√cmin1 − ct, y) = Bt−1

(y, ρt

), L = Lt.

rr

O

39

0

y

b ∈ L

b+ span(L)

z

~

6

Sphare in span(L)Punkt in b+ L

S(√

c1 − ct, y)

mit Radius√c1

Abbildung 8.2.1: Volumenheuristik bei Gauß-ENUM

Wir wenden die Volumen-Heuristik an auf das Gitter Lt und die Kugel Bt−1(0, ρt) und erhaltenfur zufallige z ∈ span(Lt) die Erfolgsquote βt:

βt = Ez

[ ∣∣{(u1, . . . , ut−1) ∈ Zt−1 : c1(u1, . . . , ut−1) < cmin1

}∣∣] = Vt−1 ρt−1t / detLt

Wir schneiden die weitere Aufzahlung an der Stelle (u1, . . . , ut−1) ab, falls βt < 2−s. Je großers, desto umfangreicher die Aufzahlung. Fur s =∞ erhalten wir die vollstandige Aufzahlung.

Ersetzen von Schritt 3.2 in Alg. 8.1.1 durch

IF βt > 2−s THEN

liefert Alg. 8.2.1 genannt Gauß-ENUM [SH95].

Page 70: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

70 KAPITEL 8. KONSTRUKTION EINES KURZESTEN GITTERVEKTORS

Algorithmus 8.2.1, Kurzester Gittervektor durch geschnittene Aufzahlung

EINGABE: Basis B = QR ∈ Zm×n, R = [ri,j ]1≤i,j≤n ∈ Rn×n

1. FOR i = 1, . . . , n DO ci := ui := ui := yi := 0.

2. u1 := u1 := 1, t := 1, cmin1 := c1 := ‖b1‖2 /? stets ist ct = ct(ut, . . . , un) und

cmin1 = c1(u1, ..., ut) ist aktuelles Minimum von c1 ?/

3. WHILE t ≤ n DO

3.1 ct := ct+1 + (yt + ut)2r2t,t

3.2 IF βt ≥ 2−s THEN

IF t > 1 THEN t := t− 1, yt :=∑ni=t+1 ui rt,i/rt,t, ut := b−yte

ELSE cmin1 = c1 FOR i = 1, . . . , n DO ui := ui

ELSE t := t+ 1, ut :=

{ut + 1 falls t = tmax

next(ut,−yt) sonst

/? tmax bezeichne den bisherigen maximalen Wert von t vor der Erhohung ?/

AUSGABE: Wahrscheinliche Minimalstelle (u1, . . . , un) und Minimalwert cmin1 von c1

Die Volumen Heuristik nimmt an, dass die orthogonale Projektion von b =∑ni=t uibi in Lt =

L(b1, ...,bt−1) modulo —mathcalLt zufallig ist. Wenn aber (ut, ..., un) mit den Koordinaten eineskurzesten Gittervektors ubereinstimmt, dann ist diese orthogonale Projektion von b nach Langen-reduktion gegen b1, ...,bt−1 oft sehr klein und die Volumen Heuristik damit eher inkorrekt.

Aufzahlung mit Zurucklegen, New Enum. In der Neufassung New Enum von [S10] wird(ut, ..., un) im Falle βt < 2−s nicht verworfen, sondern in eine Liste zur spateren Bearbeitungzuruckgelegt. Nach Ende der Bearbeitung mit dem Wert s wird s erhoht auf s := s + 1 und derAufzahlungsprozess wird ausgehend von allen zuruckgelegten (ut, ..., un) mit dem erhohten s neuinitiiert und zwar in der Reihenfolge mit aufsteigendem t und bei festem t mit absteigendem βt.

Das Zurucklegen der (ut, ..., un) mit βt < 2−s erfordert einen Speicherplatz der im allgemeinenexponentiell in n ist. Diesen grossen Speicherbedarf kann man dadurch reduzieren, dass man dasAbspeichern der (ut, ..., un) unterlasst und nach Erhohung von s den Algorithmus neu initiert.Dabei werden die schon behandelten Werte (ut, ..., un) nochmals behandelt. Diese Wiederholungerhoht die Laufzeit hochstens um den Faktor s des letzten s-Wertes. Dieser grosste s-Wert ist aberhochstens O(n lnn) so dass die Laufzeit nur um einen polynomiellen Faktor wachst.

Ein einfache Abschneid-Methode (pruning) ersetzt die Bedingung IF βt ≥ 2−s THEN vonSchritt 3.2 durch

IF ct ≤ n−t+1n cmin

1 THEN

Diese Bedingung wurde in [SE94] initiiert und in [NR10] analysiert. Nguyen und Regev zeigen in[NR10], dass Modifizierung von Schritt 3.2 in

IF ct ≤ n−t+1n λ2

1 THEN

ein kurzester Gittervektor von zufalligen Gittern mit Wahrscheinlichkeit 1/n gefunden wird. Furdieses Abschneiden muss man entweder λ1 kennen oder eine hinreichend gute Approximation vonλ1 erraten.

In [SE94] wird Schritt 3.2 angewandt in der modifizierten Form

IF ct ≤ 1.05 n−t+1n cmin1 THEN

Mit diesem pruning wurden Subsetsum Probleme der Dimension ≤ 66 und fast aller Dichtendurch Konstruktion kurzester Vektoren des CJLOSS-Gitters fast immer gelost [SE94]. Diese hoheErfolgswahrscheinlichkeit beim Finden eines kurzesten Gittervektors mit diesem pruning ist be-weisbar unter GSA und der Volumen-Heuristik, die Methode ist effektiv fur Dimension n ≤ 250,nach B. Lange, Februar 2011.

Page 71: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 9

Gitterreduktion in beliebigerNorm

Bisher haben wir Gitter bezuglich der Euklidischen Norm reduziert. In diesem Kapitel betrachtenwir allgemeine Normen. Besonders die sup-Norm ist von Interesse (siehe Kapitel 10). Bis aufden Gauß-Reduktionsalgorithmus aus Kapitel 3 fur aus zwei Vektoren bestehende Basen ist dieReduktion in beliebiger Norm in der Praxis

”schwierig“.

9.1 Grundbegriffe

Sei ‖·‖ : Rm → R eine beliebige Norm, d.h. es gilt fur alle u, v ∈ Rm und µ ∈ R:

‖µv‖ = |µ| · ‖v‖ (positive Homogenitat)

‖u+ v‖ ≤ ‖u‖+ ‖v‖ (Dreiecksungleichung)

‖u‖ ≥ 0 fur u 6= 0 (positive Definitheit)

Wir definieren zu einer gegebenen fest geordneten Gitterbasis Abstandsfunktionen:

Definition 9.1.1 (Abstandsfunktion Fi)Sei b1, . . . , bn ∈ Rm eine fest geordnete Gitterbasis. Die i-te Abstandsfunktion (auch Hohen- oderDistanzfunktion) fur 1 ≤ i ≤ n

Fi : span(b1, . . . , bn)→ R

ist bezuglich der gegebenen Norm ‖·‖ definiert als:

F1(x) := ‖x‖

Fi(x) := mint1,...,ti−1∈R

∥∥∥∥x−∑i−1

j=1tjbj

∥∥∥∥ = mint∈R

Fi−1 (x− tbi−1) i = 2, 3, . . . , n

Die Hohe Fi eines Vektors ist sein Abstand zu dem von b1, . . . , bi−1 erzeugten Unterraum.Es gilt Fi(x) = 0 genau dann, wenn x ∈ span(b1, . . . , bi−1). Man rechnet leicht nach, daß jede

Abstandsfunktion Fi eine Norm auf span(b1, . . . , bi−1)⊥

ist. Im Fall der Euklidischen Norm ist

Fi(bi) = ‖bi‖2. Die Determinante des Gitters L = L(b1, . . . , bn) ist:

detL =

n∏i=1

‖bi‖2

71

Page 72: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

72 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

Wie sieht die Gleichung detL =∏i ‖bi‖ bezuglich F1, . . . , Fn aus? Zu gegebener Norm ‖·‖ defi-

nieren wir:

S‖·‖(1) := {x ∈ Rm : ‖x‖ ≤ 1}

Diese Menge ist konvex, nullsymmetrisch und abgeschlossen. Zu gegebener Norm ‖·‖ und Gitter-basis b1, . . . , bn ∈ Rm definiere

Vi := vol {x ∈ span(b1, . . . , bi) : ‖x‖ ≤ 1}︸ ︷︷ ︸=span(b1,...,bi)∩S‖·‖(1)

i = 1, . . . , n(9.1)

Man beachte, daß sich Volumen stets auf die Euklidische Metrik bezieht.

Lemma 9.1.2Fur jede Basis b1, . . . , bn ∈ Rm gilt:

2n

n!·n∏i=1

‖bi‖2Fi(bi)

≤ Vn ≤ 2n ·n∏i=1

‖bi‖2Fi(bi)

Bevor wir das Lemma beweisen, eine Folgerung: Da Vn unabhangig von der Basis ist, gilt:

Korollar 9.1.3Seien b1, . . . , bn und b′1, b

′2, . . . , b

′n Basen des Gitters L, dann gilt:

m∏i=1

Fi(bi) ≤ n!

m∏i=1

F ′i (b′i) oder

m∏i=1

F ′i (b′i) ≤ n!

m∏i=1

Fi(bi)

Beweis (zu Lemma 9.1.2). Wir zeigen durch Induktion uber n:

2n

n!·n∏i=1

‖bi‖2Fi(bi)

≤ Vn ≤ 2n ·n∏i=1

‖bi‖2Fi(bi)

� -s0 + b1

F1(b1)− b1F1(b1)

Abbildung 9.1.1: Induktionsverankerung im Beweis zu Lemma 9.1.2

• Induktionsverankerung n = 1: Es gilt (vergleiche Abbildung 9.1.1):

V1 = 2 ·‖b1‖2‖b1‖

= 2 · ‖b1‖2F1(b1)

• Induktionsschluß von n − 1 auf n: Wir wahlen einen Punkt z = bn −∑n−1i=1 tibi ∈ Rn mit

‖z‖ = Fn(bn) (siehe Abbildung 9.1.2). Man erhalt eine obere Schranke fur Vn durch:

Vn ≤ 2 · Vn−1 ·‖bn‖2Fn(bn)

Page 73: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.1. GRUNDBEGRIFFE 73

span(b1, . . . , bn−1)Sn−1

Sn

z

6+ bnFn(bn)

− bnFn(bn)

?

0s

sppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp

ppppppppppppppppppppppppp

pppppppppppppppppppppppppp

ppppppppppppppppppppppppppp

pppppppppppppppppppppppppppp

pppppppppppppppppppppppppppp

ppppppppppppppppppppppppppppp

pppppppppppppppppppppppppppppp

ppppppppppppppppppppppppppppppp

pppppppppppppppppppppppppppppppp

pppppppppppppppppppppppppppppppp

ppppppppppppppppppppppppppppp

pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp pppppppp pppppp pppp pp pp ppp pppp ppppp pppppp pppppp pppppppp pppppppp ppppppppp pppppppppp

ppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp p pp p pp ppp p ppp p p p p p p

p p pp pp p p p p p p p

p p p p p pp p

p p pp

Abbildung 9.1.2: Induktionsschluß im Beweis zu Lemma 9.1.2

Die konvexe Hulle von Sn−1 und z (gepunktetes Gebiet in Abbildung 9.1.2) ist in Sn ent-

halten. Da es sich um eine Pyramide mit Grundflache Sn−1 und Hohe ‖bn‖2Fn(bn) handelt, gilt:

Vn−1

n· ‖bn‖2Fn(bn)

= voln (konvexe Hulle von Sn−1 und z) ≤ Vn2

Es folgt wegen der Symmetrie:

2 · Vn−1

n· ‖bn‖2Fn(bn)

≤ Vn

Aus der Induktionsannahme erhalten wir:

Vn ≥ 2 · Vn−1

n· ‖bn‖Fn(bn)

[2

n· ‖bn‖Fn(bn)

[2n−1

(n− 1)!·n−1∏i=1

‖bi‖2Fi(bi)

]=

2n

n!·n∏i=1

‖bi‖2Fi(bi)

Fur die obere Schranke betrachten wir den Quader mit Grundflache Sn−1 und Hohe ‖bn‖Fn(bn) .

Da Sn in zwei dieser Quader enthalten ist (siehe Abbildung 9.1.2), gilt:

Vn ≤ 2 · Vn−1 ·‖bn‖2Fn(bn)

Aus der Induktionsannahme erhalten wir:

Vn ≤ 2 · Vn−1 ·‖bn‖2Fn(bn)

≤ 2 · ‖bn‖2Fn(bn)

· 2n−1 ·n−1∏i=1

‖bi‖2Fi(bi)

= 2n ·n∏i=1

‖bi‖2Fi(bi)

Es gilt fur das erste sukzessive Minimum:

Satz 9.1.4 (Kaib 1994)Fur jede Gitterbasis b1, . . . , bn ∈ Rm gilt:

mini=1,...,n

Fi(bi) ≤ λ1,‖·‖ ≤

(n! ·

n∏i=1

Fi(bi)

) 1n

Page 74: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

74 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

Zum Vergleich fur die `2-Norm: Wir wissen aus der Minkowski’schen Ungleichung 2.3.1 (Seite 23),daß wegen λ1,‖·‖ ≤ λ2,‖·‖ ≤ · · · ≤ λn,‖·‖ fur das Gitter L = L(b1, . . . , bn) gilt:

mini=1,...,n

‖bi‖ ≤ λi,`2 ≤ (γn)12 · (detL)

1n

Beweis (zu Satz 9.1.4). Betrachten wir beide Abschatzungen:

• Wir zeigen:

mini=1,...,n

Fi(bi) ≤ λi,‖·‖

Sei b =∑ni=1 tibi ∈ L mit ‖b‖ = λ1,‖·‖. Setze s := max {i | ti 6= 0}. Wegen ts ∈ Z \ {0} gilt:

λ1,‖·‖ = ‖b‖ ≥ Fs(b) = Fs(tsbs) = |ts|︸︷︷︸≥1

·Fs(bs) ≥ Fs(bs)

Die Behauptung folgt aus:

mini=1,...,n

Fi(bi) ≤ Fs(bs) ≤ λi,‖·‖

• Sei L = L(b1, . . . , bn). Aus dem zweiten Satz von Minkowski [Mi1896] folgt wegen λ1,‖·‖ ≤λ2,‖·‖ ≤ · · · ≤ λn,‖·‖:

Vn · λn1,‖·‖ ≤ 2n · detL(9.2)

Aus Lemma 9.1.2 wissen wir:

n!

2n·n∏i=1

Fi(bi)

‖bi‖2≥ 1

Vn(9.3)

Aus detL =∏ni=1 ‖bi‖2 erhalten wir:

λn1,‖·‖ ≤ 2n · V −1n ·

n∏i=1

‖bi‖2 (wegen (9.2))

≤ 2n ·

(n!

2n·n∏i=1

Fi(bi)

‖bi‖ 2

(n∏i=1

‖bi‖2

)(wegen (9.3))

= n! ·n∏i=1

Fi(bi)

Es gilt fur das Produkt der sukzessiven Minima:

Satz 9.1.5Fur jede Gitterbasis b1, . . . , bn ∈ Rm gilt:

1

n!·n∏i=1

Fi(bi) ≤n∏i=1

λi,‖·‖ ≤ n! ·n∏i=1

Fi(bi)

Zum Vergleich: Die Minkowski’sche Ungleichung fur die `2-Norm, Satz 2.3.1 auf Seite 23, besagt:

n∏i=1

λi,`2 ≤ (γn)n2 · detL

Page 75: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.2. REDUZIERTE BASEN ZUR NORM ‖·‖ 75

Beweis (zu Satz 9.1.5). Die Behauptung folgt aus dem Beweis zu Satz 9.1.4 durch Anwendendes zweiten Satzes von Minkowski:

detL

n!≤ Vn

2n·n∏i=1

λi,‖·‖ ≤ detL

9.2 Reduzierte Basen zur Norm ‖·‖

Analog zur Euklidischen Norm fuhren wir Reduktionsbegriffe ein und versuchen, Eigenschaftenreduzierter Basen zu beweisen.

9.2.1 Definitionen

Wir ubertragen die Reduktionsbegriffe auf den Fall einer beliebig vorgegebenen Norm:

Definition 9.2.1 (HKZ-reduzierte Basis zu ‖·‖)Eine geordnete Basis b1, . . . , bn ∈ Rm ist eine HKZ-reduzierte Basis zur Norm ‖·‖, wenn:

a) Fj(bi) ≤ Fj(bi ± bj) fur 1 ≤ j < i ≤ n (langenreduziert)

b) Fi(bi) = min {Fi(b) | b ∈ L(bi, bi+1, . . . , bn) \ {0} } fur i = 1, . . . , n

Beim zweiten Kriterium kann b auch aus L(b1, . . . , bn) \ {0} gewahlt werden. Fur die Eigenschaft

”langenreduziert“ gilt mit 1 ≤ j < i ≤ n:

Fj(bi) ≤ Fj(bi ± bj) ⇐⇒ Fj(bi) = mint∈Z

Fj (bi + t · bj)

Diese Aquivalenz nutzt die Konvexitat der Norm Fj . Die”⇐“-Richtung folgt unmittelbar und fur

die”⇒“-Richtung beachtet man, daß gilt:

Fj(bi) ≤ Fj(bi − bj) und Fj(bi) ≤ Fj(bi + bj)

Definition 9.2.2 (β-reduzierte Basis zu ‖·‖)Sei b1, . . . , bn ∈ Rm eine geordnete Basis und β ∈ {2, 3, . . . , n} gegeben. b1, . . . , bn ∈ Rm heißtβ-reduziert (blockreduziert mit Blockgroße β) zur Norm ‖·‖, wenn:

a) Fj(bi) ≤ Fj(bi ± bj) fur 1 ≤ j < i ≤ n

b) Fi(bi) = min{Fi(b)

∣∣ b ∈ L(bi, bi+1, . . . , bmin(i+β−1,n)) \ {0}}

fur i = 1, . . . , n− 1

Wir betrachten den Spezialfall einer 2-reduzierten Basis zu ‖·‖: Die geordnete Basis b1, . . . , bn ∈Rm ist 2-reduziert zur Norm ‖·‖, wenn:

a) Fj(bi) ≤ Fj(bi ± bj) fur 1 ≤ j < i ≤ n

b) Fi(bi) = min{Fi(sbi + tbi+1)

∣∣ (s, t) ∈ Z2 \ {(0, 0)}}

fur i = 1, . . . , n− 1

Eine 2-reduzierte Basis zur `2-Norm ist eine LLL-reduzierte Basis.

Page 76: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

76 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

9.2.2 Eigenschaften 2-reduzierter Gitterbasen

Wir untersuchen die Eigenschaften 2-reduzierter Basen und vergleichen die Resultate mit denenim Spezialfall der `2-Norm (LLL-reduziert) aus Kapitel 3.

Satz 9.2.3Sei b1, . . . , bn ∈ Rm eine 2-reduzierte Basis zur Norm ‖·‖. Dann gilt fur i = 1, . . . , n− 1:

Fi+1(bi+1) ≥ 12 · Fi(bi)

Zum Vergleich: Fur die `2-Norm ist mit δ = 34 nach Lemma 4.1.2 auf Seite 31 ‖bi‖22 ≤ 2 · ‖bi+1‖22,

also:

‖bi+1‖2 ≥√

12 · ‖bi‖2

Beweis (zu Satz 9.2.3). Nach Definition gilt

a) Fj(bi) ≤ Fj(bi ± bj) fur 1 ≤ j < i ≤ n und

b) Fi(bi) = min{Fi(sbi + tbi+1)

∣∣ (s, t) ∈ Z2 \ {(0, 0)}}

fur i = 1, . . . , n− 1.

Die Behauptung Fi(bi) ≤ 12 · Fi(bi+1) erhalten wir aus:

Fi(bi) ≤ Fi(bi+1) (wegen Eigenschaft b))

≤ min {Fi(bi+1 − tbi) | t ∈ Z} (wegen Eigenschaft a))

≤ Fi(bi+1) + 12 · Fi(bi)

Wir nutzen, daß die Abstandsfunktionen Fi jeweils Normen auf span(b1, . . . , bi−1)⊥

sind:

Fi+1(bi+1) = min {Fi(bi+1 − sbi) | s ∈ R} (Definition)

= min{Fi(bi+1 − (r + t)bi

) ∣∣ t ∈ Z, r ∈[− 1

2 ,+12

] }≤ min {Fi(bi+1 − tbi) | t ∈ Z}+ Fi

(12 · bi

)(Dreiecksungleichung)

≤ min {Fi(bi+1 − tbi) | t ∈ Z}+ 12 · Fi(bi) (Linearitat)

Im folgenden Satz untersuchen wir, wie gut im allgemeinen Fall der erste Vektor der 2-reduziertenBasis das erste sukzessive Minimum approximiert.

Satz 9.2.4Sei b1, . . . , bn ∈ Rm eine 2-reduzierte Basis zur Norm ‖·‖. Dann gilt:

‖b1‖ ≤ 2n−1 · λ1,‖·‖

Zum Vergleich: Fur die `2-Norm wissen wir mit δ = 34 aus Satz 4.1.4 auf Seite 32:

‖b1‖2 ≤(

43

)n−12 · λ1,`2

Page 77: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.2. REDUZIERTE BASEN ZUR NORM ‖·‖ 77

Beweis. Sei b =∑ni=1 tibi ‖·‖-minimaler Vektor in L = (b1, . . . , bn) \ {0}. O.B.d.A. sei tn ∈

Z \ {0}. Es gilt:

‖b‖ ≥ Fn(b)

= mint1,...,tn−1∈R

∥∥∥∥b−∑n−1

j=1tjbj

∥∥∥∥ (Definition)

= Fn(tnbn)

= |tn| · Fn(bn) (Linearitat der Norm Fn)

≥ Fn(bn) (wegen tn ∈ Z \ {0})≥ 2−n+1 · F1(b1) (induktiv aus Satz 9.2.3)

= ‖b1‖ · 2−n+1 (wegen F1(bi) = ‖bi‖ und b1 = b1)

Wegen λ1,‖·‖ = ‖b‖ folgt die Behauptung. �

9.2.3 Eigenschaften HKZ-reduzierter Basen

Wir untersuchen die Eigenschaften von HKZ-Basen und vergleichen die Resultate, die wir imSpezialfall der `2-Norm in Kapitel 6.1 (Seite 49 und folgende) bewiesen haben. Es gilt fur HKZ-reduzierte Basen zur Norm ‖·‖:

Satz 9.2.5 (Lovasz, Scarf 1992)Sei b1, . . . , bn eine HKZ-reduzierte Basis zu ‖·‖ des Gitters L. Es gilt fur i = 1, . . . , n:

2

i+ 1· ‖bi‖ ≤ λi,‖·‖ ≤

i+ 1

2· Fi(bi) ≤

i+ 1

2· ‖bi‖

Zum Vergleich: Fur die `2-Norm wissen wir aus Satz 6.2.3 auf Seite 51, daß fur i = 1, . . . , n gilt:

i+ 3

4· ‖bi‖ ≤ λi,`2 ≤

i+ 1

4‖bi‖

Beweis (zu Satz 9.2.5). Wir zeigen die untere und obere Schranke:

• Wir zeigen 2i+1 · ‖bi‖ ≤ λi,‖·‖ fur i = 1, . . . , n. Angenommen, h1, . . . , hn ∈ L realisieren die

sukzessiven Minima λ1, . . . , λn, d.h. es ist ‖hi‖ = λi,‖·‖ fur i = 1, . . . , n, und die Vektorenh1, . . . , hn sind linear unabhangig. Es gilt

maxj≤i

Fi(hj) ≥ Fi(bi),(9.4)

weil:

– wegen dim (span(h1, . . . , hi)) = i ist maxj≤i Fi(hj) 6= 0 und

– b1, . . . , bn eine HKZ-reduzierte Basis ist, also

Fi(bi) = min {Fi(b) | b ∈ L(bi, . . . , bn) \ {0} }

gilt.

Wir erhalten aus (9.4) und λ1,‖·‖ ≤ λ2,‖·‖ ≤ · · · ≤ λn,‖·‖:

λi,‖·‖ = ‖hi‖ = maxj≤i‖hi‖ ≥ Fi(bi)(9.5)

Page 78: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

78 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

Wir wenden aus Beweis zu Satz 9.2.3 die Ungleichung

minµ∈Z

Fj(x+ µ · bj) ≤ Fj+1(x) + 12 · Fj(bj)

rekursiv beginnend mit x := bi und j = i− 1 an:

Fi−1(bi) ≤ Fi−1(bi + µi,i−1 · bi−1) fur alle µi,i−1 ∈ Z≤ Fi(bi) + 1

2 · Fi−1(bi−1) fur Minimalstelle µi,i−1 ∈ Z

Im nachsten Schritt sei x := bi + µi,i−1 · bi−1 mit Minimalstelle µi,i−1 ∈ Z und j := i − 1usw. Nach i− 1 Schritten erhalten wir mit Abschatzung (9.5) die Behauptung:

‖bi‖ = F1(bi) ≤ F1

bi +

i−1∑j=1

µi,j · bj

≤ i+ 1

2· λi,‖·‖(9.6)

• Wir zeigen fur i = 1, . . . , n:

λi,‖·‖ ≤i+ 1

2· Fi(bi) ≤

i+ 1

2· ‖bi‖

Es gilt:

λi,‖·‖ ≤ maxj≤i

F1(bj) (wegen F1(b) = ‖b‖)

≤ maxj≤i

{Fj(bj) + 1

2 ·j−1∑t=1

Ft(bt)

}(wegen (9.6))

≤ maxj≤i

{j+1

2 · Fj(bj)}

(wegen (9.6))

≤ i+12 · F1(bi) (wegen Ft(bt) ≤ F1(bj) fur t < j)

≤ i+12 · ‖bi‖ (wegen F1(bi) = ‖bi‖ ≤ ‖b‖)

9.2.4 Eigenschaften β-reduzierter Gitterbasen

Wir untersuchen die Eigenschaften von HRZ-Basen und vergleichen die Resultate, die wir imSpezialfall der `2-Norm in Kapitel 6.4 (Seite 57 und folgende) bewiesen haben. Wir definieren:

Definition 9.2.6 (αβ)Wir setzen:

αβ := sup

{‖b1‖Fβ(bβ)

∣∣∣∣ b1, . . . , bn HKZ-reduzierteBasis und ‖·‖ Norm

}

Satz 9.2.7Fur jede β-reduzierte Basis b1, . . . , bn zu ‖·‖ gilt:

‖b1‖ ≤ αdn−1β−1e

β · λ1,‖·‖

Page 79: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.2. REDUZIERTE BASEN ZUR NORM ‖·‖ 79

Beweis. Sei hi := Fi(bi). Bestimme Index µ mit minimalem hµ. Nach Satz 9.1.4 gilt hµ ≤ λ1,‖·‖.Fur j < β sind die Basen bi, bi+1 . . . , bi+j HKZ-reduzierte Basen zur Norm Fi. Nach Definitionvon αβ und wegen αk ≤ αk+1 gilt:

hi ≤ αβ · hi+j(9.7)

Wir erhalten durch wiederholtes Anwenden von (9.7):

h1 ≤ αβ · h1+1(β−1) ≤ α2β · h1+2(β−1) ≤ α3

β · h1+3(β−1) ≤ . . . ≤ αbµ−1β−1c

β · h1+bµ−1β−1c(β−1)

Insgesamt erhalten wir:

h1 ≤ αdµ−1β−1e

β · hµ ≤ αdn−1β−1e

β · λ1,‖·‖

Fur die `2-Norm zeigt C.P. Schnorr [S87, Korollar 2.5], daß fur

αβ,`2 := sup

{‖b1‖2‖bβ‖

: b1, . . . , bn HKZ-reduzierte Basis

}(9.8)

gilt, wobei αβ,`2 als Quadrat von (9.8) definiert und als Korkine-Zolotareff-Konstante bezeichnetwird):

αβ,`2 ≤ k1+ln k

2

Analog zeigt man fur beliebige Norm:

αk ≤ k(k − 1)ln(k−1)

Satz 9.2.8Jede β-reduzierte Basis b1, . . . , bn erfullt fur i = 1, . . . , n

2

i+ 1· γ′β− i−β/2β−1 ≤ ‖bi‖

λi,‖·‖≤ i+ 1

2· γ′β

n−β/2β−1

mit γ′β = (β!)2β ≈

(βe

)2

.

Zum Vergleich: In der `2-Norm gilt fur die Hermite-Konstante γβ nach Satz 6.4.3 auf Seite 57:√4

i+ 3· γ−

i−1β−1

β ≤ ‖bi‖λi,`2

≤√i+ 3

4· γ

n−1β−1

β

Der Beweis zu Satz 9.2.8 ist im wesentlichen analog zum Beweis zur `2-Norm. Wichtiger”Baustein“

ist folgendes Analogon zu Lemma 6.4.5 auf Seite 58: Fur jede β-reduzierte Basis b1, . . . , bn gilt:

‖b1‖ ≤ γ′βm−β/2β−1 ·M mit M := max

n−β+2≤i≤nFi(bi)

Page 80: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

80 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

9.3 Konstruktion einer HKZ-reduzierten Gitterbasis

Gegeben sei ein Gitter L vom Rang n. Wir konstruieren eine HKZ-reduzierte Basis in zwei Schrit-ten, wobei die Konstruktion allerdings nicht effizient ist.

1. Wir wahlen fur i = 1, . . . , n ein bi ∈ L mit:

Fi(bi) = min {Fi(b) | b ∈ L,Fi(b) 6= 0}

Beachte, Fi(b) ist definiert, da wir im i-ten Schritt bereits b1, . . . , bi−1 festgelegt haben. Esgilt genau dann Fi(b) 6= 0, wenn b /∈ span(b1, . . . , bi−1). Die Vektoren b1, . . . , bn bilden eineBasis von L: Falls dies nicht der Fall ist, existiert ein minimales i, so daß b1, . . . , bi keinprimitives System ist:

L ∩ span(b1, . . . , bi−1) = L(b1, . . . , bi−1)(9.9)

L ∩ span(b1, . . . , bi) ) L(b1, . . . , bi)(9.10)

Wegen 9.10 existiert ein b ∈ L ∩ span(b1, . . . , bi) \ L(b1, . . . , bi) mit:

b =

i−1∑j=1

tjbj + tibi mit t1, . . . , ti−1 ∈ Z und ti /∈ Z

Sei k > 1 der Index der additiven Untergruppe L(b1, . . . , bi) in span(b1, . . . , bi) ∩ L. Wegen(9.9) gilt:

ti ∈ 1k + Z

Wahle t′ = ti mod Z, d.h. t′ = 1k ∈]0, 1[. Es folgt der Widerspruch zur Minimalitat:

Fi(t1b1 + t2b2 + · · ·+ t′bi) = Fi(t′bi) = |t′| · Fi(bi) < Fi(bi).

2. Langenreduktion: Fur i = 1, . . . , n, fur j = i− 1, i− 2, . . . , 1 wahle µi,j ∈ Z, so daß:

Fj(bi + µi,i−1bi−1 + µi,i−2bi−2 + · · ·+ µi,jbj)

minimal ist. Setze:

bi := bi +

i−1∑j=1

µi,jbj

Die Langenreduktion sichert Fj(bj) ≤ Fj(bi ± bj) fur j < i.

Lemma 9.3.1Obige Konstruktion liefert eine HKZ-reduzierte Basis b1, . . . , bn des Gitters L.

Beweis. Nachrechnen! �

9.4 Alternative zur Reduktion in ‖·‖

Alternativ zur Reduktion in ‖·‖ kann man S‖·‖(1) durch S‖·‖E(1) mit Ellipsoid-Norm ‖·‖E appro-ximieren und die Reduktion in der Ellipsoid-Norm durchfuhren.

‖x‖2E := xTBTBx

Page 81: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.5. KONSTRUKTION EINES ‖·‖-KURZESTEN GITTERVEKTORS 81

Die Satze fur die `2-Norm ubertragen sich. Nach [J48] gilt: Zu jeder Norm ‖·‖ : Rn → R gibt eseine Ellipsoid-Norm ‖·‖E mit

‖x‖E ≤ ‖x‖ ≤√n · ‖x‖E

Dann folgt fur die ‖·‖E β-reduzierte Basis nach Satz 6.4.3:

1n ·√

4i+3 · γ

− i−1β−1

β ≤ ‖bi‖λi,‖·‖

≤ n ·√

i+34 · γ

n−1β−1

β(9.11)

Dabei geht ein Faktor√n verloren bei der Approximation von ‖·‖ durch ‖·‖E. Ein weiterer Faktor√

n geht verloren durch die Approximation von λi,‖·‖ durch λi,`2 .

Fur kleine Blockweiten β ist die Aussage (9.11) scharfer als Satz 9.2.8, weil γ′β = Θ(γ2β

). Fur

große Blockweiten β ≈ n ist Satz 9.2.8 scharfer. Fur β = n sind die Schranken fur HKZ-reduzierteBasen zu ‖·‖ um den Faktor

√n besser als die Schranken (9.11).

9.5 Konstruktion eines ‖·‖-kurzesten Gittervektors

Wir ubertragen unseren Algorithmus zur Bestimmung eines kurzesten Gittervektors fur die Eu-klidische Norm aus Kapitel 8.1 auf beliebige Normen. H. Ritters [Ri96] gibt eine Ubersicht uberdie Aufzahlung kurzester Gittervektoren in der sup-Norm.

9.5.1 ENUM-Algorithmus fur beliebige Norm

Wir verallgemeinern Algorithmus ?? von Seite ??. Es bezeichne:

ct(ut, ut+1, . . . , un) := Ft

(n∑i=t

uibi

)

Wir bezeichnen zu ut, ut+1, . . . , un mit nextFt(u) die erste, ganzzahlige Minimalstelle u′ von∣∣∣∣∣Ft(u · bt +

n∑i=t

uibi

)− Ft

(u′ · bt +

n∑i=t

uibi

)∣∣∣∣∣(9.12)

und mit nextFt(ut, u) die nachste, ganzzahlige Nullstelle von (9.12) nach ut. Falls S‖·‖ ein Polytopist, z.B. fur die 1- und sup-Norm, kann Ft durch lineare Optimierung bestimmt werden.

9.5.2 Gauß-ENUM-Algorithmus fur beliebige Norm

Betrachten wir Schritt 2 des Algorithmus’ 9.5.1. Gegeben sind b1, . . . , bn sowie u1, . . . , un und cmin1 .

Sei L := L(b1, . . . , bt−1) und setze:

z := −n∑i=t

uibi

Dann gilt:∣∣{(u1, . . . , ut−1) ∈ Zt−1 : c1(u1, . . . , ut−1) ≤ cmin1

}∣∣ =∣∣( L+ w

)∩ S‖·‖( cmin

1 )∣∣

=∣∣L ∩ (S‖·‖( cmin

1 ) + z)∣∣

Page 82: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

82 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

Algorithmus 9.5.1 ‖·‖-ENUM: kurzester Gittervektor (vollstandige Aufzahlung)

EINGABE : Gitterbasis b1, . . . , bn ∈ Rm

1. FOR i = 1, . . . , n DO ci := ui := ui := yi := 0

2. u1 := u1 := 1; t := 1;

3. cmin1 := c1 := ‖b1‖2

/∗ stets gilt: ct = ct(ut, ut+1, . . . , un) und cmin1 ist aktuelles Minimum der Funktion c1 ∗/

4. WHILE t ≤ n DO

4.1. ct := ct(ut, ut+1, . . . , un) = Ft

(n∑i=t

uibi

)4.2. IF ct < cmin

1 THEN

IF t > 1 THEN

t := t− 1

u reelle Minimalstelle von Ft

(ubt +

n∑i=t+1

uibi

)ut := nextFt(u)

ELSE

cmin1 := c1

FOR i = 1, . . . , n DO ui := ui

END if

ELSE

t := t+ 1

/∗ tmax bezeichne den bisherigen maximalen Wert von t vor der Erhohung ∗/

ut :=

{ut + 1 falls t = tmax

nextFt(ut, u) sonst

END if

END while

AUSGABE : Minimalstelle (u1, . . . , un) ∈ Z \ {0} und Minimalwert cmin1 fur die Funktion c1

Nach der Volumenheuristik ist:

∣∣L ∩ [S‖·‖( cmin1 ) + z

]∣∣ ≈ volt−1

(span

(L)∩[S‖·‖( c

min1 ) + z

])detL

=

volt−1

([w + span

(L)]∩ S‖·‖( cmin

1 )

)detL

Page 83: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

9.5. KONSTRUKTION EINES ‖·‖-KURZESTEN GITTERVEKTORS 83

Wann gilt die Volumen-Heuristik streng? Hinreichende Voraussetzung: Bei festem y ist z uniformlydistributed modulo L (vergleiche Definition ?? auf Seite ??):

b =

t−1∑j=1

n∑i=1

uiµi,j bj︸ ︷︷ ︸=−z∈span( L )

+

n∑j=t

n∑i=t

uiµi,j bj︸ ︷︷ ︸:=y∈span( L )

Die Menge(b+ span

(L))∩ S‖·‖( cmin

1 ) hangt nur von z, aber nicht von y ab. Es folgt aus derVolumenheuristik Lemma 8.2.1 (Seite 68):

Lemma 9.5.1Angenommen, z ist uniformly distributed modulo L und unabhangig von y. Dann gilt

E[ ∣∣[w + L

]∩ S‖·‖( cmin

1 )∣∣] =

volt−1

([y + span

(L)]∩ S‖·‖( cmin

1 )

)detL

,

wobei y + span(L)

= b+ span(L).

Wir erhalten analog zu Satz ??:

Satz 9.5.2Angenommen, ({µi,j} : 1 ≤ j < i ≤ n) ist gleichverteilt in [0, 1[(

n2). Dann gilt in Algorithmus 9.5.1

‖·‖-ENUM stets:

• z ist uniformly distributed modulo L und unabhangig von y.

• E[ ∣∣[w + L

]∩ S‖·‖( cmin

1 )∣∣] =

volt−1

([y + span

(L)]∩ S‖·‖( cmin

1 )

)detL

Wir erhalten Gauß-‖·‖-ENUM aus Algorithmus’ 9.5.1, indem wir Schritt 2 ersetzen durch:

IF

volt−1

([y + span

(L)]∩ S‖·‖( cmin

1 )

)detL

≥ 2−p

Page 84: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

84 KAPITEL 9. GITTERREDUKTION IN BELIEBIGER NORM

Page 85: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 10

Anwendungen der Gitterreduktion

In Kapitel 5 (Seite 43 und folgende) haben wir versucht, Subsetsum-Aufgaben durch Gitterreduk-tion zu losen. In diesem Kapitel werden wir weitere Anwendungen der Gitterreduktion kennen-lernen: Losen des 3-SAT-Problems, Angriff auf Damgards Hashfunktion (finde zwei verschiedeneVektoren, denen der gleiche Werte zugewiesen wird) und Faktorisieren ganzer Zahlen. Fur weitereAnwendungen der Gitterreduktion in der Kryptographie verweisen wir auf die Arbeit [JoSt94] vonA. Joux und J. Stern.

Fur eine effiziente Aufzahlung kurzester Gittervektor in der sup-Norm verweisen wir auf H. Rit-ters Arbeit [Ri96], in der er mit Hilfe der Gitterreduktion G. Ortons Kryptosystem basierend aufdem Subsetsum-Problem mit Dichte großer als 1 bricht. Die Methoden konnen auf beliebige Nor-men `p ubertragen werden.

10.1 Gitterbasis zu 3-SAT

Wir beschreiben zunachst die konjunktive Normalform. Seien x1, . . . , xn Boole’sche Variablen. Wirschreiben x−1

i := ¬ xi, x1i := xi und x0

i := 0. Die Klauseln der konjunktiven Normalform (KNF)schreiben wir als:

Cj = xaj11 ∨ xaj22 ∨ · · · ∨ xajnn

mit (aj1, aj2, . . . , ajn) ∈ {0,±1}n. Falls eine Variable xi nicht in der Klausel Cj auftritt, setzeaji := 0. Die KNF γ hat folgenden Aufbau

γ(x1, . . . , xn) :=

m∧j=1

Cj(x1, . . . , xn)

Wir betrachten nur konjunktive Normalformen, deren Klauseln aus maximal drei Literalen be-stehen, also

∑ni=1 |aji| ≤ 3 fur j = 1, . . . ,m. Beim 3-SAT-Problem ist zu entscheiden, ob eine

erfullende Belegung fur die konjunktive Normalform existiert:

Definition 10.1.1 (3-SAT)Das 3-SAT-Problem lautet:

• Gegeben: KNF γ(x1, . . . , xn) :=m∧j=1

Cj(x1, . . . , xn) mit max. 3 Literalen pro Klausel

• Finde (y1, . . . , yn) ∈ {0, 1}n mit γ(y1, . . . , yn) = 1 oder zeige, daß keine erfullende Belegungexistiert.

85

Page 86: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

86 KAPITEL 10. ANWENDUNGEN DER GITTERREDUKTION

Das 3-SAT-Problem ist NP-vollstandig [GaJo79]. Wir ordnen dem 3-SAT-Problem eine Gitter-basis zu und versuchen, durch Gitterreduktion in der sup-Norm eine erfullende Belegung derkonjunktiven Normalform zu bestimmen.

Wir reduzieren zunachst 3-SAT auf {0, 1}-Integer-Programming, indem wir ein aquivalentesUngleichungssystem bilden:

cj := 2− |{i : aji = −1}| ≤ 1 fur j = 1, . . . ,m

Betrachte das folgende Ungleichungssystem in den Unbekannten y1, . . . , yn ∈ {0, 1}:∣∣∣∣∣n∑i=1

ajiyi − cj

∣∣∣∣∣ ≤ 1 fur j = 1, . . . ,m(10.1)

Beispiel:

x1 ∨ x2 ∨ x3 ↔ |y1 + y2 + y3 − 2| ≤ 1

¬ x1 ∨ x2 ∨ x3 ↔ |−y1 + y2 + y3 − 1| ≤ 1

Wir konnen jede Restriktion in zwei ≤-Relationen aufspalten. Durch Fallunterscheidung uber dieAnzahl negierter/nicht-negierter Literale in der Klausel folgt:

Lemma 10.1.2Die {0, 1}-IP-Aufgabe (10.1) hat genau dann eine Losung y ∈ {0, 1}n, wenn γ(y) = 1.

Die Gitterbasis zum 3-SAT-Problem besteht aus den folgenden n+ 1 ganzzahligen Zeilenvektorenb1, . . . , bn+1 ∈ Zn+m+1:

b1b2...bnbn+1

:=

2 0 · · · 0 a11 a21 · · · am1 00 2 0 a12 a22 · · · am2 0...

. . ....

......

......

0 0 2 a1n a2n · · · amn 0−1 −1 · · · −1 −c1 −c2 · · · −cm +1

(10.2)

Sei y = (y1, . . . , yn) eine erfullende Belegung der KNF. Der zugehorige Losungsvektor ist:

b(y) =

n∑i=1

yibi + bn+1

Dieser Vektor liegt wegen (10.1) in {±1}n × {±1, 0}m × {+1}.

Satz 10.1.3Sei L das von den Zeilenvektoren b1, . . . , bn+1 aus (10.2) erzeugte Gitter. Dann gilt fur alle Git-tervektoren z ∈ L:

Es existiert eine erfullende Belegungy ∈ {0, 1}n zu γ(y) mit z = ±b(y)

⇐⇒ ‖z‖∞ = 1

Beweis. Wir zeigen beide Richtungen:

”⇒“ Wegen b(y) ∈ {±1, 0}n+m+1 gilt ‖z‖∞ = 1.

Page 87: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

10.2. ANGRIFF AUF DAMGARDS HASHFUNKTION 87

”⇐“ Gegeben ist ein Vektor z ∈ L mit ‖z‖∞ = 1. Der Vektor habe die Darstellung

z =

n+1∑i=1

y′ibi(10.3)

mit y′1, y′2, . . . , y

′n+1 ∈ Z. Wegen ‖z‖∞ = 1 folgt aus der letzten Komponente der Basisvek-

toren, daß y′n+1 = ±1 ist. Aus den ersten n Eintragen erhalten wir nach Fallunterscheidung:

1. Aus yn+1 = +1 folgt (y′1, y′2, . . . , y

′n) ∈ {0,+1}n.

2. Aus yn+1 = −1 folgt (y′1, y′2, . . . , y

′n) ∈ {0,−1}n.

Setze:

y := y′n+1 · (y′1, y′2, . . . , y′n)

Es ist y ∈ {0,+1}n und (y, 1) = y′n+1 ·y′. Wegen ‖z‖∞ = 1 und y′n+1 ∈ {±1} gilt nach (10.3)∣∣∣∣∣n∑i=1

ajiyi − cj

∣∣∣∣∣ =∣∣y′n+1

∣∣ · ∣∣∣∣∣n∑i=1

ajiyi − cj

∣∣∣∣∣ ≤ ‖z‖∞ ≤ 1

fur j = 1, . . . ,m. Nach Lemma 10.1.2 ist y eine erfullende Belegung.

Wir versuchen durch Gitterreduktionen, einen in der sup-Norm kurzesten, nicht-trivalen Git-tervektor zu finden, um eine erfullende Belegung der konjunktive Normalformen mit hochstensdrei Literalen pro Klausel zu bestimmen. Unter der Cook’schen Hypothese P 6= NP ist dies ineinigen Fallen schwierig, denn das 3-SAT-Problem ist NP-vollstandig.

Wir haben mit Satz 10.1.3 einen alternativen Beweis zu Korollar 11.2.9 von Seite 99 kennen-gelernt: Das Problem ‖·‖∞-kurzester Gittervektor ist NP-vollstandig.

10.2 Angriff auf Damgards Hashfunktion

I.B. Damgard [Da89] hat der EuroCrypt-Konferenz 1989 die folgende kryptographische Hash-funktion basierend auf dem Subsetsum-Problem vorgestellt. Wahle zufallig und unabhangig

a = (a1, . . . , an) ∈R [1, 2m − 1]n

und definiere zu a die Hashfunktion:

ha : {0, 1}n → N

(x1, . . . , xn) 7→∑ni=1 aixi

Eine Kollision nennen wir x, x′ ∈ {0, 1}n, x 6= x′, mit ha(x) = ha(x′). Als Pseudo-Kollisionbezeichnen wir x, x′ ∈ {0, 1}n, x 6= x′, mit ha(x) = ha(x′) (mod 2m). Wir werden versuchen,Pseudo-Kollisionen zu finden.

Weshalb suchen wir nach Kollisionen? Um eine lange Nachricht M durch eine kurze, digitaleUnterschrift zu versehen, wendet man in der Kryptographie die Hashfunktion h auf die Nachrichtan und erhalt einen im Vergleich zur Nachricht kleinen Wert. Nur h(M) wird digital unterschrieben.Der Teilnehmer veroffentlicht M und seine digitale Unterschrift von h(M). Falls wir eine andereNachricht M ′ mit h(M) = h(M ′) finden, konnen wir die digitale Unterschrift fur M einfachubernehmen. Wir haben eine Nachricht mit digitaler Unterschrift eines fremden Teilnehmers.

Page 88: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

88 KAPITEL 10. ANWENDUNGEN DER GITTERREDUKTION

Jedem Vektor x = (x1, . . . , xn) ∈ {±1, 0}n \ {0} mit

n∑i=1

ai · xi = 0 (mod 2m)

entspricht eine Pseudo-Kollision x, x′ gemaß

xi :=

{1 falls xi = 1

0 sonstx′i :=

{1 falls xi = −1

0 sonst

und umgekehrt. Wir wahlen als Basis:b1b2...bnbn+1

:=

1 0 · · · 0 a1n0 1 0 a2n...

. . ....

...0 0 1 ann0 0 · · · 0 2mn

(10.4)

Wir bezeichnen:

P-Kollision :=

{(x1, . . . , xn+1) ∈ {±1, 0}n+1

∣∣∣∣ xn+1 = 0 und (x1, . . . , xn)entspricht Pseudo-Kollision

}Es gilt offenbar: P-Kollision ⊆ L(b1, . . . , bn+1). Wir versuchen durch Gitterreduktion, einen kurzenGittervektor in der Euklidischen Norm zu finden. Was ist das Minimum der Menge

{‖x‖2 : x ∈ P-Kollision} ,

also die Lange des kurzesten Gittervektors, der einer Pseudo-Kollision entspricht? Wir fuhren eineprobabilistische Analyse zu a ∈R [1, 2m − 1]

nund festem x durch. Zu α ∈

[0, 1

2

]mit αn ∈ N sei:

Nα :=

{(x1, . . . , xn) ∈ {±1, 0}n

∣∣∣∣∣n∑i=1

|xi| = αn

}

Fur x ∈ Nα ist ‖x‖2 =√αn, da x ∈ {±1, 0}n. Es gilt:

Nα := |Nα| =(n

αn

)· 2αn(10.5)

Denn wir konnen die αn Eintrage ungleich 0 beliebig auf die n Positionen verteilen und als Wertjeweils +1 oder −1 setzen. Es gilt

Nα ≈ 2(H(α,1−α)+α)·n,(10.6)

wobei H die Shannon’sche Entropie-Funktion ist:

H(α, 1− α) = −α · log2 α− (1− α) · log2(1− α)

Wir mochten bezuglich a ∈R [1, 2m − 1]n

die Wahrscheinlichkeit berechnen, mit der in Nα einVektor aus P-Kollision liegt. Dazu definieren wir zu a und festem x ∈ Nα die Zufallsvariable:

ξx :=

1 fallsn∑i=1

aixi = 0 (mod 2m)

0 sonst

Offenbar ist

Ea [ ξx] = 2−m(10.7)

Page 89: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

10.2. ANGRIFF AUF DAMGARDS HASHFUNKTION 89

Wir definieren die Zufallsvariable ξx := ξx − 2−m, so daß:

Ea[ξx]

= 0(10.8)

Ea

2

x

]= Ea

[ξ2x

]− 2 · 2−m · Ea [ ξx] + 2−2m ≤ 2 · 2−m(10.9)

Beachte, daß fur die Indikatorvariable ξi gilt Wsa [ ξi = 1] = Wsa[ξ2i = 1

]. Wir verwenden aus der

Stochastik (siehe u.a. [Fe68]) fur eine Zufallsvariable X:

Var[X] = E[X2]− E[X]

2(Definition Varianz)

Var[ cX] = c2 ·Var[X] (c > 0 konstant)

Ws[ |X − E[X]| ≥ ε] ≤ 1

ε2·Var[X] (Tschebycheff-Ungleichung)

Wir wenden die Tschebycheff-Ungleichung auf 1Nα·∑x∈Nα ξx an und erhalten wegen der Erwar-

tungswerte (10.8) und (10.9):

Wsa

[ ∣∣∣∣∣ 1

Nα·∑x∈Nα

ξx − 2−m

∣∣∣∣∣ ≥ ε]≤ 1

ε2·Var

[1

Nα·∑x∈Nα

ξx

]

=1

ε2 ·N2α

·∑x∈Nα

∑y∈Nα

Ea[ξx · ξy

]

Wegen des Erwartungswerts (10.9) ist:∑x∈Nα

∑y∈Nα

Ea[ξx · ξy

]=∑x∈Nα

Ea

2

x

]+

∑x,y∈Nαx6=y

Ea[ξx]· Ea

[ξy]

=∑x∈Nα

Ea

2

x

]= Nα · Ea

2

x

](10.10)

Aus Abschatzung (10.10) und dem Erwartungswert (10.8) folgt:

Wsa

[ ∣∣∣∣∣ 1

Nα·∑x∈Nα

ξx − 2−m

∣∣∣∣∣ ≥ ε]≤ 1

ε2 ·Nα· Ea

2

x

]≤ 2

ε2 ·Nα · 2m

Fur ε = 2−m erhalten wir

Wsa

[ ∑x∈Nα

ξx = 0

]≤ 2m+1

Nα(10.11)

und fur ε = 2−m−l:

Wsa

[ ∑x∈Nα

ξx ≤ Nα ·(2−m − 2−m−l

)]≤ 2m+1+2l

Nα(10.12)

Aus (10.11) folgt unmittelbar:

Satz 10.2.1Es gilt:

Page 90: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

90 KAPITEL 10. ANWENDUNGEN DER GITTERREDUKTION

a) Fur m ≤ log2Nα − 2 ≈ (H(α, 1− α) + α) · n gibt es bezuglich a ∈R [1, 2m − 1]n

mit Wahr-scheinlichkeit mindestens 1

2 Pseudo-Kollisionen in Nα.

b) Fur m ≤ log2Nα − 4 ≈ (H(α, 1− α) + α) · n gibt es bezuglich a ∈R [1, 2m − 1]n

mit Wahr-scheinlichkeit mindestens 1

2 mindestens Nα · 2−m−1 Pseudo-Kollisionen in Nα.

Beweis. Die Aussage a) folgt aus (10.11), die Aussage b) folgt aus (10.12) mit l = 1. �

Im nachsten Schritt mochten wir Nα = |Nα| maximieren: Aus dem Ansatz

∂Nα∂α

= 0

mit (10.6) erhalten wir:

− log2 2 ≈ ∂ (−α · log2 α− (1− α) · log2(1− α))

∂α

Dazu aquivalent:

log2 α+ log2(1− α) ≈ − log2 2

Wegen − log2 2 = −1 und −1 + log2 α = log21α erhalten wir den Anzatz α = k−1

k

− log2k−1k + log2

1k = log2(k − 1) ≈ − log2 2

und somit k − 1 = 2 bzw. k = 3, also α = 23 als ungefahre Maximalsstelle von Nα.

Satz 10.2.2Bezuglich a ∈R [1, 2m − 1]

ngibt es mit Wahrscheinlichkeit mindestens 1

2 Pseudo-Kollisionen, wenn

N2/3 ≥ 2m−1 oder aquivalent n ≥ m−1log2 3 ist.

Beweis. Aus (10.7) wissen wir, daß:

Ea [ Anzahl Pseudo-Kollisionen in Nα] = Nα · 2−m

Wegen N2/3 ≥ 2m−1 folgt:

Wsa[

Anzahl Pseudo-Kollisionen in N2/3

]≥ 1

2

Damit N2/3 ≥ 2m−1 ist, muß wegen

log2N2/3 = n ·[− 2

3 · log223 −

13 · log2

13 + 2

3 · log2 2]

= n ·[− 2

3 · (− log2 3 + log2)− 13 · (− log2 3) + 2

3

]= n ·

[+ 2

3 · log2 3− 23 + 1

3 · log2 3 + 23

]= n · log2 3

gelten n · log2 3 ≥ m− 1 oder aquivalent n ≥ m−1log2 3 . �

Betrachten wir die Situation bei den von I.B. Damgard vorgeschlagenen Parametern:

• Fur m = 120 gibt es Pseudo-Kollisionen, falls n ≥ 77.

• Fur m = 120 und n = 100 gibt es im Mittel N2/3 · 2−m ≈ 3, 8 · 1011 Pseudo-Kollisionen.

Page 91: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

10.3. FAKTORISIEREN GANZER ZAHLEN 91

Betrachten wir die Anzahl der kurzen Gittervektoren:∣∣∣{z ∈ L(b1, . . . , bn+1) : ‖z‖22 ≤ αn}∣∣∣ ≈ N(0, n, α)

2m

J.E.Mazo und A.M.Odlyzko haben in [MaOd90] die Funktion

N(z, n, α) :=∣∣∣{x ∈ Zn : ‖x− z‖2 ≤ α · n

}∣∣∣untersucht. Als Vektoren z kommen nur Vektoren in Frage, deren letzter Eintrag 0 ist. Der Anteilder Vektoren (x1, . . . , xn) mit

∑ni=1 aixi = 0 (mod 2m) ist 2−m. Es gilt:∣∣∣{z ∈ L(b1, . . . , bn+1) : ‖z‖22 ≤ αn

}∣∣∣ ≈ (2eπα)n2

2m

Wir wahlen m und α derart, daß in etwa gilt

Ea [ Anzahl Pseudo-Kollisionen in Nα] ≈ 1,

Also wegen (10.5) und (10.6):

m = n · [H(α, 1− α) + α] bzw. Nα =

(n

αn

)· 2αn = 2m

Gibt es zur Lange√αn kurzere, nicht-triviale Gittervektoren, die keiner Pseudo-Kollision entspre-

chen? Wir wurden bei der Gitter-Reduktion unter Umstanden diese kurzeren Vektoren anstatt der

gewunschten erhalten. Fur m = 120 und n = 100 ist (2eπα)n2

2m ≈ 20,0039n, d.h. die sog. parasitaren,

kurzen Gittervektoren sind leicht in der Uberzahl.

10.3 Faktorisieren ganzer Zahlen mit Hilfe DiophantischerApproximationen

Sei N ∈ Z das Produkt mindestens zweier verschiedener Primzahlen und p1, p2, . . . die Folge derPrimzahlen. C.P. Schnorr [S93] hat das Problem der Faktorisierung von N auf das Finden vont+ 2 Losungen (e1, . . . , et) ∈ Zt der Ungleichungen (c > 1 fest)∣∣∣∣∣

t∑i=1

ei ln pi − lnN

∣∣∣∣∣ ≤ N−c · po(1)t

t∑i=1

|ei ln pi| ≤ (2c− 1) · log2N + 2 · ln pt

(10.14)

reduziert. Wir mochten in diesem Kapitel die Idee und den Algorithmus vorstellen. Fur eineausfuhrliche Betrachtung verweisen wir auf die Originalarbeit.

Wir assoziieren mit den Primzahlen p1, . . . , pt ein Gitter im Rt+1 und mit N einen Punkt ~N imRt+1. Das Problem der Diophantischen Approximation (10.14) reduzieren wir auf die Bestimmungeines in der `1-Norm hinreichend nahen Gitterpunktes.

Sei p1, . . . , pt die Folge der ersten Primzahlen, also 2, 3, 5, . . .. Wir definieren zu N und festemc > 1 das Gitter Lα,c ⊆ Rt+1, welches von den Zeilenvektoren b1, . . . , bt, ~N aufgespannt wird:

b1b2...bt~N

:=

ln p1 0 · · · 0 N c · ln p1

0 ln p2 0 N c · ln p2

.... . .

......

0 0 ln pn N c · ln pt0 0 · · · 0 N c · lnN

(10.15)

Page 92: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

92 KAPITEL 10. ANWENDUNGEN DER GITTERREDUKTION

Die reellen Vektoren kann man durch rationale Vektoren approximieren. In der Praxis genugensogar ganzzahlige Vektoren.

Betrachten wir Algorithmus 10.3.1. Da N das Produkt mindestens zweier verschiedener Prim-zahlen ist, hat x2 mindestens 4 Wurzeln modulo N , wobei sich zwei nur im Vorzeichen unterschei-den.

x2 − y2 = (x− y)(x+ y) = 0 (mod N)

Im Fall x 6= ±y (mod N) sind 0 < x−y < N und 0 < x+y < N , also 1 < x±y < N , wobei x±ymodulo N reduziert sei. Dann liefert ggT(x± y,N) nicht-triviale Teiler von N . Falls x und y sichwie unabhangige Zufallsvariable verhalten, hat Schritt 7 Erfolgswahrscheinlichkeit mindestens 1

2 .

Der Schritt 4 erfordert, daß |ui − viN | uber der Basis Pt faktorisiert werden kann. Satz 10.3.2

zeigt, daß fur Punkte z ∈ Lα,c, die”nahe“ bei ~N liegen, diese Voraussetzung mit hoher Wahr-

scheinlichkeit erfullt ist.

Satz 10.3.1Sei c > 1, β, δ ≥ 0 fest und pt < N . Falls (e1, . . . , et) ∈ Zt das Ungleichungssystem∣∣∣∣∣

t∑i=1

ai ln pi − lnN

∣∣∣∣∣ ≤ N−c · po(1)t

t∑i=1

|ai ln pi| ≤ (2c− 1) · log2N + 2 · ln pt

lost, gilt fur das in Schritt 3 konstruierte Paar (ui, vi) mit

ui :=∏ai,j>0

paijj und vi :=

∏ai,j<0

p|ai,j |j(10.16)

daß:

|ui − viN | ≤ pβ+δ+o(1)t

Beweis. Siehe [S93, Theorem 1]. �

Falls (e1, . . . , et) ∈ Zt die Ungleichungen (10.16) erfullt mit β + δ ≤ 1 und N hinreichendgroß ist, erfullt das Paar (ui, vi) mit hoher Wahrscheinlichkeit die zur Faktorisierung in Schritt 4notigen Eigenschaften:

ui =∏ai,j>0

paijj und |ui − viN | ≤ pt

Dies ist nur mit vernachlassigbarer Wahrscheinlichkeit nicht der Fall [S93, Theorem 4].

Satz 10.3.2Sei α > 1, c > 1, δ ≥ 0 und pt = (lnN)

α< N . Falls z ∈ Lα,c die Ungleichung

‖z −N‖1 ≤ (2c− 1) · lnN + 2δ · ln pt

erfullt, gilt fur die in Schritt 3 konstruierten Paare (ui, vi):

|ui − viN | ≤ p1α+β+o(1)t

Beweis. Siehe [S93, Theorem 2]. �

Page 93: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

10.3. FAKTORISIEREN GANZER ZAHLEN 93

Aus den beiden Satzen 10.3.1 und 10.3.2 folgt, daß es zum Faktorisieren von N genugt, hinreichendviele Gittervektoren z ∈ Lα,c zu finden, die in der `1-Norm nahe bei ~N liegen. Diese Gitterpunktefindet man in der Praxis durch Anwenden machtiger Reduktionsalgorithmen auf die Vektorenb1, . . . , bn, ~N in der `2-Norm. Die reduzierte Basis enthalt im allgemeinen dann Vektoren, diebezuglich der `1-Norm kurz sind. Man kann erreichen, daß diese Vektoren die Form

t∑i=1

eibi − ~N

haben (e1, . . . , en ∈ Z) und wahlen z :=∑ti=1 eibi fur Satz 10.3.2.

Page 94: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

94 KAPITEL 10. ANWENDUNGEN DER GITTERREDUKTION

Algorithmus 10.3.1 Faktorisieren einer ganzen Zahl

EINGABE : . N ∈ Z (Produkt mindestens zweier verschiedener Primzahlen)

. α und c ∈ Q mit c ≥ 1

1. Bilde Liste p1, . . . , pt der ersten Primzahlen, pt = (lnN)α

. Sei Pt := {p1, . . . , pt}.2. Reduziere mit

”geeignetem“ Reduktionsalgorithmus das Gitter Lα,c ⊆ Rt+1 (siehe Basisma-

trix (10.15)).

3. Bilde fur Vektoren z(i) :=∑tj=1 ai,jbj ∈ L mit kleiner l1-Norm

∥∥∥z − ~N∥∥∥

1mit Hilfe von Pt

und den ganzzahligen Koeffizienten (ai,1, ai,2, . . . , ai,t) m ≥ t+ 2 Tupel (ui, vi) ∈ N2:

ui :=∏ai,j>0

paijj

vi :=∏ai,j<0

p|ai,j |j

4. FOR i = 1, . . . ,m DO

Faktorisiere ui − viN uber Pt und p0 := −1:

ui − viN :=

t∏j=0

pbi,jj

Setze ai,0 := 0. Bezeichne:

ai := (ai,0, ai,1, . . . , ai,t)

bi := (bi,0, bi,1, . . . , bi,t)

END for

5. Finde eine {0, 1}-Losung (c1, . . . , cm) 6= 0 zu:

m∑i=1

ci(ai + bi) = 0 (mod 2)(10.13)

6. Bilde (Division durch 2 wegen (10.13) moglich):

x :=

t∏j=0

p∑mi=1 ci(ai,j+bi,j)/2

j (mod N)

y :=

t∏j=0

p∑mi=1 cibi,j

j (mod N)

Es gilt x2 = y2 (mod N).

7. IF x = ±y (mod N) THEN GOTO 5 und berechne neue Losung

AUSGABE : Zwei nicht-triviale Faktoren ggT(x+ y,N) und ggT(x− y,N)

Page 95: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 11

Komplexitat, NP-Vollstandigkeit

Wir fassen mit Hinblick auf die Gittertheorie die Grundbegriffe der Komplexitatstheorie, spezielldie NP-Vollstandigkeit, zusammen.

11.1 NP-Vollstandigkeit

Wir definieren die Bitlange endlicher Objekte (das Vorzeichen speichern wir getrennt):

• `(0) := 1

• `(n) := dlog2(n+ 1)e fur n ∈ N

• `(pq

):= `(p) + `(q) mit p, q ∈ N und ggT(p, q) = 1

• `(A) =∑i,j `(aij) fur A = [aij ] ∈ Qm×n

Wir setzen die Laufzeit des Algorithmus’ in Beziehung zur Eingabelange. Wir interessieren unsfur Polynomialzeit-Verfahren:

Definition 11.1.1 (Polynomialzeit)Ein Algorithmus ist in Polynomialzeit, falls die Schrittzahl (Turing-Maschine oder Anzahl Bit-Operationen) polynomiell in der Lange der Eingabe beschrankt ist:

Schrittzahl(Eingabe) = poly(`(Eingabe))

In der theoretischen Informatik betrachtet man die Polynomialzeit-Algorithmen als effizient.

Definition 11.1.2 (Charakteristische Funktion)Zu einer Menge A ⊆ {0, 1}∗ ist die charakteristische Funktion χA : {0, 1}∗ → {0, 1} definiertdurch: χA(a) = 1 genau dann, wenn a ∈ A ist.

Wir definieren mit charakteristischen Funktionen die Klasse der Polynomialzeit-Sprachen:

Definition 11.1.3 (Klasse P der Polynomialzeit-Sprachen)Die Klasse P der Polynomialzeit-Sprachen besteht genau aus den Sprachen A ⊆ {0, 1}∗, fur welchedie charakteristische Funktion χA in Polynomialzeit berechenbar ist.

95

Page 96: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

96 KAPITEL 11. KOMPLEXITAT, NP-VOLLSTANDIGKEIT

Die Klasse NP umfaßt die Sprache, so daß es genau fur jedes Wort aus der Sprache einen Bitstringgibt, anhand dessen wir effizient uberpufen konnen, daß dieses Wort in der Sprache liegt.

Definition 11.1.4 (Klasse NP)Die Klasse NP der nichtdeterministischen Polynomialzeit-Sprachen A ⊆ {0, 1}∗ ist erklart durch:

A ∈ NP ⇐⇒ ∃B ∈ {0, 1}∗ × {0, 1}∗, B ∈ P :

A ={x ∈ {0, 1}∗

∣∣ ∃y ∈ {0, 1}poly(`(x)) mit (x, y) ∈ B}

Sei (x, y) ∈ B. Dann heißt y Zeuge fur x ∈ A.

Die Cook’sche Hypothese ist P 6= NP, d.h. es gibt Sprachen in der Klasse NP, fur die wir nichtin Polynomialzeit einen Zeugen finden konnen.

Definition 11.1.5 (Karp-Reduktion)Seien A,B ⊆ {0, 1}∗:

A ≤pol B ⇐⇒ ∃ Polynomialzeit-Abbildung h mit:

∀x ∈ {0, 1}∗ : x ∈ A⇔ h(x) ∈ B

Aus A ≤pol B und B ≤pol C folgt A ≤pol C.

Definition 11.1.6 (NP-vollstandig)A ⊆ {0, 1}∗ heißt NP-vollstandig, wenn: 1. A ∈ NP, 2.∀B ∈ NP : B ≤pol A.

Falls wir einen Polynomialzeit-Algorithmus zu einem NP-vollstandigen Problem finden, folgt P =NP. Dies wurde der Cook’schen Hypothese widersprechen. Daher gelten die NP-vollstandigenProbleme als die schwierigsten in NP.

11.2 Schwierige, algorithmische Gitterprobleme

Wir lernen in diesem Abschnitt mit der Gittertheorie verbundene Probleme kennen, die NP-vollstandig sind oder fur die bisher keine effizienten Algorithmen bekannt sind. Ein solches Problemist die ganzzahlige, lineare Programmierung (Integer Programming):

Definition 11.2.1 (Ganzzahlige, lineare Programmierung)Das Problem der ganzzahligen, linearen Programmierung lautet:

• Gegeben: m,n ∈ N, A ∈ (Z)m×n und b ∈ Zm

• Finde x ∈ Zn mit Ax ≤ b oder zeige, daß kein solcher Vektor existiert.

Die ganzzahlige, lineare Programmierung ist”schwierig“. Wir werden in Satz 11.2.5 sehen, daß

das zugehorige Entscheidungsproblem NP-vollstandig ist:

Definition 11.2.2 (Entscheidungsproblem der ganzzahligen, linearen Programmierung)Das Problem der ganzzahligen, linearen Programmierung lautet:

• Gegeben: m,n ∈ N, A ∈ Zm×n und b ∈ Zm

Page 97: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

11.2. SCHWIERIGE, ALGORITHMISCHE GITTERPROBLEME 97

• Entscheide, ob ein x ∈ Zn mit Ax ≤ b existiert.

Falls P 6= NP, gibt es keinen Losungsalgorithmus in Polynomialzeit. Dagegen gibt es zum analogenProblem der rationalen, linearen Programmierung Polynomialzeit-Verfahren:

Definition 11.2.3 (Rationale, lineare Programmierung)Das Problem der rationalen, linearen Programmierung lautet:

• Gegeben: m,n ∈ N, A ∈ Zm×n und b ∈ Qm

• Finde x ∈ Qn mit Ax ≤ b oder zeige, daß kein solcher Vektor existiert.

Das erste Polynomialzeit-Verfahren fur die lineare Programmierung ist die Ellipsoid-Methodevon L.G. Khachiyan [Kh79, Kh80]. Diese Methode ist aber nicht praktikabel. Ein bekannterPolynomialzeit-Algorithmus stammt von M. Karmarkars [Ka84]. Dieser hat zur Entwicklung derInterior-Point-Methoden fur die lineare Programmierung gefuhrt. Ein bekannter Interior-Point-Algorithmus stammt von Y. Ye [Ye91]. Ein einfaches, praktisches Verfahren ist der Simplex-Algorithmus [Da63, Schr86] von G.B. Dantzig, der allerdings im Wortcase exponentielle Laufzeithaben kann. Weitere Probleme, die man in Polynomialzeit losen kann, sind:

Satz 11.2.4 (Sieveking 1976)Folgende Probleme sind zu gegebenen m,n ∈ N, A ∈ Zm×n und b ∈ (Z) in Polynomialzeit losbar:

a) Lose Ax = b, x ∈ Zn oder weise Unlosbarkeit nach.

b) Finde eine Z-Basis b1, . . . , bk von {x ∈ Zn |Ax = 0}, dem Z-Kern. Eine Z-Basis besteht auslinear unabhangigen Vektoren b1, . . . , bk, so daß:

{x ∈ Zn |Ax = 0} =

{k∑i=1

tibi

∣∣∣∣∣ t1, . . . , tk ∈ Z

}

Beweis. Modifikation des Gauß-Eliminationsverfahrens (M. Sieveking in [SS76]). AlternativerBeweis in [KaBa79]. �

Im folgenden Satz fuhren wir weitere mit der Gittertheorie verbundene Aufgaben bzw. Entschei-dungsprobleme auf, die NP-vollstandig sind.

Satz 11.2.5Folgende Sprachen sind NP-vollstandig:

1. Integer-Programming:

IP :=

{(m,n,A, b)

∣∣∣∣ A ∈ Zm×n, b ∈ Zm,∃x ∈ Zn : Ax ≤ b

}

2. Rucksack (Knapsack) oder Subsetsum:

SubsetSum :=

{(n, a1, . . . , an, b) ∈ Nn+2

∣∣∣∣∣ ∃x ∈ {0, 1}n :

n∑i=1

aixi = b

}

Page 98: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

98 KAPITEL 11. KOMPLEXITAT, NP-VOLLSTANDIGKEIT

3. {0, 1}-Integer-Programming:

{0, 1}-IP :=

{(m,n,A, b)

∣∣∣∣ A ∈ Zm×n, b ∈ Zm,∃x ∈ {0, 1}n : Ax ≤ b

}4. Schwache Zerlegung:{

(n, a1, . . . , an) ∈ Nn+1

∣∣∣∣∣ ∃ (x1, . . . , xn) ∈ {0,±1}n \ {0n} :

n∑i=1

aixi = 0

}

Beweis. Fur 1,2,3 siehe [GaJo79][SS76], fur 4 siehe [EB81]. Den Nachweis, daß es fur die SpracheInteger-Programming polynomiell lange Zeugen gibt, also IP ∈ NP, werden wir in Satz 11.2.6fuhren. �

Satz 11.2.6 (von zur Gathen, Sieveking 1978)IP ∈ NP.

Beweis. Wir wahlen als Zeugen fur (m,n,A, b) ∈ IP ein geeignetes x ∈ Zn mit Ax ≤ b. Offenbarexistiert x genau dann, wenn (m,n,A, b) ∈ IP. Wir mussen noch zeigen, daß der Zeuge polynomielleLange hat.

Sei A =: (aij)ij und b =: (b1, . . . , bm)T

. Setze M := maxi,j {|aij | , |bi|}. Nach [GaSi78] gilt:

(∃x ∈ Zn : Ax ≤ b) ⇐⇒(∃x ∈ Zn : Ax ≤ b, ‖x‖∞ ≤ (n+ 1)n

n2Mn

)Die obere Schranke von ‖x‖∞ impliziert, daß die Lange des Zeugen x polynomiell in der Langevon A und b beschrankt ist. Wegen `(m,n,A, b) ≥ nm+ log2M gilt:

`(x) = O(n2(log n+ logM

)= O

(`(m,n,A, b)3

)�

Wir definieren die Begriffe, die elementar fur die weiteren Kapitel sind:

Definition 11.2.7 (Gitter, Basis, Dimension, Rang)Seien b1, . . . , bn ∈ Rm linear unabhangige Vektoren. Wir nennen die additive Untergruppe

L(b1, . . . , bn) :=

n∑i=1

biZ =

{n∑i=1

tibi

∣∣∣∣∣ t1, . . . , tm ∈ Z

}

des Rm ein Gitter mit der Basis b1, . . . , bn. Ist die Reihenfolge der Basisvektoren fest, sprechenwir von einer geordneten Basis. Der Rang oder auch die Dimension des Gitters ist Rang(L) := n.

Betrachten wir ein Beispiel:

Beispiel 11.2.8 (Gitter)Zm ist ein Gitter vom Rang m, die Einheitsvektoren bilden eine Basis. Zur Matrix A ∈Mm,n(Z)ist {x ∈ Zn |Ax = 0} ein Gitter vom Rang n−Rang(A); nach Satz 11.2.4 konnen wir in Polyno-mialzeit eine Basis konstruieren. �

Wir versuchen, durch Gitterreduktion einen kurzesten, nicht-trivialen Gittervektor zu finden.Im Fall der sup-Norm ist dies unter der Annahme P 6= NP nicht immer effizient moglich:

Page 99: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

11.2. SCHWIERIGE, ALGORITHMISCHE GITTERPROBLEME 99

Korollar 11.2.9Das Problem ‖·‖∞-kurzester Gittervektor

L∞-SVP :=

{(m,n, b1, . . . , bn)

∣∣∣∣ m,n ∈ N, b1, . . . , bn ∈ Zm,∃x ∈ L(b1, . . . , bn) : ‖x‖∞ = 1

}ist NP-vollstandig.

Beweis. Das Problem ‖·‖∞-kurzester Gittervektor liegt in NP: Als Zeugen wahlt man einenVektor x ∈ L(b1, . . . , bn) \{0} mit ‖x‖∞ = 1. Das NP-vollstandige Problem

”schwache Zerlegung“

aus Satz 11.2.5 kann in Polynomialzeit auf ‖·‖∞-kurzester Gittervektor reduziert werden. �

Beim Problem des kurzesten Gittervektors in der `2-Norm soll man zu gegebener Gitterbasisb1, . . . , bn und k entscheiden, ob es einen Gittervektor z ∈ L(b1, . . . , bn) gibt mit z 6= 0 und‖z‖2 ≤

√k.

Definition 11.2.10 (Shortest Vector Problem SVP)Die Sprache zum kurzesten Gittervektorproblem (Shortest Vector Problem) fur die `2-Norm lautet:

L2-SVP :=

{(k,m, n, b1, . . . , bn)

∣∣∣∣ k,m, n,∈ N, b1, . . . , bn ∈ Zm,∃x ∈ L(b1, . . . , bn) \ {0} : ‖x‖22 ≤ k

}

Der Status dieses Problems ist offen. Anstrengungen, die Vermutung, daß L2-SVP NP-hart ist,nachzuweisen, sind im Gegensatz zur sup-Norm (siehe Korollar 11.2.9) bislang fehlgeschlagen (ver-gleiche [K87]).

Das Problem des kurzesten Gittervektors ist der homogene Spezialfall des Problems nachsterGittervektor, von dem man aber weiß, daß es (auch) in der `2-Norm NP-vollstandig ist:

Satz 11.2.11 (Closest Vector Problem CVP)Das Problem `2-nachster Gittervektor

L2-CVP :=

{(k,m, n, b1, . . . , bn, z)

∣∣∣∣ k,m, n,∈ N, b1, . . . , bn, z ∈ Zm,∃x ∈ L(b1, . . . , bn) : ‖z − x‖22 ≤ k

}ist NP-vollstandig.

Beweis. Siehe Kannan [K87]. �

Wir fassen zusammen: Zu gegebener Gitterbasis b1, . . . , bn ∈ Zm sind folgende Aufgaben nachheutigem Stand schwierige, algorithmische Gitterprobleme:

• Finde kurze Gittervektoren ungleich dem Nullvektor.

• Finde eine Basis bestehend aus kurzen Gittervektoren.

• Finde zu gegebenem z ∈ span(b1, . . . , bn) einen moglichst nahen Gittervektor.

Dagegen kann man in Polynomialzeit zu einem gegebenen Erzeugendensystem b1, . . . , bn ∈ Zm desGitters L, n ≥ Rang(L), eine Gitterbasis konstruieren.

Page 100: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

100 KAPITEL 11. KOMPLEXITAT, NP-VOLLSTANDIGKEIT

.

Page 101: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Kapitel 12

Grundlagen

12.1 Notation

Mit Mm,n(S) bezeichnen wir die Menge aller m × n-Matrizen mit Eintragen aus der Menge S.Zum Beispiel ist Mm,n(Z) die Menge aller ganzzahligen m× n-Matrizen. Zur Matrix B bezeichneBT die transponierte Matrix. Die Elemente aus Zn, Rn, etc. schreiben wir, sofern nicht andersangegeben, als Spaltenvektoren.

Zur reellen Zahl r bezeichne drc :=⌈r − 1

2

⌉die nachste ganze Zahl. Wir schreiben R+ :=

{x ∈ R | x > 0} fur die Menge der positiven, reellen Zahlen.

Skalarprodukt

Der Vektorraum Rn sei mit einem beliebigen Skalarprodukt 〈·, ·〉 : Rn × Rn → R ausgestattet(Euklidischer Vektorraum). Das Skalarprodukt hat die folgenden Eigenschaften: Fur alle u, v, w ∈Rn und λ ∈ R gilt:

• 〈·, ·〉 ist bilinear:

〈u+ w, v〉 = 〈u, v〉+ 〈w, v〉〈λu, v〉 = λ 〈u, v〉

〈u, v + w〉 = 〈u, v〉+ 〈u,w〉〈u, λv〉 = λ 〈u, v〉

• 〈·, ·〉 ist symmetrisch:

〈u, v〉 = 〈v, u〉

• 〈·, ·〉 ist positiv definit:

〈u, u〉 > 0 fur u 6= 0

Die meisten Anwendungen beziehen sich auf das Standard-Skalarprodukt :

〈(u1, . . . , un) , (v1, . . . , vn)〉 :=

n∑i=1

uivi

101

Page 102: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

102

Jedes Skalarprodukt 〈·, ·〉 : Rn × Rn → R laßt sich schreiben als:

〈u, v〉 := uTSv

mit symmetrischer Matrix S ∈ Rn×n. Im Fall des Standard-Skalarprodukts ist die Matrix S dieIdentitat.

Normen

Eine Abbildung ‖·‖ : Rn → R heißt Norm, falls fur alle u, v ∈ Rn und λ ∈ R gilt:

‖λv‖ = |λ| · ‖v‖ (positive Homogenitat)

‖u+ v‖ ≤ ‖u‖+ ‖v‖ (Dreiecksungleichung)

‖u‖ ≥ 0 fur u 6= 0 (positive Definitheit)

Die reelle Zahl ‖u‖ heißt Norm (oder Lange) des Vektors u = (u1, . . . , un). Aus einem Skalarpro-dukt erhalt man die Euklidische Norm durch: ‖u‖ :=

√〈u, u〉.

Die `1-Norm oder auch Betragsnorm ist: ‖ (u1, . . . , un) ‖1 :=∑ni=1 |ui|

Die `2-Norm zum Standard-Skalarprodukt ist: ‖ (u1, . . . , un) ‖2 :=√〈u, u〉 =

(∑ni=1 u

2i

) 12 .

Die `p-Norm ist: ‖ (u1, . . . , un) ‖p :=(∑n

i=1 |ui|p) 1

p .

Die sup-Norm, Maximums-Norm oder auch `∞-Norm ist: ‖ (u1, . . . , un) ‖∞ := maxi=1,...,n |ui|.

Ungleichungen

Fur die sup-, Betrags- und 2-Norm eines Vektors u ∈ Rn gelten die folgenden Beziehungen:

‖u‖2 ≤ ‖u‖1 ≤√n · ‖u‖2

‖u‖∞ ≤ ‖u‖2 ≤ n · ‖u‖∞

Fur die Beziehung Skalarprodukt und zugehorige Norm ‖u‖ :=√〈u, u〉 gilt die Cauchy-Schwarz-

Ungleichung (seien u, v ∈ Rn):

|〈u, v〉| ≤ ‖u‖ · ‖v‖

Die Gleichheit gilt genau dann, wenn beide Vektoren linear abhangig sind. Seien b1, . . . , bn ∈ Rn dieSpaltenvektoren (oder Zeilenvektoren) der Matrix B ∈Mn,n(R). Die Hadamard’sche Ungleichungbesagt:

detB ≤n∏i=1

‖bi‖2

Sind die Vektoren b1, . . . , bn orthogonal, gilt die Gleichheit.

Page 103: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Algorithmenverzeichnis

1.4.1 zur Langenreduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.4.2 zur paarweise Reduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

3.2.1 Gauß-Reduktionsverfahren fur die Euklidische Norm . . . . . . . . . . . . . . . . 27

3.2.2 Gauß-Reduktionsverfahren fur beliebige Norm . . . . . . . . . . . . . . . . . . . 29

4.2.1 zur LLL-Reduktion in Z-Arithmetik . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.3.1 LLL-Reduktion von ganzzahligen Erzeugendensystemen . . . . . . . . . . . . . . 38

9.5.1 ‖·‖-ENUM: kurzester Gittervektor (vollstandige Aufzahlung) . . . . . . . . . . . 82

10.3.1 Faktorisieren einer ganzen Zahl . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

103

Page 104: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Index

Abstandsfunktion, 75Algorithmus

β-Reduktion (BZK), 58ENUM, 68, 86Faktorisieren, 95Gauß-ENUM, 71, 87Gauß-Reduktion, 27, 29kurzester Gittervektor, 68, 71, 86, 87Lovasz-, 33

αβ , 82

Barnes, E.S., 20Basis, 102β-reduzierte Basis, 52, 56, 58β-reduzierte Basis zu ‖·‖, 79, 82Betragsnorm, 106Bitlange, 99Blichfeldt, H.F., 17, 19

Cauchy-Schwarz-Ungleichung, 106charakteristische Funktion, 99CJLOSS-Basis, 47Closest Vector Problem, 103Cook’sche Hypothese, 100Cook-Karp-Reduktion, 100Coster, M.J., 47CVP, 103

Damgard, I.B., 91Dantzig, G.B., 101Determinante, 6Dichte, 19, 44Dimension, 102Diophantische Approximationen, 95Dirichlet, G.L., 18Distanzfunktion, 75duales Gitter, 9

Entropie-Funktion, 92Euklidische Norm, 106Euklidischer Vektorraum, 105extremes

Gitter, 19lokal extremes Gitter, 19

Fi, 75

ganzzahlige lineare Programmierung, 100Gathen, J. von zur, 102Gauß, C.F., 27, 29, 69, 85Gauß-reduzierte Gitterbasis, 25geordnete Basis, 102Gitter

-Basis, 102-Determinante, 6-Dimension, 102-Grundmasche, 6-Rang, 102La, 15An, 7Dn, 7Definition, 102Dichte, 19duales, 9geordnete -Basis, 102global extremes, 19kritisches, 19laminated, 22lineare Kongruenz, 15lokal extremes, 19selbstduales, 21Unter-, 14vollstandiges, 8

gitterartige Kugelpackung, 19Gitterbasis

CJLOSS-, 47Damgard-, 92Lagarias-Odlyzko-, 443-SAT-, 89zur Faktorisierung, 95

gleichverteilt mod L, 72global extremes Gitter, 19Gram-Schmidt-Koeffizienten µi,j , 8Grundmasche, 6

Hadamard’sche Ungleichung, 106Hash-Funktion, 91Hermite, C., 19, 51, 79, 81Hermite-Konstante γn, 19

obere Schranke, 19Hermite-Konstanteγn

bekannte, 20

104

Page 105: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

INDEX 105

Hermite-Normalform, 13HKZ-Basis, 51HKZ-reduzierte Basis zu ‖·‖, 79, 81, 84Hlawka, E., 20HNF, siehe Hermite-NormalformHohenfunktion, 75Horner, H.H., 44

IndexUntergitter, 14

IP, 101isometrisch

-es Gitter, 8

Joux, A., 47, 89

Kabatiansky, G.A., 20Kaib, M., 77Karmarkar, M., 101Khachiyan, L.G., 101Knapsack-Problem, siehe SubsetsumKNF, siehe konjunktive NormalformKollision, 91konjunktive Normalform (KNF), 89Korkine, A., 51, 79, 81, 83Korkine-Zolotareff-Konstante, 83kritische β-reduzierte Basis, 56kritisches Gitter, 19Kryptographie, 44Kugelpackung, 19kurzester Gittervektor, 91, 103Kyptographie, 89

`, 99Lagarias, J.C., 44, 46, 49, 52LaMacchina, B.A., 47laminated Gitter, 22Lange, 106langenreduziert, 79langenreduzierte Basis, 12Lenstra, A.K., 31–33Lenstra, H.W., 31–33, 52Levenshtein, V.I., 20lineare Programmierung

ganzzahlige, 100rationale, 101

Lovasz, L., 31, 33LLL-reduziert, 31, 52, 73, 79LLL-Verfahren, 33

Algorithmus, 33linear abhangige Erzeugendensysteme, 38

lokal extremes Gitter, 19Lovasz, L., 32, 81

Maximums-Norm, 106

Mazo, J.E., 95Minkowski

erster Satz, 18Gitterpunktsatz, 18Ungleichung von, 22zweiter Satz, 23

Minkowski, H., 17, 18, 20, 22, 23

nachster Gittervektor, 103Norm, 75, 106

Betrags-, 106Euklidische, 106`1-, 106`2-, 106`p-, 106Maximums-, 106sup-, 106

Notation, 105NP, 100NP-vollstandig, 100{0, 1} − IP, 102

Odlyzko, A.M., 44, 46, 47, 49, 95orthogonale Projektion, 8Orthogonalsystem, 8Orton, G., 89

P, 99p-Norm, 106paarweisereduzierte Vektoren, 12parasitarer Gittervektor, 95Paz, A., 13polares Gitter, siehe duales GitterPolynomialzeit, 99primitives System, 11Pseudo-Kollision, 91

Rang, 102Reduktion, 100reduzierte Gitterbasis, 25

2-reduzierte Basis zu ‖·‖, 79β-, 52, 58, 79, 82block-, 52, 58, 79, 82(δ, β)-block-, 58HKZ-, 51, 79, 81, 84kritische β-, 56langen-, 12LLL-, 31, 52, 73, 79wohlgeordnete, 27

reziprokes Gitter, siehe duales GitterRitter, H., 85, 89Rucksack-Problem, siehe Subsetsum

3-SAT, 89Scarf, H., 81

Page 106: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

106 INDEX

Schnorr, C.P., 13, 44, 47, 52, 67, 83, 95schwache Zerlegung, 102selbstdual, 21Shannon, C.

Entropie-Funktion, 92Shortest Vector Problem, 103Sieveking, M., 101, 102Simplex-Algorithmus, 101Skalarprodukt, 105Standard-Skalarprodukt, 105Stern, J., 47, 89Subsetsum-Problem, 43, 89, 101sukzessive Minima, 17sup-Norm, 106SVP, 103

tiefes Loch, 22Tschebycheff-Ungleichung, 93

u.d. mod L, 72Ungleichung

Cauchy-Schwarz-, 106Hadamard’sche, 106Minkowski’sche, 22Tschebycheff, 93

unimodulare Matrix, 5Untergitter, 14

Vetchinkin, N.M., 20vollstandiges Gitter, 8Volumen-Heuristik, 69, 85

Watson, G.L., 20

Ye, Y., 101

Z-Kern, 101Zeuge, 100Zolotareff, G., 51, 79, 81, 83

Page 107: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

Literaturverzeichnis

[Aj98] M. Ajtai, The Shortest Vector Problem in L2 is NP-hard for Randomized Reductions.Proc. 30th STOC, pp. 10–19, 1998.

[Aj03] M. Ajtai, The Worst-case Behavior of Schnorr’s Algorithm Approximating the ShortestNonzero Vector in a Lattice. Proc. 35th STOC, pp. 396–406 2003.

[AKS01] M. Ajtai, R. Kumar, and D. Sivakumar, A Sieve Algorithm for the Shortest LatticeVector Problem. Proc. 33th STOC, pp. 601–610, 2001.

[Ak02] A. Akhavi, Random Lattices, Threshold Phenomena and Efficient Reduction Algorithms.Theoret. Comput. Sci., 287, pp. 359–385, 2002.

[Ba86] L. Babai , On Lovasz’ Lattice Reduction and the nearest Lattice Point Problem, Combi-natorica, Band 6, Seiten 1–13, 1986.

[Bar59] E.S. Barnes , The Contruction of perfect and extreme Forms II, Acta Arithmetica, Band5, Seiten 205-222, 1959.

[BaKa84] A. Bachem und R. Kannan , Lattices and the Basis Reduction Algorithm, TechnischerReport, Carnegie-Mellon-Universitat (USA), (1984).

[BeWe93] Th. Becker und V. Weispfennig, Grobner Bases — a computational Approach tocommutative Algebra, Graduate Texts in Mathematics, Band 141, Springer-Verlag, Ber-lin/Heidelberg, 1993.

[Bli14] H.F. Blichfeldt, A new Principle in the Geometry of Numbers with some Applications,Transaction of the American Mathematical Society, Band 15, Seiten 227–235, 1914.

[Bli29] H.F. Blichfeldt , The Minimum Value of quadratic Forms and the closet Packing of Sphere,Mathematische Annalen, Band 101, Seiten 366-389, 1929.

[Bli35] H.F. Blichfeldt, The minimum Value of positive Quadratic Forms in six, seven and eightVariables, Mathematische Zeitschrift, Band 39, Seiten 1–15, 1935.

[Be80] G. Bergman, Notes on Ferguson and Forcade’s Generalized Euclidean Algorithm. TR.Dep. of Mathematics, University of Berkeley, CA, 1980.

[BM03] J. Blomer and A. May New Partial Key Exposure Attacks on RSA. Proc. Crypto’2003,Lecture Notes in Comp.Sci., 2729, Springer, New York, pp. 27 - 43, 2003.

[BS99] J. Blomer and J.P. Seifert, On the Complexity of Computing Short Linearly IndependentVectors and Short Bases in a Lattice. Proc. 31th STOC, pp. 711–720, 1999.

[Bo00] D. Boneh, Finding Smooth Integers in Small Intervals Using CRT Decoding. Proc. 32thSTOC, pp. 265-272, 2000.

107

Page 108: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

108 LITERATURVERZEICHNIS

[Bb65] B. Buchenberger 1965, Ein Algorithmus zum Auffinden der Basiselemente des Restklassen-rings nach einem nulldimensionalen Polynomideal, Dissertation, Fachbereich Mathematik,Universitat Insbruck (Osterreich), 1965.

[Ca00] J. Cai, The Complexity of some Lattice Problems. Algorithmic Number Theory, LectureNotes in Comput. Sci., 1838, Springer, New York, pp. 1-32, 2000.

[Co97] D. Coppersmith, Small Solutions to Polynomial Equations, and Low Exponent RSA Vul-nerabilities. J. Cryptology , 10, pp. 233-260, 1997.

[Co01] D. Coppersmith, Finding Small Solutions to Small Degree Polynomials. Cryptography andLattices, Lecture Notes in Comput. Sci., Springer, New York, 2146, pp. 20-31, 2001.

[Ca71] J.W.S. Cassels , An Introduction to the Geometry of Numbers, Springer-Verlag, Ber-lin/Heidelberg, 1971.

[Co93] H. Cohen , A Course in Computational Algebraic Number Theory, Graduate Texts inMathematics, Band 138, Springer-Verlag, Berlin/Heidelberg, 1993.

[CoSl88] J.H. Conway und N.J. Sloane , Sphere Packings, Lattices and Groups, Springer-Verlag,New York, 1988.

[CJLOSS92] M.J. Coster, A. Joux, B.A. LaMacchina, A.M. Odlyzko, C.P. Schnorr und J. Stern,An improved low-density Subset Sum Algorithm, Computational Complexity, Band 2,Seiten 111–128, 1992.

[CR88] B. Chor und R.L. Rivest, A Knapsack type Public Key Cryptosystem based on Arithmeticin finite Fields, IEEE Transaction Information Theory, Band IT-34, Seiten 901–909, 1988.

[Da89] I.B. Damgard, A Design Principle for Hash Functions, Advances in Cryptology, Procee-dings EuroCrypt ’89, Lecture Notes in Computer Science, Band 435 (1990), Springer-Verlag, Berlin/Heidelberg, Seiten 416–427, 1989.

[Da63] G.B. Dantzig , Linear Programming and Extensions, Princeton University Press, Prince-ton, New Jersey (dt. Ubersetzung

”Lineare Programmierung und Erweiterungen“ 1966 im

Springer-Verlag, Berlin/Heidelberg, erschienen), 1963.

[DV94] H. Daude and B. Vallee, An Upper Bound on the Average Number of Iterations of theLLL algorithm, Theoret. Comput. Sci., 123, pp. 395–115, 1994.

[Di1842] G.L. Dirichlet, Verallgemeinerung eines Satzes aus der Lehrere von Kettenbruchen nebsteinigen Anwendungen auf die Theorie der Zahlen, Bericht uber die zur Bekanntmachunggeeigneter Verhandlungen der Koniglich Preussischen Akademie der Wissenschaften zuBerlin, Seiten 93–95, 1842.

[DKT87] P.D. Domich, R. Kannan und L.E. Trotter, Hermite normal Form Computation usingmodulo Determinant Arithmetic, Mathematics of Operation Research, Band 12, Nr. 1(Februar), Seiten 50–59, 1987.

[EB81] P. van Emde Boas, Another NP-complete Partition Problem and the Complexity of Com-puting short Vectors in a Lattice, Technischer Report 81-04, Fachbereich Mathematik derUniversitat Amsterdam, 1981.

[E91] M. Euchner , Praktische Algorithmen zur Gitterreduktion und Faktorisierung, Diplomar-beit, Fachbereich Informatik der Johann-Wolfgang-Goethe-Universitat, Frankfurt/Main,1991.

[Fe68] W. Feller, An Introduction to Probability Theory and its Application, Band I, 3. Auflage,John Wiley & Sons, New York, 1968.

Page 109: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

LITERATURVERZEICHNIS 109

[Fr86] A.M. Frieze , On the Lagarias-Odlyzko Algorithm for the Subset Sum Problem, SIAMJournal on Computing, Band 15, Nr. 2, Seiten 536–539, 1986.

[GaSi78] J. von zur Gathen und M. Sieveking , A Bound on Solution of linear Integer Equationsand Inequations, Proceedings of the American Mathematical Society, Band 72, Seiten155–158, 1978.

[GaJo79] M.R. Garey, D.S. Johnson, Computer and Intractability: A Guide to the Theory ofNP-Completness, W.H. Freeman and Company, San Francisco, 1979.

[G1801] C.F. Gauß , Disquisitiones Arithmeticae, Gerhard Fleischer, Leipzig. Deutsche Uberset-zung (1889):

”Untersuchung uber hohere Arithmetik“, Springer-Verlag, Berlin/Heidelberg,

1801.

[GrLek87] M. Gruber und C.G. Lekkerkerker, Geometry of Numbers, 2. Auflage, North-Holland,Amsterdam, 1987.

[GLLS88] M. Grotschel, L. Lovasz and A. Schrijver, Geometric Algorithms and combinatorial Op-timization, Algorithms and Combinatorics, Band 2, Springer-Verlag, Berlin/Heidelberg,1988.

[GHKN06] N. Gama, N. How-Grave-Graham, H. Koy and P. Nguyen, Rankin’s Constant andBlockwise Lattice Reduction, In Proc. CRYPTO 2006, LNCS 4117, Springer-Verlag, Ber-lin/Heidelberg, pp. 112–139, 2006.

[GN08a] N. Gama and P. Nguyen, Predicting Lattice Reduction. In Proc. EUROCRYPT 2008,LNCS 4965, Springer-Verlag, Berlin/Heidelberg, pp. 31–51, 2008.

[GN08b] N. Gama and P. Nguyen, Finding Short Lattice Vectors within Mordell.s Inequality, InProc. of the 2008 ACM Symposium on Theory of Computing, pp. 208–216, 2008.

[GNR10] N. Gama, P.Q. Nguyen and O. Regev, Lattice enumeration using extreme pruning, Proc.EUROCRYPT 2010, LNCS 6110, Springer-Verlagg, pp. 257–278, 2010, final version to bepublished.

[HaMcC91] J. Hafner und K. McCurley , Asymptotic Fast Triangulation of Matrices over Ring,SIAM Journal on Computing, Band 20, Nr. 6, Seiten 1068–1083, 1991.

[HJLS89] J. Hastad, B. Just, J.C. Lagarias und C.P. Schnorr , Polynomial Time Algorithms forFinding Integer Relations among real Numbers, SIAM Journal on Computing, Band 18,Nr. 5, Seiten 859–881, 1989.

[HT98] C. Heckler and L. Thiele Complexity Analysis of a Parallel Lattice Basis Algorithm. SiamJ. Comput. 27(5), pp. 1295–1302, 1998.

[He85] B. Helfrich 1985, Algorithms to construct Minkowski reduced and Hermite reduced LatticeBases, Theoretical Computer Science, Band 41, Seiten 125–139, 1985.

[He1850] C. Hermite , Extraits de lettres de M. Ch. Hermite a M. Jacobi sur differents objets dela theorie des nombres, Deuxieme lettre, Reine Angewandte Mathematik, Band 40, Seiten279–290, 1850.

[Hl44] E. Hlawka , Zur Geometrie der Zahlen, Mathematische Zeitschrift, Band 49, Seiten 285–312, 1944.

[J48] F. John , Extremum Problems with Inequalities as subsidiary Conditions, in K.O. Fried-richs, O.E. Neugebauer und J.J. Stoker (Ed.):

”Studies and Essays presented to R. Courant

on his 60th Birthday Januar 8, 1948“, Interscience Publisher, New York, Seiten 187–204,1948.

Page 110: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

110 LITERATURVERZEICHNIS

[JoSt94] A. Joux und J. Stern , Lattice Reduction: A Toolbox for the Cryptanalyst, TechnischerReport, DGA/CELAR, Bruz (Frankreich). Eingereicht bei Journal of Cryptology, 1994.

[KaLe78] G.A. Kabatiansky und V.I. Levenshtein , Bounds for Packings on a Sphere and in Space,Problems of Information Transmission, Band 14, Seiten 1–17, 1978.

[Ka91] M. Kaib , The Gauß Lattice Basis Reduction succeeds with any Norm, Proceedings ofFundamentals of Computation Theory (FCT ’91), Springer Lecture Notes in ComputerScience, Band 591, Seiten 275–286, 1991.

[Ka94] M. Kaib , Gitterbasenreduktion fur beliebige Normen, Dissertation, Fachbereich Mathe-matik der Johann-Wolfgang-Goethe-Universitat, Frankfurt/Main, 1994.

[KS96] M. Kaib und C.P. Schnorr, The Generalized Gauss Reduction Algorithm, Journal ofAlgorithms, Band 21, Nr. 3 (November), Seiten 565–578, 1996.

[KaBa79] R. Kannan und A. Bachem, Polynomial Algorithm for Computing the Smith and theHermite Normal Form of an Integer Matrix, SIAM Journal on Computing, Band 8, Seiten499–507, 1979.

[K87] R. Kannan, Minkowski’s Convex Body Theorem and Integer Programming. Math. Oper.Res., 12, pp. 415–440, 1987.

[Ka01] H. Koy, Notes of a Lecture. Frankfurt 2004., //www.mi.informatik.uni-frankfurt.de/index.html#publications

[Ka84] M. Karmarkar, A new Polynomial-Time Algorithm for Linear Programming, Combinato-rica, Band 4, Seiten 373–395, 1984.

[Kh79] L.G. Khachiyan, A Polynomial Algorithm in Linear Programming, Soviet MathmaticsDoklady, Band 20, Seiten 191–194, 1979.

[Kh80] L.G. Khachiyan, Polynomial Algorithms in Linear Programming, U.S.S.R. ComputationalMathematics and Mathematical Physics, Band 20, Seiten 53–72, 1980

[Kh05] S. Khot, Hardness of Approximating the Shortest Vector Problem in Lattices, Journal ofthe ACM, Vol. 52, No. 5, Seiten 789–803, 2005.

[Kh71] D.E. Knuth, The Art of Computer Programming, Fundamental Algorithms, Band I,Addison-Wesley, Reading, 2001.

[KZ1872] A. Korkine und G. Zolotareff, Sur les formes quadratique positive quaternaires, Mathe-matische Annalen, Band 5, Seiten 366-389, 1872.

[KZ1873] A. Korkine und G. Zolotareff, Sur les formes quadratique, Mathematische Annalen,Band 6, Seiten 366–389, 1873

[KZ1877] A. Korkine und G. Zolotareff, Sur les formes quadratique positive, Mathematische An-nalen, Band 11, Seiten 242–292, 1877.

[KS01a] H. Koy and C.P. Schnorr, Segment LLL-Reduction. Cryptography and Latti-ces, Lecture Notes in Comput. Sci., 2146, Springer, New York, pp.67–80, 2001.//www.mi.informatik.uni-frankfurt.de/research/papers.html

[KS01b] H. Koy and C.P. Schnorr, Segment LLL-Reduction with Floating Point Orthogonalizati-on. Cryptography and Lattices, Lecture Notes in Comput. Sci., 2146, Springer, New York,pp. 81–96, 2001. //www.mi.informatik.uni-frankfurt.de/research/papers.html

[KS02] H. Koy and C.P. Schnorr, Segment and Strong Segment LLL-Reduction ofLattice Bases. TR Universitat Franfurt, April 2002, //www.mi.informatik.uni-frankfurt.de/research/papers.html

Page 111: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

LITERATURVERZEICHNIS 111

[Ko04] H. Koy, Files of a lecture, Frankfurt, May 2004, //www.math.uni-frankfurt.de/ dmst/,see publications.

[LA] M. Kaib, R. Mirwald, C. Rossner, H.H. Horner, H. Ritter (1994): Programmieranlei-tung fur LARIFARI — Version 13.07.1994, Fachbereiche Mathematik und Informatik derJohann-Wolfgang-Goethe-Universitat, Frankfurt/Main.

[La1773] J.L. Lagrange, Recherches d’arithmetique, Nouveaux Memoires de l’Academie Royaledes Sciences et Belles-Lettres, Berlin, Seiten 265–312,1773.

[Lang93] S. Lang, Algebra, 3. Auflage, Addison-Wesley, Reading, 1993

[LLS90] J.C. Lagarias, H.W. Lenstra und C.P. Schnorr, Korkin-Zolotarev Bases and successiveMinima of a Lattice and its reciprocal lattice, Combinatorica, Band 10, Seiten 333–348,1998.

[LaOd85] J.C. Lagarias und A.M. Odlyzko, Solving low-density Subset Sum Problems, Journal ofACM, Band 32, Nr. 1, Seiten 229–246, 1985.

[LLL82] A.K. Lenstra, H.W. Lenstra und L. Lovasz, Factoring Polynomials with Rational Coeffi-cients, Springer Mathematische Annalen, Band 261, Seiten 515–534, 1982.

[Lenstra83] H.W. Lenstra, Integer Programming in a fixed Number of Variables, Mathematics ofOperation Research, Band 8, Nr. 4 (November), Seiten 538–548, 1983.

[Lovaz86] L. Lovasz, An algorithmic Theory of Numbers, Graphs and Convexity, CBMS-NSFRegional Conference Series in Applied Mathematics, Band 50, SIAM Publications, Phil-adelphia, 1986

[LoSc92] L. Lovasz und H. Scarf, The Generalized Basis Reduction Algorithm, Mathematics ofOperation Research, Band 17, Nr. 3 (August), Seiten 751–764, 1992

[MaOd90] J.E. Mazo und A.M. Odlyzko, Lattice Points in high-dimensional Sphere, MonatsheftMathematik, Band 110, Seiten 47–61, 1930.

[Ma03] A. May, New RSA Vulnerabilities Using Lattice Reduction Methods. Dissertation Thesis,University of Paderborn, October 2003.

[ML01] S. Mehrotra and Z. Li, Reduction of Lattice Bases Using Modular Arithmetic. TR. Dept.of Industrial Engeneering and Management Sciences, Northwestern University, Evanston,Il. Oct 2001, mehrotra, [email protected].

[MH78] R.C. Merkle and M.E. Hellman, Hiding Information and Signatures in TrapdoorKnapsacks, IEEE Trans. Inform. Theory, vol, IT-30, 594–601, 1984.

[MG02] D. Micciancio and S. Goldwasser, Complexity of Lattice Problems: A CryptographicPerspective. Kluwer Academic Publishers, Boston, London, 2002.

[Mi1896] H. Minkowski, Geometrie der Zahlen, erste Auflage, Teubner-Verlag, Leipzig, 1896.

[Mi1911] H. Minkowski, Gesammelte Abhandlungen, Band I und II, Teubner-Verlag, Leipzig, 1911.

[Mis93] B. Mishra, Algorithmic Algebra, Texts and Monographs in Computer Science, Springer-Verlag, New-York, 1993.

[NS06] P. Nguyen and D. Stehle, LLL on the average. In Proc. ANTS-VII, LNCS 4076, Springer-Verlag, Berlin New York, pp. 238–356, 2006.

[O90] A. M. Odlyzko, The rise and fall of knapsack cryptosystems. In Cryptology and Compu-tational Number Theory, C. Pomerance ed., Proc. Symp. Appl. Math. 12 Amer. Math,Soc, Providence, 1990, 75–88,

Page 112: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

112 LITERATURVERZEICHNIS

[PS87] A. Paz and C.P.Schnorr, Approximating integer lattices by lattices with cyclic factorgroups. Proceedings 14th International Colloquium on Automata, Languages and Pro-gramming (ICALP), LNCS 267, Springer-Verlag, Berlin New York, pp. 386–393, 1987.

[R89] J.A. Rush, A lower bound on packing spheres. Invent. math., 98, pp. 499–509, 1989.

[Ri96] H. Ritter: Breaking Knapsack Cryptosystems by `∞-norm enumeration. Proceedings of 1stInternational Conference on the Theory and Applications of Cryptography–PragoCrypt’96, CTU Publishing House, Prag, Seiten 480–492, 1996.

[S87] C.P.Schnorr, A Hierarchy of polynomial time lattice basis reduction algorithms. Theore-tical Computer Science, 53, pp. 201–224, 1987.

[S93] C.P.Schnorr, Factoring integers and computing discrete logarithms via Diophantine ap-proximation. In Advances in Computational Complexity, AMS, DIMACS Series in Dis-crete Mathematics and Theoretical Computer Science, 13, pp. 171–182, 1993. Preliminaryversion in Proc. EUROCRYPT’91, LNCS 547, Springer-Verlag, Berlin New York, pp. 281–293, 1991. //www.mi.informatik.uni-frankfurt.de.

[S94] C.P.Schnorr, Block reduced lattice bases and successive minima. Comb. Prob. and Comp.3, pp. 507–522, 1994.

[SE94] C.P. Schnorr and M. Euchner, Lattce basis reduction: Improved practical algorithmsand solving subset sum problems. Mathematical Programming 66, pp. 181–199, 1994.Preliminary version in Proc. FCT’91, LNCS 591, Springer-Verlag, Berlin New York, pp.68–85, 1991. //www.mi.informatik.uni-frankfurt.de.

[SH95] C.P. Schnorr and H.H. Horner, Attacking the Chor–Rivest cryptosystem by improvedlattice reduction. In Proc. EUROCRYPT’95, LNCS 921, Springer-Verlag, Berlin NewYork, pp. 1–12, 1995. //www.mi.informatik.uni-frankfurt.de.

[S03] C.P. Schnorr, Lattice reduction by sampling and birthday methods. Proc. STACS2003: 20th Annual Symposium on Theoretical Aspects of Computer Science, LNCS2007, Springer-Verlag, Berlin New York, pp. 146–156, 2003. //www.mi.informatik.uni-frankfurt.de

[S06] C.P. Schnorr, Fast LLL-type lattice reduction. Information and Computation, 204, pp.1–25, 2006. //www.mi.informatik.uni-frankfurt.de

[S07] C.P. Schnorr, Progress on LLL and lattice reduction, Proceedings LLL+25, Caen,France, June 29–July 1, 2007, Final version to appear by Springer-Verlag, 2009.//www.mi.informatik.uni-frankfurt.de

[S10] C.P. Schnorr, Average Time Fast SVP und CVP Algorithms for Low Density Latticesand the Factorization of Integers. Technical Report, University Frankfurt, Sepember 2010.//www.mi.informatik.uni-frankfurt.de

i¯bitem[SS12]SS12 C.P. Schnorr und T. Shevchenko, Solving Subset Sum Problems of Den-sity close to 1 by randomized”BKZ-reduction. Cryptology ePrint Archiv: Report 2013/620,

[Sc84] A. Schonhage, Factorization of Univariate Integer Polynomials by Diophantine Appro-ximation and Improved Lattice Basis Reduction Algorithm. Proc. 11-th Coll. Automata,Languages and Programming, Antwerpen 1984, Lecture Notes in Comput. Sci., 172, Sprin-ger, New York, pp. 436–447, 1984.

[Schr86] A. Schrijver, Theory of Linear and Integer Programming, Wiley-Interscience Series indiscrete Mathematics and Optimization, John Wiley & Son Ltd, 1986.

[Se93] M. Seysen, Simultaneous Reduction of a Lattice and its reciprocal Basis, Combinatorica,Band 13, Seiten 363–376, 1993.

Page 113: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2014/Vorlesung/... · 1.1. DIE GEOMETRIE DER GITTER 7 Beispiel-Gitter. Wir behandeln Gitter zu dichtesten

LITERATURVERZEICHNIS 113

[Si89] C.L. Siegel, Lectures on the Geometry of Numbers, Springer-Verlag, Berlin/Heidelberg,1989.

[Sm1861] H.J.S. Smith, On Systems of linear indeterminate Equations and Congruences, Philo-sophical Transaction of the Royal Society of London, Band 151, Seiten 293–326, 1861.

[SS76] E. Specker und V. Strassen, Komplexitat von Entscheidungsproblemem, Lecture Notes inComputer Science, Band 43, Springer-Verlag, Berlin/Heidelberg, 1976.

[St96] A. Storjohann, Faster Algorithms for Integer Lattice Basis Reduction.TR 249, Swiss Federal Institute of Technology, ETH-Zurich, Department of ComputerScience, Zurich, Switzerland, July 1996.//www.inf.ethz.ch/research/publications/html.

[V82] N.M. Vetchinkin, Uniqueness of Classes of positive quadratic Forms on which Values ofthe Hermite Constants are attained for 6 ≤ n ≤ 8, Proceedings of the Steklov Institute ofMathematics, Nr. 3, Seiten 37–95, 1982.

[W66] G.L. Watson, On the Minimum of a positiv Quadratic Form in n (n ≤ 8) Variables(Verification of Blichfeldt’s Calculations), Proceeedings of the Cambrigde PhilosophicalSociety (Mathematical and Physical Science), Band 62, Seite 719, 1966.

[Ye91] Y. Ye, Potential Reduction Algorithm for Linear Programming, Mathematical Program-ming, Band 51, Seiten 239–258, 1991.