Skript zur Vorlesung Komplexitätstheorie im SS 1996
Skript zur Vorlesung Komplexitätstheorie im SS 1996
Skript zur Vorlesung Komplexitätstheorie im SS 1996
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
6 CONP 63<br />
Satz 6.3 (Fermat) Sei p eine beliebige ungerade Zahl ∈ N.<br />
p ist pr<strong>im</strong> ⇔<br />
∃r, 1 < r < p mit<br />
1. r p−1 = 1 mod p<br />
2. r p−1<br />
q = 1 mod p für alle Pr<strong>im</strong>zahlen q, die p − 1 teilen<br />
Theorem 6.2 (Pratt) PRIMES ∈ NP ∩ coNP.<br />
Beweis: Zu zeigen bleibt: PRIMES ∈ NP.<br />
Mit dem Satz von Fermat (Satz 6.3) können wir ein Zertifikat raten:<br />
Schritt 1: Rate r und teste, ob r p−1 = 1 mod p.<br />
Schritt 2: Rate q1, . . . , qk, Pr<strong>im</strong>faktoren von p−1. Teste, ob q1q2 . . . qk = p−1.<br />
Teste für alle i = 1, . . . , k, ob qi pr<strong>im</strong>. Das heißt, das Zertifikat wird rekursiv<br />
aufgebaut: C(p) = (r; q1, C(q1), q2, C(q2), . . . , qk, C(qk))<br />
Beispiel:<br />
Länge von C(p):<br />
C(67) = (2; 2, C(2), 3, C(3), 11, C(11))<br />
C(11) = (8; 2, C(2), 5, C(5))<br />
|C(p)| ≤ |r| +<br />
C(5) = (3; 2, C(2), 2, C(2))<br />
C(3) = (2, C(2))<br />
C(2) = (1)<br />
k<br />
i=1<br />
(|qi + C(qi)|) + 2k + 2<br />
<br />
Trennzeichen, Klammern<br />
Behauptung: |C(p)| ≤ 5 log 2 p.<br />
Für p = 2 bzw. p = 3 ist die Behauptung klar: |C(2)| = |(1)| = 3<br />
Weiterhin ist |r| ≤ log p, und für die Anzahl k der Teiler von p − 1 gilt<br />
k < log p. Außerdem ist q1 = 2 und qi ≥ 2. Damit ist Πqi ≥ 2 k und<br />
somit k < log p. Da Π k i=1 qi = p − 1, q1 = 2 und |qi| ≤ log qi + 1 gilt, folgt<br />
k<br />
i=1 |qi| ≤ 2 log p und k<br />
i=2 log qi ≤ log p−1<br />
2 .