Theoretische Informatik II

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Theoretische Informatik II"

Transkript

1 Theoretische Informatik II Einheit 6.4 Grenzen überwinden 1. Approximation von Optimierungsproblemen 2. Probabilistische Algorithmen 3. Anwendungen in der Kryptographie

2 Wie kann man unlösbare Probleme angehen? Viele Probleme sind nachweislich schlecht lösbar Terminierung, Korrektheit, Äquivalenz von Programmen (unentscheidbar) Gültigkeit prädikatenlogischer Formeln (unentscheidbar) SAT Solver / Hardwareverifikation (N P- oder P SP ACE-vollständig) Strategische Spiele / Marktanalysen (PSPACE-vollständig) Scheduling, Navigation, Verteilungsprobleme (NP-vollständig) Erzeugung kryptographischer Schlüssel (NP bzw. O(n 6 )) THEORETISCHE INFORMATIK II 6.4: 1 GRENZEN ÜBERWINDEN

3 Wie kann man unlösbare Probleme angehen? Viele Probleme sind nachweislich schlecht lösbar Terminierung, Korrektheit, Äquivalenz von Programmen (unentscheidbar) Gültigkeit prädikatenlogischer Formeln (unentscheidbar) SAT Solver / Hardwareverifikation (N P- oder P SP ACE-vollständig) Strategische Spiele / Marktanalysen (PSPACE-vollständig) Scheduling, Navigation, Verteilungsprobleme (NP-vollständig) Erzeugung kryptographischer Schlüssel (NP bzw. O(n 6 )) Lösungen werden dennoch gebraucht Die Probleme tauchen in der Praxis auf Aufgeben ist keine akzeptable Antwort THEORETISCHE INFORMATIK II 6.4: 1 GRENZEN ÜBERWINDEN

4 Wie kann man unlösbare Probleme angehen? Viele Probleme sind nachweislich schlecht lösbar Terminierung, Korrektheit, Äquivalenz von Programmen (unentscheidbar) Gültigkeit prädikatenlogischer Formeln (unentscheidbar) SAT Solver / Hardwareverifikation (N P- oder P SP ACE-vollständig) Strategische Spiele / Marktanalysen (PSPACE-vollständig) Scheduling, Navigation, Verteilungsprobleme (NP-vollständig) Erzeugung kryptographischer Schlüssel (NP bzw. O(n 6 )) Lösungen werden dennoch gebraucht Die Probleme tauchen in der Praxis auf Aufgeben ist keine akzeptable Antwort Versuche die Unlösbarkeiten zu umgehen Suche Alternativen zur perfekten Lösung, die es nicht geben kann Entwickle Verfahren zur Konstruktion suboptimaler Lösungen Untersuche die Qualität dieser Lösungen relativ zum Optimum Suche nach neuen Lösungsmöglichkeiten liefert tieferes Verständnis THEORETISCHE INFORMATIK II 6.4: 1 GRENZEN ÜBERWINDEN

5 Unkonventionelle Lösung unlösbarer Probleme Heuristische Lösung unentscheidbarer Probleme Verzicht auf Vollständigkeit zugunsten einer Entscheidung Algorithmus versucht Standardlösungsweg und gibt auf, wenn dieser nicht zum Erfolg führt (Künstliche Intelligenz, Theorembeweisen, Verifikation) Algorithmus verwendet Selbstorganisation statt vorgefertigter Lösung (Lernverfahren, Neuronale Netze, genetische Algorithmen,... ) THEORETISCHE INFORMATIK II 6.4: 2 GRENZEN ÜBERWINDEN

6 Unkonventionelle Lösung unlösbarer Probleme Heuristische Lösung unentscheidbarer Probleme Verzicht auf Vollständigkeit zugunsten einer Entscheidung Algorithmus versucht Standardlösungsweg und gibt auf, wenn dieser nicht zum Erfolg führt (Künstliche Intelligenz, Theorembeweisen, Verifikation) Algorithmus verwendet Selbstorganisation statt vorgefertigter Lösung (Lernverfahren, Neuronale Netze, genetische Algorithmen,... ) Approximationsverfahren Verzicht auf Optimalität zugunsten einer schnellen Antwort Algorithmus bestimmt Näherungslösung anstelle des Optimums Liefert effiziente Lösung schwerer Optimierungsprobleme THEORETISCHE INFORMATIK II 6.4: 2 GRENZEN ÜBERWINDEN

7 Unkonventionelle Lösung unlösbarer Probleme Heuristische Lösung unentscheidbarer Probleme Verzicht auf Vollständigkeit zugunsten einer Entscheidung Algorithmus versucht Standardlösungsweg und gibt auf, wenn dieser nicht zum Erfolg führt (Künstliche Intelligenz, Theorembeweisen, Verifikation) Algorithmus verwendet Selbstorganisation statt vorgefertigter Lösung (Lernverfahren, Neuronale Netze, genetische Algorithmen,... ) Approximationsverfahren Verzicht auf Optimalität zugunsten einer schnellen Antwort Algorithmus bestimmt Näherungslösung anstelle des Optimums Liefert effiziente Lösung schwerer Optimierungsprobleme Probabilistische Algorithmen Verzicht auf perfekte Korrektheit zugunsten einer schnellen Antwort Algorithmus verwendet Zufallsvariablen bei Bestimung der Lösung Antwort kann mit geringer Fehlerwahrscheinlichkeit auch falsch sein Liefert effiziente Lösung schwerer Entscheidungsprobleme THEORETISCHE INFORMATIK II 6.4: 2 GRENZEN ÜBERWINDEN

8 Approximationsalgorithmen Viele Probleme haben Optimierungsvariante CLIQUE opt : bestimme die größte Clique im Graphen TSP opt : bestimme die kostengünstigste Rundreise BPP opt : bestimme die kleinste Anzahl der nötigen Behälter KP opt : bestimme das geringstmögliche Gewicht für einen festen Nutzen Alle Probleme sindnp-hart THEORETISCHE INFORMATIK II 6.4: 3 GRENZEN ÜBERWINDEN

9 Approximationsalgorithmen Viele Probleme haben Optimierungsvariante CLIQUE opt : bestimme die größte Clique im Graphen TSP opt : bestimme die kostengünstigste Rundreise BPP opt : bestimme die kleinste Anzahl der nötigen Behälter KP opt : bestimme das geringstmögliche Gewicht für einen festen Nutzen Alle Probleme sindnp-hart Approximation umgeht Komplexitätsproblematik Polynomielle Algorithmen können Näherungslösungen bestimmen Die Näherung kann niemals optimal sein (wenn P NP) Ziel ist, so nahe wie möglich an das Optimum heranzukommen THEORETISCHE INFORMATIK II 6.4: 3 GRENZEN ÜBERWINDEN

10 Approximationsalgorithmen Viele Probleme haben Optimierungsvariante CLIQUE opt : bestimme die größte Clique im Graphen TSP opt : bestimme die kostengünstigste Rundreise BPP opt : bestimme die kleinste Anzahl der nötigen Behälter KP opt : bestimme das geringstmögliche Gewicht für einen festen Nutzen Alle Probleme sindnp-hart Approximation umgeht Komplexitätsproblematik Polynomielle Algorithmen können Näherungslösungen bestimmen Die Näherung kann niemals optimal sein (wenn P NP) Ziel ist, so nahe wie möglich an das Optimum heranzukommen Wie gut können Näherungslösungen sein? Vergleiche Approximation mit bestmöglicher Lösung Wie gut ist das Ergebnis eines konkreten Approximationsalgorithmus? Was ist das günstigste Ergebnis, das überhaupt erreichbar ist THEORETISCHE INFORMATIK II 6.4: 3 GRENZEN ÜBERWINDEN

11 Approximationslösung für Travelling Salesman Anwendbar für TSP mit Dreiecksungleichung Direkte Verbindung sind kürzer als Umwege: i,j,k. c i,j c i,k +c k,j TSP ={c 12,..,c n 1,n,B i,j,k. c i,j c i,k +c k,j π : {1..n} {1..n}. π bijektiv n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} THEORETISCHE INFORMATIK II 6.4: 4 GRENZEN ÜBERWINDEN

12 Approximationslösung für Travelling Salesman Anwendbar für TSP mit Dreiecksungleichung Direkte Verbindung sind kürzer als Umwege: i,j,k. c i,j c i,k +c k,j TSP ={c 12,..,c n 1,n,B i,j,k. c i,j c i,k +c k,j π : {1..n} {1..n}. π bijektiv n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Approximationsalgorithmus Zuw = c 12,...,c n 1,n,B konstruiere vollständigen Graphen G=(V,E) mit V = {v 1,..,v n } und Gewichten c i,j für {v i,v j } E Konstruiere minimal spannenden Baum T = (V,E T ) Durchlaufe T so, daß jede Kante genau zweimal benutzt wird Verkürze den entstandenen Rundweg so, daß von einem Knoten zum nächsten noch nicht angesteuerten Knoten gesprungen wird THEORETISCHE INFORMATIK II 6.4: 4 GRENZEN ÜBERWINDEN

13 Approximationslösung für Travelling Salesman Anwendbar für TSP mit Dreiecksungleichung Direkte Verbindung sind kürzer als Umwege: i,j,k. c i,j c i,k +c k,j TSP ={c 12,..,c n 1,n,B i,j,k. c i,j c i,k +c k,j π : {1..n} {1..n}. π bijektiv n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Approximationsalgorithmus Zuw = c 12,...,c n 1,n,B konstruiere vollständigen Graphen G=(V,E) mit V = {v 1,..,v n } und Gewichten c i,j für {v i,v j } E Konstruiere minimal spannenden Baum T = (V,E T ) Durchlaufe T so, daß jede Kante genau zweimal benutzt wird Verkürze den entstandenen Rundweg so, daß von einem Knoten zum nächsten noch nicht angesteuerten Knoten gesprungen wird Erzeugte Lösung maximal doppelt so teuer wie nötig Gewicht minimal spannender Bäume geringer als optimale Rundreise Wegen Dreiecksungleichung steigen bei Verkürzung die Kosten nicht THEORETISCHE INFORMATIK II 6.4: 4 GRENZEN ÜBERWINDEN

14 Approximationslösung für Travelling Salesman Anwendbar für TSP mit Dreiecksungleichung Direkte Verbindung sind kürzer als Umwege: i,j,k. c i,j c i,k +c k,j TSP ={c 12,..,c n 1,n,B i,j,k. c i,j c i,k +c k,j π : {1..n} {1..n}. π bijektiv n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Approximationsalgorithmus Zuw = c 12,...,c n 1,n,B konstruiere vollständigen Graphen G=(V,E) mit V = {v 1,..,v n } und Gewichten c i,j für {v i,v j } E Konstruiere minimal spannenden Baum T = (V,E T ) Durchlaufe T so, daß jede Kante genau zweimal benutzt wird Verkürze den entstandenen Rundweg so, daß von einem Knoten zum nächsten noch nicht angesteuerten Knoten gesprungen wird Erzeugte Lösung maximal doppelt so teuer wie nötig Gewicht minimal spannender Bäume geringer als optimale Rundreise Wegen Dreiecksungleichung steigen bei Verkürzung die Kosten nicht Laufzeit des Algorithmus ist O(n 2 ) Kruskal Algorithmus (Einheit 6.1) hat Laufzeit O( V + E log E ) THEORETISCHE INFORMATIK II 6.4: 4 GRENZEN ÜBERWINDEN

15 Wie gut sind Approximationslösungen? Beschreibung von Optimierungsproblemen Betrachte zugehöriges Entscheidungsproblem L als Menge aller akzeptablen Lösungen (x,y) für eine Eingabe x z.b. CLIQUE :={(G,k) G hat Clique der Größe k} Bei Eingabe G sucht Optimierung größtes k mit (G,k) CLIQUE Bestimme den Wert W(x,y) einer Lösung (x,y) L OPT L (x): Wert einer optimalen Lösung für Eingabe x THEORETISCHE INFORMATIK II 6.4: 5 GRENZEN ÜBERWINDEN

16 Wie gut sind Approximationslösungen? Beschreibung von Optimierungsproblemen Betrachte zugehöriges Entscheidungsproblem L als Menge aller akzeptablen Lösungen (x,y) für eine Eingabe x z.b. CLIQUE :={(G,k) G hat Clique der Größe k} Bei Eingabe G sucht Optimierung größtes k mit (G,k) CLIQUE Bestimme den Wert W(x,y) einer Lösung (x,y) L OPT L (x): Wert einer optimalen Lösung für Eingabe x Güte von Approximationsalgorithmen AlgorithmusAberechne für jede Eingabe x ein y=a(x) mit (x,y) L R A (x): Güte des Algorithmus A bei Eingabe x (R A (x) 1 gilt immer) R A (x) max {OPT L (x)/w(x,a(x)), W(x,A(x))/OPT L (x)} THEORETISCHE INFORMATIK II 6.4: 5 GRENZEN ÜBERWINDEN

17 Wie gut sind Approximationslösungen? Beschreibung von Optimierungsproblemen Betrachte zugehöriges Entscheidungsproblem L als Menge aller akzeptablen Lösungen (x,y) für eine Eingabe x z.b. CLIQUE :={(G,k) G hat Clique der Größe k} Bei Eingabe G sucht Optimierung größtes k mit (G,k) CLIQUE Bestimme den Wert W(x,y) einer Lösung (x,y) L OPT L (x): Wert einer optimalen Lösung für Eingabe x Güte von Approximationsalgorithmen AlgorithmusAberechne für jede Eingabe x ein y=a(x) mit (x,y) L R A (x): Güte des Algorithmus A bei Eingabe x (R A (x) 1 gilt immer) R A (x) max {OPT L (x)/w(x,a(x)), W(x,A(x))/OPT L (x)} Asymptotische Güte von Approximationen R A = inf{r 1 x.r A (x) r}: asymptotische worst-case Güte THEORETISCHE INFORMATIK II 6.4: 5 GRENZEN ÜBERWINDEN

18 Wie gut sind Approximationslösungen? Beschreibung von Optimierungsproblemen Betrachte zugehöriges Entscheidungsproblem L als Menge aller akzeptablen Lösungen (x,y) für eine Eingabe x z.b. CLIQUE :={(G,k) G hat Clique der Größe k} Bei Eingabe G sucht Optimierung größtes k mit (G,k) CLIQUE Bestimme den Wert W(x,y) einer Lösung (x,y) L OPT L (x): Wert einer optimalen Lösung für Eingabe x Güte von Approximationsalgorithmen AlgorithmusAberechne für jede Eingabe x ein y=a(x) mit (x,y) L R A (x): Güte des Algorithmus A bei Eingabe x (R A (x) 1 gilt immer) R A (x) max {OPT L (x)/w(x,a(x)), W(x,A(x))/OPT L (x)} Asymptotische Güte von Approximationen R A = inf{r 1 x.r A (x) r}: asymptotische worst-case Güte Finde bestmögliche worst-case Güte von Problemen THEORETISCHE INFORMATIK II 6.4: 5 GRENZEN ÜBERWINDEN

19 Positive Ergebnisse TSP: R A =3/2 erreichbar bei Dreiecksungleichung Verkürzter Durchlauf minimal spannender Bäume liefert GüteR A 2 Mit lokalen Optimierungen kommt man auf R A 3/2 (aufwendige Analyse) THEORETISCHE INFORMATIK II 6.4: 6 GRENZEN ÜBERWINDEN

20 Positive Ergebnisse TSP: R A =3/2 erreichbar bei Dreiecksungleichung Verkürzter Durchlauf minimal spannender Bäume liefert GüteR A 2 Mit lokalen Optimierungen kommt man auf R A 3/2 (aufwendige Analyse) Knapsack: beliebig kleiner multiplikativer Fehler Für jedes ǫ gibt es einen Approximationsalgorithmus A mit Laufzeit O(n 3 ǫ 1 ) und GüteR A (x) 1+ǫ für alle x (ohne Beweis) THEORETISCHE INFORMATIK II 6.4: 6 GRENZEN ÜBERWINDEN

21 Positive Ergebnisse TSP: R A =3/2 erreichbar bei Dreiecksungleichung Verkürzter Durchlauf minimal spannender Bäume liefert GüteR A 2 Mit lokalen Optimierungen kommt man auf R A 3/2 (aufwendige Analyse) Knapsack: beliebig kleiner multiplikativer Fehler Für jedes ǫ gibt es einen Approximationsalgorithmus A mit Laufzeit O(n 3 ǫ 1 ) und GüteR A (x) 1+ǫ für alle x Binpacking: Asymptotische Güte 11/9 erreichbar First-Fit Decreasing: Sortiere Objekte in absteigender Reihenfolge und packe sie jeweils in erste freie Kiste, in der genügend Platz ist (ohne Beweis) Es giltw(x, FFD(x)) = 11/9 OPT BPP (x)+4 für allex (ohne Beweis) also R A = 11/9 THEORETISCHE INFORMATIK II 6.4: 6 GRENZEN ÜBERWINDEN

22 Positive Ergebnisse TSP: R A =3/2 erreichbar bei Dreiecksungleichung Verkürzter Durchlauf minimal spannender Bäume liefert GüteR A 2 Mit lokalen Optimierungen kommt man auf R A 3/2 (aufwendige Analyse) Knapsack: beliebig kleiner multiplikativer Fehler Für jedes ǫ gibt es einen Approximationsalgorithmus A mit Laufzeit O(n 3 ǫ 1 ) und GüteR A (x) 1+ǫ für alle x Binpacking: Asymptotische Güte 11/9 erreichbar First-Fit Decreasing: Sortiere Objekte in absteigender Reihenfolge und packe sie jeweils in erste freie Kiste, in der genügend Platz ist (ohne Beweis) Es giltw(x, FFD(x)) = 11/9 OPT BPP (x)+4 für allex (ohne Beweis) also R A = 11/9 Bessere Approximationen sind leider nicht möglich THEORETISCHE INFORMATIK II 6.4: 6 GRENZEN ÜBERWINDEN

23 Negative Ergebnisse (falls P N P) Knapsack: konstanter additiver Fehler unmöglich Für kein k gibt es einen polynomiellen AlgorithmusA KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x THEORETISCHE INFORMATIK II 6.4: 7 GRENZEN ÜBERWINDEN

24 Negative Ergebnisse (falls P N P) Knapsack: konstanter additiver Fehler unmöglich Für kein k gibt es einen polynomiellen AlgorithmusA KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x Binpacking: absolute GüteR A < 3/2 unmöglich Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x THEORETISCHE INFORMATIK II 6.4: 7 GRENZEN ÜBERWINDEN

25 Negative Ergebnisse (falls P N P) Knapsack: konstanter additiver Fehler unmöglich Für kein k gibt es einen polynomiellen AlgorithmusA KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x Binpacking: absolute GüteR A < 3/2 unmöglich Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x CLIQUE: Keine endliche absolute Güte möglich Es gibt einǫ>0, so daß es keinen polynomiellen Algorithmus A CL geben kann mit R ACL (x) < x 1/2 ǫ für allex (ohne Beweis) THEORETISCHE INFORMATIK II 6.4: 7 GRENZEN ÜBERWINDEN

26 Negative Ergebnisse (falls P N P) Knapsack: konstanter additiver Fehler unmöglich Für kein k gibt es einen polynomiellen AlgorithmusA KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x Binpacking: absolute GüteR A < 3/2 unmöglich Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x CLIQUE: Keine endliche absolute Güte möglich Es gibt einǫ>0, so daß es keinen polynomiellen Algorithmus A CL geben kann mit R ACL (x) < x 1/2 ǫ für allex (ohne Beweis) TSP: Keine endliche worst-case Güte möglich Es gibt keinen polynomiellen Algorithmus A TSP mit R A TSP < THEORETISCHE INFORMATIK II 6.4: 7 GRENZEN ÜBERWINDEN

27 Negative Ergebnisse (falls P N P) Knapsack: konstanter additiver Fehler unmöglich Für kein k gibt es einen polynomiellen AlgorithmusA KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x Binpacking: absolute GüteR A < 3/2 unmöglich Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x CLIQUE: Keine endliche absolute Güte möglich Es gibt einǫ>0, so daß es keinen polynomiellen Algorithmus A CL geben kann mit R ACL (x) < x 1/2 ǫ für allex (ohne Beweis) TSP: Keine endliche worst-case Güte möglich Es gibt keinen polynomiellen Algorithmus A TSP mit R A TSP < Nachweise verwenden verschiedene Beweistechniken THEORETISCHE INFORMATIK II 6.4: 7 GRENZEN ÜBERWINDEN

28 Kein konstanter additiver Fehler für Knapsack KP ={ (g 1..g n, a 1..a n, G, A) J {1..n}. Σ i J g i G Σ i J a i A} Für kein k gibt es einen polynomiellen Algorithmus A KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x THEORETISCHE INFORMATIK II 6.4: 8 GRENZEN ÜBERWINDEN

29 Kein konstanter additiver Fehler für Knapsack KP ={ (g 1..g n, a 1..a n, G, A) J {1..n}. Σ i J g i G Σ i J a i A} Für kein k gibt es einen polynomiellen Algorithmus A KP mit der Eigenschaft OPT KP (x) W(x,A KP (x)) k für alle x Gäbe esa KP, dann könnten wir KP wie folgt polynomiell entscheiden Transformiere x = (g 1..g n, a 1..a n, G, A) in x = (g 1..g n, a 1 (k+1)..a n (k+1), G, A (k+1)) Wegen OPT KP (x ) W(x,A KP (x )) k folgt OPT KP (x) W(x,A KP (x )/(k+1) k/(k+1) = 0 Also gilt x KP OPT KP (x) = A W(x,A KP (x ))/(k+1) A Beweistechnik: Multiplikation des Problems, nachträgliche Division des Fehlers THEORETISCHE INFORMATIK II 6.4: 8 GRENZEN ÜBERWINDEN

30 Keine absolute Güte R A < 3/2 für Binpacking BPP ={a 1,...a n, b,k f:{1..n} {1..k}. j k. i {i f(i)=j} a i b} Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x THEORETISCHE INFORMATIK II 6.4: 9 GRENZEN ÜBERWINDEN

31 Keine absolute Güte R A < 3/2 für Binpacking BPP ={a 1,...a n, b,k f:{1..n} {1..k}. j k. i {i f(i)=j} a i b} Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x Die Reduktion PART p BPP benötigt nurk=2 Behälter der Größe b := n i=1 a i/2, um im Erfolgsfall alle Objekte a i aufzuteilen Für die Transformationsfunktion f gilt also x PART OPT BPP (f(x)) = 2 THEORETISCHE INFORMATIK II 6.4: 9 GRENZEN ÜBERWINDEN

32 Keine absolute Güte R A < 3/2 für Binpacking BPP ={a 1,...a n, b,k f:{1..n} {1..k}. j k. i {i f(i)=j} a i b} Es gibt keinen polynomiellen Algorithmus A BPP mit der Eigenschaft R ABPP (x) < 3/2 für alle x Die Reduktion PART p BPP benötigt nurk=2 Behälter der Größe b := n i=1 a i/2, um im Erfolgsfall alle Objekte a i aufzuteilen Für die Transformationsfunktion f gilt also x PART OPT BPP (f(x)) = 2 Jeder Approximationsalgorithmus A mit R A (x) < 3/2 liefert damit einen Entscheidungsalgorithmus für das Partitionsproblem, denn W(f(x), A(f(x))) = 2 R A (x) = 2, falls x PART W(f(x), A(f(x))) 3 sonst Wegen P ART N PC kann A nicht polynomiell sein Beweistechnik: Einbettung eines N P-vollständigen Entscheidungsproblems THEORETISCHE INFORMATIK II 6.4: 9 GRENZEN ÜBERWINDEN

33 Keine endliche worst-case Güte für TSP TSP ={c 12,..,c n 1,n, B Bijektion π. n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Es gibt keinen polynomiellen Algorithmus A TSP mit der Eigenschaft R A TSP =r für ein r N THEORETISCHE INFORMATIK II 6.4: 10 GRENZEN ÜBERWINDEN

34 Keine endliche worst-case Güte für TSP TSP ={c 12,..,c n 1,n, B Bijektion π. n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Es gibt keinen polynomiellen Algorithmus A TSP mit der Eigenschaft R A TSP =r für ein r N Die Reduktion HC p TSP stellt Kanten {v i,v j } durch Kosten c ij = 1 und Nichtkanten durch höhere Kosten dar. Mit einem Algorithmus A TSP mit R A TSP = r könnte manhc polynomiell wie folgt entscheiden Transformiere G = (V,E) in das TSPx = c 12,...,c n 1,n, V mit c ij = 1, falls {v i,v j } E und c ij = r V +2, sonst Dann gilt G HC OPT TSP (x) = V G HC OPT TSP (x) r V +2+( V 1)> (r+1) V THEORETISCHE INFORMATIK II 6.4: 10 GRENZEN ÜBERWINDEN

35 Keine endliche worst-case Güte für TSP TSP ={c 12,..,c n 1,n, B Bijektion π. n 1 i=1 c π(i)π(i+1)+c π(n)π(1) B} Es gibt keinen polynomiellen Algorithmus A TSP mit der Eigenschaft R A TSP =r für ein r N Die Reduktion HC p TSP stellt Kanten {v i,v j } durch Kosten c ij = 1 und Nichtkanten durch höhere Kosten dar. Mit einem Algorithmus A TSP mit R A TSP = r könnte manhc polynomiell wie folgt entscheiden Transformiere G = (V,E) in das TSPx = c 12,...,c n 1,n, V mit c ij = 1, falls {v i,v j } E und c ij = r V +2, sonst Dann gilt G HC OPT TSP (x) = V G HC OPT TSP (x) r V +2+( V 1)> (r+1) V Für große Graphen gilt aber: W(x,A(x)) r OPT TSP (x) also G HC W(x,A(x)) r V Für kleine Graphen ist die Laufzeit des Entscheidungsalgorithmus irrelevant Beweistechnik: Reduktion auf NP-vollständiges Problem mit Multiplikation des Kostenunterschieds zwischen positiver und negativer Antwort THEORETISCHE INFORMATIK II 6.4: 10 GRENZEN ÜBERWINDEN

36 Probabilistische Algorithmen Approximation einer Entscheidung THEORETISCHE INFORMATIK II 6.4: 11 GRENZEN ÜBERWINDEN

37 Probabilistische Algorithmen Approximation einer Entscheidung Verhalten gesteuert durch Zufallszahlgenerator Falsche Entscheidungen sind möglich aber unwahrscheinlich Approximation ˆ= Verringerung der Fehlerwahrscheinlichkeit Fehler unter2 100 liegt unter Wahrscheinlichkeit von Hardwarefehlern THEORETISCHE INFORMATIK II 6.4: 11 GRENZEN ÜBERWINDEN

38 Probabilistische Algorithmen Approximation einer Entscheidung Verhalten gesteuert durch Zufallszahlgenerator Falsche Entscheidungen sind möglich aber unwahrscheinlich Approximation ˆ= Verringerung der Fehlerwahrscheinlichkeit Fehler unter2 100 liegt unter Wahrscheinlichkeit von Hardwarefehlern Viele sinnvolle Anwendungen Quicksort: schnellstes Sortierverfahren in der Praxis Linearer Primzahltest (relativ zur Anzahl der Bits) THEORETISCHE INFORMATIK II 6.4: 11 GRENZEN ÜBERWINDEN

39 Probabilistische Algorithmen Approximation einer Entscheidung Verhalten gesteuert durch Zufallszahlgenerator Falsche Entscheidungen sind möglich aber unwahrscheinlich Approximation ˆ= Verringerung der Fehlerwahrscheinlichkeit Fehler unter2 100 liegt unter Wahrscheinlichkeit von Hardwarefehlern Viele sinnvolle Anwendungen Quicksort: schnellstes Sortierverfahren in der Praxis Linearer Primzahltest (relativ zur Anzahl der Bits) Wie weist man gute Eigenschaften nach? Einfaches Modell für probabilistische Algorithmen formulieren Eigenschaften abstrakter probabilistischer Sprachklassen analysieren THEORETISCHE INFORMATIK II 6.4: 11 GRENZEN ÜBERWINDEN

40 Quicksort als zufallsabhängiger Algorithmus Divide & Conquer Ansatz für Sortierung Wähle Pivotelement a i aus Liste a 1,...,a n Zerlege Liste in Elemente, die größer oder kleiner alsa i sind Sortiere Teillisten und hänge Ergebnisse aneinander THEORETISCHE INFORMATIK II 6.4: 12 GRENZEN ÜBERWINDEN

41 Quicksort als zufallsabhängiger Algorithmus Divide & Conquer Ansatz für Sortierung Wähle Pivotelement a i aus Liste a 1,...,a n Zerlege Liste in Elemente, die größer oder kleiner alsa i sind Sortiere Teillisten und hänge Ergebnisse aneinander Laufzeit abhängig vom Pivotelement O(n log 2 n), wenn Teillisten in etwa gleich groß sind Pivotelement muß nahe am Mittelwert sein Deterministische Bestimmung des Mittelwertes zu zeitaufwendig Wahl eines festen Pivotelements erhöht Laufzeit von Quicksort für bestimmte Eingabelisten auf O(n 2 ) THEORETISCHE INFORMATIK II 6.4: 12 GRENZEN ÜBERWINDEN

42 Quicksort als zufallsabhängiger Algorithmus Divide & Conquer Ansatz für Sortierung Wähle Pivotelement a i aus Liste a 1,...,a n Zerlege Liste in Elemente, die größer oder kleiner alsa i sind Sortiere Teillisten und hänge Ergebnisse aneinander Laufzeit abhängig vom Pivotelement O(n log 2 n), wenn Teillisten in etwa gleich groß sind Pivotelement muß nahe am Mittelwert sein Deterministische Bestimmung des Mittelwertes zu zeitaufwendig Wahl eines festen Pivotelements erhöht Laufzeit von Quicksort für bestimmte Eingabelisten auf O(n 2 ) Gute Pivotelemente sind in der Mehrzahl Zufällige Wahl führt für jede Eingabe zum Erwartungswert O(n log 2 n) Im Durchschnitt schneller als deterministische O(n log 2 n)-verfahren THEORETISCHE INFORMATIK II 6.4: 12 GRENZEN ÜBERWINDEN

43 Probabilistische Berechnungsmodelle Probabilistische Turingmaschine Struktur: M = (Q,Σ,Γ, δ,q 0,B,F ) Zustandsüberführungsfunktion: δ :Q Γ (Q Γ {L,R}) 2 Jede Alternative wird mit Wahrscheinlichkeit 1/2 gewählt Rechenzeit: maximale Rechenzeit aller möglichen Rechenwege P T M: polynomiell zeitbeschränkte probabilistische Turingmaschine THEORETISCHE INFORMATIK II 6.4: 13 GRENZEN ÜBERWINDEN

44 Probabilistische Berechnungsmodelle Probabilistische Turingmaschine Struktur: M = (Q,Σ,Γ, δ,q 0,B,F ) Zustandsüberführungsfunktion: δ :Q Γ (Q Γ {L,R}) 2 Jede Alternative wird mit Wahrscheinlichkeit 1/2 gewählt Rechenzeit: maximale Rechenzeit aller möglichen Rechenwege P T M: polynomiell zeitbeschränkte probabilistische Turingmaschine Pr[M(w)=1]: Wahrscheinlichkeit der Akzeptanz Wahrscheinlichkeit aller akzeptierenden Konfigurationsfolgen relativ zu allen möglichen Konfigurationsfolgen bei Eingabe w THEORETISCHE INFORMATIK II 6.4: 13 GRENZEN ÜBERWINDEN

45 Probabilistische Berechnungsmodelle Probabilistische Turingmaschine Struktur: M = (Q,Σ,Γ, δ,q 0,B,F ) Zustandsüberführungsfunktion: δ :Q Γ (Q Γ {L,R}) 2 Jede Alternative wird mit Wahrscheinlichkeit 1/2 gewählt Rechenzeit: maximale Rechenzeit aller möglichen Rechenwege P T M: polynomiell zeitbeschränkte probabilistische Turingmaschine Pr[M(w)=1]: Wahrscheinlichkeit der Akzeptanz Wahrscheinlichkeit aller akzeptierenden Konfigurationsfolgen relativ zu allen möglichen Konfigurationsfolgen bei Eingabe w Probabilistische Algorithmen Abstrakteres Modell: Programme mit zufälligen Entscheidungen Komplexitätsbestimmung durch asymptotische Analyse wie bisher THEORETISCHE INFORMATIK II 6.4: 13 GRENZEN ÜBERWINDEN

46 Probabilistische Berechnungsmodelle Probabilistische Turingmaschine Struktur: M = (Q,Σ,Γ, δ,q 0,B,F ) Zustandsüberführungsfunktion: δ :Q Γ (Q Γ {L,R}) 2 Jede Alternative wird mit Wahrscheinlichkeit 1/2 gewählt Rechenzeit: maximale Rechenzeit aller möglichen Rechenwege P T M: polynomiell zeitbeschränkte probabilistische Turingmaschine Pr[M(w)=1]: Wahrscheinlichkeit der Akzeptanz Wahrscheinlichkeit aller akzeptierenden Konfigurationsfolgen relativ zu allen möglichen Konfigurationsfolgen bei Eingabe w Probabilistische Algorithmen Abstrakteres Modell: Programme mit zufälligen Entscheidungen Komplexitätsbestimmung durch asymptotische Analyse wie bisher Was kann man mit polynomiell zeitbeschränkten probabilistischen Algorithmen erreichen? THEORETISCHE INFORMATIK II 6.4: 13 GRENZEN ÜBERWINDEN

47 Klassen probabilistischer Sprachen P P : Probabilistic Polynomial Monte-Carlo-Algorithmen Wahrscheinlichkeit für korrekte Antwort ist mindestens 1/2 w L Pr[M(w)=1] 1/2 und w L Prob(M w) > 1/2 Laufzeit polynomiell BP P : Bounded error Probabilistic Polynomial Wahrscheinlichkeit für korrekte Antwort ist mindestens 1/2+ǫ Laufzeit polynomiell RP : Random Polynomial Wahrscheinlichkeit für Akzeptanz vonw L ist mindestens 1/2 Eingaben w L werden mit Sicherheit nicht akzeptiert Laufzeit polynomiell ZPP: Zero error PP Las-Vegas-Algorithmen M gibt immer eine korrekte Antwort Erwartungswert der Laufzeit ist polynomiell Alternative Definitionen verwenden Erkenntnis ZP P = RP co RP (Folie 26) THEORETISCHE INFORMATIK II 6.4: 14 GRENZEN ÜBERWINDEN

48 Beispiel probabilistischer Algorithmen Prüfe ob ein GraphG=(V,E) eine 3-Clique enthält Teste zufällige Dreieckskandidaten Zufällige Auswahl vonv 1 V und{v 2,v 3 } E mit v 1 {v 2,v 3 } Teste deterministisch, ob{v 1,v 3 } E und{v 1,v 2 } E gilt Akzeptiere, wenn Dreieck ink Iterationen gefunden, sonst verwerfe THEORETISCHE INFORMATIK II 6.4: 15 GRENZEN ÜBERWINDEN

49 Beispiel probabilistischer Algorithmen Prüfe ob ein GraphG=(V,E) eine 3-Clique enthält Teste zufällige Dreieckskandidaten Zufällige Auswahl vonv 1 V und{v 2,v 3 } E mit v 1 {v 2,v 3 } Teste deterministisch, ob{v 1,v 3 } E und{v 1,v 2 } E gilt Akzeptiere, wenn Dreieck ink Iterationen gefunden, sonst verwerfe Wahrscheinlichkeit korrekter Akzeptanz> 1/2 Wahrscheinlichkeit für Auswahl einer Dreieckskante 3 E Wahrscheinlichkeit für Auswahl des dritten Knotens 1 V 2 Akzeptanzwahrscheinlichkeit 1 (1 3 E ( V 2) )k 1 e k 3 E ( V 2) k := E ( V 2) 3 erhöht Akzeptanzwahrscheinlichkeit auf mehr als 1/2 THEORETISCHE INFORMATIK II 6.4: 15 GRENZEN ÜBERWINDEN

50 Beispiel probabilistischer Algorithmen Prüfe ob ein GraphG=(V,E) eine 3-Clique enthält Teste zufällige Dreieckskandidaten Zufällige Auswahl vonv 1 V und{v 2,v 3 } E mit v 1 {v 2,v 3 } Teste deterministisch, ob{v 1,v 3 } E und{v 1,v 2 } E gilt Akzeptiere, wenn Dreieck ink Iterationen gefunden, sonst verwerfe Wahrscheinlichkeit korrekter Akzeptanz> 1/2 Wahrscheinlichkeit für Auswahl einer Dreieckskante 3 E Wahrscheinlichkeit für Auswahl des dritten Knotens 1 V 2 Akzeptanzwahrscheinlichkeit 1 (1 3 E ( V 2) )k 1 e k 3 E ( V 2) k := E ( V 2) 3 erhöht Akzeptanzwahrscheinlichkeit auf mehr als 1/2 Keine falschen Positive Es wird nur akzeptiert, wenn wirklich ein Dreieck gefunden wird THEORETISCHE INFORMATIK II 6.4: 15 GRENZEN ÜBERWINDEN

51 Beispiel probabilistischer Algorithmen Prüfe ob ein GraphG=(V,E) eine 3-Clique enthält Teste zufällige Dreieckskandidaten Zufällige Auswahl vonv 1 V und{v 2,v 3 } E mit v 1 {v 2,v 3 } Teste deterministisch, ob{v 1,v 3 } E und{v 1,v 2 } E gilt Akzeptiere, wenn Dreieck ink Iterationen gefunden, sonst verwerfe Wahrscheinlichkeit korrekter Akzeptanz> 1/2 Wahrscheinlichkeit für Auswahl einer Dreieckskante 3 E Wahrscheinlichkeit für Auswahl des dritten Knotens 1 V 2 3 Akzeptanzwahrscheinlichkeit 1 (1 E ( V 2) )k 1 e k 3 E ( V 2) k := E ( V 2) erhöht Akzeptanzwahrscheinlichkeit auf mehr als 1/2 3 Keine falschen Positive Es wird nur akzeptiert, wenn wirklich ein Dreieck gefunden wird Laufzeit polynomiell Individueller Test ist linear in G, Anzahl der Iterationen quadratisch THEORETISCHE INFORMATIK II 6.4: 15 GRENZEN ÜBERWINDEN

52 Iteration probabilistischer Algorithmen Iteration kann Fehler extrem klein machen THEORETISCHE INFORMATIK II 6.4: 16 GRENZEN ÜBERWINDEN

53 Iteration probabilistischer Algorithmen Iteration kann Fehler extrem klein machen k-fache Iteration von RP Algorithmen reduziert Fehlerwahrscheinlichkeit auf 2 k Ist M diek-fache stochastisch unabhängige Iteration einer PTMM L für L RP, so gilt w L Pr[M(w)=1] 1 2 k und w L Prob(M w) = 1 Einfaches wahrscheinlichkeitstheoretisches Argument THEORETISCHE INFORMATIK II 6.4: 16 GRENZEN ÜBERWINDEN

54 Iteration probabilistischer Algorithmen Iteration kann Fehler extrem klein machen k-fache Iteration von RP Algorithmen reduziert Fehlerwahrscheinlichkeit auf 2 k Ist M diek-fache stochastisch unabhängige Iteration einer PTMM L für L RP, so gilt w L Pr[M(w)=1] 1 2 k und w L Prob(M w) = 1 Einfaches wahrscheinlichkeitstheoretisches Argument (2t+1)-fache Iteration einesbpp Algorithmus für k t> liefert Fehlerwahrscheinlichkeit< 2 k log(1 4ǫ 2 ) SeiM t die(2t+1)-fache stochastisch unabhängige Iteration einer PTMM für L BPP, die genau dann akzeptiert, wenn M mindestens t+1-mal akzeptiert, so gilt für t > k 1 log(1 4ǫ 2 ) w L Prob(M t w) > 1 2 k und w L Prob(M t w) > 1 2 k Aufwendige Analyse (siehe Wegener für Details) THEORETISCHE INFORMATIK II 6.4: 16 GRENZEN ÜBERWINDEN

55 Iteration probabilistischer Algorithmen Iteration kann Fehler extrem klein machen k-fache Iteration von RP Algorithmen reduziert Fehlerwahrscheinlichkeit auf 2 k Ist M diek-fache stochastisch unabhängige Iteration einer PTMM L für L RP, so gilt w L Pr[M(w)=1] 1 2 k und w L Prob(M w) = 1 Einfaches wahrscheinlichkeitstheoretisches Argument (2t+1)-fache Iteration einesbpp Algorithmus für k t> liefert Fehlerwahrscheinlichkeit< 2 k log(1 4ǫ 2 ) SeiM t die(2t+1)-fache stochastisch unabhängige Iteration einer PTMM für L BPP, die genau dann akzeptiert, wenn M mindestens t+1-mal akzeptiert, so gilt für t > k 1 log(1 4ǫ 2 ) w L Prob(M t w) > 1 2 k und w L Prob(M t w) > 1 2 k Aufwendige Analyse (siehe Wegener für Details) Keine Aussagen fürpp Algorithmen möglich THEORETISCHE INFORMATIK II 6.4: 16 GRENZEN ÜBERWINDEN

56 Anwendungen in der Kryptographie Public-Key Kryptographie mit dem RSA Verfahren Sichere spontane Verbindung zwischen beliebigen Teilnehmern Ver- und Entschlüsselung benutzen verschiedene Schlüssel Empfänger erzeugt beide Schlüssel, hält Entschlüsselung geheim legt nur den Verschlüsselungsschlüssel offen Ältestes und bedeutendstes Verfahren ist RSA Rivest, Shamir & Adleman, 1977 Fester Bestandteil von allen modernen Internetbrowsern THEORETISCHE INFORMATIK II 6.4: 17 GRENZEN ÜBERWINDEN

57 Anwendungen in der Kryptographie Public-Key Kryptographie mit dem RSA Verfahren Sichere spontane Verbindung zwischen beliebigen Teilnehmern Ver- und Entschlüsselung benutzen verschiedene Schlüssel Empfänger erzeugt beide Schlüssel, hält Entschlüsselung geheim legt nur den Verschlüsselungsschlüssel offen Ältestes und bedeutendstes Verfahren ist RSA Rivest, Shamir & Adleman, 1977 Fester Bestandteil von allen modernen Internetbrowsern Schlüsselerzeugung Generiere n als Produkt zweier großer Primzahlen p undq ErzeugeemitggT(e,(p 1)(q 1))=1, berechned = e 1 mod(p 1)(q 1) Mache n,e öffentlich, halted,pundq geheim THEORETISCHE INFORMATIK II 6.4: 17 GRENZEN ÜBERWINDEN

58 Anwendungen in der Kryptographie Public-Key Kryptographie mit dem RSA Verfahren Sichere spontane Verbindung zwischen beliebigen Teilnehmern Ver- und Entschlüsselung benutzen verschiedene Schlüssel Empfänger erzeugt beide Schlüssel, hält Entschlüsselung geheim legt nur den Verschlüsselungsschlüssel offen Ältestes und bedeutendstes Verfahren ist RSA Rivest, Shamir & Adleman, 1977 Fester Bestandteil von allen modernen Internetbrowsern Schlüsselerzeugung Generiere n als Produkt zweier großer Primzahlen p undq ErzeugeemitggT(e,(p 1)(q 1))=1, berechned = e 1 mod(p 1)(q 1) Mache n,e öffentlich, halted,pundq geheim Verschlüsselungsverfahren Zerlege Text in Blöcke der Länge log 2 n/8 (ein Byte pro Buchstabe) Verschlüsselung wird Potenzieren mit e modulon: e K (x) =x e modn Entschlüsselung wird Potenzieren mit d modulon: d K (y) = y d modn THEORETISCHE INFORMATIK II 6.4: 17 GRENZEN ÜBERWINDEN

59 Anwendungen in der Kryptographie Public-Key Kryptographie mit dem RSA Verfahren Sichere spontane Verbindung zwischen beliebigen Teilnehmern Ver- und Entschlüsselung benutzen verschiedene Schlüssel Empfänger erzeugt beide Schlüssel, hält Entschlüsselung geheim legt nur den Verschlüsselungsschlüssel offen Ältestes und bedeutendstes Verfahren ist RSA Rivest, Shamir & Adleman, 1977 Fester Bestandteil von allen modernen Internetbrowsern Schlüsselerzeugung Generiere n als Produkt zweier großer Primzahlen p undq ErzeugeemitggT(e,(p 1)(q 1))=1, berechned = e 1 mod(p 1)(q 1) Mache n,e öffentlich, halted,pundq geheim Verschlüsselungsverfahren Zerlege Text in Blöcke der Länge log 2 n/8 (ein Byte pro Buchstabe) Verschlüsselung wird Potenzieren mit e modulon: e K (x) =x e modn Entschlüsselung wird Potenzieren mit d modulon: d K (y) = y d modn Sicherheit basiert auf Zahlentheorie und Komplexität THEORETISCHE INFORMATIK II 6.4: 17 GRENZEN ÜBERWINDEN

60 Warum funktioniert RSA in der Praxis? Korrektheit basiert auf Gesetzen der Zahlentheorie Ausn=p q undggt(x,n) = 1 folgt x (p 1)(q 1) mod n = 1 (Euler-Fermat) Ause d mod(p 1)(q 1) = 1 undx<n folgt (x e ) d modn = x THEORETISCHE INFORMATIK II 6.4: 18 GRENZEN ÜBERWINDEN

61 Warum funktioniert RSA in der Praxis? Korrektheit basiert auf Gesetzen der Zahlentheorie Ausn=p q undggt(x,n) = 1 folgt x (p 1)(q 1) mod n = 1 (Euler-Fermat) Ause d mod(p 1)(q 1) = 1 undx<n folgt (x e ) d modn = x Sicherheit: Faktorisierung ist schwer Um RSA zu brechen muß die Zahl n inpundq zerlegt werden können Probedivision benötigt Laufzeit O( n) (1024 bit ˆ= Schritte) Bester bekannter Algorithmus benötigt O(e logn log(logn) ) (ˆ= Schritte) THEORETISCHE INFORMATIK II 6.4: 18 GRENZEN ÜBERWINDEN

62 Warum funktioniert RSA in der Praxis? Korrektheit basiert auf Gesetzen der Zahlentheorie Ausn=p q undggt(x,n) = 1 folgt x (p 1)(q 1) mod n = 1 (Euler-Fermat) Ause d mod(p 1)(q 1) = 1 undx<n folgt (x e ) d modn = x Sicherheit: Faktorisierung ist schwer Um RSA zu brechen muß die Zahl n inpundq zerlegt werden können Probedivision benötigt Laufzeit O( n) (1024 bit ˆ= Schritte) Bester bekannter Algorithmus benötigt O(e logn log(logn) ) (ˆ= Schritte) Durchführbarkeit: Ver-/Entschlüsselung Naive Potenzierung x e modn liegt ino(n logn 2 ) Aber iteriertes Quadrieren und Multiplizieren liegt ino(logn 3 ) Es ist x e = i k,e i =1 x2i wobei e = k i=0 e i2 i Binärdarstellung vone THEORETISCHE INFORMATIK II 6.4: 18 GRENZEN ÜBERWINDEN

63 Warum funktioniert RSA in der Praxis? Korrektheit basiert auf Gesetzen der Zahlentheorie Ausn=p q undggt(x,n) = 1 folgt x (p 1)(q 1) mod n = 1 (Euler-Fermat) Ause d mod(p 1)(q 1) = 1 undx<n folgt (x e ) d modn = x Sicherheit: Faktorisierung ist schwer Um RSA zu brechen muß die Zahl n inpundq zerlegt werden können Probedivision benötigt Laufzeit O( n) (1024 bit ˆ= Schritte) Bester bekannter Algorithmus benötigt O(e logn log(logn) ) (ˆ= Schritte) Durchführbarkeit: Ver-/Entschlüsselung Naive Potenzierung x e modn liegt ino(n logn 2 ) Aber iteriertes Quadrieren und Multiplizieren liegt ino(logn 3 ) Es ist x e = i k,e i =1 x2i wobei e = k i=0 e i2 i Binärdarstellung vone Durchführbarkeit: Schlüsselerzeugung Um sicher zu sein benötigt RSA sehr große Primzahlen Naive Primzahltests sind genauso langsam wie Faktorisierung Probabilistische Algorithmen machen Primzahltests praktikabel THEORETISCHE INFORMATIK II 6.4: 18 GRENZEN ÜBERWINDEN

64 Notwendige Kriterien für Primzahlen Jacobi Symbol( n a ) für ganze Zahlenaundn Zahlentheoretisch definiert über quadratische Reste Rechengesetze für ( a n ) und ungerade { n>2 ( 1. Für ungerade a ist ( a n n ) = a ) falls a n 3mod4 ( n a ) sonst 2. Für alle a ist ( a n ) =(amodn n ) 3. Füra = b 2 k ist ( a n ) =(b n )(2 n )k { 1 fallsn ±1mod8 4.( 2 n ) = 1 fallsn ±3mod8 Rechenzeit für( a n ) liegt ino(logn3 ) ( 1 n ) = 1 (0 n ) = 0 THEORETISCHE INFORMATIK II 6.4: 19 GRENZEN ÜBERWINDEN

65 Notwendige Kriterien für Primzahlen Jacobi Symbol( n a ) für ganze Zahlenaundn Zahlentheoretisch definiert über quadratische Reste Rechengesetze für ( a n ) und ungerade { n>2 ( 1. Für ungerade a ist ( a n n ) = a ) falls a n 3mod4 ( n a ) sonst 2. Für alle a ist ( a n ) =(amodn n ) 3. Füra = b 2 k ist ( a n ) =(b n )(2 n )k { 1 fallsn ±1mod8 4.( 2 n ) = 1 fallsn ±3mod8 Rechenzeit für( a n ) liegt ino(logn3 ) ( 1 n ) = 1 (0 n ) = 0 Für jede Primzahln>2 gilt ( a n ) a(n 1)/2 modn (Euler) Ist n keine Primzahl, dann gilt ( a n ) a(n 1)/2 modn für maximal die Hälfte aller a<n (folgt aus der Gruppentheorie) Kriterium ist als Grundlage für einen RP -Algorithmus geeignet THEORETISCHE INFORMATIK II 6.4: 19 GRENZEN ÜBERWINDEN

66 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

67 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

68 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

69 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren 4. Ansonsten teste ( a n ) a(n 1)/2 modn Ist dies der Fall, dann akzeptiere n, sonst verwerfe n THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

70 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren 4. Ansonsten teste ( a n ) a(n 1)/2 modn Ist dies der Fall, dann akzeptiere n, sonst verwerfe n RP -Algorithmus für Erkennung von Zusammengesetztheit Für jede Primzahl gilt a (n 1)/2 ( a n ) mod n (Ausgabe korrekt) Für zusammengesetztes n gilt dies für maximal die Hälfte aller a<n (Wahrscheinlichkeit für korrektes Verwerfen ist mindestens 1/2) THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

71 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren 4. Ansonsten teste ( a n ) a(n 1)/2 modn Ist dies der Fall, dann akzeptiere n, sonst verwerfe n RP -Algorithmus für Erkennung von Zusammengesetztheit Für jede Primzahl gilt a (n 1)/2 ( a n ) mod n (Ausgabe korrekt) Für zusammengesetztes n gilt dies für maximal die Hälfte aller a<n (Wahrscheinlichkeit für korrektes Verwerfen ist mindestens 1/2) Rechenzeit maximal 6 (logn) 3 THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

72 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren 4. Ansonsten teste ( a n ) a(n 1)/2 modn Ist dies der Fall, dann akzeptiere n, sonst verwerfe n RP -Algorithmus für Erkennung von Zusammengesetztheit Für jede Primzahl gilt a (n 1)/2 ( a n ) mod n (Ausgabe korrekt) Für zusammengesetztes n gilt dies für maximal die Hälfte aller a<n (Wahrscheinlichkeit für korrektes Verwerfen ist mindestens 1/2) Rechenzeit maximal 6 (logn) 3 Fehlerwahrscheinlichkeit bei 100 Iterationen maximal THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

73 Primzahltest für n 3 (Solovay/Strassen) 1. Ist n gerade dann halte ohne zu akzeptieren 2. Ansonsten wähle a {1...n 1} zufällig 3. Ist ggt(n,a) 1 dann halte ohne zu akzeptieren 4. Ansonsten teste ( a n ) a(n 1)/2 modn Ist dies der Fall, dann akzeptiere n, sonst verwerfe n RP -Algorithmus für Erkennung von Zusammengesetztheit Für jede Primzahl gilt a (n 1)/2 ( a n ) mod n (Ausgabe korrekt) Für zusammengesetztes n gilt dies für maximal die Hälfte aller a<n (Wahrscheinlichkeit für korrektes Verwerfen ist mindestens 1/2) Rechenzeit maximal 6 (logn) 3 Fehlerwahrscheinlichkeit bei 100 Iterationen maximal Mehr hierzu in der Vorlesung Kryptographie und Komplexität im WS 2011/12 THEORETISCHE INFORMATIK II 6.4: 20 GRENZEN ÜBERWINDEN

74 ANHANG THEORETISCHE INFORMATIK II 6.4: 21 GRENZEN ÜBERWINDEN

75 Hierarchie probabilistischer Sprachklassen PP 2 BPP NP co NP NP RP 2 NP co NP RP co RP ZPP P THEORETISCHE INFORMATIK II 6.4: 22 GRENZEN ÜBERWINDEN

76 Zusammenhänge zwischen den Sprachklassen P ZPP RP BPP PP ZPP ist wie P, aber Laufzeit ist nur im Erwartungswert polynomiell BPP PP folgt direkt aus den Definitionen RP BPP folgt aus dem Iterationssatz für RP THEORETISCHE INFORMATIK II 6.4: 23 GRENZEN ÜBERWINDEN

77 Zusammenhänge zwischen den Sprachklassen P ZPP RP BPP PP ZPP ist wie P, aber Laufzeit ist nur im Erwartungswert polynomiell BPP PP folgt direkt aus den Definitionen RP BPP folgt aus dem Iterationssatz für RP ZPP =RP co RP HMU, Satz Beweis durch gegenseitige Simulation (siehe nächste Folie) THEORETISCHE INFORMATIK II 6.4: 23 GRENZEN ÜBERWINDEN

78 Zusammenhänge zwischen den Sprachklassen P ZPP RP BPP PP ZPP ist wie P, aber Laufzeit ist nur im Erwartungswert polynomiell BPP PP folgt direkt aus den Definitionen RP BPP folgt aus dem Iterationssatz für RP ZPP =RP co RP HMU, Satz Beweis durch gegenseitige Simulation (siehe nächste Folie) RP NP HMU, Satz Das Verhalten einer PTM kann durch eine NTM M simuliert werden Da die PTM kein Wort w L akzeptiert, akzeptiert M ebenfalls nicht THEORETISCHE INFORMATIK II 6.4: 23 GRENZEN ÜBERWINDEN

79 Zusammenhänge zwischen den Sprachklassen P ZPP RP BPP PP ZPP ist wie P, aber Laufzeit ist nur im Erwartungswert polynomiell BPP PP folgt direkt aus den Definitionen RP BPP folgt aus dem Iterationssatz für RP ZPP =RP co RP HMU, Satz Beweis durch gegenseitige Simulation (siehe nächste Folie) RP NP HMU, Satz Das Verhalten einer PTM kann durch eine NTM M simuliert werden Da die PTM kein Wort w L akzeptiert, akzeptiert M ebenfalls nicht NP co NP PP NTM akzeptiert, wenn Wahrscheinlichkeit der Akzeptanz nicht Null Aufwendige Simulation durch PP Algorithmen möglich THEORETISCHE INFORMATIK II 6.4: 23 GRENZEN ÜBERWINDEN

80 Beweis von ZPP = RP co RP ZPP RP co RP Seien A undāalgorithmen für L, L RP mit Laufzeitgrenze p(n) Wir konstruieren für L eine Las Vegas Maschine M wie folgt (1) Lasse A auf Eingabe w laufen und akzeptiere, wenn A akzeptiert. (2) Ansonsten lasse Ā aufw laufen und verwerfe, wenn Ā akzeptiert. Wenn weder A noch Ā akzeptiert haben fahre mit Schritt (1) fort. Per Konstruktion gibt M immer nur korrekte Antworten Jede Runde dauert 2p(n) Schritte und terminiert mit Wahrscheinlichkeit 1 2 Die erwartete Laufzeit ist also 2p(n) ( ) = 4p(n) THEORETISCHE INFORMATIK II 6.4: 24 GRENZEN ÜBERWINDEN

81 Beweis von ZPP = RP co RP ZPP RP co RP Seien A undāalgorithmen für L, L RP mit Laufzeitgrenze p(n) Wir konstruieren für L eine Las Vegas Maschine M wie folgt (1) Lasse A auf Eingabe w laufen und akzeptiere, wenn A akzeptiert. (2) Ansonsten lasse Ā aufw laufen und verwerfe, wenn Ā akzeptiert. Wenn weder A noch Ā akzeptiert haben fahre mit Schritt (1) fort. Per Konstruktion gibt M immer nur korrekte Antworten Jede Runde dauert 2p(n) Schritte und terminiert mit Wahrscheinlichkeit 1 2 Die erwartete Laufzeit ist also 2p(n) ( ) = 4p(n) ZPP RP co RP Sei M eine ZPP maschine für L mit erwarteter Laufzeit p(n) Wir konstruieren für L (analog L) einen RP Algorithmus A wie folgt (1) Simuliere M für 2p(n) Schritte. (2) Akzeptiere, wenn M akzeptiert und verwerfe sonst. Per Konstruktion akzeptiert A niemals einw L Für w L ist P(M akzeptiert in2p(n) Schritten) 1 2 THEORETISCHE INFORMATIK II 6.4: 24 GRENZEN ÜBERWINDEN

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 4.2 Primzahltests 1. Deterministische Primzahltests 2. Der Primzahltest von Solovay-Strassen 3. Der Milner-Rabin Test Wozu Primzahltests? RSA Schlüssel benötigen sehr

Mehr

Die Komplexitätsklassen P und NP

Die Komplexitätsklassen P und NP Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 3. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und

Mehr

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)

NP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP

Mehr

Theoretische Informatik. Probabilistische Turingmaschinen PTM PTM. Rainer Schrader. 10. Juni 2009

Theoretische Informatik. Probabilistische Turingmaschinen PTM PTM. Rainer Schrader. 10. Juni 2009 Theoretische Informatik Rainer Schrader Probabilistische Turingmaschinen Institut für Informatik 10. Juni 009 1 / 30 / 30 Gliederung probabilistische Turingmaschinen Beziehungen zwischen und NDTM es stellt

Mehr

Übung zur Vorlesung Berechenbarkeit und Komplexität

Übung zur Vorlesung Berechenbarkeit und Komplexität RWTH Aachen Lehrgebiet Theoretische Informatik Reidl Ries Rossmanith Sanchez Tönnis WS 2012/13 Übungsblatt 9 10.12.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T20 Beweisen Sie die

Mehr

Algorithmen II Vorlesung am 15.11.2012

Algorithmen II Vorlesung am 15.11.2012 Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

Mehr

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling

Approximationsalgorithmen: Klassiker I. Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling Approximationsalgorithmen: Klassiker I Kombinatorische Optimierung Absolute Gütegarantie Graph-Coloring Clique Relative Gütegarantie Scheduling VO Approximationsalgorithmen WiSe 2011/12 Markus Chimani

Mehr

Probleme aus NP und die polynomielle Reduktion

Probleme aus NP und die polynomielle Reduktion Probleme aus NP und die polynomielle Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 15. Dezember 2009 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Rechnerische Komplexität

Rechnerische Komplexität Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit

Mehr

Faktorisierung ganzer Zahlen mittels Pollards ρ-methode (1975)

Faktorisierung ganzer Zahlen mittels Pollards ρ-methode (1975) Dass das Problem, die Primzahlen von den zusammengesetzten zu unterscheiden und letztere in ihre Primfaktoren zu zerlegen zu den wichtigsten und nützlichsten der ganzen Arithmetik gehört und den Fleiss

Mehr

1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT)... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben...

1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT)... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben... Vorwort v I Approximative Algorithmen 1 1 Einführung 2 1.1 Zwei Beispiele (MIN JOB SCHEDULING und MAXCUT).... 2 1.2 Notationen und Definitionen... 7 1.3 Übungsaufgaben..... 18 2 DieKomplexitätsklassen

Mehr

Approximations-Algorithmen

Approximations-Algorithmen Approximations-Algorithmen Institut für Computergraphik und Algorithmen Abteilung für Algorithmen und Datenstrukturen 186.102 Sommersemester 2004, 2h VU Motivation: Bereits viele einfache Optimierungsprobleme

Mehr

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie

Lösungen zur 1. Klausur. Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie Hochschuldozent Dr. Christian Schindelhauer Paderborn, den 21. 2. 2006 Lösungen zur 1. Klausur in Einführung in Berechenbarkeit, formale Sprachen und Komplexitätstheorie Name :................................

Mehr

Sortierverfahren für Felder (Listen)

Sortierverfahren für Felder (Listen) Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es

Mehr

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 1 Primzahltest 1.1 Motivation Primzahlen spielen bei zahlreichen Algorithmen, die Methoden aus der Zahlen-Theorie verwenden, eine zentrale Rolle. Hierzu

Mehr

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum

Mehr

4 Greedy-Algorithmen (gierige Algorithmen)

4 Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine

Mehr

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012

Die Klassen P und NP. Dr. Eva Richter. 29. Juni 2012 Die Klassen P und NP Dr. Eva Richter 29. Juni 2012 1 / 35 Die Klasse P P = DTIME(Pol) Klasse der Probleme, die sich von DTM in polynomieller Zeit lösen lassen nach Dogma die praktikablen Probleme beim

Mehr

Algorithmentheorie Randomisierung. Robert Elsässer

Algorithmentheorie Randomisierung. Robert Elsässer Algorithmentheorie 03 - Randomisierung Robert Elsässer Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Nichtdeterminismus David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Nichtdeterminismus NTM Nichtdeterministische Turingmaschine Die

Mehr

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual! Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual! 0kg 4000 Euro Luster 5,5 kg, 430.- Laptop 2,0 kg, 000.- Schatulle 3,2 kg, 800.- Uhr 3,5 kg, 70.- Schwert,5 kg, 850.- Bild 3,4 kg, 680.- Besteck

Mehr

Pratts Primzahlzertifikate

Pratts Primzahlzertifikate Pratts Primzahlzertifikate Markus Englert 16.04.2009 Technische Universität München Fakultät für Informatik Proseminar: Perlen der Informatik 2 SoSe 2009 Leiter: Prof. Dr. Nipkow 1 Primzahltest Ein Primzahltest

Mehr

Was können Schüler anhand von Primzahltests über Mathematik lernen?

Was können Schüler anhand von Primzahltests über Mathematik lernen? Was können Schüler anhand von Primzahltests über Mathematik lernen? Innermathematisches Vernetzen von Zahlentheorie und Wahrscheinlichkeitsrechnung Katharina Klembalski Humboldt-Universität Berlin 20.

Mehr

MATHEMATISCHE ANALYSE VON ALGORITHMEN

MATHEMATISCHE ANALYSE VON ALGORITHMEN MATHEMATISCHE ANALYSE VON ALGORITHMEN Michael Drmota Institut für Diskrete Mathematik und Geometrie, TU Wien michael.drmota@tuwien.ac.at www.dmg.tuwien.ac.at/drmota/ Ringvorlesung SS 2008, TU Wien Algorithmus

Mehr

RSA Verfahren. Kapitel 7 p. 103

RSA Verfahren. Kapitel 7 p. 103 RSA Verfahren RSA benannt nach den Erfindern Ron Rivest, Adi Shamir und Leonard Adleman war das erste Public-Key Verschlüsselungsverfahren. Sicherheit hängt eng mit der Schwierigkeit zusammen, große Zahlen

Mehr

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Makespan-Scheduling Kapitel 4: Approximationsalgorithmen (dritter Teil) (weitere Beispiele und Illustrationen an der Tafel) Hilfreiche Literatur: Vazarani: Approximation Algorithms, Springer Verlag, 2001.

Mehr

Ver- und Entschlüsselung

Ver- und Entschlüsselung Vorlesung Formale Aspekte der Software-Sicherheit und Kryptographie Sommersemester 2015 Universität Duisburg-Essen Prof. Barbara König Übungsleitung: Sebastian Küpper Ver- und Entschlüsselung Wir beschreiben

Mehr

DLP. Adolphe Kankeu Tamghe papibobo@informatik.uni-bremen.de ALZAGK SEMINAR. Bremen, den 18. Januar 2011. Fachbereich Mathematik und Informatik 1 / 27

DLP. Adolphe Kankeu Tamghe papibobo@informatik.uni-bremen.de ALZAGK SEMINAR. Bremen, den 18. Januar 2011. Fachbereich Mathematik und Informatik 1 / 27 DLP Adolphe Kankeu Tamghe papibobo@informatik.uni-bremen.de Fachbereich Mathematik und Informatik ALZAGK SEMINAR Bremen, den 18. Januar 2011 1 / 27 Inhaltsverzeichnis 1 Der diskrete Logarithmus Definition

Mehr

Statistische Untersuchungen zu endlichen Funktionsgraphen

Statistische Untersuchungen zu endlichen Funktionsgraphen C# Projekt 1 Name: Statistische Untersuchungen zu endlichen Funktionsgraphen Aufgabe: Basierend auf dem Abschnitt 2.1.6. Random mappings, Kap.2, S 54-55, in [1] sollen zunächst für eine beliebige Funktion

Mehr

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5) Einführung 3 Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Univ.-Prof. Dr. Christoph Meinel Hasso-Plattner-Institut Universität Potsdam, Deutschland Hatten den Reduktionsbegriff

Mehr

3 Klassifikation wichtiger Optimierungsprobleme

3 Klassifikation wichtiger Optimierungsprobleme 3 Klassifikation wichtiger Optimierungsprobleme 3.1 Das MIN- -TSP Wir kehren nochmal zurück zum Handlungsreisendenproblem für Inputs (w {i,j} ) 1 i

Mehr

3: Zahlentheorie / Primzahlen

3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 96 3: Zahlentheorie / Primzahlen 3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 97 Definition 37 (Teiler, Vielfache, Primzahlen,

Mehr

Alles zu seiner Zeit Projektplanung heute

Alles zu seiner Zeit Projektplanung heute Alles zu seiner Zeit Projektplanung heute Nicole Megow Matheon Überblick Projektplanung Planen mit Graphentheorie Maschinenscheduling Ein 1 Mio. $ Problem Schwere & leichte Probleme? Zeitplanungsprobleme?

Mehr

Das Briefträgerproblem

Das Briefträgerproblem Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................

Mehr

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis Optimierungsprobleme Instanz eines Optimierungsproblems zulässiger Bereich (meist implizit definiert) Zielfunktion Optimierungsrichtung opt {max, min} Optimierungsproblem Menge von Instanzen meist implizit

Mehr

Einführung in Approximative Algorithmen und Parametrisierte Komplexität

Einführung in Approximative Algorithmen und Parametrisierte Komplexität Einführung in Approximative Algorithmen und Parametrisierte Komplexität Tobias Lieber 10. Dezember 2010 1 / 16 Grundlegendes Approximationsalgorithmen Parametrisierte Komplexität 2 / 16 Grundlegendes Definition

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 3. Endliche Automaten (V) 21.05.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Bis jetzt Determinierte endliche Automaten (DEAs) Indeterminierte

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 4 Public Key Kryptographie mit RSA 1. Ver- und Entschlüsselung 2. Schlüsselerzeugung und Primzahltests 3. Angriffe auf das RSA Verfahren 4. Sicherheit von RSA Probleme

Mehr

16. All Pairs Shortest Path (ASPS)

16. All Pairs Shortest Path (ASPS) . All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e

Mehr

Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung)

Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung) Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May Mathias Herrmann, Alexander Meurer Lösungsblatt zur Vorlesung Kryptanalyse WS 2009/2010 Blatt 6 / 23. Dezember

Mehr

Datenstrukturen und Algorithmen SS07

Datenstrukturen und Algorithmen SS07 Datenstrukturen und Algorithmen SS07 Datum: 27.6.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth Programm von Heute Online Algorithmen Update von Listen Move to Front (MTF) Transpose Approximationen

Mehr

Primzahlzertifikat von Pratt

Primzahlzertifikat von Pratt Primzahlzertifikat von Pratt Daniela Steidl TU München 17. 04. 2008 Primzahltests in der Informatik "Dass das Problem, die Primzahlen von den Zusammengesetzten zu unterscheiden und letztere in ihre Primfaktoren

Mehr

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Vortrag von Michael Daumen am 13.12.2000 Thema : Minimum Spanning Tree und 2-Approximation der TSP-Tour Inhalt des Vortrags : 1. genaue Vorstellung des

Mehr

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann

Grundlagen der Informatik Kapitel 20. Harald Krottmaier Sven Havemann Grundlagen der Informatik Kapitel 20 Harald Krottmaier Sven Havemann Agenda Klassen von Problemen Einige Probleme... Approximationsalgorithmen WS2007 2 Klassen P NP NP-vollständig WS2007 3 Klasse P praktisch

Mehr

Ver- und Entschlüsselung

Ver- und Entschlüsselung Vorlesung Formale Aspekte der Software-Sicherheit und Kryptographie Wintersemester 2011/12 Universität Duisburg-Essen Barbara König Ver- und Entschlüsselung Wir beschreiben jetzt formal, was es bedeutet,

Mehr

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick

Mehr

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 23. VO DAP2 SS 2008 14. Juli 2009

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

Abschnitt: Algorithmendesign und Laufzeitanalyse Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 10. Motivation. Motivation. Bisher haben wir mit TMs. Probleme gelöst/entschieden/berechnet. bei TMs bei Computern Formale Grundlagen der Informatik 1 Kapitel 10 Frank Heitmann heitmann@informatik.uni-hamburg.de Bisher haben wir mit TMs Probleme gelöst/entschieden/berechnet. Dabei war entscheidbar

Mehr

Kryptographie: Verteidigung gegen die dunklen Künste in der digitalen Welt

Kryptographie: Verteidigung gegen die dunklen Künste in der digitalen Welt Kryptographie: Verteidigung gegen die dunklen Künste in der digitalen Welt Prof. Dr. Rüdiger Weis Beuth Hochschule für Technik Berlin Tag der Mathematik 2015 Flächendeckendes Abhören Regierungen scheitern

Mehr

abgeschlossen unter,,,, R,

abgeschlossen unter,,,, R, Was bisher geschah Turing-Maschinen können Sprachen L X akzeptieren entscheiden Funktionen berechnen f : X X (partiell) Menge aller Turing-akzeptierbaren Sprachen genau die Menge aller Chomsky-Typ-0-Sprachen

Mehr

Übung Theoretische Grundlagen

Übung Theoretische Grundlagen Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory

Mehr

Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne

Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne Verfahren: DES (Feistel-Chiffre) mehrfache Wiederholung

Mehr

Approximationsalgorithmen

Approximationsalgorithmen Ausarbeitung zum Thema Approximationsalgorithmen im Rahmen des Fachseminars 24. Juli 2009 Robert Bahmann robert.bahmann@gmail.com FH Wiesbaden Erstellt von: Robert Bahmann Zuletzt berarbeitet von: Robert

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Ulrich Furbach. Sommersemester 2014 Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Ulrich Furbach Institut für Informatik Sommersemester 2014 Furbach Grundlagen d. Theoretischen Informatik:

Mehr

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009 19. Mai 2009 Einleitung Problemstellung Beispiel: RSA Teiler von Zahlen und Periode von Funktionen Klassischer Teil Quantenmechanischer Teil Quantenfouriertransformation Algorithmus zur Suche nach Perioden

Mehr

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7)

Übersicht. Datenstrukturen und Algorithmen. Übersicht. Divide-and-Conquer. Vorlesung 9: Quicksort (K7) Datenstrukturen und Algorithmen Vorlesung 9: (K7) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.rwth-aachen.de/i2/dsal0/ Algorithmus 8. Mai 200 Joost-Pieter

Mehr

Kommunikationsalgorithmus RSA

Kommunikationsalgorithmus RSA Kommunikationsalgorithmus RSA Herr Maue Ergänzungsfach Informatik Neue Kantonsschule Aarau Früjahrsemester 2015 24.04.2015 EFI (Hr. Maue) Kryptographie 24.04.2015 1 / 26 Programm heute 1. Verschlüsselungsverfahren

Mehr

Algorithmen & Datenstrukturen 1. Klausur

Algorithmen & Datenstrukturen 1. Klausur Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei

Mehr

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS) Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,

Mehr

3 Das RSA-Kryptosystem

3 Das RSA-Kryptosystem Stand: 15.12.2014 Vorlesung Grundlagen und Methoden der Kryptographie Dietzfelbinger 3 Das RSA-Kryptosystem RSA: Erfunden von Ronald L. Rivest, Adi Shamir und Leonard Adleman, 1977. (Ein ähnliches Verfahren

Mehr

Theoretische Informatik

Theoretische Informatik Theoretische Informatik Einheit 1 Mathematische Methodik 1. Problemlösen 2. Beweistechniken 3. Wichtige Grundbegriffe Methodik des Problemlösens Klärung der Voraussetzungen Welche Begriffe sind zum Verständnis

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

10. Public-Key Kryptographie

10. Public-Key Kryptographie Stefan Lucks 10. PK-Krypto 274 orlesung Kryptographie (SS06) 10. Public-Key Kryptographie Analyse der Sicherheit von PK Kryptosystemen: Angreifer kennt öffentlichen Schlüssel Chosen Plaintext Angriffe

Mehr

Probabilistische Primzahltests

Probabilistische Primzahltests Probabilistische Primzahltests Daniel Tanke 11. Dezember 2007 In dieser Arbeit wird ein Verfahren vorgestellt, mit welchem man relativ schnell testen kann, ob eine ganze Zahl eine Primzahl ist. Für einen

Mehr

Approximationsalgorithmen am Beispiel des Traveling Salesman Problem

Approximationsalgorithmen am Beispiel des Traveling Salesman Problem Approximationsalgorithmen am Beispiel des Traveling Salesman Problem Seminararbeit im Rahmen des Seminars Algorithmentechnik vorgelegt von Leonie Sautter Leiter des Seminars: Juniorprof. Dr. Henning Meyerhenke

Mehr

Kodierungsalgorithmen

Kodierungsalgorithmen Kodierungsalgorithmen Komprimierung Verschlüsselung Komprimierung Zielsetzung: Reduktion der Speicherkapazität Schnellere Übertragung Prinzipien: Wiederholungen in den Eingabedaten kompakter speichern

Mehr

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012

Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2011/2012 Hier Aufkleber mit Name und Matrikelnr. anbringen

Mehr

Probabilistische Primzahlensuche. Marco Berger

Probabilistische Primzahlensuche. Marco Berger Probabilistische Primzahlensuche Marco Berger April 2015 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 4 1.1 Definition Primzahl................................ 4 1.2 Primzahltest...................................

Mehr

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme Faktorisierung Stefan Büttcher stefan@buettcher.org 1 Definition. (RSA-Problem) Gegeben: Ò ÔÕ, ein RSA-Modul mit unbekannten Primfaktoren

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 2.3 One-Time Pads und Perfekte Sicherheit 1. Perfekte Geheimhaltung 2. One-Time Pads 3. Strombasierte Verschlüsselung Wie sicher kann ein Verfahren werden? Ziel ist

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 10.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

11. Übung zu Algorithmen I 6. Juli 2016

11. Übung zu Algorithmen I 6. Juli 2016 11. Übung zu Algorithmen I 6. Juli 2016 Lisa Kohl lisa.kohl@kit.edu mit Folien von Lukas Barth Roadmap Ausblick: Was sind schwierige Probleme? Travelling Salesman Problem - Reprise ein ILP ein Algorithmus

Mehr

Grundlagen der Verschlüsselung und Authentifizierung (2)

Grundlagen der Verschlüsselung und Authentifizierung (2) Grundlagen der Verschlüsselung und Authentifizierung (2) Benjamin Klink Friedrich-Alexander Universität Erlangen-Nürnberg Benjamin.Klink@informatik.stud.uni-erlangen.de Proseminar Konzepte von Betriebssystem-Komponenten

Mehr

Schulmathematik und Algorithmen der Computeralgebra

Schulmathematik und Algorithmen der Computeralgebra Schulmathematik und Algorithmen der Computeralgebra Prof. Dr. Wolfram Koepf Universität Kassel http://www.mathematik.uni-kassel.de/~koepf Tag der Mathematik 13. Dezember 2008 Universität Passau Überblick

Mehr

Lenstras Algorithmus für Faktorisierung

Lenstras Algorithmus für Faktorisierung Lenstras Algorithmus für Faktorisierung Bertil Nestorius 9 März 2010 1 Motivation Die schnelle Faktorisierung von Zahlen ist heutzutage ein sehr wichtigen Thema, zb gibt es in der Kryptographie viele weit

Mehr

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20.

Übersicht. Datenstrukturen und Algorithmen Vorlesung 5: Rekursionsgleichungen (K4) Übersicht. Binäre Suche. Joost-Pieter Katoen. 20. Übersicht Datenstrukturen und Algorithmen Vorlesung 5: (K4) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://www-i2.informatik.rwth-aachen.de/i2/dsal12/ 20.

Mehr

Randomisierte Primzahltests Paul Gamper

Randomisierte Primzahltests Paul Gamper Randomisierte Primzahltests Paul Gamper Seminar im Wintersemester 2006/07 Probability and Randomization in Computer Science 07.02.2007, Aachen 1 Abstract Nach einer Einführung, in der ich kurz auf die

Mehr

Computeralgebra in der Lehre am Beispiel Kryptografie

Computeralgebra in der Lehre am Beispiel Kryptografie Kryptografie Grundlagen RSA KASH Computeralgebra in der Lehre am Beispiel Kryptografie Institut für Mathematik Technische Universität Berlin Kryptografie Grundlagen RSA KASH Überblick Kryptografie mit

Mehr

SCHRIFTLICHE ZUSAMMENFASSUNG ZUM VORTRAG DIE GRUNDLAGEN DER RSA-VERSCHLÜSSELUNG VON DANIEL METZSCH

SCHRIFTLICHE ZUSAMMENFASSUNG ZUM VORTRAG DIE GRUNDLAGEN DER RSA-VERSCHLÜSSELUNG VON DANIEL METZSCH SCHRIFTLICHE ZUSAMMENFASSUNG ZUM VORTRAG DIE GRUNDLAGEN DER RSA-VERSCHLÜSSELUNG VON DANIEL METZSCH Freie Universität Berlin Fachbereich für Mathematik & Informatik Institut für Mathematik II Seminar über

Mehr

In beiden Fällen auf Datenauthentizität und -integrität extra achten.

In beiden Fällen auf Datenauthentizität und -integrität extra achten. Stromchiffren Verschlüsseln eines Stroms von Daten m i (Bits/Bytes) mithilfe eines Schlüsselstroms k i in die Chiffretexte c i. Idee: Im One-Time Pad den zufälligen Schlüssel durch eine pseudo-zufällige

Mehr

Definition. Fibonacci-Zahlen als Beispiel Für f = (f n ) n 0 = (0, 1, 1, 2, 3, 5, 8, 13, 21, 34,...) gilt Rekursion. Matrix-Formulierung. c 2.

Definition. Fibonacci-Zahlen als Beispiel Für f = (f n ) n 0 = (0, 1, 1, 2, 3, 5, 8, 13, 21, 34,...) gilt Rekursion. Matrix-Formulierung. c 2. Fibonacci-Zahlen als Beispiel Für f = (f n ) = (0,,, 2, 3, 5, 8, 3, 2, 34,...) gilt Rekursion erzeugende Funktion f n2 = f n f n (n 0), f 0 = 0, f = f(z) = f n z n = z z z 2 Partialbruchzerlegung mit φ

Mehr

Einführung in Algorithmen und Komplexität

Einführung in Algorithmen und Komplexität Einführung in Algorithmen und Komplexität SS2004 w u v High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 Was haben wir bisher gemacht? - Rechenmodell:

Mehr

1 Das RSA-Verfahren und seine algorithmischen Grundlagen

1 Das RSA-Verfahren und seine algorithmischen Grundlagen 1 Das RSA-Verfahren und seine algorithmischen Grundlagen Das wichtigste d. h., am weitesten verbreitete und am meisten analysierte asymmetrische Verfahren ist das RSA-Verfahren, benannt nach seinen Erfindern

Mehr

Was Computer nicht berechnen können

Was Computer nicht berechnen können Was Computer nicht berechnen können Hochschulinformationstag 13 Juni 2003 Christoph Kreitz Theoretische Informatik, Raum 119, Telephon 3064 kreitz@csuni-potsdamde http://wwwcsuni-potsdamde/ti Computer

Mehr

Ein RSA verwandtes, randomisiertes Public Key Kryptosystem

Ein RSA verwandtes, randomisiertes Public Key Kryptosystem Seminar Codes und Kryptographie WS 2003 Ein RSA verwandtes, randomisiertes Public Key Kryptosystem Kai Gehrs Übersicht 1. Motivation 2. Das Public Key Kryptosystem 2.1 p-sylow Untergruppen und eine spezielle

Mehr

Public-Key-Algorithmen WS2015/2016

Public-Key-Algorithmen WS2015/2016 Public-Key-Algorithmen WS2015/2016 Lernkontrollfragen Michael Braun Was bedeuten die kryptographischen Schutzziele Vertraulichkeit, Integrität, Nachrichtenauthentizität, Teilnehmerauthentizität, Verbindlichkeit?

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

Bin Packing oder Wie bekomme ich die Klamotten in die Kisten?

Bin Packing oder Wie bekomme ich die Klamotten in die Kisten? Bin Packing oder Wie bekomme ich die Klamotten in die Kisten? Ich habe diesen Sommer mein Abi gemacht und möchte zum Herbst mit dem Studium beginnen Informatik natürlich! Da es in meinem kleinen Ort keine

Mehr

Der Zwei-Quadrate-Satz von Fermat

Der Zwei-Quadrate-Satz von Fermat Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat

Mehr

Expander Graphen und Ihre Anwendungen

Expander Graphen und Ihre Anwendungen Expander Graphen und Ihre Anwendungen Alireza Sarveniazi Mathematisches Institut Universität Göttingen 21.04.2006 Alireza Sarveniazi (Universität Göttingen) Expander Graphen und Ihre Anwendungen 21.04.2006

Mehr

Künstliche Intelligenz Maschinelles Lernen

Künstliche Intelligenz Maschinelles Lernen Künstliche Intelligenz Maschinelles Lernen Stephan Schwiebert Sommersemester 2009 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Maschinelles Lernen Überwachtes Lernen

Mehr

Graphen: Datenstrukturen und Algorithmen

Graphen: Datenstrukturen und Algorithmen Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.

Mehr

8 Diskrete Optimierung

8 Diskrete Optimierung 8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra Effiziente Algorithmen und Datenstrukturen I Kapitel 10: Lineare Algebra Christian Scheideler WS 2008 19.02.2009 Kapitel 10 1 Überblick Notation Arithmetik auf großen Zahlen (Addition und Multiplikation)

Mehr

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf

Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die Informatik 2 NP-Vollständigkeit Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr, o.n.v.

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 6: Matchings und TSP-Problem Dipl-Math. Wolfgang Kinzner 4.4.2012 Kapitel 6: Matchings und TSP-Problem Matching und Matchingproblem Flussalgorithmus

Mehr