Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf ·...

111
Vorlesungen von Prof. Dr. C.P. Schnorr: Gitter und Kryptographie an der Johann Wolfgang Goethe-Universit¨ at Frankfurt/Main im Sommersemester 2018 23. Mai 2019

Transcript of Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf ·...

Page 1: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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

Gitter und Kryptographie

an der Johann Wolfgang Goethe-Universitat Frankfurt/Main

im Sommersemester 2018

23. Mai 2019

Page 2: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

2

Page 3: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 || || . . . . . . . . . . . . . . . . . . . 11

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. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.4 Gitter mit grossem γ(L),4n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3 Gauß-Reduktion 27

3.1 Reduzierte Basis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2 Reduktionsverfahren fur die Euklidische Norm . . . . . . . . . . . . . . . . . . . . 28

4 LLL-reduzierte Gitterbasen 33

4.1 Definition und Eigenschaften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.2 Das LLL-Reduktionsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.3 LLL-Reduktion ganzzahliger Erzeugendensysteme . . . . . . . . . . . . . . . . . . . 39

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

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

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

5 Losen von Subsetsum-Problemen durch kurze Gittervektoren 45

5.1 Das Subsetsum-Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.2 Die Lagarias-Odlyzko-Gitterbasis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.3 Das CJLOSS-Gitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

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

6 HKZ- und Block-Reduktion von Gitterbasen 51

3

Page 4: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

6.1 HKZ-Basen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

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

6.3 Primal-Duale Reduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

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

6.5 BKZ-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

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

7 NP-vollstandige Gitterprobleme 65

7.1 NP-Vollstandigkeit von Rucksack. . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

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

8 Konstruktion eines kurzesten Gittervektors 69

8.1 Algorithmus mit vollstandiger Aufzahlung . . . . . . . . . . . . . . . . . . . . . . . 69

8.2 Algorithmus mit geschnittener Aufzahlung . . . . . . . . . . . . . . . . . . . . . . . 70

9 Weitere Anwendungen 73

9.1 Gitterbasis zu 3-SAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

9.2 Angriff auf Damgards Hashfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . 75

10 Gitterreduktion in beliebiger Norm 81

10.1 Grundbegriffe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

10.2 Reduzierte Basen zur Norm ‖·‖ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

10.3 Konstruktion einer HKZ-reduzierten Gitterbasis . . . . . . . . . . . . . . . . . . . 90

10.4 Alternative zur Reduktion in ‖·‖ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

10.5 Konstruktion eines ‖·‖-kurzesten Gittervektors . . . . . . . . . . . . . . . . . . . . 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

4

Page 5: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 =∑n

i=1 biZ

die von den Vektoren b1, ...,bn erzeugte additive Untergruppe des Rn. Sind die Vektoren b1, ...,bn

linear unabhangig, so nennen wir L(B) ein Gitter mit Basis b1, ...,bn bzw. B und Dimension oderRang dim(L) =def rang(B). Der vom Gitter L = L(B) bzw von B aufgespannte lineare Raum istspan(B) =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 mit Determinante ±1 nennt man die allgemeine lineare Gruppe uber Z. Die MatrizenU ∈ GLn(Z) heißen unimodular. Die Basen B eines Gitters sind die mit unimodularen MatrizenT transformierten einer beliebigen Basis B ∈ Rm×n.

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

5

Page 6: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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

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

Umgekehrt gilt fur U ∈ GLn(Z) offenbar dass L(BU) = L(B), somit ist BU 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) = ∑n

i=1 tibi | 0 ≤ t1, . . . , tn < 1 ⊂ span(L) .

Jeder Punkt x ∈ span(L) liegt in genau einer Masche b + P mit b ∈ L. Damit ist der Raumspan(L) zerlegt in die verschobenen, paarweise disjunkten Maschen b + P mit b ∈ L. Es giltspan(L) =

⋃b∈L b + P = P + L. Die Gram-Matrix BtB = [〈bi,bj〉]1≤i,j≤n ∈ Rn×n zur Basis B

hat die Skalarprodukte der Basisvektoren als Eintrage..

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

detL =def volP(B) = ( detBtB )12 .

Die Gleichheit vol P(B) = ( detBtB )12 gilt offenbar fur quadratische Basen B ∈ Rn×n. Sie gilt

allgemein weil sie unter Isometrien 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 = BU, U ∈ GLn(Z). Wegen |detU| = 1 und der Multiplikativitat derDeterminante gilt det(BtB) = det(UtBtBU) = det( BtB).

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(n

r ) zum Fehler O(nr ), der proportional ist zum

Verhaltnis nr von Oberflache rn−1 · 2 · πn/2/(n/2− 1)! zu Volumen rnπn/2/(n/2)! von Bn(0, r).

6

Page 7: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 ist 4(L) = (λ1/2)nVn/ detL, dabei ist Vn das Volumen der n-dim. Einheitsku-gel: Vn = πn/2/(n/2)! ≈

(2 e π

n

)n/2/√

πn mit der Eulerschen Zahl e = 2.7182818284 · · · und derKreiszahl π = 3.14159065241 · · · mit (n/2)! = Γ(1 + n/2) fur die Gammafunktion Γ. Das Gitter

An :=(x0, x1, . . . , xn) ∈ Zn+1

∣∣ ∑ni=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, (det An)2 = n + 1. Die Dichte ist 4(An) = Vn 2−n/2(n + 1)−1/2.

Das Schachbrettgitter

Dn := (x1, . . . , xn) ∈ Zn |∑n

i=1 xi = 0 mod 2

hat die Basis

Bn =

2 1 0 · · · · · · 00 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 10 2 2

. . ....

......

. . . . . . . . . 0...

.... . . 2 2 1

0 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 det En = 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 .

Isometrie, orthogonale Matrix, Aquivalenz. Eine lineare Abbildung T : V → W zu linearenRaumen V,W ist 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, ist eine Isometrie wenn dieAbbildung x 7→ Qx eine Isometrie ist. Damit ist Q ∈ Rm×n eine Isometrie gdw QtQ = In die

7

Page 8: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Einheitsmatrix In ∈ Rn×n ist. Das Produkt von Isometrien ist eine Isometrie. Eine quadratischeIsometrie Q ∈ Rn×n ist eine orthogonale Matrix. Die Matrix Q ∈ Rn×n ist orthogonal gdwQ−1 = Qt. Mit Q sind auch B−1,Qt orthogonal. Jede Isometrie Q ∈ Rm×n kann man durchHinzunahme von m−n linear unabhangigen Spalten in Rm zu einer orthogonalen Matrix erweitern.

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 berechnetb1, . . . , bn durch das Gram-Schmidt-Verfahren

b1 := b1, bi := πi(bi) = bi −∑i−1

j=1〈bi,bbj〉〈bbj ,bbj〉

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

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

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

j > i, sowie bi = bi +∑i−1

j=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 der Ba-sis B = [b1, ...,bn] ∈ Rm×n ist die eindeutige Zerlegung B = QR, so dass Q ∈ Rm×n Isometrie istund R ∈ Rn×n obere Dreiecksmatrix mit positiven Diagonalelementen. Wir nennen R die geome-trische Normalform (GNF) der Basis, Bez.: R = GNF (B). Es gilt Q := [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 isometrisch, gdw GNF (B) = GNF (B) also gdw

BtB = BtB. Die Basen B einer Isomorphieklasse haben dieselbe GNF.2. L(B) ist isometrisch zum vollstandigen Gitter L(R) mit R = GNF (B).

8

Page 9: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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) =∏n

i=1‖bi‖2. Insbesondere bleibtdetL(B) = (detBtB)

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 vonZn 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 = det Zn = (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 istL∗ =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 zur Basis B = QR dann ist (BtB)−1 Gram-Matrix der Basis QR−t.

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 := QR−t wegen QtQ = In und RtR−t = In dass

BtB = (QR)tQR−t = RtQtQR−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 = detR = 1/ detR−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

9

Page 10: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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

Umkehrmatrix Un =def

[1·

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(QR−t), T (L∗) = L(QQR−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(QQR−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 unddetBtB = 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: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 dielineare 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.

10

Page 11: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 reellenZahl r. Offenbar gilt ‖y(i) − π(y(i))‖ ≤ 1

2 ‖b1‖. Wegen limi→∞

‖π(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.

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 zuSatz 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.

11

Page 12: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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−1

j=1 µi,jbj und |µi,j | ≤ 12

‖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,bbj〉‖bbj‖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〉| ≤ 1

2 ‖bj‖2.

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 (∑n

i=1 biZ bleibt erhalten)

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.

12

Page 13: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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.

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) = |detT| 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 Um A Un obere Dreiecksmatrix fur die MatrizenUm, Un mit Einsen auf der Gegendiagonalen.

Nach C. Hermite [He1850] gilt folgender Satz.

Satz 1.5.2 (Hermite 1850)Zu jeder Matrix A ∈ Qm×n mit Rang(A) = n gibt es genau eine HNF AU 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.

13

Page 14: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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

√2

3 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 2 Z2 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 · |detT|.

Index des Untergitters. Die ganze Zahl |detT| = 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= detT =

∏ni=1 |tii| .

14

Page 15: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Insbesondere gilt L′ = L genau dann wenn |detT| = 1.

Korollar 1.5.4Zu a = (a1, . . . , an)t ∈ 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′ = BT.

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′ =BT mit T ∈ Zn×n. Dann gibt es ein S ∈ GLn(Z) so dass TS 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′ = BT, dann wahlt man S ∈ GLn(Z) so dassST eine untere Dreiecksmatrix ist. Zur Basis B von L ist dann BS−1 eine Basis der gewunschtenForm.

15

Page 16: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

16

Page 17: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, nullsym-metrische Menge. Es gilt ‖x‖ = minr ∈ R≥0 |x ∈ rK. Der Eichkorper der `2-Norm ist dieEinheitskugel Bm(0, 1) der Dimension m, der Eichkorper der sup-Norm `∞ = ‖ ‖∞ ist der Wurfelmit Seitenlangen 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 ∈ L

mit ‖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 sindderen Vektoren nahezu orthogonal. Im allgemeinen gibt es keine Basis b1, . . . ,bn mit ‖bi‖ = λi

fur i = 1, . . . , n. Fur das Gitter L := Zn + Z ( 12 , . . . , 1

2 )t gilt offenbar λ1 = λ2 = · · · = λn = 1 furn ≥ 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/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 ) = (n

2 )!, Γ(1 + x) = x Γ(x), ( 12 )! =

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

nach Stirling Γ(1 + x) =√

2πx (xe )x (1 + 1

12x + Θ( 1x2 )) [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 liefertSatz 2.1.3 die scharfe Schranke λ1,∞(L) ≤ (detL)

1n . Es gilt λ1,∞(Zn) = 1 = (det Zn)

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 αn

0 · · · · · · 0 εn+1

∈ R(n+1)2 .

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

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

18

Page 19: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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)|| ≤ 1

2λi

)und ||bi||2 ≤ max(1, i

4 )λ2i .

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) = 0gilt 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|| = 1

2λ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 ≤∑n

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

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

4

∑ni=1 λ2

i ≤ n4 λ2

n.

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 λn12−nVn/ detL, 4n =def sup4(L) | dimL = n.

4(L) ist invariant gegen Aquivalenz, bleibt also bei Isometrie und Skalierung von L erhalten. Diezentrierte Dichte von L ist

δ(L) =def 4(L)/Vn, δn =def supδ(L) | dimL = n.

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.

19

Page 20: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Hermite-Konstante, Hermite-Invariante. Die Hermite-Invariante des Gitters L der Dimen-sion n ist γ(L) := λ1(L)2/(detL)

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

γn =def supγ(L)| dimL = n = 4 (4n/Vn)2/n.

Die relative Dichte rd(L) des Gitters L ist definiert durch λ21(L) = rd(L)2γn det(L)2/n. Es gilt

fur dimL = n dass rd(L)2 = γ(L)/γn = (4(L)/4n)2/n.

Es genugt das Supremum uber die vollstandigen Gitter L zu nehmen, denn γ(L) ist gegen Aqui-valenz invariant. Weil beschrankte Basen dieser Gitter uber einen kompakten Bereich des Rn×n

variieren, ist das Supremum ein Maximum.

Global extreme, kritische Gitter. Ein Gitter L mit dim(L) = n heißt global extrem oderkritisch, wenn 4(L) = 4n, also wenn rd(L) = 1 und λ2

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

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. Nach Abbildung 2.2.1 ergebendie 2n Kugelteile in der Grundmasche des Gitters zusammen gerade eine Kugel vom Radius λ1/2.Es folgt Vn(λ1/2)n/ det(L) = 4n < 1 somit λ1 = 2 (4n/Vn)1/n/(detL)1/n. Wegen (2.1) gilt

γn = λ21/(detL)2/n = 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 ppppppppppppppp

pppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp 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.

Kabatiansky, Levenshtein [KaLe78] zeigen mit einem Computer–Beweis dass γn ≤ 1,744 n2eπ fur

hinreichend grosses n.

Satz 2.2.2 (Minkowski, Hlawka)

4n ≥∑∞

k=1 k−n2−n+1 > 2−n+1 und γn ≥ n2eπ (1 + Ω( 1

n )).

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 > 22/n/V 2/nn =

n

2eπ(πn)1/n(1 + Θ(n−2)) =

n

2eπ(1 + Ω(

1n

)) (2.2)

20

Page 21: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 λn

1 = γ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.7)

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

Wir setzen bi :=∑i

j=1 µi,jbj/λj fur 1 ≤ i ≤ n, L := L(b1, . . . , bn

)und zeigen λ1( L ) ≥ 1.

Sei b :=∑s

i=1 tibi ∈ L \ 0 ein beliebiger Vektor, ts 6= 0 und b :=∑s

i=1 tibi. Dann gilt∥∥b∥∥2 =∑s

j=1(∑s

i=j tiµi,j)2‖bj‖2λ−2j ≥

∑sj=1(

∑si=j tiµi,j)2‖bj‖2λ−2

s = λ−2s ‖b‖2,

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

Aus det L = detL/∏n

i=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(∏n

i=1 λi)−2/n.

Diese Ungleichung potenxiert mit n/2 und multipliziert mit∏n

i=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∏n

i=1 λi,∞ ≤ detL. Diese Schrankeist scharf, denn fur L = Zn gilt λi,∞ = 1 und detL = 1.

2.4 Gitter mit grossem γ(L),4n

Die Hermite-Konstanten γn wachsen monton von n = 2 bis n = 8. Tabelle 2.2.3 zeigt dass diebekannten Mximalwerte der Hermite Invariante fur n = 25 bis n = 30 kleiner als γ24 = 4 sind.Die γn fur n = 2k sind besonders gross. Die Existenz eines Grenzwertes limn→∞ γn/n ist nichtbewiesen.

21

Page 22: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

n 2 3 4 5 6 7 8 24

γnn

43 2 4 8 26/3 26 28 248

γn 1.154 1.259 1.414 1.515 1.665 1.811 2 4

4n 0, 907 0, 740 0, 617 0, 465 0, 373 0, 295 0, 254 4.719 ∗ 10−7

δn = 4n/Vn 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.4.1: 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 Beweisist kompliziert und wurde von Watson [W66] und Vetchinkin [V82] bestatigt. Fur Dimension n ≤ 8sind die kritischen Gitter bis auf Aquivalenz (Isometrie und Skalierung) eindeutig bestimmt. Dieswurde von Barnes [Bar59] und Vetchinkin [V82] bewiesen. Cohn hat 2005 gezeigt, dass das LeechGitter Λ24 kritisch und bis auf Aquivalenz eindeutig ist, siehe [CK09]. Die Tabelle 2.4.1 zeigt diebewiesenen γn

n , die gerundeten maximalen Dichten 4n, sowie kritische Gitter. Zu An, Dn, En sieheSeite 7. Chaundy (1946) erweiterte L(R8) auf Gitter der Dimension 9 und 10 so dass γ9

9 ≥ 29

und γ1010 ≥ 212/3.

Einfache GNF’s und Gram-Matrizen der kritischen Gitter mit n ≤ 8. Betrachte die GNF

R8 :=1√2

2 1 1 0 0 0 0 0

0√

3 1√3

2√3

0 0 0 0

0 0√

83

√23

√32 0 0 0

0 0 0√

2 1√2

√2 0 0

0 0 0 0√

2 1√2

√2 0

0 0 0 0 0√

32

√23

√83

0 0 0 0 0 0 2√3

1√3

0 0 0 0 0 0 0 1

, detR8 = 1.

Die Teilmatrix Rn = [r1, ..., rn] der ersten n ≤ 8 Zeilen und Spalten von R8 liefert fur n ≤ 8 daskritische Gitter L(Rn) skaliert zu λ2

1 = 2. Fur die Gram-Matrizen RtnRn = [〈ri, rj〉]1≤i,j≤n gilt

〈ri, rj〉 =

2 fur i = j

1 fur |i− j| ∈ 1, 20 sonst

(2.3)

22

Page 23: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Rt8R8 :=

2 1 1 0 0 0 0 01 2 1 1 0 0 0 01 1 2 1 1 0 0 00 1 1 2 1 1 0 00 0 1 1 2 1 1 00 0 0 1 1 2 1 10 0 0 0 1 1 2 10 0 0 0 0 1 1 2

∈ Z8×8, detR8 = 1.

Lemma 2.4.1Sei B = [b1, ...,bn] ∈ Rn×n, L = L(B), dim(L) ≥ 1. Dann folgt aus ||b1||2, ..., ||bn||2 ∈ k Z,BtB ∈ k

2 Zn×n dass ||b||2 ∈ k N fur alle b ∈ L \ 0 und λ21(L) ∈ k N.

Beweis. Offenbar gilt fur b =∑n

i=1 tibi ∈ L, ti ∈ Z dass||b||2 = 〈b,b〉 =

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

∑ni=1 t2i ||bi||2 + 2

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

Fakt 1 Fur L = L(R8) gilt λ21(L) = 2 und ||b||2 ∈ 2 N fur alle b ∈ L \ 0.

Beweis. Fur R8 = [r1, ..., r8] gilt Rt8R8 ∈ Z8×8, ||ri||2 = 2 fur i = 1, ..., 8. Lemma 2.4.1 zeigt fur

k = 2 die Behauptung.

Die Hermite-Invarianten γ(Rn), Rn = [r1, ..., rn], sind fur n ≤ 8 maximal und somit gleichden Hermite-Konstanten γn. Die Gitter L(Rn) sind also kritisch und aquivalent zu A2, A3

∼=D3, D4, D5, E6, E7, E8.

Die kissing number eines Gitters L ist die Anzahl der b ∈ L mit ||b|| = λ1(L). Die kissingnumber von L(R8) ist 240.

Das Gitter L(R8) ist wegen detR8 = 1 selbstdual, L(R8) = L(R8)∗. Damit enthalt L(R8)alle Vektoren b ∈ span(R8) mit 〈ri,b〉 ∈ Z fur i = 1, ..., 8. Die Gitter L(Ri) fur i = 1, ..., 8 sinditerativ geschichtet nach Def. 2.4.3.

Definition 2.4.2Der Punkt z ∈ span(L) ist 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. Fur Gitter L der dim(L) = n uberdecken die Kugeln Bn(b, ρ) ∈ span(L)mit b ∈ L und Radius ρ den Raum span(L). Die Kugeln Bn(b, ρ/2) mit b ∈ L sind bis aufBeruhrpunkte disjunkt und liefern die Dichte 4(L) = (ρ/2)nVn/ det(L).

Mit dem tiefen Loch z ist auch z + b tiefes Loch fur alle b ∈ L. Zum tiefen Loch z von L derDimension n gibt es n + 1 Vektoren bi ∈ L mit ‖z − bi‖ = ‖z − L‖ fur i = 1, ..., n + 1 so dassspan(b1, ...,bn+1) = span(L).

Definition 2.4.3Das Gitter L = L(b1, . . . ,bn) der Dim. n ≥ 2 ist geschichtet (laminated) zum Gitter Ln−1 =L(b1, . . . ,bn−1) wenn λ1 = 2 fur L und Ln−1 und ||bn||2 + ||bn − bn||2 = 4 und bn − bn ∈span(b1, . . . ,bn−1) ist tiefes Loch von Ln−1. Λn bezeichnet ein Gitter das fur 1, 2, ..., n iterativgeschichtet ist.

q qq q

qqq

tiefe Locher

L(b1,b2)q qq

b2

tiefes LochL(b1)

Abbildung 2.4.1: Tiefe Locher in Λ1 und Λ2

23

Page 24: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

n 9 10 11 12 13 14 15 16

γ 2 2 6/5

31/10220/11

35/1322

31/2224/13

35/13210/7

31/14 27/5 23/2

γ ≈ 2 2.058 2.140 2.309 2.356 2.488 2.639 2.828

n 17 18 19 20 21 22 23 24

γ 226/17 25/3

31/18 231/19 217/10 237/21 221/11

31/22 244/23 4

γ ≈ 2.886 2.986 3.098 3.249 3.391 3.572 3.766 4

n 25 26 27 28 29 30 31 32

γ 249/25 22

31/2622

31/27229/14

31/1422

31/29 28/1539/10 215/31330/31 21/23

γ ≈ 3.890 3.834 3.840 3.885 3.851 3.890 4.049 4.242

Tabelle 2.4.2 : Die bislang bekannten Maximalwerte der Hermite-Invariante nach [Mar03, tab.14.4.1].

Diese bislang bekannten Maximalwerte von γ gehoren fur n = 9, 10 und n = 14, ..., 16zu Gittern deren Basis Rn ∈ Rn×n ab der Dimension 1 iterativ geschichtet ist. Sie gehoren furn = 11, 12, 13 zu den Coxeter-Todd Gitter Kn uber den Eisenstein ganzen Zahlen Z + ωZ mitω = (−1 + i

√3)/2 = (−1)1/3 ∈ C. Diese haben grossere Hermite-Invarianten γ(Kn) und grossere

Dichte als die ab der Dimension 1 iterativ geschichteten Gitterbasen. Zu weiteren Informationensiehe [CoSl88], [Mar03]. Die Determinanten der iterativ geschichteten Gitter mit λ2

1 = 2 kann man[CoSl88] entnehmen.

R12 = [r1, ..., r12] =

√2 1√

21√2

0 0 0 0 0 0 0 0 0

0√

3√2

1√6

√2√3

0 0 0 0 0 0 0 0

0 0 2√3

1√3

√3

2 0 0 0 0 0 0 0

0 0 0 1 12 1 0 0 0 1 0 0

0 0 0 0 1 12 1 0 1 0 0 0

0 0 0 0 0√

32

1√3

2√3

0 0 0 0

0 0 0 0 0 0√

2√3

1√6

0 0 0 0

0 0 0 0 0 0 0 1√2

0 0 0 0

0 0 0 0 0 0 0 0 1 12 1 0

0 0 0 0 0 0 0 0 0√

32

1√3

2√3

0 0 0 0 0 0 0 0 0 0√

2√3

1√6

0 0 0 0 0 0 0 0 0 0 0 1√2

Fur die Erweiterung R12 von R8 gilt λ21(L(R12)) = 2. Dies hat A. Schickedanz durch ein

Computerprogramm zur Konstruktion eines kurzesten Gittervektors in L(R12) nachgewiesen.

Damit sind γ(L(Rj)) fur j = 9, 10 die Maximalwerte von Tabelle 2.4.2. Die Vektoren r9, r10

beschrankt auf die ersten 8 Zeilen haben den Quadratabstand 1 zu L(R8).

24

Page 25: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

R24 =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 −30 4 0 0 0 0 0 2 0 0 0 2 0 2 0 0 0 0 0 2 2 0 0 10 0 4 0 0 0 0 2 0 0 0 2 0 0 2 0 0 2 0 0 2 0 0 10 0 0 4 0 0 0 2 0 0 0 2 0 0 0 2 0 0 2 0 2 0 0 10 0 0 0 4 0 0 2 0 0 0 0 0 2 2 2 0 2 2 2 2 0 0 10 0 0 0 0 4 0 2 0 0 0 0 0 2 0 0 0 0 2 0 0 0 0 10 0 0 0 0 0 4 2 0 0 0 0 0 0 2 0 0 0 0 2 0 0 0 10 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 0 2 0 0 0 0 0 10 0 0 0 0 0 0 0 4 0 0 2 0 2 2 2 0 2 2 2 2 2 2 10 0 0 0 0 0 0 0 0 4 0 2 0 2 0 0 0 2 0 0 0 2 0 10 0 0 0 0 0 0 0 0 0 4 2 0 0 2 0 0 0 2 0 0 0 2 10 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 0 0 0 2 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 0 0 0 0 2 2 2 10 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 2 2 2 2 2 2 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 2 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 2 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

Die GNF-Basis R24 des Leech Gitters L(R24) ist skaliert zu λ1 = 2, det(R24) = 1.

Das Leech Gitter L(R24) ist selbstdual und hat Hermite-Invariante γ(L(R′24)) = 4.

Die Packungsdichte von L(R24) :

4(L(R24)) = (λ1/2)24V24/ det(R24) = π12/12! ≈ 1.929× 10−3

25

Page 26: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

26

Page 27: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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. 3.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. 3.1.1 ihr Minimum im jeweiligenEckpunkt ±a± b an. Daher sind a,b offenbar zwei kleinste, linear unabhangige Gitterpunkte.

27

Page 28: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 ≤ 1

2 ⇐⇒ ‖b‖ ≤ ‖a− b‖ ,µ2,1 ≥ 0 ⇐⇒ ‖a− b‖ ≤ ‖a + b‖ .

Damit ist die Basis a,b genau dann reduziert, wenn ‖a‖ ≤ ‖b‖ , |µ2,1| ≤ 12 . Wir betrachten nur

reduzierte 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.

28

Page 29: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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-

29

Page 30: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 Basisb′1 = b2 − dµ2,1cb1, b′2 = b1 transformiert wird. Im Fall ∠(b1,b′1) < 30o gilt µ′2,1 > 3

2 .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 = 12 , weil dann ‖b′1‖/‖b1‖ maximal

ist.

Abbildung 3.1: Der Fall ∠(b1,b′1) = 30, 〈b1,b′1〉‖b1‖−2 = 12

Im Fall ∠(b1,b′1) = 30o gilt 34‖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 > 32 .

Im Falle ∠(b1,b′1) > 30o gilt 12 < µ′2,1 < 3

2 . 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 1

1 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 1

1 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]At

k

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.

30

Page 31: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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

Somit gilt k ≤ 2.54 + log1+√

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

2).

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.

31

Page 32: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

32

Page 33: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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×n

Gitterbasis 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-Basismit δ gdw die Matrizen

[ rk−1,k−1 rk−1,k0 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

33

Page 34: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 B = [b1, . . . ,bn] des Gitters L gilt λj(L) ≥ minrj,j , . . . , rn,n fur j = 1, ..., n.

Beweis. Es gibt j linear unabhangige b ∈ L mit ‖b‖ ≤ λj . In L(b1, ...,bj−1) gibt es nur j − 1linear unabh’angige Vektoren. Somi ∃b ∈ L(b1, ...,bk) \ L(b1, ...,bk−1) mit k ≥ j und ‖b‖ ≤ λj .Wahle k ≥ j minimal. Fur b =

∑ki=1 ti,kbi mit tk,k 6= 0 folgt rk,k ≤ λj .

Die untere Schranke zu λj in Lemma 4.1.3 gilt fur beliebige Basen. Fur LLL-reduzierte Basenist ‖bj‖ eine 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 r2

i,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 + 14

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

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

1. ‖b1‖2 ≤ αn−1

2 (detL)2n , 2.

∏ni=1 ‖bi‖2 ≤ α(n

2)(detL)2.

34

Page 35: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. Aus∏n

i=1 r2i,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 = α(n

2) (detL)2

und somit ‖b1‖2 ≤ αn−1

2 (detL)2n .

2. folgt aus∏n

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

i,i αi−1, Satz 4.1.4, 3. fur k = j = i.

Die relative Dichte rd(L) des Gitters L ist definiert durch λ21 = rd(L)2 γn (detL)2/n. Aus Korollar

4.1.5, Teil 1 folgt

‖b1‖2/λ21 ≤ α

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

Diese obere Schranke fur LLL-Basen ist fur rd(L) > ( 1n )O(1) deutlich 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.

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].

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.

35

Page 36: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Dies gilt insbesondere fur Zahler und Nenner der rationalen Zahlen µk,j , r2k,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 =∏i

j=1r2j,j ∈ N, (4.1)

D :=∏n−1

i=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.

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 hochstenslog1/δ

(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−1

i=1 r2i,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−1

i=1 Di ≤ Mn−1

und 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(k m) arithmetischen Schritten.

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

berechnet

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

i=1 µk,i µj,i r2i,i)/r2

j,j ,

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

∑k−1j=1 µ2

k,jr2j,j .

Die Langenreduktion von bk geht mit folgenden O(k m) Schritten

36

Page 37: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, r2

i,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−1

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

2. Wegen Dj =∏j

i=1 r2i,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 =∑k

j=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 ≤ δ (raltk−1,k−1)

2, (rneuk,k )2 ≤ (ralt

k−1,k−1)2.

37

Page 38: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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−1 fur 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

(Malt

k + 12

)≤ 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 denFaktor

(32

)k−1 (der Summand 14 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. MitM := maxi(‖bi‖2, Di) macht der Algorithmus hochstens O(n2m log1/δ M) arithmetische Schritteauf den Koordinaten der bi und den rationalen Zahlen µi,j , r

2i,i. Die Bitlange der auftretenden

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

Beweis. Nach Lemma 4.2.1 gilt

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

)log2 M.

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.

38

Page 39: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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+3

4 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,j

absolut beschrankt durch √n+3

4 M12(

9α4

)n−12 M.

Zahler und Nenner von r2j,j = Dj

Dj−1sind durch M beschrankt. Damit sind alle im Verfahren

auftretenden, ganzen Zahlen absolut beschrankt durch

n M12(

9α4

)n−12 M

und haben somit eine Bitlange O(n + log2 M) 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(k m) 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 = µ2r2k−1,k−1 + r2

k,k,

2. [µneuk,i , µneu

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

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

k−1〉‖bbneu

k−1‖2= 〈πk−1(b

neuk−1),πk−1(b

neuk )〉

‖bbneuk−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.

39

Page 40: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Algorithmus 4.3.1 LLL-Reduktion von ganzzahligen Erzeugendensystemen

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

/∗ L :=Pn

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) =∑i

j=1 bjZ und den Gram-DeterminantenDi = (detL(b1, . . . ,bi))2 setzt man wieder

D :=∏n−1

i=1 Di ,

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

i(‖bi‖2, Di) .

Dann gilt#Austausche ≤ log1/δ DStart ≤ (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 denrationalen Zahlen µi,j , r

2i,i. Die Bitlange der auftretenden ganzen Zahlen, insbesondere der Zahler

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

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.

40

Page 41: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 , r2

j,j mit1 ≤ 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.

41

Page 42: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 − µbj

geht in O(n) Schrittentj,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.1in O(n3 log1/δ M) arithmetischen Schritten auf ganzen Zahlen der Bitlange O(n + log2 M).

Dabei ist M wie fur ganzzahlige Eingabebasen erklart. Im Falle einer ganzzahligen Basis B ∈ Zm×n

mit 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)

42

Page 43: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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,i = r2

i+1,i+1 + µ2i+1,ir

2i,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−i

n

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

‖b1‖2 /λ21 ≥

(1211

) 1n

Pn−1i=1 i

/γn ≥(

1211

) 1n (n

2) /γn =(

1211

)n−12 /γn.

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

2 ] ist der Erwartungswert von µ2i+1,i gerade 1

12 . Damit

ist der Approximationsfaktor ‖b1‖2 /λ21 fur zufallige LLL-Basen im Mittel Θ( 12

11

n−12 /n).

43

Page 44: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

44

Page 45: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, 1n 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, 1n vorausgesetzt.

Die Wahrscheinlichkeiten und die ”fast alle“-Aussagen in diesem Kapitel beziehen sich aufzufallig 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

45

Page 46: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 letzte Zeile von B dient der Beweisvereinfachung.Die Losung e ∈ 0, 1n von

∑ni=1 aiei = 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) ∈R [1, A]n

der Dichte d < 0.6463 durch den 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 :=∑n

i−1 xibi − ybn+1 derLange λ1 mit y ≥ 0. (Dieses x ist fast immer eindeutig bestimmmt.) Lost x das Subsetsum-Problemnicht 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 ∈ LLO mit (5.3)]

bezuglich zufalliger (a1, . . . , an) ∈R [1, A]n. Fur N ≥√

n/2 wurde oben gezeigt dass xn+1 = 0und somit

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

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

46

Page 47: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Dann gilt

P (n) ≤ Ws[ ∃x ∈ Zn, x /∈ 0,±e, ‖x‖ ≤ ‖e‖∃y ∈ Z : 0 ≤ y <

√n/2 + 1,

∑ni=1(aixi − eiy) = 0

]

Faktor 1︷ ︸︸ ︷Ws[∑n

i=1(aixi − 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∑n

i=1(aixi− eiy) = 0 hochstens mit Wahr-scheinlichkeit 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 ≥ max

i=1,...,nai ≥ 2n/d und somit lim

n→∞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 1/20 1 0 1/2...

. . ....

...0 0 1 1/2

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

∈ 12 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, 1n des Subsetsum-Problems liefert den Losungsvektor

e′ :=∑n

i=1eibi − b′n+1 = (e1 − 12 , e2 − 1

2 , . . . , 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 einemFaktor

√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 ∈R

[1, A]n der Dichte d < 0.9408 durch den Vektor der Lange λ1 von LCJLOSS gelost.

Beweis. Das SVP-Orakel liefere x′ := (x1, ..., xn+2)t =∑n

i=1 yibi − yb′n+1 ∈ LCJLOSS mity ≥ 0, yi ∈ Z. (Dieses x ist fast immer eindeutig bestimmmt.) Bei Misserfolg gilt

‖x′‖ = λ1 ≤ ‖e′‖ =√

n/4 + 1, x′ 6= e′, 0 ≤ y < λ1 (5.6)

47

Page 48: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beh.: xn+1 = N(∑n

i=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(aiyi − 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 · y. Offenbar gilt x′ 6= e′ gdw ∃j : yj 6= yej . Zwar hangen x, y von den ai

ab, werden aber in der Ws-Analyse fixiert. Es folgt

P ′(n) ≤

Faktor 1︷ ︸︸ ︷Ws

[fur feste e ∈ 0, 1n, x ∈ Zn − 1/2 · y, y ∈ Z, 0 ≤ y <

√n/4 + 1,

∃j : yj 6= yej , ‖x‖ ≤√

n/4,∑n

i=1(aiyi − yei) = 0

]

·∣∣∣x ∈ Zn − 1/2 · y : ‖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∑n

i=1(aiyi − 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 · y : ‖x‖ ≤√

n/4∣∣∣ ≤ eδ(u)n + 2n fur δ(u) = u/4 + ln θ(e−u),

θ(z) := 1+2∑∞

k=1 zk2. 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 undA ≥ max

i=1,...,nai ≥ 2n/d folgt die Behauptung lim

n→∞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 Teilvektoren∑c

k=1 yikbik

fur c vieleder b linear unabhangig von

∑ck=1 eik

biksind. Wir erraten i1, ...., ic und ei1 , ..., eic ∈ 0, 1. Wir

beschranken die Basisvektoren auf die Zeilen i ∈ [1, n]red := [1, n]− i1, ..., ic und projizieren soL auf ein Gitter Lred der Dimension n− c und das Subsetsumproblem auf∑

i∈[1,n]redaiei = sred, sred := s−

∑ck=1 aik

eik

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]redaiei − b′red

n+1 der Lange√(n− c)/4 + 1. Entscheidend ist, dass die storenden kurzen Vektoren b 6= ±e′ von L durch die

Reduktion eliminiert werden. Dies beweist fur c = c(a, s) 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, n2 A], A ≥ 2 ·2n/d

ist hochstens P ′(n)c.

48

Page 49: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. 2. Wir schatzen den Anteil der (a, s) ∈ [1, A]n[1, n2 A] mit c(a, s) > c ab, analog

zur 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)∑n

i=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.99von 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 ≤ λ2

1/(δ−1/4)n−1 nach Satz 4.1.4und 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∑n

i=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, detBtaBa = 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. Obiges Ba = [b1, ...,bn] ist die Basis (5.4) ohne die letzte Zeile und letzte Spalte.Erganze Ba zu einer CJLOSS-Basis B′

a (ohne letzte Zeile) zu gegebener Subsetsum-Losung e. ImFall λ1(La) <

√n/4 gibt es einen Gittervektor in L(B′

a) der Lange ≤ λ1, der nicht zur Losung egehort. Dies ist nach Satz 5.3.1 fur fast alle a ∈ [1, A]n mit Dichte d < 0, 9408 ausgeschlossen.Satz 5.3.1 gilt auch ohne die letzte Zeile der Basismatrix (5.4). Der Beweis in [CJLOSS92] kommtohne diese letzte Zeile aus. Dann gilt fur den Losungsvektor e′ ∈ LCJLOSS dass ‖e′‖2 = n/4.

49

Page 50: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 1

n 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

1n

log2(4) ≥ −1− 2(log2 e)/e2π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) ∈ 12Zn+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,i 6=j

aiyi − yei

yj − 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 =−∑n

i=1,i 6=j aiyi−yei

yj−yejgilt 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.

50

Page 51: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 πjbj , . . . ,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+34 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.

51

Page 52: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 r2`,j ≤ r2

j,j + 14

∑j−1`=1 r2

`,` ≤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. Kannan’sAlgorithm fur HKZ -Reduction [K87] hat Laufzeit nn/2e+o(n) nach Hanrot, Stehle, Proc. CRYPTO2007.

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 fur k =O(log n/ log log n). [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` := (detR`)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 1 ≥ δB > 0 wenn

1. R1, ...,Rh von R HKZ-Basen sind und B ist langenreduziert.

2. δkB (D`/D`+1)1/k ≤ βk fur ` = 1, ..., h− 1 und das βk von Def. 6.2.2.

Gilt δkB (D`/D`+1)1/k > βk dann fuhrt HKZ-Reduktion von R`,`+1 zu D neu

` ≤ δk2

B Dalt` .

Definition 6.2.2

αk := max r21,1/r2

k,k maximiert uber alle HKZ-GNF R ∈ Rk×k

βk := max(D1/D2

)1/k maximiert 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 → 1 fur k →∞.

52

Page 53: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Satz 6.2.3Fur jede Semi Block 2k-Basis B = QR ∈ Rm×n, n = hk zu δB > 0 von L gilt

‖b1‖2 ≤ γk(βk/δkB)

h−12 (detL)2/n = γk/γn (βk/δk

B)h−1

2 rd(L)−2λ21.

Im Vergleich gilt fur LLL-Basen ‖b1‖2 ≤ αn−1

2 (detL)2/n = γ−1n α

n−12 rd(L)−2λ2

1.

Das α von LLL-Basen wird ersetzt durch β1/kk /δB = 1/δB + o(1) fur k →∞.

Beweis. Sei D` := (detR`)2. Fur die HKZ-Basis R1 ∈ Rk×k gilt ‖b1‖2 ≤ γkD1/k1 .

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/δk

B)`−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) 1

h (detL)1

hk = γk(βk/δkB)

h−12 (detL)2/n.

Wir kombinieren dies mit der Gleichung λ21 = γnrd(L)2 det(L)2/n.

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, langenreduziere B`+1, erneuere R`,`+1.

3. HKZ-reduziere R`,`+1 zu R`,`+1T2k mit T2k ∈ GL2k(Z).

IF D neu` ≤ δk2

B D alt`

THEN [B`,B`+1] := [B`,B`+1]T2k, langenreduziere B`,B`+1, ` := max(`− 1, 1)ELSE ` := ` + 1.IF ` < h THEN GO TO 2

AUSGABE Semi Block 2k-Basis B.

Korrektheit. Nach Schritt 3 ist b1, ...,bk` eine Semi Block 2k-Basis.

Satz 6.2.41. Alg. 6.2.1 macht hochstens ( 2h2

k +h) log1/δBM Iterationen fur den Wert M := max(‖b1‖ , ..., ‖bn‖)

der Eingabebasis. Eine Iteration geht in (2k)k/e+o(k) nO(1) arithmetischen Schritten nach [HS07].

2. Alg. 6.2.1 macht hochstens h3

12 log1/δBα Iterationen bis DB ≤ 1 erreicht ist.

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 ≤ δk2

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 = hk (h− 1) log1/δB

M.

53

Page 54: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Fur die Gesamtzahl #It der Schritte 3 folgt die Behauptung

#It = h− 1 + 2#It− ≤ ( 2h2

k + h) log1/δBM .

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)h2/4−(h/2−`)2 .

Der Exponent h2/4 − (h/2 − `)2 ist maximal bei ` = h/2, er ist null fur ` = 0 und ` = h und istsymmetrisch zu ` = h/2. Fur die LLL-Eingabebasis gilt D` ≤ αk2D`+1 und somit gilt fur ihrenDB-Wert DEin

B dass DEinB ≤ αk2s fur s =def

∑h−1`=1 h2/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

` D−(`+1)(h−`−1)`+2 .

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/δ2k2

BDEin

B ≤ k2h3

61

2k2 log1/δBα = h3

12 log1/δBα.

Nach [HS07] ist die arithmetische Schrittzahl fur die HKZ-Reduktion von R`,`+1 ∈ R2k×2k hochstens(2k)k/e+o(k))nO(1), jeder arithmetische Schritt hat O((log M)2) Bitoperationen.

Alternativer Beweis zu 2. Beh.: #It ≤ h3(1+o(1))2 log1/δB

α — auch fur DAusB 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)n h−12 .

Andererseits gilt fur HKZ-Basen dass r21,1/r2

j,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+ln n)n(h−1)/2

Der D-Wert der Ausgabebasis ist nicht kleiner als der einer HKZ-Basis, daher folgt

#It ≤ log1/δB

k2 (DEin/DAus)

≤ 1k2

(n−1)n(h−1)2 log1/δB

α + n(h−1)2k2 log1/δB

n1+ln n

≤ h3(1+o(1))2 log1/δB

α sofern log1/δBn1+ln n = 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.

54

Page 55: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, langenreduziere B`,B`+1, erneuere R`,`+1.

3. HKZ-reduziere R`,`+1 zu R`,`+1T2k mit T2k ∈ GL2k(Z).

IF D neu` ≤ δk2

B D alt` THEN [B`,B`+1] := [B`,B`+1]T2k, langenreduziere B`,B`+1, 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 ≤ (αk2/2t

βkk )s ≤ (αk2/2t

βkk )h3/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 ≤ βks

k ≤ βk h3/6k und somit im Mittel D`/D`+1 ≤ βk

k .

Folgerungen. Wenn fur die Ausgabebasis von Alg. 6.2.2 mit δB := α−1/2t

gilt dass D`/D`+1 & βkk

fur 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 βk

k 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` = (detR`)2 wie folgt durch HKZ-Reduktion inDimension k: Maximiere rk`,k` uber alle GNF von R`T mit T ∈ GLk(Z) zu max

Trk`,k` durch HKZ-

Reduktion der dualen Basis R∗` . Minimiere rk`+1,k`+1 durch HKZ-Reduktion von R`+1. Danach

LLL-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 Schranke ‖b1‖2 ≤ γk(αγ2)

h−12 (detL)2/n erreicht. Damit wird βk/δk

B in Satz 6.2.3 ersetztdurch αγ2

k. Die primal-duale Reduktion iteriert HKZ-Reduktion in Dimension k, wahrend SemiBlock 2k-Reduktion auf der HKZ-Reduktion in Dimension 2k aufbaut. Primal-duale Reduktionmit Blockbreite 2k ersetzt βk/δk

B in Satz 6.2.3 durch die wohl kleinere Konstante√

α γ2k = Θ(k).

Definition 6.3.1Eine Basis B = QR ∈ Rm×hk ist primal-duale Basis mit Blockweite k wenn1. R1, ...,Rh ⊂ R HKZ-Basen sind und B langenreduziert ist,2. max

Tr2k`,k` ≤ α r2

k`+1,k`+1 fur ` = 1, ..., h− 1, dabei wird r2k`,k` von GNF(R`T)

maximiert uber alle T ∈ GLk(Z).

55

Page 56: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Satz 6.3.2 (Ko04, 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/λ2

1(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 mit Def. 6.3.1, 2 zu

D1/k` ≤ γk max

Tr2k`,k` ≤ αγkr2

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∗` = (detR∗

` )2. Daher gilt auch das duale

1∗ zu Satz 6.3.2, Teil 1 :1∗. max

Tr2k`,k` ≥ γ−1

k (αγ2k)

−h+12 (detL)2/n

mit r2k`,k` maximiert uber die GNF von R`T mit T ∈ GLk(Z)

1 und 1∗ ergeben zusammen ‖b1‖2 ≤ γ2k(αγ2

k)`−1maxT

r2k`,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 =∑n

j=1 ujbj ∈ L, un 6= 0 mit ||b1|| = λ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.Schritt 2 maximiert den letzten Diagonaleintrag rk,k von GNF(R`T) ∈ Rk×k fur T ∈ GLk(Z) wie

folgt: Die Umkehrmatrix Uk =[

1·1

]∈ Zk×k liefert zur unteren Dreiecksmatrix R−t

` ∈ Rk×k

die obere Dreiecksmatrix R∗` = UkR−t

` Uk. HKZ-Reduktion von R∗` zu R∗

`T∗ mit T∗ ∈ GLk(Z)minimiert den ersten Diagonaleintrag r1,1 von GNF(R∗

`T∗) und maximiert 1/r1,1 den letztenDiagonaleintrag von GNF(R`UkT−t

∗ Uk). Die Transformation T∗ von R∗` wird als Transformation

UkT−t∗ Uk auf R` und B` ubertragen.

Zu Beginn der LLL-Reduktion von R`,`+1 in Schritt 2 erfolgt entweder ein Austausch der Spaltenk und k + 1 von R`,`+1 oder R`,`+1 ist schon LLL-reduziert. Denn rk,k von R` ist maximal undrk+1,r+1 von R`+1 ist minimal.

56

Page 57: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Algorithmus 6.3.1, Primal-Duale Reduktion

EINGABE LLL-Basis B = QR ∈ Zm×n, n = hk, zu δ, α.0. ` := 11. 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,

langenreduziere B`,B`+1, 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, langenreduziere B`,B`+1, ` := max(`− 1, 1)ELSE ` := ` + 1

4. IF ` < h THEN GO TO 1

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 kk2e +o(k))nO(1) arithmetischen Schritten mit

jeweils O((log M)2) Bitoperationen..

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` = (detR`)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 Schranken fur die Anzahl der Iterationen #It der Algorithmen 6.3.1 und 6.2.1 fallen furδ = δk2

B zusammen.

Die Klausel 2. von Def. 6.3.1 wurde von Gama, Nguyen [GN08b] verscharft zu

2.+ maxR′

`Trk`+1,k`+1 ≤ (1 + ε) rk`+1,k`+1 fur ` = 1, ..., h− 1. ( slide-reduction [GN08b] )

Es bezeichne R′` := [ri,j ]k`−k+2≤i,j≤k`+1 ∈ Rk×k das um eine Einheit nach rechts verschobene

Segment R` von R = [ri,j ] ∈ Rn×n. Es bezeichnet maxR′

`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`.

Definition 6.3.4Eine langenreduzierte Basis B = QR ∈ Rm×n mit n = hk ist streng primal-dual, wenn R1, ...,Rh

HKZ-Basen sind so dass 2.+ gilt.

57

Page 58: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Satz 6.3.5 (GN08b)Fur jede streng primal-duale Basis B = QR ∈ Rm×n, n = hk mit ε > 0 in 2+, des Gitters L gilt:

1. ‖b1‖ < ((1 + ε) γk)12

n−kk−1 (detL)1/n fur 1 < h, k < n,

2. ‖b1‖ < ((1 + ε) γk)12

n−1k−1 λ1/(

√γnrd(L)) wegen λ2

1 = γnrd(L)2 det(L)2/n.

Beweis. Nach Hermite gilt fur die HKZ-Basis R` dass r2kk`−k+1,k`−k+1 ≤ γk

k D`. Das dualedieser Ungleichung ergibt fur D′` := (det R′

`)2 dass max

R′`T

r2kk`+1,k`+1 ≥ D′`/γk

k fur T ∈ GLk(Z).

Fur ` = `max folgt damit aus 2+ fur jede streng primal-duale Basis dass

D′` ≤ (1 + ε)2kγkk r2k

k`+1,k`+1. (6.4)

Kombination von (6.4) mit r2kk`−k+1,k`−k+1 ≤ γk

k D` und D′`/r2k`+1,k`+1 = D`/r2

k`−k+1,k`−k+1 liefert

rk`−k+1,k`−k+1 ≤ ((1 + ε) γk)k

k−1 rk`+1,k`+1 fur ` = `max und ` = h− 1. (6.5)

Fur ` = `max folgt aus (6.4) und r2kk`−k+1,k`−k+1 ≤ γk

k D` dass

D′` ≤ (1 + ε)2kγkkr2k

k`+1,k`+1 ≤ (1 + ε)2kγ2kk D`+1. Aus (6.5) folgt

D` = r2k`−k+1,k`−k+1D′`/r2

k`+1,k`+1 ≤ ((1 + ε) γk)2k

k−1D′`. (6.6)

Die Kombination der beiden vorangehenden Ungleichungen liefert fur ` = `max

D` ≤ ((1 + ε) γk)2k

k−1+2kD`+1 ≤ ((1 + ε) γk)2k2k−1D`+1. (6.7)

Somit gilt fur `max und damit auch fur alle ` = 1, ..., h− 1 dass D` ≤ ((1 + ε) γk)2k2k−1D`+1.

1. Fur die HKZ-Basis R1 folgt somit fur ` = 1, ..., h dass

‖b1‖2 ≤ γkD1/k1 ≤ γk((1 + ε) γk)

2k(`−1)k−1 D1/k

` .

Multiplikation dieser h Ungleichungen und∑h

`=1(`− 1) = h(h−1)2 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.

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, langenreduziere B`+1,

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 alt

k`+1,k`+1 THEN B′` := B′

`T−1? Uk, langenreduziere B′

`,erneuere R`,`+1, GO TO 1

AUSGABE streng primal-duale Basis B.

Satz 6.3.6Alg. 6.3.2 fuhrt hochstens n2h

24 log1+ε α Iterationen durch bis DB ≤ 1 erreicht ist.

58

Page 59: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. Ein aktiver Schritt 3 bewirkt Dneu` ≤ Dalt

` /(1 + ε)2, somit DneuB ≤ D′alt

B /(1 + ε)4. Fur

die LLL-basis B der Eingabe gilt DEinB ≤ αk2 h3−h

6 . Es folgt #It ≤ k2h3

24 log1+ε α bis DB ≤ 1.

[GN08b] fordert fur slide-reduzierte Basen dass 2+, mit (1 + ε) ersetzt durch√

1 + ε, fur alle` ≤ h−1 gilt; es wird in etwa Satz 6.3.4 fur slide reduzierte Basen gezeigt. Weil wir die Bedingung2+ nur fur `max fordern, macht Alg. 6.3.2 zur streng primal-dualen Reduktion hochstens 2 HKZ-Reduktionen der Dim. k pro Iteration und ist damit deutlich schneller als die slide Reduktion von[GN08b].

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 = r2i,i ≤ r2

i,i+1 + r2i+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 ≤ γ2 n−i

k−1k fur i = 1, . . . , n,

2. ‖bi‖2 /λi(L)2 ≤ γ2 n−i

k−1k

i+34 fur i = 1, . . . , n.

Verdoppelung der Blockweite k reduziert somit den Approximationsfaktor γ2 n−i

k−1k annahernd auf

die 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−1

k−1k

i+34 fur i = 1, . . . , n.

59

Page 60: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Die Werte γ2

k−1k sind bekannt fur k = 2, 3, . . . , 8, 24:

k 2 3 4 5 6 7 8 24

γ2

k−1k

43 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.3nicht 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−1k 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 ≤ γk2k

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

· ‖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(k

2) und somit ‖b1‖ ≤ γn−1k−1k M.

60

Page 61: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Korollar 6.4.6Fur jede k-reduzierte Basis b1, . . . ,bn des Gitters L gilt ‖b1‖ ≤ γ

n−1k−1k λ1(L).

Die Schranke von Korollar 6.4.6 ist suboptimal fur k ≈ n denn fur k = n gilt ‖b1‖ = λ1. Sie istbesser 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. Furdas 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−1k λ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: ‖bbi‖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−i

k−1k · λi(L)2 + 1

4

i−1∑j=1

γ2·n−j

k−1k · λj(L)2

≤ γ2· n

k−1k ·

2· −ik−1

k + 14

i−1∑j=1

γ2· −j

k−1k

)· λi(L)2

Wir schatzen die Summanden durch γ2· −1

k−1k nach oben ab und erhalten:

‖bi‖2 ≤ γ2· n

k−1k · γ2· −1

k−1k ·

(1 +

i− 14

)· λi(L)2

≤ γ2·n−1

k−1k · i + 3

4· λi(L)2

Damit haben wir die zweite Behauptung auch gezeigt.

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 =∑i

j=1 r2j,i ≤ 1

4

∑nj=1 r2

j,j und somit

λ2i ≤ i+3

4 · maxj=1,...,i

‖bj‖2 (6.12)

61

Page 62: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Lemma 6.4.5 angewandt auf die k-reduzierte Basis πj(bj), . . . , πj(bi) liefert fur 1 ≤ j ≤ i− k + 1:

‖bj‖ ≤ γi−jk−1k 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−1k ‖bi‖. Diese Ungleichung liefert mit

(6.12) die Behauptung, daß fur i = 1, . . . , n gilt:

λi(L)2/ ‖bi‖2 ≤ γ2 i−1

k−1k

i+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))

2 fur 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) :=∑j

i=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].

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

In diesem Abschnitt konstruieren wir kritische k-reduzierte Basen fur k = 2, 3.

62

Page 63: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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) maximalfur 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 12ρn−2

0 · · · · · · · · · 0 ρn−1

(6.15)

Es gilt fur n ≥ 2

A2 :=

1 1

2

0√

34

An :=

1 12 0 · · · 0

0... ρ ·An−10

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)

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)

63

Page 64: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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].

64

Page 65: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 :Σn

i=1aixi = b, n ∈ N

ist NP-vollstandig.

65

Page 66: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, 1n Rucksacklosung, Σni=1aixi = b. Dann gilt fur

x := (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+1i=1 xibi‖∞ = 1. Wir zeigen 1. x1, . . . , xn ∈ 0, 1, 2. Σn

i=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 1

2a1 · · · 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.

Satz 7.2.2CVP`2 ist NP-vollstandig,( `2 = ‖ ‖ ).

66

Page 67: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 1

2a1 · · · 2an 2b

∈ Z(n+1)2 .

Zu zeigen: (a1, . . . , an, b) ∈ Rucksack ⇔ (B′,y,√

n) ∈ CVP`2 .“⇒” Sei (a1, . . . , an, b) ∈ Rucksack und Σn

i=1aixi = b, xi ∈ 0, 1 Rucksacklosung. Es folgt

‖∑n

i=1 bixi − bn+1‖ = ‖(±1, . . . ,±1, 0)‖ =√

n.

“⇐” Ang. ‖Σni=1bixi−y‖2 ≤

√n fur x1, . . . , xn ∈ Z. Es folgt ‖Σn

i=1bixi−y‖ =√

n und xi ∈ 0, 1,somit Σn

i=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 1

3 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, 1n : ‖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 |2xi − 1| ≥ 3,|2xi − 1|2 ≥ 9 = 1 + 8, oder

∑ni=1 aixi 6= b, somit 9(Σn

i=1aixi − b)2 ≥ 9. Wegen |2xi − 1| ≥ 1 furxi ∈ Z folgt ∀x ∈ Zn : ‖B′x− y‖ ≥

√n + 8. Somit ist (B′,y,

√n) Nein-Instanz.

Satz 7.2.4 (DKRS03)GAP-CVPγ und CVPγ sind NP-hart fur γ = n1/ log log n.

67

Page 68: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, konstante γ > 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√n a1 · · ·

√n an

√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] giltdass λ1(L(b1, ...,bn)) >

√2n.

Beweis. (a1, . . . , an, b) ∈ Rucksack impliziert (B,√

2n) ∈ SVP, denn fur jede Rucksack-LosungΣn

i=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 ‖Σn

i=1bixi + bn+1xn+1‖ ≤√

2n. Wegen λ1(L(b1, ...,bn)) >√

2n gilt∑n

i=1 aixi +xn+1b = 0 mit xn+1 6= 0, dabei gilt |xn+1| ≤ 1, denn andernfalls ware ‖Σn

i=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.

68

Page 69: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, sodass ‖b1‖ eπ

√n ≤ γ

1/2n (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 ∈ Zm×n. Wir berechnen ein b ∈ L(B) mit ‖b‖ =`2(b) = λ1(L). Sei b1, . . . ,bn ∈ Rm die Basis mit zugehorigem Orthogonalsystem b1, . . . , bn undGram-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(∑n

i=t uibi)‖2 =∑n

j=t(∑n

i=j 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)

69

Page 70: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, cmin

1 := c1 := r21,1. /? stets ist ct = ct(ut, . . . , un) und

cmin1 = c1(u1, ..., ut) ist aktuelles Minimum von c1 ?/

3. WHILE t ≤ n DO3.1 ct := ct+1 + (yt + ut)2r2

t,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 das bisher maximale t vor der Erhohung ?/AUSGABE: Minimalstelle (u1, . . . , un) ∈ Zn \0 von c1und Minimalwert cmin

1 = λ21 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/rt,t 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 r2t,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.

70

Page 71: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. Denn1

detL=

Anzahl GitterpunkteVolumen 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 =∑n

i=t uibi einen Vektor b =∑t−1

i=1 uibi ∈ Lt sodaß

∥∥b + b∥∥2

< cmin1 . 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 − 1mit 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 durchIF βt > 2−s THEN

liefert Alg. 8.2.1 genannt Gauß-ENUM [SH95].

71

Page 72: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, cmin

1 := c1 := ‖b1‖2 /? stets ist ct = ct(ut, . . . , un) undcmin1 = c1(u1, ..., ut) ist aktuelles Minimum von c1 ?/

3. WHILE t ≤ n DO3.1 ct := ct+1 + (yt + ut)2r2

t,t

3.2 IF βt ≥ 2−s THENIF 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 cmin

1 von c1

Die Volumen Heuristik nimmt an, dass die orthogonale Projektion von b =∑n

i=t uibi in Lt =L(b1, ...,bt−1) modulo —Lt zufallig ist. Wenn aber (ut, ..., un) mit den Koordinaten eines kurzestenGittervektors ubereinstimmt, dann ist diese orthogonale Projektion von b nach Langenreduktiongegen 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 cmin

1 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.

72

Page 73: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Kapitel 9

Weitere Anwendungen

In Kapitel 5 (Seite 45 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.

9.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 ∨ x

aj22 ∨ · · · ∨ xajn

n

mit (aj1, aj2, . . . , ajn) ∈ 0,±1n. 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 9.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, 1n mit γ(y1, . . . , yn) = 1 oder zeige, daß keine erfullende Belegungexistiert.

73

Page 74: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 (9.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 9.1.2Die 0, 1-IP-Aufgabe (9.1) hat genau dann eine Losung y ∈ 0, 1n, 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

(9.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 (9.1) in ±1n × ±1, 0m × +1.

Satz 9.1.3Sei L das von den Zeilenvektoren b1, . . . , bn+1 aus (9.2) erzeugte Gitter. Dann gilt fur alle Gitter-vektoren z ∈ L:

Es existiert eine erfullende Belegungy ∈ 0, 1n zu γ(y) mit z = ±b(y) ⇐⇒ ‖z‖∞ = 1

Beweis. Wir zeigen beide Richtungen:

”⇒“ Wegen b(y) ∈ ±1, 0n+m+1 gilt ‖z‖∞ = 1.

”⇐“ Gegeben ist ein Vektor z ∈ L mit ‖z‖∞ = 1. Der Vektor habe die Darstellung

z =n+1∑i=1

y′ibi (9.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:

74

Page 75: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

1. Aus yn+1 = +1 folgt (y′1, y′2, . . . , y

′n) ∈ 0,+1n.

2. Aus yn+1 = −1 folgt (y′1, y′2, . . . , y

′n) ∈ 0,−1n.

Setze:

y := y′n+1 · (y′1, y′2, . . . , y′n)

Es ist y ∈ 0,+1n und (y, 1) = y′n+1 · y′. Wegen ‖z‖∞ = 1 und y′n+1 ∈ ±1 gilt nach (9.3)∣∣∣∣∣n∑

i=1

ajiyi − cj

∣∣∣∣∣ = ∣∣y′n+1

∣∣ · ∣∣∣∣∣n∑

i=1

ajiyi − cj

∣∣∣∣∣ ≤ ‖z‖∞ ≤ 1

fur j = 1, . . . ,m. Nach Lemma 9.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 9.1.3 einen alternativen Beweis zu Korollar 11.2.9 von Seite 98 kennenge-lernt: Das Problem ‖·‖∞-kurzester Gittervektor ist NP-vollstandig.

9.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, 1n → N

(x1, . . . , xn) 7→∑n

i=1 aixi

Eine Kollision nennen wir x, x′ ∈ 0, 1n, x 6= x′, mit ha(x) = ha(x′). Als Pseudo-Kollisionbezeichnen wir x, x′ ∈ 0, 1n, 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.

Jedem Vektor x = (x1, . . . , xn) ∈ ±1, 0n \ 0 mit

n∑i=1

ai · xi = 0 (mod 2m)

entspricht eine Pseudo-Kollision x, x′ gemaß

xi :=

1 falls xi = 10 sonst

x′i :=

1 falls xi = −10 sonst

75

Page 76: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

und umgekehrt. Wir wahlen als Basis:b1b2...

bnbn+1

:=

1 0 · · · 0 a1n0 1 0 a2n...

. . ....

...0 0 1 ann0 0 · · · 0 2mn

(9.4)

Wir bezeichnen:

P-Kollision :=

(x1, . . . , xn+1) ∈ ±1, 0n+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]n und festem x durch. Zu α ∈

[0, 1

2

]mit αn ∈ N sei:

Nα :=

(x1, . . . , xn) ∈ ±1, 0n

∣∣∣∣∣n∑

i=1

|xi| = αn

Fur x ∈ Nα ist ‖x‖2 =

√αn, da x ∈ ±1, 0n. Es gilt:

Nα := |Nα| =(

n

αn

)· 2αn (9.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, (9.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 (9.7)

Wir definieren die Zufallsvariable ξx := ξx − 2−m, so daß:

Ea

[ξx

]= 0 (9.8)

Ea

[ξ2

x

]= Ea

[ξ2x

]− 2 · 2−m · Ea [ ξx] + 2−2m ≤ 2 · 2−m (9.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)

76

Page 77: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Wir wenden die Tschebycheff-Ungleichung auf 1Nα

·∑

x∈Nαξx an und erhalten wegen der Erwar-

tungswerte (9.8) und (9.9):

Wsa

[ ∣∣∣∣∣ 1Nα

·∑

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 (9.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

](9.10)

Aus Abschatzung (9.10) und dem Erwartungswert (9.8) folgt:

Wsa

[ ∣∣∣∣∣ 1Nα

·∑

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α(9.11)

und fur ε = 2−m−l:

Wsa

[ ∑x∈Nα

ξx ≤ Nα ·(2−m − 2−m−l

)]≤ 2m+1+2l

Nα(9.12)

Aus (9.11) folgt unmittelbar:

Satz 9.2.1Es gilt:

a) Fur m ≤ log2 Nα − 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 ≤ log2 Nα − 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 (9.11), die Aussage b) folgt aus (9.12) mit l = 1.

Im nachsten Schritt mochten wir Nα = |Nα| maximieren: Aus dem Ansatz

∂Nα

∂α= 0

77

Page 78: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

mit (9.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−1

k + log21k = log2(k − 1) ≈ − log2 2

und somit k − 1 = 2 bzw. k = 3, also α = 23 als ungefahre Maximalsstelle von Nα.

Satz 9.2.2Bezuglich a ∈R [1, 2m − 1]n gibt es mit Wahrscheinlichkeit mindestens 1

2 Pseudo-Kollisionen, wennN2/3 ≥ 2m−1 oder aquivalent n ≥ m−1

log2 3 ist.

Beweis. Aus (9.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

log2 N2/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.

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

78

Page 79: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Wir wahlen m und α derart, daß in etwa gilt

Ea [Anzahl Pseudo-Kollisionen in Nα] ≈ 1,

Also wegen (9.5) und (9.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 dergewunschten 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.

79

Page 80: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

80

Page 81: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Kapitel 10

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 ??). Bis aufden Gauß-Reduktionsalgorithmus aus Kapitel 3 fur aus zwei Vektoren bestehende Basen ist dieReduktion in beliebiger Norm in der Praxis ”schwierig“.

10.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 10.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ß jedeAbstandsfunktion Fi eine Norm auf span(b1, . . . , bi−1)

⊥ ist. Im Fall der Euklidischen Norm istFi(bi) = ‖bi‖2. Die Determinante des Gitters L = L(b1, . . . , bn) ist:

det L =n∏

i=1

‖bi‖2

81

Page 82: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Wie sieht die Gleichung det L =∏

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 (10.1)

Man beachte, daß sich Volumen stets auf die Euklidische Metrik bezieht.

Lemma 10.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 10.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 10.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)− b1

F1(b1)

Abbildung 10.1.1: Induktionsverankerung im Beweis zu Lemma 10.1.2

• Induktionsverankerung n = 1: Es gilt (vergleiche Abbildung 10.1.1):

V1 = 2 ·‖b1‖2‖b1‖

= 2 · ‖b1‖2F1(b1)

• Induktionsschluß von n − 1 auf n: Wir wahlen einen Punkt z = bn −∑n−1

i=1 tibi ∈ Rn mit‖z‖ = Fn(bn) (siehe Abbildung 10.1.2). Man erhalt eine obere Schranke fur Vn durch:

Vn ≤ 2 · Vn−1 ·‖bn‖2Fn(bn)

82

Page 83: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

span(b1, . . . , bn−1)Sn−1

Sn

z

6+ bbn

Fn(bn)

− bbn

Fn(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 p

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

p

Abbildung 10.1.2: Induktionsschluß im Beweis zu Lemma 10.1.2

Die konvexe Hulle von Sn−1 und z (gepunktetes Gebiet in Abbildung 10.1.2) ist in Sn

enthalten. Da es sich um eine Pyramide mit Grundflache Sn−1 und Hohe ‖bbn‖2Fn(bn) handelt,

gilt:

Vn−1

n· ‖bn‖2Fn(bn)

= voln (konvexe Hulle von Sn−1 und z) ≤ Vn

2

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)

[2n· ‖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 ‖bbn‖Fn(bn) .

Da Sn in zwei dieser Quader enthalten ist (siehe Abbildung 10.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 10.1.4 (Kaib 1994)Fur jede Gitterbasis b1, . . . , bn ∈ Rm gilt:

mini=1,...,n

Fi(bi) ≤ λ1,‖·‖ ≤

(n! ·

n∏i=1

Fi(bi)

) 1n

83

Page 84: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Zum Vergleich fur die `2-Norm: Wir wissen aus der Minkowski’schen Ungleichung ?? (Seite ??),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 10.1.4). Betrachten wir beide Abschatzungen:

• Wir zeigen:

mini=1,...,n

Fi(bi) ≤ λi,‖·‖

Sei b =∑n

i=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 (10.2)

Aus Lemma 10.1.2 wissen wir:

n!2n

·n∏

i=1

Fi(bi)

‖bi‖2≥ 1

Vn(10.3)

Aus det L =∏n

i=1 ‖bi‖2 erhalten wir:

λn1,‖·‖ ≤ 2n · V −1

n ·n∏

i=1

‖bi‖2 (wegen (10.2))

≤ 2n ·

(n!2n

·n∏

i=1

Fi(bi)

‖bi‖ 2

(n∏

i=1

‖bi‖2

)(wegen (10.3))

= n! ·n∏

i=1

Fi(bi)

Es gilt fur das Produkt der sukzessiven Minima:

Satz 10.1.5Fur jede Gitterbasis b1, . . . , bn ∈ Rm gilt:

1n!·

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 ?? auf Seite ??, besagt:n∏

i=1

λi,`2 ≤ (γn)n2 · detL

84

Page 85: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis (zu Satz 10.1.5). Die Behauptung folgt aus dem Beweis zu Satz 10.1.4 durch Anwen-den des zweiten Satzes von Minkowski:

det L

n!≤ Vn

2n·

n∏i=1

λi,‖·‖ ≤ detL

10.2 Reduzierte Basen zur Norm ‖·‖

Analog zur Euklidischen Norm fuhren wir Reduktionsbegriffe ein und versuchen, Eigenschaftenreduzierter Basen zu beweisen.

10.2.1 Definitionen

Wir ubertragen die Reduktionsbegriffe auf den Fall einer beliebig vorgegebenen Norm:

Definition 10.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 furdie ”⇒“-Richtung beachtet man, daß gilt:

Fj(bi) ≤ Fj(bi − bj) und Fj(bi) ≤ Fj(bi + bj)

Definition 10.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) = minFi(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) = minFi(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.

85

Page 86: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

10.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 10.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 33 ‖bi‖22 ≤ 2 · ‖bi+1‖22,

also:

‖bi+1‖2 ≥√

12 · ‖bi‖2

Beweis (zu Satz 10.2.3). Nach Definition gilt

a) Fj(bi) ≤ Fj(bi ± bj) fur 1 ≤ j < i ≤ n und

b) Fi(bi) = minFi(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)

= minFi

(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 10.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 34:

‖b1‖2 ≤(

43

)n−12 · λ1,`2

86

Page 87: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. Sei b =∑n

i=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 10.2.3)

= ‖b1‖ · 2−n+1 (wegen F1(bi) = ‖bi‖ und b1 = b1)

Wegen λ1,‖·‖ = ‖b‖ folgt die Behauptung.

10.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 51 und folgende) bewiesen haben. Es gilt fur HKZ-reduzierte Basen zur Norm ‖·‖:

Satz 10.2.5 (Lovasz, Scarf 1992)Sei b1, . . . , bn eine HKZ-reduzierte Basis zu ‖·‖ des Gitters L. Es gilt fur i = 1, . . . , n:

2i + 1

· ‖bi‖ ≤ λi,‖·‖ ≤i + 1

2· Fi(bi) ≤

i + 12

· ‖bi‖

Zum Vergleich: Fur die `2-Norm wissen wir aus Satz 6.2.3 auf Seite 53, daß fur i = 1, . . . , n gilt:

i + 34

· ‖bi‖ ≤ λi,`2 ≤i + 1

4‖bi‖

Beweis (zu Satz 10.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), (10.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 (10.4) und λ1,‖·‖ ≤ λ2,‖·‖ ≤ · · · ≤ λn,‖·‖:

λi,‖·‖ = ‖hi‖ = maxj≤i

‖hi‖ ≥ Fi(bi) (10.5)

87

Page 88: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Wir wenden aus Beweis zu Satz 10.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 (10.5) die Behauptung:

‖bi‖ = F1(bi) ≤ F1

bi +i−1∑j=1

µi,j · bj

≤ i + 12

· λi,‖·‖ (10.6)

• Wir zeigen fur i = 1, . . . , n:

λi,‖·‖ ≤i + 1

2· Fi(bi) ≤

i + 12

· ‖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 (10.6))

≤ maxj≤i

j+12 · Fj(bj)

(wegen (10.6))

≤ i+12 · F1(bi) (wegen Ft(bt) ≤ F1(bj) fur t < j)

≤ i+12 · ‖bi‖ (wegen F1(bi) = ‖bi‖ ≤ ‖b‖)

10.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 59 und folgende) bewiesen haben. Wir definieren:

Definition 10.2.6 (αβ)Wir setzen:

αβ := sup

‖b1‖Fβ(bβ)

∣∣∣∣ b1, . . . , bn HKZ-reduzierteBasis und ‖·‖ Norm

Satz 10.2.7Fur jede β-reduzierte Basis b1, . . . , bn zu ‖·‖ gilt:

‖b1‖ ≤ αdn−1

β−1eβ · λ1,‖·‖

88

Page 89: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Beweis. Sei hi := Fi(bi). Bestimme Index µ mit minimalem hµ. Nach Satz 10.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 (10.7)

Wir erhalten durch wiederholtes Anwenden von (10.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

(10.8)

gilt, wobei αβ,`2 als Quadrat von (10.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 10.2.8Jede β-reduzierte Basis b1, . . . , bn erfullt fur i = 1, . . . , n

2i + 1

· γ′β− i−β/2

β−1 ≤ ‖bi‖λi,‖·‖

≤ i + 12

· γ′β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 59:√4

i + 3· γ−

i−1β−1

β ≤ ‖bi‖λi,`2

≤√

i + 34

· γn−1β−1β

Der Beweis zu Satz 10.2.8 ist im wesentlichen analog zum Beweis zur `2-Norm. Wichtiger ”Bau-stein“ ist folgendes Analogon zu Lemma 6.4.5 auf Seite 60: Fur jede β-reduzierte Basis b1, . . . , bn

gilt:

‖b1‖ ≤ γ′βm−β/2

β−1 ·M mit M := maxn−β+2≤i≤n

Fi(bi)

89

Page 90: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

10.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) (10.9)L ∩ span(b1, . . . , bi) ) L(b1, . . . , bi) (10.10)

Wegen 10.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(10.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 10.3.1Obige Konstruktion liefert eine HKZ-reduzierte Basis b1, . . . , bn des Gitters L.

Beweis. Nachrechnen!

10.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

90

Page 91: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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β (10.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 (10.11) scharfer als Satz 10.2.8, weil γ′β = Θ(γ2

β

). Fur

große Blockweiten β ≈ n ist Satz 10.2.8 scharfer. Fur β = n sind die Schranken fur HKZ-reduzierteBasen zu ‖·‖ um den Faktor

√n besser als die Schranken (10.11).

10.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.

10.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

)∣∣∣∣∣ (10.12)

und mit nextFt(ut, u) die nachste, ganzzahlige Nullstelle von (10.12) nach ut. Falls S‖·‖ ein Polytop

ist, z.B. fur die 1- und sup-Norm, kann Ft durch lineare Optimierung bestimmt werden.

10.5.2 Gauß-ENUM-Algorithmus fur beliebige Norm

Betrachten wir Schritt 2 des Algorithmus’ 10.5.1. Gegeben sind b1, . . . , bn sowie u1, . . . , un undcmin1 . 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)∣∣

91

Page 92: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Algorithmus 10.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‖·‖( cmin

1 ) + z])

det L

=volt−1

([w + span

(L)]∩ S‖·‖( cmin

1 ))

detL

92

Page 93: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 70):

Lemma 10.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 ))

det L,

wobei y + span(

L)

= b + span(

L).

Wir erhalten analog zu Satz ??:

Satz 10.5.2Angenommen, (µi,j : 1 ≤ j < i ≤ n) ist gleichverteilt in [0, 1[(

n2). Dann gilt in Algorithmus 10.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’ 10.5.1, indem wir Schritt 2 ersetzen durch:

IFvolt−1

([y + span

(L)]∩ S‖·‖( cmin

1 ))

detL≥ 2−p

93

Page 94: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

94

Page 95: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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, 1poly(`(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

96

Page 97: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

• 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, 1n :n∑

i=1

aixi = b

3. 0, 1-Integer-Programming:

0, 1-IP :=

(m,n,A, b)∣∣∣ A ∈ Zm×n, b ∈ Zm,∃x ∈ 0, 1n : Ax ≤ b

97

Page 98: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

4. Schwache Zerlegung:(n, a1, . . . , an) ∈ Nn+1

∣∣∣∣∣ ∃ (x1, . . . , xn) ∈ 0,±1n \ 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

n2 Mn

)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 + log2 M gilt:

`(x) = O(n2(log n + log M

)= 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:

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.

98

Page 99: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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.

99

Page 100: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

.

100

Page 101: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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 :=∑n

i=1 |ui|

Die `2-Norm zum Standard-Skalarprodukt ist: ‖ (u1, . . . , un) ‖2 :=√〈u, u〉 =

(∑ni=1 u2

i

) 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.

102

Page 103: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

Algorithmenverzeichnis

1.4.1 zur Langenreduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.4.2 zur paarweise Reduktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.2.1 Gauß-Reduktionsverfahren fur die Euklidische Norm . . . . . . . . . . . . . . . . 29

3.2.2 Gauß-Reduktionsverfahren fur beliebige Norm . . . . . . . . . . . . . . . . . . . 31

4.2.1 zur LLL-Reduktion in Z-Arithmetik . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.3.1 LLL-Reduktion von ganzzahligen Erzeugendensystemen . . . . . . . . . . . . . . 40

10.5.1 ‖·‖-ENUM: kurzester Gittervektor (vollstandige Aufzahlung) . . . . . . . . . . . 92

103

Page 104: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

104

Page 105: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

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.

105

Page 106: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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.

[CK09] H. Cohn and A. Kumar, Optimality and Uniqueness of the Leech Lattice among Lattices,Annals of Mathematics 170 (3), pp. 1003 – 1050, 2009.

[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 imSpringer-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.

[DKRS03] I. Dinur, G. Kindler, R.Raz, S.Safra, Approximating CVP to within polynomial factorsis NP-hard, Combinatorica 23 (2), pp. 205–243, 2003.

[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.

106

Page 107: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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.

[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-Verlarg, pp. 257–278, 2010, final version to bepublished.

[HS07] G. Hanrot and D. Stehle, Improved Analysis of Kannan’s Shortest Lattice Vector Al-gorithm (Extended Abstract), Proc. CRYPTO 2007, LNCS 4622, Springer-Verlarg, pp.170–186, 2007.

[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.

107

Page 108: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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. Couranton his 60th Birthday Januar 8, 1948“, Interscience Publisher, New York, Seiten 187–204,1948.

[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.

[Ko04] H. Koy, Primal/duale Segmentreduktion von Gitterbasen, Vortrag 7. Mai 2004,//www.mi.informatik.uni-frankfurt.de/research/papers.html

[KZ1872] A. Korkine und G. Zolotareff, Sur les formes quadratique positive quaternaires, Mathe-matische Annalen, Band 5, Seiten 366-389, 1872.

108

Page 109: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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

[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.

[Mar03] J. Martinet, Perfect Lattices in Euclidean Spaces. Springer-Verlag 2003.

[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].

109

Page 110: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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,

[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

110

Page 111: Vorlesungen von Prof. Dr. C.P. Schnorr - math.uni-frankfurt.dedmst/teaching/SS2019/gitter.pdf · Probleme der Linearen Algebra werden durch Gitter diskretisiert. Dabei geht es insbesondere

[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.

[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.

111