114
1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut f ¨ ur Theoretische Informatik Boolean circuits: ein alternatives Rechenmodell Simon Bischof, Philipp Christian Loewner KIT – Universit¨ at des Landes Baden-W ¨ urttemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

1 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Institut fur Theoretische Informatik

Boolean circuits: ein alternatives RechenmodellSimon Bischof, Philipp Christian Loewner

KIT – Universitat des Landes Baden-Wurttemberg undnationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Page 2: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

2 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Motivation

Page 3: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Mein erster Boolean Circuit

3 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑥𝟏 𝑥𝟑 𝑥𝟐

¬

∧ ∧

Page 4: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Mein erster Boolean Circuit

3 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑥𝟏 𝑥𝟑 𝑥𝟐

¬

∧ ∧

C(x1, x2, x3) = x1x2 ∨ x2x3

Page 5: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Mein erster Boolean Circuit

3 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑥𝟏 𝑥𝟑 𝑥𝟐

¬

∧ ∧

Eingabeknoten

Ausgabeknoten

C(x1, x2, x3) = x1x2 ∨ x2x3

Page 6: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Mein erster Boolean Circuit

3 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑥𝟏 𝑥𝟑 𝑥𝟐

¬

∧ ∧

1 0

1

0

1 0

1

Auswertung fur x := (x1, x2, x3) = (0,0,1) ergibt C(x) = 1

Page 7: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Eigenschaften

4 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits entsprechen Schaltnetzen, aber nicht Schaltwerken -mussen azyklisch sein

Boolean Circuits sind Boolesche Formeln, wenn jeder Knoten hochstensAusgangsgrad 1 hat.

Page 8: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Benutzung fur Sprachen

5 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Idee: Benutzung zur Erkennung von Wortern

Circuit entscheidet Worter seiner Eingabelange⇒ ein Circuit pro EingabegroßeFolge von Circuits pro Sprache

Folge {Cn}n∈N von Circuits heißt Circuit-Familie.

Dabei hat jeder Circuit Cn die Eingabegroße n

Page 9: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Benutzung fur Sprachen

5 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Idee: Benutzung zur Erkennung von Wortern

Circuit entscheidet Worter seiner Eingabelange⇒ ein Circuit pro EingabegroßeFolge von Circuits pro Sprache

Folge {Cn}n∈N von Circuits heißt Circuit-Familie.

Dabei hat jeder Circuit Cn die Eingabegroße n

Page 10: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel Circuit-Familie

6 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑥𝟏 𝑥𝟑 𝑥𝟐

¬

∧ ∧

𝑥𝟏

𝑥𝟐 𝑥𝟏

¬

. . .

Page 11: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel Circuit-Familie

7 Simon Bischof, Philipp Christian Loewner:Boolean circuits

L := {1n | n ∈N}

Page 12: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Interessante Eigenschaften

8 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits konnen alle Sprachen entscheiden die TMsentscheiden konnenTuringmaschinen konnen Boolean Circuits simulieren

Boolean Circuits sind aber machtiger als TMsbetrachte unare Spracheneindeutiges Wort wn fur jede Wortlange⇒ wn ∈ L kann hart in Cn eincodiert werden⇒ Circuit-Familien konnen unentscheidbare Sprachen entscheidenBeispiel: {1n : Mn akzeptiert 1n}

Page 13: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Interessante Eigenschaften

8 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits konnen alle Sprachen entscheiden die TMsentscheiden konnenTuringmaschinen konnen Boolean Circuits simulierenBoolean Circuits sind aber machtiger als TMs

betrachte unare Spracheneindeutiges Wort wn fur jede Wortlange⇒ wn ∈ L kann hart in Cn eincodiert werden⇒ Circuit-Familien konnen unentscheidbare Sprachen entscheidenBeispiel: {1n : Mn akzeptiert 1n}

Page 14: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Interessante Eigenschaften

8 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits konnen alle Sprachen entscheiden die TMsentscheiden konnenTuringmaschinen konnen Boolean Circuits simulierenBoolean Circuits sind aber machtiger als TMs

betrachte unare Spracheneindeutiges Wort wn fur jede Wortlange

⇒ wn ∈ L kann hart in Cn eincodiert werden⇒ Circuit-Familien konnen unentscheidbare Sprachen entscheidenBeispiel: {1n : Mn akzeptiert 1n}

Page 15: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Interessante Eigenschaften

8 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits konnen alle Sprachen entscheiden die TMsentscheiden konnenTuringmaschinen konnen Boolean Circuits simulierenBoolean Circuits sind aber machtiger als TMs

betrachte unare Spracheneindeutiges Wort wn fur jede Wortlange⇒ wn ∈ L kann hart in Cn eincodiert werden

⇒ Circuit-Familien konnen unentscheidbare Sprachen entscheidenBeispiel: {1n : Mn akzeptiert 1n}

Page 16: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Interessante Eigenschaften

8 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits konnen alle Sprachen entscheiden die TMsentscheiden konnenTuringmaschinen konnen Boolean Circuits simulierenBoolean Circuits sind aber machtiger als TMs

betrachte unare Spracheneindeutiges Wort wn fur jede Wortlange⇒ wn ∈ L kann hart in Cn eincodiert werden⇒ Circuit-Familien konnen unentscheidbare Sprachen entscheidenBeispiel: {1n : Mn akzeptiert 1n}

Page 17: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

9 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Page 18: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

10 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Page 19: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

11 Simon Bischof, Philipp Christian Loewner:Boolean circuits

P/poly und P

Page 20: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Boolean circuits - Große

12 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Große eines einzelnen Circuits Cn: Skalar|Cn| := Anzahl der Knoten in Cn

Große einer Familie {Cn}n∈N: FunktionT (n), wobei |Cn| ≤ T (n) (n ∈N)

Klassifizierung einer Sprache L ⊆ {0,1}+L ∈ SIZE(T (n)), falls eine Circuit-Familie der Große T (n) existiert diegenau L entscheidet

Page 21: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

13 Simon Bischof, Philipp Christian Loewner:Boolean circuits

L := {1n | n ∈N}:

Folgerung: L ∈ SIZE(2n)

Page 22: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

13 Simon Bischof, Philipp Christian Loewner:Boolean circuits

L := {1n | n ∈N}:

Folgerung: L ∈ SIZE(2n)

Page 23: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

14 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Sei n ∈N, f : {0,1}n → {0,1} beliebig.

f lasst sich in konjunktiver Normalform darstellenCircuit dafur hat hochstens n · 2n KnotenFolgerung: ∀L ⊆ {0,1}+ : L ∈ SIZE(n · 2n)

Page 24: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

14 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Sei n ∈N, f : {0,1}n → {0,1} beliebig.f lasst sich in konjunktiver Normalform darstellen

Circuit dafur hat hochstens n · 2n KnotenFolgerung: ∀L ⊆ {0,1}+ : L ∈ SIZE(n · 2n)

Page 25: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

14 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Sei n ∈N, f : {0,1}n → {0,1} beliebig.f lasst sich in konjunktiver Normalform darstellenCircuit dafur hat hochstens n · 2n Knoten

Folgerung: ∀L ⊆ {0,1}+ : L ∈ SIZE(n · 2n)

Page 26: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Anwendung auf vorige Beispiele

14 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Sei n ∈N, f : {0,1}n → {0,1} beliebig.f lasst sich in konjunktiver Normalform darstellenCircuit dafur hat hochstens n · 2n KnotenFolgerung: ∀L ⊆ {0,1}+ : L ∈ SIZE(n · 2n)

Page 27: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse P/poly

15 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bei Turingmaschinen haben wir mit P effizient losbare Sprachenbetrachtet.

Wir untersuchen nun, welche Komplexitatsklassen Boolean Circuits beider Einschrankung auf “kleine“ Circuits liefern.

P/poly :=⋃

c SIZE(nc)

Klasse der durch polynomiell große Familien von Circuitsentscheidbaren SprachenSatz: es gilt P ( P/poly .

Page 28: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse P/poly

15 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bei Turingmaschinen haben wir mit P effizient losbare Sprachenbetrachtet.Wir untersuchen nun, welche Komplexitatsklassen Boolean Circuits beider Einschrankung auf “kleine“ Circuits liefern.

P/poly :=⋃

c SIZE(nc)

Klasse der durch polynomiell große Familien von Circuitsentscheidbaren SprachenSatz: es gilt P ( P/poly .

Page 29: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse P/poly

15 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bei Turingmaschinen haben wir mit P effizient losbare Sprachenbetrachtet.Wir untersuchen nun, welche Komplexitatsklassen Boolean Circuits beider Einschrankung auf “kleine“ Circuits liefern.

P/poly :=⋃

c SIZE(nc)

Klasse der durch polynomiell große Familien von Circuitsentscheidbaren SprachenSatz: es gilt P ( P/poly .

Page 30: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse P/poly

15 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bei Turingmaschinen haben wir mit P effizient losbare Sprachenbetrachtet.Wir untersuchen nun, welche Komplexitatsklassen Boolean Circuits beider Einschrankung auf “kleine“ Circuits liefern.

P/poly :=⋃

c SIZE(nc)

Klasse der durch polynomiell große Familien von Circuitsentscheidbaren Sprachen

Satz: es gilt P ( P/poly .

Page 31: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse P/poly

15 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bei Turingmaschinen haben wir mit P effizient losbare Sprachenbetrachtet.Wir untersuchen nun, welche Komplexitatsklassen Boolean Circuits beider Einschrankung auf “kleine“ Circuits liefern.

P/poly :=⋃

c SIZE(nc)

Klasse der durch polynomiell große Familien von Circuitsentscheidbaren SprachenSatz: es gilt P ( P/poly .

Page 32: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

16 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 1: P 6= P/poly

Erinnerung: L := {1n : Mn akzeptiert 1n} unentscheidbarjede unare Sprache hat Circuit-Familie linearer Große⇒ L ∈ SIZE(O(n))offensichtlich aber L /∈ P

Hinweis: Problem der Unentscheidbarkeit ist eigentlich nur verlagert indie Generierung der Circuit-Familie.Im nachsten Kapitel: Beschrankung auf eine Klasse die gleich P ist.

Page 33: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

17 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

Jede Sprache L ∈ P lasst sich in polynomieller Zeit von einer TM Mentscheiden.

Wie konnen wir das auf Circuits ubertragen?

Probleme:

TM andert BandinhaltTM trifft Entscheidungen basierend auf BandinhaltCircuits konnen ihre Eingabe nicht verandernBetrachtung der Große von Circuits, aber Laufzeit von TMs

Losung: Betrachtung von oblivious TMs

Page 34: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

17 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

Jede Sprache L ∈ P lasst sich in polynomieller Zeit von einer TM Mentscheiden.

Wie konnen wir das auf Circuits ubertragen?

Probleme:

TM andert BandinhaltTM trifft Entscheidungen basierend auf BandinhaltCircuits konnen ihre Eingabe nicht verandernBetrachtung der Große von Circuits, aber Laufzeit von TMs

Losung: Betrachtung von oblivious TMs

Page 35: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

18 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

L ∈ P⇒ ex. TM, die L in polynomieller Zeit entscheidet⇒ ex. oblivious TM, die L in polynomieller Zeit entscheidet⇒ ex. Circuit-Familie polynomieller Große, die L entscheidet

Page 36: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Exkurs: Oblivious TM

19 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Normale TuringmaschinePosition auf Band abhangig von Eingabe und Schrittnummer

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

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

Page 37: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Exkurs: Oblivious TM

19 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Oblivious TuringmaschinePosition auf Band nur abhangig von Eingabelange und Schrittnummer

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

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

Page 38: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

20 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

L ∈ P⇒ ex. TM, die L in polynomieller Zeit entscheidet⇒ ex. oblivious TM, die L in polynomieller Zeit entscheidet⇒ ex. Circuit-Familie polynomieller Große, die L entscheidet

TM M1 existiert mit pol. Laufzeit T (n)erstelle daraus eine oblivious TM M2

⇒ Laufzeit in O(T 2(n))⇒ also insgesamt polynomielle Laufzeit

Page 39: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

20 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

L ∈ P⇒ ex. TM, die L in polynomieller Zeit entscheidet⇒ ex. oblivious TM, die L in polynomieller Zeit entscheidet⇒ ex. Circuit-Familie polynomieller Große, die L entscheidet

Page 40: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

20 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

L ∈ P⇒ ex. TM, die L in polynomieller Zeit entscheidet⇒ ex. oblivious TM, die L in polynomieller Zeit entscheidet⇒ ex. Circuit-Familie polynomieller Große, die L entscheidet

oblivious TM M2 existiert mit pol. Laufzeitfeste Laufzeit pro Eingabegroßeakzeptiert falls im letzten Schritt erreichter Zustand akzeptierend istIdee: Codiere Bandalphabet und Zustandsmenge in Knoten

Page 41: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

20 Simon Bischof, Philipp Christian Loewner:Boolean circuits

𝑧𝑖 =𝑍𝑢𝑠𝑡𝑎𝑛𝑑 𝑛𝑎𝑐ℎ 𝑆𝑐ℎ𝑟𝑖𝑡𝑡 𝑖𝑔𝑒𝑠𝑐ℎ𝑟𝑖𝑒𝑏𝑒𝑛𝑒𝑠 𝑍𝑒𝑖𝑐ℎ𝑒𝑛

z.B. 𝑧1 =𝑞2

1

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

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

Page 42: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

20 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Teil 2: P ⊆ P/poly

L ∈ P⇒ ex. TM, die L in polynomieller Zeit entscheidet⇒ ex. oblivious TM, die L in polynomieller Zeit entscheidet⇒ ex. Circuit-Familie polynomieller Große, die L entscheidet

Idee: Codiere Bandalphabet und Zustandsmenge in Knotenkonstantes Alphabet, konstante Zustandsmenge⇒ Anzahl der Knoten fur beliebige Operationen ist konstantbeschrankt⇒ jeder Berechnungsschritt lasst sich durch einen Teilcircuit konstantbeschrankter Große darstellen⇒ fur polynomielle Anzahl Schritte: Polynomielle Anzahl von Knoten

Page 43: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Begrundung fur P ( P/poly

21 Simon Bischof, Philipp Christian Loewner:Boolean circuits

geschriebenes Zeichen neuer Zustand

Zustand aus 𝑧𝑖−1

Zeichen aus 𝑧𝑗

Schritt i

Page 44: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

22 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Page 45: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

23 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Uniformitat

Page 46: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Motivation zur Uniformitat

24 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Wie konnen wirboolean circuits einschranken um sie auf die Machtigkeit von TMs zubringen?TMs erweitern um sie auf die Machtigkeit von boolean circuits zubringen?

Page 47: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.

Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die FunktionenSIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 48: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die FunktionenSIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 49: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die Funktionen

SIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 50: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die FunktionenSIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 51: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die FunktionenSIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.

Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 52: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-uniform, logspace-uniform

25 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Eine Familie {Cn} von Circuits heißt P-uniform, wenn es einepolynomielle Turingmaschine gibt, die aus der Eingabe 1n dieBeschreibung von Cn berechnet.Durch die Einschrankung auf P-uniforme Circuits wird P/poly zu P .

Eine Circuit-Familie heißt logspace-uniform, wenn die FunktionenSIZE(n) = |Cn|TYPE(n, i) (Typ des i-ten Knoten von Cn)EDGE(n, i , j) (1 falls es eine Kante vom i-ten zum j-ten Knoten von Cn gibt)

im Sinne der gangigen Definition von logspace berechenbar sind.Logspace-Uniformitat ist zusatzlich zu P-Uniformitat keine echteEinschrankung.Eine Sprache L besitzt polynomiell große, logspace-uniforme Circuits⇔ L ∈ P .

Page 53: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Turingmaschinen mit advice strings

26 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Normale TM

0 1 1 0 … 0 1

n

Page 54: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Turingmaschinen mit advice strings

26 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Advice TM fragt Blackbox

0 1 1 0 … 0 1

n

?

Page 55: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Turingmaschinen mit advice strings

26 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Advice TM erhalt advice von Blackbox

0 1 1 0 … 0 1

n

? 1 0 1 0 0 … 0 1 0

a(n)

Page 56: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Turingmaschinen mit advice strings

26 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bemerkungen:1. jede unare Sprache lasst sich mit einem bit advice in linearer Zeit

entscheiden2. P/poly : Sprachen, die mit polynomiellem advice in polynomieller Zeit

entscheidbar sind

Page 57: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

27 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Ein Wort c ist in CKT-SAT, wenn der durch c beschriebene Circuit Ceine erfullende Belegung besitzt.

CKT-SAT∈ NP . (Warum?)CKT-SAT ist auch NP-schwer, also NP-vollstandig.CKT-SAT ∝p 3SAT.

Page 58: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

27 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Ein Wort c ist in CKT-SAT, wenn der durch c beschriebene Circuit Ceine erfullende Belegung besitzt.CKT-SAT∈ NP .

(Warum?)CKT-SAT ist auch NP-schwer, also NP-vollstandig.CKT-SAT ∝p 3SAT.

Page 59: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

27 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Ein Wort c ist in CKT-SAT, wenn der durch c beschriebene Circuit Ceine erfullende Belegung besitzt.CKT-SAT∈ NP . (Warum?)

CKT-SAT ist auch NP-schwer, also NP-vollstandig.CKT-SAT ∝p 3SAT.

Page 60: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

27 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Ein Wort c ist in CKT-SAT, wenn der durch c beschriebene Circuit Ceine erfullende Belegung besitzt.CKT-SAT∈ NP . (Warum?)CKT-SAT ist auch NP-schwer, also NP-vollstandig.

CKT-SAT ∝p 3SAT.

Page 61: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

27 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Ein Wort c ist in CKT-SAT, wenn der durch c beschriebene Circuit Ceine erfullende Belegung besitzt.CKT-SAT∈ NP . (Warum?)CKT-SAT ist auch NP-schwer, also NP-vollstandig.CKT-SAT ∝p 3SAT.

Page 62: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

28 Simon Bischof, Philipp Christian Loewner:Boolean circuits

? Eingabe

TM M

ja / nein

x u

Page 63: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

28 Simon Bischof, Philipp Christian Loewner:Boolean circuits

? Eingabe

TM M

ja / nein

x

Circuit

u

Page 64: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Sprache CKT-SAT

28 Simon Bischof, Philipp Christian Loewner:Boolean circuits

? Eingabe

TM M

ja / nein

x u

Circuit

Eingabe

u

ja / nein

Page 65: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

29 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Neue Ansatze zur Untersuchung von KomplexitatsklassenBessere Beschreibung paralleler Algorithmen

Page 66: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

29 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Neue Ansatze zur Untersuchung von KomplexitatsklassenBessere Beschreibung paralleler Algorithmen

Page 67: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

30 Simon Bischof, Philipp Christian Loewner:Boolean circuits

P/poly und NP

Page 68: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Zur Erinnerung: Polynomielle Hierarchie

31 Simon Bischof, Philipp Christian Loewner:Boolean circuits

(Bild aus Wikipedia)

Page 69: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME4. dies widerspricht dem Zeithierarchie-Theorem

Page 70: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME4. dies widerspricht dem Zeithierarchie-Theorem

Page 71: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME4. dies widerspricht dem Zeithierarchie-Theorem

Page 72: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME4. dies widerspricht dem Zeithierarchie-Theorem

Page 73: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME

4. dies widerspricht dem Zeithierarchie-Theorem

Page 74: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Meyer

32 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls EXPTIME ⊆ P/poly , dann gilt EXPTIME = Σp2.

Folgerung: Falls EXPTIME ⊆ P/poly , dann gilt P 6= NP . Beweis:

1. aus EXPTIME ⊆ P/poly folgt EXPTIME = Σp2

2. ware P = NP , so ware P = Σp2

3. ⇒ P = EXPTIME4. dies widerspricht dem Zeithierarchie-Theorem

Page 75: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Karp-Lipton

33 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls NP ⊆ P/poly , dann gilt PH = Σp2.

d.h. die polynomielle Hierarchie fallt zusammenes wird aber PH ) Σp

2 vermutet⇒ NP * P/poly

⇒ P 6= NP

Page 76: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Karp-Lipton

33 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls NP ⊆ P/poly , dann gilt PH = Σp2.

d.h. die polynomielle Hierarchie fallt zusammen

es wird aber PH ) Σp2 vermutet⇒ NP * P/poly

⇒ P 6= NP

Page 77: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Karp-Lipton

33 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls NP ⊆ P/poly , dann gilt PH = Σp2.

d.h. die polynomielle Hierarchie fallt zusammenes wird aber PH ) Σp

2 vermutet

⇒ NP * P/poly

⇒ P 6= NP

Page 78: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Karp-Lipton

33 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls NP ⊆ P/poly , dann gilt PH = Σp2.

d.h. die polynomielle Hierarchie fallt zusammenes wird aber PH ) Σp

2 vermutet⇒ NP * P/poly

⇒ P 6= NP

Page 79: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Satz von Karp-Lipton

33 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Falls NP ⊆ P/poly , dann gilt PH = Σp2.

d.h. die polynomielle Hierarchie fallt zusammenes wird aber PH ) Σp

2 vermutet⇒ NP * P/poly

⇒ P 6= NP

Page 80: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

schwere Funktionen

34 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Motivation: Bei TMs ist es schwierig, lowerbounds zu beweisen. Wiesieht es bei Boolean Circuits aus?

Page 81: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

schwere Funktionen

34 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Existenz schwerer Funktionen

Fur jedes n > 1 existiert eine Funktion f : {0,1}n → {0,1}, die nichtdurch einen Boolean circuit der Große 2n/(10n) berechenbar ist.(Beweis: siehe Tafel)

Page 82: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

schwere Funktionen

34 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Existenz schwerer Funktionen

Fur jedes n > 1 existiert eine Funktion f : {0,1}n → {0,1}, die nichtdurch einen Boolean circuit der Große 2n/(10n) berechenbar ist.(Beweis: siehe Tafel)

Beschreibt auch nur ein solches f eine Sprache L ∈ NP , so wareP 6= NP !

Page 83: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

schwere Funktionen

34 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Existenz schwerer Funktionen

Fur jedes n > 1 existiert eine Funktion f : {0,1}n → {0,1}, die nichtdurch einen Boolean circuit der Große 2n/(10n) berechenbar ist.(Beweis: siehe Tafel)

Beschreibt auch nur ein solches f eine Sprache L ∈ NP , so wareP 6= NP !

Bisher ist es aber nicht gelungen, das zu finden.

Page 84: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

nonuniform hierachy theorem

35 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In etwa: Haben wir einen großeren Circuit zur Verfugung, dann konnenwir damit auch mehr berechnen.

Es seien T ,T ′ : N→N Funktionen mit2n/n > T ′(n) > 10T (n) > n.Dann gilt SIZE(T (n)) ( SIZE(T ′(n))

Page 85: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

nonuniform hierachy theorem

35 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In etwa: Haben wir einen großeren Circuit zur Verfugung, dann konnenwir damit auch mehr berechnen.

Es seien T ,T ′ : N→N Funktionen mit2n/n > T ′(n) > 10T (n) > n.

Dann gilt SIZE(T (n)) ( SIZE(T ′(n))

Page 86: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

nonuniform hierachy theorem

35 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In etwa: Haben wir einen großeren Circuit zur Verfugung, dann konnenwir damit auch mehr berechnen.

Es seien T ,T ′ : N→N Funktionen mit2n/n > T ′(n) > 10T (n) > n.Dann gilt SIZE(T (n)) ( SIZE(T ′(n))

Page 87: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Weitere Vorgehensweise

36 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition von KomplexitatsklassenEinfuhrung sinnvoller BeschrankungenWozu kann man Circuits denn nun verwenden?

Neue Ansatze zur Untersuchung von KomplexitatsklassenBessere Beschreibung paralleler Algorithmen

Page 88: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

37 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Parallele Algorithmen

Page 89: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Parallele Algorithmen

38 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In diesem Kapitel beschaftigen wir uns mit den folgenden Fragen:Wie definiert man effiziente Parallelalgorithmen?

Welche Beziehung gibt es zur Klasse der effizienten sequenziellenAlgorithmen?Welche Beispiele gibt es fur effizient losbare Sprachen?Was hat das ganze mit Boolean circuits zu tun?

Page 90: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Parallele Algorithmen

38 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In diesem Kapitel beschaftigen wir uns mit den folgenden Fragen:Wie definiert man effiziente Parallelalgorithmen?Welche Beziehung gibt es zur Klasse der effizienten sequenziellenAlgorithmen?

Welche Beispiele gibt es fur effizient losbare Sprachen?Was hat das ganze mit Boolean circuits zu tun?

Page 91: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Parallele Algorithmen

38 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In diesem Kapitel beschaftigen wir uns mit den folgenden Fragen:Wie definiert man effiziente Parallelalgorithmen?Welche Beziehung gibt es zur Klasse der effizienten sequenziellenAlgorithmen?Welche Beispiele gibt es fur effizient losbare Sprachen?

Was hat das ganze mit Boolean circuits zu tun?

Page 92: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Parallele Algorithmen

38 Simon Bischof, Philipp Christian Loewner:Boolean circuits

In diesem Kapitel beschaftigen wir uns mit den folgenden Fragen:Wie definiert man effiziente Parallelalgorithmen?Welche Beziehung gibt es zur Klasse der effizienten sequenziellenAlgorithmen?Welche Beispiele gibt es fur effizient losbare Sprachen?Was hat das ganze mit Boolean circuits zu tun?

Page 93: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Effiziente Parallelalgorithmen

39 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Page 94: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Effiziente Parallelalgorithmen

39 Simon Bischof, Philipp Christian Loewner:Boolean circuits

poly(n)

Page 95: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Effiziente Parallelalgorithmen

39 Simon Bischof, Philipp Christian Loewner:Boolean circuits

poly(n)

Page 96: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Effiziente Parallelalgorithmen

39 Simon Bischof, Philipp Christian Loewner:Boolean circuits

poly(n)

Page 97: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Effiziente Parallelalgorithmen

39 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition: Ein Problem hat einen effizienten Parallelalgorithmus wenneine Eingabe der Große n mit nO(1) Prozessoren in einer Zeit vonlogO(1)(n) gelost werden kann.

Page 98: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiele

40 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Addition zweier Zahlen mit carry lookaheadMultiplikation und Division zweier GanzzahlenMatrixoperationen: Produkt, Rang, Determinante und InverseGraphen: kurzeste Pfade und minimale Spannbaume

Page 99: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel: carry-lookahead-Addition

41 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Bekannt und geliebt aus den TI-Vorlesungen

(Bild aus Wikipedia)

Page 100: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel: carry-lookahead-Addition

41 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Clou hier: Vorberechnung des carry-flags

(Bild aus Wikipedia)

Page 101: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse NC

42 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Fur jedes d ist eine Sprache L genau dann in NCd , wennsie von einer Circuit-Familie {Cn} erkannt wird, wobeiCn eine Große von poly(n) und

eine Tiefe von O(logd n) hat undlogspace-uniform ist

NC :=⋃

i≥1NC i

Vergleich zu P/poly : NC hat starkere Anforderungen an Tiefe undUniformitat

Page 102: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse NC

42 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Fur jedes d ist eine Sprache L genau dann in NCd , wennsie von einer Circuit-Familie {Cn} erkannt wird, wobeiCn eine Große von poly(n) und

eine Tiefe von O(logd n) hat undlogspace-uniform ist

NC :=⋃

i≥1NC i

Vergleich zu P/poly : NC hat starkere Anforderungen an Tiefe undUniformitat

Page 103: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse AC

43 Simon Bischof, Philipp Christian Loewner:Boolean circuits

AC i wird ahnlich zu NC i definiertUnterschied: die UND- bzw. ODER-Gatter durfen eine unbegrenzteAnzahl Eingange habenAC :=

⋃i≥1AC i

Bemerkung: es giltNC i ⊆ AC i ⊆ NC i+1

NC = AC

Page 104: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Die Klasse AC

43 Simon Bischof, Philipp Christian Loewner:Boolean circuits

AC i wird ahnlich zu NC i definiertUnterschied: die UND- bzw. ODER-Gatter durfen eine unbegrenzteAnzahl Eingange habenAC :=

⋃i≥1AC i

Bemerkung: es giltNC i ⊆ AC i ⊆ NC i+1

NC = AC

Page 105: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Zur Bemerkung AC i ⊆ NC i+1

44 Simon Bischof, Philipp Christian Loewner:Boolean circuits

. . .

. . .

. . .

Page 106: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel

45 Simon Bischof, Philipp Christian Loewner:Boolean circuits

PARITY := {x | x hat ungerade Anzahl von 1en}

PARITY ∈ NC1

Begrundung: BinarbaumWurzel des Baumes: AusgangsknotenBlatter: Eingangsknotenlinker / rechter Vorganger: Paritat des linken / rechten Teilbaumeslogarithmische Tiefe des Baumes (klar)

(Wurzel und Blatter: Umkehren der Richtung)

Bemerkung: PARITY /∈ AC0

Page 107: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel

45 Simon Bischof, Philipp Christian Loewner:Boolean circuits

PARITY := {x | x hat ungerade Anzahl von 1en}

PARITY ∈ NC1

Begrundung: BinarbaumWurzel des Baumes: AusgangsknotenBlatter: Eingangsknotenlinker / rechter Vorganger: Paritat des linken / rechten Teilbaumeslogarithmische Tiefe des Baumes (klar)

(Wurzel und Blatter: Umkehren der Richtung)

Bemerkung: PARITY /∈ AC0

Page 108: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Beispiel

45 Simon Bischof, Philipp Christian Loewner:Boolean circuits

PARITY := {x | x hat ungerade Anzahl von 1en}

PARITY ∈ NC1

Begrundung: BinarbaumWurzel des Baumes: AusgangsknotenBlatter: Eingangsknotenlinker / rechter Vorganger: Paritat des linken / rechten Teilbaumeslogarithmische Tiefe des Baumes (klar)

(Wurzel und Blatter: Umkehren der Richtung)

Bemerkung: PARITY /∈ AC0

Page 109: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-Vollstandigkeit

46 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Analog zur NP-Vollstandigkeit, aber logspace-Transformation stattpolynomieller Transformation

Beobachtungen: Sei L P-VollstandigL ∈ NC gdw. P = NCL ∈ LOGSPACE gdw. P = LOGSPACE

Beispiel: CIRCUIT-EVAL

Page 110: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-Vollstandigkeit

46 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Analog zur NP-Vollstandigkeit, aber logspace-Transformation stattpolynomieller Transformation

Beobachtungen: Sei L P-VollstandigL ∈ NC gdw. P = NCL ∈ LOGSPACE gdw. P = LOGSPACE

Beispiel: CIRCUIT-EVAL

Page 111: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

P-Vollstandigkeit

46 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Analog zur NP-Vollstandigkeit, aber logspace-Transformation stattpolynomieller Transformation

Beobachtungen: Sei L P-VollstandigL ∈ NC gdw. P = NCL ∈ LOGSPACE gdw. P = LOGSPACE

Beispiel: CIRCUIT-EVAL

Page 112: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

PH und EXPTIME

47 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Definition: Eine Circuit-Familie {Cn}n≥1 heißt DC-uniform wenn dieFunktionen SIZE, TYPE und EDGE in polynomieller Zeit berechenbarsind.

L ∈ PH genau dann wenn L durch eine DC-uniforme Circuit-Familieerkannt wird, wobei

1. die Große ist 2nO(1)und die Tiefe konstant

2. die UND- bzw. ODER-Gatter unbegrenzte Anzahl Eingange habenkonnen

3. alle NOT-Gatter am Eingang des Circuits sind

Wird die Forderung nach konstanter Tiefe weggelassen, erhalten wirEXPTIME.

Page 113: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

Fazit

48 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Boolean Circuits

sind interessant (hoffentlich)haben tatsachlich sinnvolle Anwendungsgebietebieten eine neue Perspektive auf das P 6= NP-Problemsind aber hinsichtlich der Losung des Problems nicht wenigerkompliziert

Page 114: Boolean circuits: ein alternatives Rechenmodell€¦ · 1 Simon Bischof, Philipp Christian Loewner:Boolean circuits Institut fur Theoretische Informatik¨ Boolean circuits: ein alternatives

49 Simon Bischof, Philipp Christian Loewner:Boolean circuits

Danke fur eure Aufmerksamkeit!