Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/06 26.1.

Slides:



Advertisements
Ähnliche Präsentationen
Christian Scheideler SS 2009
Advertisements

Christian Scheideler SS 2009
Polynomial Root Isolation
Prof. Dr. W. Conen 15. November 2004
Verifizieren versus Berechnen
Algorithmen und Komplexität
Algorithmentheorie 04 –Hashing
Kapitel 5 Stetigkeit.
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Effiziente Algorithmen
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Effiziente Algorithmen
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Information und Kommunikation
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
 Präsentation transkript:

Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/

Approximative Polynome Wenn der Quantenalgorithmus mit T Fragen Fehler 1/3 hat, dann gibt es ein Polynom p mit Grad 2T mit p(x) 2 [0,1/3] für f(x)=0 und p(x) 2 [2/3,1] für f(x)=1 adeg(f) sei der minimale Grad eines solchen Polynoms Wir erhalten: Q(f) ¸ adeg(f)/2 Beispiel OR von 2 Bits: x 1 /3+x 2 /3+1/3, somit adeg(OR 2 )=1

Symmetrisierung Sei f eine symmetrische Funktion, also f konstant auf allen x mit |x|=k, d.h. es existieren Funktionswerte f 0,…,f n Betrachte Polynom p mit einer reellen Variablen, das p(k) 2 [0,1/3] für f k =0 und p(k) 2 [2/3,1] für f k =1 Aus einem Polynom für f erhalten wir ein solches Polynom gleichen Grades

Approximative Polynome uns symmetrische Funktionen Sei (f)=min {|2k-n+1|: f k f k+1 } für symm. f Paturi: adeg(f)= ( (n (n- (f))) 1/2 ) Beispiel: OR: (OR)=n-1, also adeg: Beispiel MAJORITY:

Charakterisierung Q(f) für symmetrische Funktionen Paturi gibt uns Q(f) ¸ ((n (n- (f))) 1/2 Es gilt auch: Q(f) · O((n (n- (f))) 1/2 Beweis: Beobachtung: Es reicht, zu wissen: |x|, wenn |x| · (n- (f))/2 |x|, wenn |x| ¸ (n+ (f))/2 Ansonsten: f ist konstant zwischen (n- (f))/2 und |x| ¸ (n+ (f))/2

Charakterisierung Q(f) für symmetrische Funktionen Beobachtung: Es reicht, zu wissen: |x|, wenn |x| · (n- (f))/2 |x|, wenn |x| ¸ (n+ (f))/2 Ansonsten: f ist konstant zwischen (n- (f))/2 und |x| ¸ (n+ (f))/2 Suche i mit x_i=1 bis (n- (f))/2 viele gefunden oder keine mehr vorhanden Suche i mit x_i=0 bis (n- (f))/2 viele gefunden oder keine mehr vorhanden Entscheide Laufzeit: Finde t markierte Positionen: O( ) Daher:

Wie gut sind untere Schranken mit der Polynom Methode? Behauptung: adeg(f) und Q(f) sind polynomiell verwandt für totale Funktionen f Für partielle Funktionen ist dies falsch! Plan: Zeigen: Untere Schranken für adeg via block- sensitivity bs(f) Zeigen obere Schranken für D(f) via bs(f) Weiteres Korollar: D(f) und Q(f) polynomiell verwandt!

(Block)-Sensitivität s(f,x) sei die Anzahl von Bits, die man in x flippen kann, so dass für das erhaltene x gilt f(x) f(x) Beispiel: s(OR,0 n )=n s(f)=max x (s(f,x) ) Blocksensitivität: Erlaube ganze Blöcke zu flippen

(Block)-Sensitivität Blocksensitivität: Erlaube ganze Blöcke zu flippen bs(f,x): max k, so dass folgendes möglich: Bilde k disjunkte Mengen von Variablen (Blöcke) Flippe alle Variablen in Block i ) f-Wert wechselt bs(f) is Maximum über alle x von bs(f,x)

Unterschied s(f) und bs(f) Es gibt eine Boolesche Funktion f mit s(f)=n 1/2 und bs(f)=n/2 Beweis: f: n 1/2 Blöcke von n 1/2 Variablen f(x)=1, wenn es einen Block gibt mit 2 Einsen nacheinander und sonst Nullen bs(f) ¸ n/2: 0 n ist sensitive Eingabe s(f) · n 1/2 : Übung

Wir zeigen: Q(f) ¸ ( bs 1/2 (f) ) Beispiel: bs(OR)=s(OR)=n Dann: D(f) · C 2 (f) C(f): Zertifikatskomplexität Und C(f) · s(f) bs(f) Damit: Q(f) ¸ D 1/8 (f)

Die untere Schranke via bs(f) FAKT [Ehlich und Zeller]: Sei p ein Polynom mit b 1 · p(i) · b 2 für alle ganzen Zahlen 0 · i · n Es gelte |p(x)| ¸ c für ein reelles 0 · x · N Dann ist deg(p) ¸ Theorem: adeg(f) ¸ (bs(f)/4) 1/2

Die untere Schranke via bs(f) Sei x eine Eingabe mit bs(f,x)=bs(f) ObdA nehmen wir an, x=0 k, bs(f)=k Betrachte Symmetrisierung eines Polynoms mit minimalem Grad, erhalten univariates p 0 · (0) · 1/3 1 ¸ p(1) ¸ 2/3 1 ¸ p(i) ¸ 0 für i=2,…,n Daher: p(z) ¸ 1/3 für z aus [0,1] Dann gilt: deg(p) ¸

Die untere Schranke via bs(f) FAKT [Ehlich und Zeller]: Sei p ein Polynom mit b 1 (x) · p(i) · b 2 für alle ganzen Zahlen 0 · i · n Es gelte |p(x)| ¸ c für ein reelles 0 · x · N Dann ist deg(p) ¸ Folgt aus Markovs Theorem: Sei p ein univariates Polynom vom Grad d, so dass für alle a · x · b gilt: c · p(x) · e. Dann gilt |p(x)| · d 2 (e-c)/(b-a) Beweis: Es gilt: für alle reellen x aus [0,n]: b 1 -c/2 · p(x) · b 2 +c/2 Markov: c · deg 2 (p)(c+b 2 -b 1 )/n Damit: deg 2 (p) ¸

Die obere Schranke durch bs(f) Wollen zeigen: D(f) · bs 4 (f) Dazu betrachten wir die Zertifikatskomplexität C(f) Wir zeigen D(f) · C 2 (f) Und C(f) · bs 2 (f)

Zertifikate Definition Ein Term der Form c=(x i(1) =b 1 Æ … Æ x i(k) =b i(k) ) heisse ein a-Zertifikat für eine Boolesche Funktion f, wenn für alle Eingaben x 2 {0,1} n die mit dem Term übereinstimmen, f(x)=a gilt Eingabe x hat Zertifikat c, wenn c auf x wahr k sei die Länge des Zertifikates f habe Zertifikatskomplexität k, wenn es für alle Eingaben ein Zertifikat der Länge k gibt, und für kleinere k dies nicht gilt Dann sei C(f)=k

Zertifikate Definition f habe a-Zertifikatskomplexität k, wenn es für alle Eingaben mit f(x)=a ein Zertifikat der Länge k gibt, und für kleinere k dies nicht gilt Dann sei C a (f)=k

Beispiel C 1 (OR)=1, Verwende Zertifikate x i =1 C 0 (OR)=n Wenn nicht alle Bits auf 0 gesetzt sind, ist OR(x)=1 möglich C(OR)=n

C(f) vs. D(f) Theorem D(f) · C 0 (f) C 1 (f) D(f) gross: wenn C 0 (f) klein, dann ist C 1 (f) gross Beispiel: AND(OR(…),OR(…),…,OR(…)) Formel Tiefe 2 mit Grad n 1/2

Beispiel C 0 (f),C 1 (f)=n 1/2 C 0 : fix. OR C 1 : fix. 1 per AND Aber: D(f)=n Also Theorem optimal

Beweis Beobachtung: Jedes Paar von 1-Zertifikat und 0-Zertifikat hat gemeinsame Variable Denn sonst gibt es eine Eingabe, die mit beiden konsistent! Algorithmus: Exponiere 1-Zertifikat Kürze alle 0-Zertifikate Bis nicht mehr möglich

Der Algorithmus C 1 (f)=k, C 0 (f)=l K:Menge von 1-Zertifikaten der Länge k, die 1-Eingaben überdeckt L:Menge von 0-Eingaben … Wähle c aus K, Frage alle Variablen in c c erfüllt: Akzeptiere Sonst: Entferne c aus K Für alle d aus L: wenn d noch konsistent mit gelesenen Var., dann entferne aus d bekannte Variablen, sonst entferne d Wenn L leer ist: akzeptiere Wenn L nur noch triviale Zertifikate enthält: Verwerfe Wenn K leer ist: verwerfe

Analyse Korrektheit: Für alle Eingaben x gibt es ein 0-Zert. oder ein 1-Zert. f(x)=0, dann wird 0-Zert. nie entfernt, also wird verworfen f(x)=1, mit 1-Zert. c: Entweder c wird gefragt, dann wird akz. Oder: Es werden andere c aus K gefragt, bis L leer Es wird akzeptiert

Laufzeit Wenn c aus K gefragt wird, werden alle d aus L entweder gestrichen, oder um 1 Variable gekürzt Kosten des Fragens von c: k Anzahl der Runden, bis L leer: höchstens l In allen anderen Fällen wird vorher entschieden Gesamt: D(f) · kl=C 0 (f)C 1 (f)

Zusammengefasst C(f) · D(f) · C 2 (f) C 1 (f),C 0 (f) · D(f) · C 0 (f)C 1 (f) Nichtdeterminismus entspricht C 1

C(f) vs. bs(f) Theorem C(f) · bs(f) s(f) Beobachtung: Wenn (für f und x) B ein minimaler Block von Variablen ist, den zu flippen den Funktionswert ändert, dann ist s(f) ¸ |B|. Denn: Sei x wie x mit B geflippt Dann ändert auf x jede Variable in B den Funktionswert, d.h. s(f,x) ¸ |B|

Beweis Idee: für jedes x konstruiere ein kurzes Zertifikat Wenn für alle x ein Zertifikat der Länge s(f)bs(f,x) existiert, gilt C(f) · s(f) bs(f) Sei x gegeben, B 1,..., B k Blöcke wie in Def mit k=bs(f,x) Blöcke seien minimal, d.h. |B i | · s(f) Setze alle Variablen in [ i B i wie in x Klar: Monom c mit s(f)bs(f,x) Variablen

Beweis Ist c ein korrektes Zertifikat? Sei x eine Eingabe mit f(x) f(x) und x konsistent mit c Sei B k+1 die Menge der Variablen, wo x, x unterschiedlich Klar: auf x ist f für B k+1 sensitiv Aber B k+1 ist disjunkt von den Variablen in c, denn dort sind x und x gleich! Also ist bs(x)>k, Widerspruch!