Zufall oder Absicht?

Größe: px
Ab Seite anzeigen:

Download "Zufall oder Absicht?"

Transkript

1 Zufall oder Absicht? Randomisierung und Derandomisierung Prof. Markus Bläser Universität des Saarlandes 4. Januar / 21

2 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests 3 Straightline-Programm-Identitätstest 2 / 21

3 Randomisierte Algorithmen Algorithmus Eingabe x int Ulam(int x) { if x % 2 == 0 return x/2; return 3 x + 1; } Ausgabe y 3 / 21

4 Randomisierte Algorithmen Algorithmus Eingabe x function Ulam(x: Integer): Integer Begin if x MOD 2 = 0 then Ulam := x/2 else Ulam := 3 x + 1; End; Ausgabe y 3 / 21

5 Randomisierte Algorithmen Algorithmus Eingabe x int Ulam(int x) { if x % 2 == 0 return x/2; return 3 x + 1; } Ausgabe y 3 / 21

6 Randomisierte Algorithmen Algorithmus Eingabe x int Ulam(int x) { if x % 2 == 0 return x/2; return 3 x + 1; } Ausgabe y Jetzt: Algorithmus kann Münzen werfen, d.h. es gibt eine Funktion RandBit(), die mit Wahrscheinlichkeit 1/2 den Wert 1 und mit Wahrscheinlichkeit 1/2 den Wert 0 liefert. 3 / 21

7 Komplexitätstheorie Komplexitätstheoretische Untersuchungen: 1 Abstraktion mathematische Modelle 2 Beweis exakter Aussagen über 1 Laufzeit 2 Speicherplatz 3 Anzahl verwendeter Zufallsbits 4... Beweis und exakt heißt z.b. auf jede Eingabe x werden f( x ) viele Rechenschritte gemacht und nicht: auf 100 Testeingaben wurde im Mittel 10ms gerechnet. 4 / 21

8 Komplexitätstheorie Komplexitätstheoretische Untersuchungen: 1 Abstraktion mathematische Modelle 2 Beweis exakter Aussagen über 1 Laufzeit 2 Speicherplatz 3 Anzahl verwendeter Zufallsbits 4... Beweis und exakt heißt z.b. auf jede Eingabe x werden f( x ) viele Rechenschritte gemacht und nicht: auf 100 Testeingaben wurde im Mittel 10ms gerechnet. Konkret bedeutet dies für heute: weniger bunte Bilder, mehr Mathematik 4 / 21

9 Komplexitätstheorie Komplexitätstheoretische Untersuchungen: 1 Abstraktion mathematische Modelle 2 Beweis exakter Aussagen über 1 Laufzeit 2 Speicherplatz 3 Anzahl verwendeter Zufallsbits 4... Beweis und exakt heißt z.b. auf jede Eingabe x werden f( x ) viele Rechenschritte gemacht und nicht: auf 100 Testeingaben wurde im Mittel 10ms gerechnet. Konkret bedeutet dies für heute: weniger bunte Bilder, mehr Mathematik weniger Verpackung, mehr Inhalt 4 / 21

10 Randomisierte Algorithmen (2) Was ist die Ausgabe eines randomisierten Algorithmus? int Test(int x) { if (RandBit() == 1) return x; if (RandBit() == 1) return x + 1; return 3; } Was ist die Ausgabe von Test(0)? 5 / 21

11 Randomisierte Algorithmen (2) Was ist die Ausgabe eines randomisierten Algorithmus? int Test(int x) { if (RandBit() == 1) return x; if (RandBit() == 1) return x + 1; return 3; } Was ist die Ausgabe von Test(0)? Wahrscheinlichkeitsverteilung auf den möglichen Outputs, also Ausgabe Wahrscheinlichkeit / 21

12 Entscheidungsprobleme Entscheidungsproblem Ausgabe 1: Eingabe hat Eigenschaft Ausgabe 0: Eingabe hat Eigenschaft nicht 6 / 21

13 Entscheidungsprobleme Entscheidungsproblem Ausgabe 1: Eingabe hat Eigenschaft Ausgabe 0: Eingabe hat Eigenschaft nicht Beispiel: Primzahltest Eingabe: { n N 1 n prim Ausgabe: 0 sonst 6 / 21

14 Randomisierte Algorithmen (3) Beispiel: Primzahltest Eingabe n prim: Ausgabe 1 mit Wahrscheinlichkeit > 1/2 (damit Augabe 0 mit Wahrscheinlichkeit < 1/2) n nicht prim: Ausgabe 0 mit Wahrscheinlichkeit > 1/2 (und Ausgabe 1 mit Wahrscheinlichkeit < 1/2). 7 / 21

15 Randomisierte Algorithmen (3) Beispiel: Primzahltest Eingabe n prim: Ausgabe 1 mit Wahrscheinlichkeit > 1/2 (damit Augabe 0 mit Wahrscheinlichkeit < 1/2) n nicht prim: Ausgabe 0 mit Wahrscheinlichkeit > 1/2 (und Ausgabe 1 mit Wahrscheinlichkeit < 1/2). Problem: > 1/2, aber die Ausgabe des Primzahltest wird sich kaum von einem Münzwurf unterscheiden! Ich schummle gerade etwas... 7 / 21

16 Randomisierte Algorithmen (3) Beispiel: Primzahltest Eingabe n prim: Ausgabe 1 mit Wahrscheinlichkeit > 1/2 (damit Augabe 0 mit Wahrscheinlichkeit < 1/2) n nicht prim: Ausgabe 0 mit Wahrscheinlichkeit > 1/2 (und Ausgabe 1 mit Wahrscheinlichkeit < 1/2). Problem: > 1/2, aber die Ausgabe des Primzahltest wird sich kaum von einem Münzwurf unterscheiden! Ich schummle gerade etwas... Lösung: Beschränkte Fehlerwahrscheinlichkeit! Eingabe n prim: Ausgabe 1 mit Wahrscheinlichkeit 2/3 (damit Ausgabe 0 mit Wahrscheinlichkeit 1/3) n nicht prim: Ausgabe 0 mit Wahrscheinlichekit 2/3 (und Ausgabe 1 mit Wahrscheinlichkeit 1/3). 7 / 21

17 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. 8 / 21

18 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. 8 / 21

19 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. Wahrscheinlichkeiten: einmal 2 3 dreimal fünfmal. n-mal 8 / 21

20 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. Wahrscheinlichkeiten: 2 einmal 3 ( dreimal 2 ) 3 ( ) = fünfmal. n-mal 8 / 21

21 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. Wahrscheinlichkeiten: 2 einmal 3 ( dreimal 2 ) 3 ( ) = fünfmal n-mal 8 / 21

22 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. Wahrscheinlichkeiten: 2 einmal 3 ( dreimal 2 ) 3 ( ) = fünfmal n-mal c n 8 / 21

23 Probability Amplification Frage: Warum ist 2/3 besser als > 1/2. Antwort: Probability Amplification! Idee: Lasse Algorithmus mehrmals statt einmal laufen und treffe Mehrheitsentscheid. Wahrscheinlichkeiten: 2 einmal 3 ( dreimal 2 ) 3 ( ) = fünfmal n-mal c n Selbst für mäßig große n ist die Fehlerwahrscheinlichkeit z.b. kleiner als die Wahrscheinlichkeit eines Hardware-Fehlers. 8 / 21

24 Bedeutung der Randomisierung Zentrale Frage: Hilft Randomisierung? 9 / 21

25 Bedeutung der Randomisierung Zentrale Frage: Hilft Randomisierung? Zwei Antworten: 1 Kommt darauf an. 2 Vielleicht, aber eher nicht. 9 / 21

26 Derandomisierung (1) Prinzipiell hilft Randomisierung nicht: Theorem Kann f : N {0, 1} durch einen randomisierten Algorithmus A berechnet werden, dann kann f auch durch einen deterministischen Algorithmus ^A berechnet werden. 10 / 21

27 Derandomisierung (2) Beweis: A verwende r(l) =: r Zufallsbits auf Eingaben der Länge l. 1 ^A auf Eingabe x wird durch folgendes Programm beschrieben: Boolean RandString[r]; c accept := 0; c reject := 0; for jede Belegung von RandString do Simuliere A auf Eingabe x Immer wenn A RandBit() aufruft, verwende RandString Gibt A 1 aus, erhöhe c accept. Sonst c reject. end for Falls c accept > c reject, return 1. Sonst return 0. 1 Länge von n N: Anzahl Bits log 2 (n) 11 / 21

28 Derandomisierung (2) Beweis: A verwende r(l) =: r Zufallsbits auf Eingaben der Länge l. 1 ^A auf Eingabe x wird durch folgendes Programm beschrieben: Boolean RandString[r]; c accept := 0; c reject := 0; for jede Belegung von RandString do Simuliere A auf Eingabe x Immer wenn A RandBit() aufruft, verwende RandString Gibt A 1 aus, erhöhe c accept. Sonst c reject. end for Falls c accept > c reject, return 1. Sonst return 0. Problem: A wird 2 r -mal ausgeführt! 1 Länge von n N: Anzahl Bits log 2 (n) 11 / 21

29 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests 3 Straightline-Programm-Identitätstest 12 / 21

30 Polynom-Identitätstests Eingabe: Polynom p(x) = a n X n + a n 1 X n a 1 X + a 0 vom Grad n mit a ν Z, 0 ν n. { 1 falls p 0 Ausgabe: 0 sonst 13 / 21

31 Polynom-Identitätstests Eingabe: Polynom p(x) = a n X n + a n 1 X n a 1 X + a 0 vom Grad n mit a ν Z, 0 ν n. { 1 falls p 0 Ausgabe: 0 sonst Hahahaha... weil p 0 a n = a n 1 = = a 1 = a 0 = 0 13 / 21

32 Polynom-Identitätstests (2) Modell: Blackbox-Modell Eingabe x Z p(x) = a n X n + a n 1 X n a 1 X + a 0 Ausgabe: p(x) Z 14 / 21

33 Polynom-Identitätstests (2) Modell: Blackbox-Modell Eingabe x Z p(x) = a n X n + a n 1 X n a 1 X + a 0 Ausgabe: p(x) Z Algorithmus kann p an beliebiger Stelle auswerten, hat aber keinen Zugriff auf die Koeffizienten. Algorithmus { kennt n (obere Schranke für Grad). 1 falls p in Blackbox identisch 0 Ausgabe: 0 sonst 14 / 21

34 Polynom-Identitätstests (3) Theorem 1 Es gibt einen randomisierten Algorithmus für das Polynom-Identitätsproblem mit Fehlerwahrscheinlichkeit 1/3, der die Blackbox nur einmal fragt. 2 Jeder deterministische Algorithmus, der das Polynom-Identitätsproblem löst, muß die Blackbox mindestens (n + 1)-mal fragen. 15 / 21

35 Zufall oder Absicht? 1 Randomisierte Algorithmen 2 Polynom-Identitätstests 3 Straightline-Programm-Identitätstest 16 / 21

36 Straightline-Programme Definition Ein Straightline-Programm ist eine Folge von Zuweisungen der Form w i := c, w i := w j ± w k, w i := w j w k, c Z j, k < i j, k < i für i = 1, 2,..., l. Semantik: wie erwartet... w i := c in Register w i wird c geschrieben w i := w j + w k nach w i wird die Summe von w j und w k geschrieben / 21

37 Straightline-Programm-Identitätstest Eingabe: { Straightline-Programm P der Länge l. 1 falls 0 in w l steht Ausgabe: 0 sonst 18 / 21

38 Straightline-Programm-Identitätstest Eingabe: { Straightline-Programm P der Länge l. 1 falls 0 in w l steht Ausgabe: 0 sonst Warum ist das schwierig? Betrachte w 1 = 2, w i = w i 1 w i 1, i = 2,..., l. Es gilt: w i = 2 2i 1. Viel zu groß! 18 / 21

39 Straightline-Programm-Identitätstest (2) Sei Q die Menge der ersten 3 2 l Primzahlen. 1 Wähle ein q Q zufällig. 2 Werte P modulo q aus, d.h. berechne jeweils w i := w j + w k mod q. 3 Gebe gleich 0 aus, wenn w l = 0 (modulo q!) Sonst gebe ungleich 0 aus. 19 / 21

40 Straightline-Programm-Identitätstest (2) Sei Q die Menge der ersten 3 2 l Primzahlen. 1 Wähle ein q Q zufällig. 2 Werte P modulo q aus, d.h. berechne jeweils w i := w j + w k mod q. 3 Gebe gleich 0 aus, wenn w l = 0 (modulo q!) Sonst gebe ungleich 0 aus. Theorem 1 Ist w l = 0, so irrt der Algorithmus nie. 2 Ist w l 0, so irrt der Algorithmus mit Wahrscheinlichkeit 1/3. 19 / 21

41 Details Wie viele Primzahlen gibt es? Theorem (Primzahlsatz) ( n ) ln n 2 ln n < #[Primzahlen n] < n ln n ( ) 3 ln n 20 / 21

42 Details Wie viele Primzahlen gibt es? Theorem (Primzahlsatz) ( n ) ln n 2 ln n < #[Primzahlen n] < n ln n Wie wählt man eine Primzahl t zufällig? 1 Wähle eine zufällige Zahl t. 2 Wenn diese nicht prim ist, gehe zu 1. ( ) 3 ln n 20 / 21

43 Details Wie viele Primzahlen gibt es? Theorem (Primzahlsatz) ( n ) ln n 2 ln n < #[Primzahlen n] < n ln n Wie wählt man eine Primzahl t zufällig? 1 Wähle eine zufällige Zahl t. 2 Wenn diese nicht prim ist, gehe zu 1. Wie testet man, ob eine Zahl prim ist? Ein anderes Mal... ( ) 3 ln n 20 / 21

44 Fazit Fazit: Randomisierung hilft nicht prinzipiell. Randomisierung hilft in eingeschränkten Modellen. Randomisierung hilft, Zeugen zu finden, so fern es viele gibt. Offenens Problem: Macht Randomisierung Algorithmen schneller? 21 / 21

45 Fazit Fazit: Randomisierung hilft nicht prinzipiell. Randomisierung hilft in eingeschränkten Modellen. Randomisierung hilft, Zeugen zu finden, so fern es viele gibt. Offenens Problem: Macht Randomisierung Algorithmen schneller? Pseudozufallsgeneratoren kurzer {0, 1}-String (Seed) langer {0, 1}-String Verwende den langen String in ^A! 21 / 21

Kryptographische Protokolle

Kryptographische Protokolle Kryptographische Protokolle Lerneinheit 2: Generierung von Primzahlen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2018/2019 15.11.2018 Einleitung Einleitung Diese Lerneinheit

Mehr

RSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n)

RSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n) RSA Parameter { öffentlich: N = pq mit p, q prim und e Z RSA Parameter φ(n) geheim: d Z φ(n) mit ed = 1 mod φ(n). Satz RSA Parameter Generierung RSA-Parameter (N, e, d) können in Zeit O(log 4 N) generiert

Mehr

Einwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008

Einwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008 Problemseminar Komplexitätstheorie und Kryptographie Martin Huschenbett Student am Institut für Informatik an der Universität Leipzig 30. Oktober 2008 1 / 33 Gliederung 1 Randomisierte Algorithmen und

Mehr

1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben?

1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben? Die Themen 1. Welche Eigenschaften sollte ein Pseudo-Random Generator haben? Er sollte von wirklichen Zufallsgeneratoren nicht unterscheidbar sein?! Eine viel zu starke Forderung: Stattdessen sollte ein

Mehr

Der komplexitätstheoretische Zugang zur Kryptographie

Der komplexitätstheoretische Zugang zur Kryptographie Der komplexitätstheoretische Zugang zur Kryptographie Claus Diem Im Wintersemester 2017 / 18 Literatur Oded Goldreich: Foundations of Cryptography Jonathan Katz & Yeduda Lindell: Intoduction to Modern

Mehr

Randomisierte Algorithmen 2. Erste Beispiele

Randomisierte Algorithmen 2. Erste Beispiele Randomisierte Algorithmen Randomisierte Algorithmen 2. Erste Beispiele Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2016/2017 1 / 35 Randomisierter Identitätstest

Mehr

Diskrete Mathematik 1

Diskrete Mathematik 1 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt

Mehr

Algorithmentheorie Randomisierung

Algorithmentheorie Randomisierung Algorithmentheorie 03 - Randomisierung Prof. Dr. S. Albers Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten

Mehr

Probabilistische Primzahltests

Probabilistische Primzahltests 23.01.2006 Motivation und Überblick Grundsätzliches Vorgehen Motivation und Überblick Als Primzahltest bezeichnet man ein mathematisches Verfahren, mit dem ermittelt wird, ob eine gegebene Zahl eine Primzahl

Mehr

PRIMES is in P. Ein Vortrag von Holger Szillat.

PRIMES is in P. Ein Vortrag von Holger Szillat. PRIMES is in P Ein Vortrag von Holger Szillat szillat@informatik.uni-tuebingen.de Übersicht Geschichte Notationen und Definitionen Der Agrawal-Kayal-Saxena-Algorithmus Korrektheit und Aufwand Fazit Geschichte

Mehr

Der Primzahltest von Agrawal, Kayal und Saxena. Dr. Gerold Jäger

Der Primzahltest von Agrawal, Kayal und Saxena. Dr. Gerold Jäger Der Primzahltest von Agrawal, Kayal und Saxena Dr. Gerold Jäger Habilitationsvortrag Christian-Albrechts-Universität zu Kiel Institut für Informatik 19. Januar 2011 Dr. Gerold Jäger Habilitationsvortrag

Mehr

1 Algorithmische Grundlagen

1 Algorithmische Grundlagen 1 Algorithmische Grundlagen Klocke/17.03.2003 1.1 1.1 Begriffsklärung Fragen Begriffsklärungen Abstraktionsebenen für Algorithmen und Datenstrukturen Algorithmus Qualität von Algorithmen Klocke/17.03.2003

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

Algorithmen und Datenstrukturen SS Übungsblatt 1: Grundlagen

Algorithmen und Datenstrukturen SS Übungsblatt 1: Grundlagen Ludwig-Maximilians-Universität München München, 16.04.2018 Institut für Informatik Prof. Dr. Thomas Seidl Anna Beer, Florian Richter Algorithmen und Datenstrukturen SS 2018 Übungsblatt 1: Grundlagen Tutorien:

Mehr

3 Probabilistische Komplexitätsklassen

3 Probabilistische Komplexitätsklassen 3 Probabilistische Komplexitätsklassen 3.1 Probabilistische Turingmaschinen 3.1 Wir gehen davon aus, dass die Konzepte deterministischer und nichtdeterministischer Turingmaschinen im wesentlichen bekannt

Mehr

Zusammenfassung. Warum polynomielle Reduktionen? Definition NP-vollständig [K5.1.1] NP-Vollständigkeitstheorie [K5]

Zusammenfassung. Warum polynomielle Reduktionen? Definition NP-vollständig [K5.1.1] NP-Vollständigkeitstheorie [K5] Warum polynomielle Reduktionen? erlauben feinere Unterteilungen von Komplexitätsklassen als Turing- Reduktionen, genügen für die betrachteten Probleme, für alle von uns betrachteten Komplexitätsklassen

Mehr

Ferien-Übungsblatt 8 Lösungsvorschläge

Ferien-Übungsblatt 8 Lösungsvorschläge Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Ferien-Übungsblatt 8 Lösungsvorschläge Vorlesung Algorithmentechnik im WS 09/10 Problem 1: Probabilistische Komplexitätsklassen [vgl.

Mehr

Programmieren und Problemlösen

Programmieren und Problemlösen Dennis Komm Programmieren und Problemlösen Komplexität von Algorithmen Frühling 2019 27. Februar 2019 Komplexität von Algorithmen Aufgabe Primzahltest Schreibe ein Programm, das eine ganze Zahl x als Eingabe

Mehr

Primzahltests und Faktorisierung. Primzahltests. Nuria Brede Universität Potsdam - Kryptographie SoSe 2005 Seite 1

Primzahltests und Faktorisierung. Primzahltests. Nuria Brede Universität Potsdam - Kryptographie SoSe 2005 Seite 1 Primzahltests und Faktorisierung Primzahltests Primzahltests Nuria Brede 16.06.2005 16.06.2005 Universität Potsdam - Kryptographie SoSe 2005 Seite 1 Primzahltests und Faktorisierung Primzahltests Inhalt

Mehr

Algorithmische Kryptographie

Algorithmische Kryptographie Algorithmische Kryptographie Walter Unger Lehrstuhl für Informatik I 16. Februar 2007 Public-Key-Systeme: Rabin 1 Das System nach Rabin 2 Grundlagen Körper Endliche Körper F(q) Definitionen Quadratwurzel

Mehr

Miller-Rabin Test. Primzahl- und Zerlegbarkeitstests. Zeugen für die Zerlegbarkeit ganzer Zahlen

Miller-Rabin Test. Primzahl- und Zerlegbarkeitstests. Zeugen für die Zerlegbarkeit ganzer Zahlen Miller-Rabin Test Primzahl- und Zerlegbarkeitstests Sei N eine positive ganze Zahl. Wie kann man möglichst effizient feststellen, ob N eine Primzahl oder zerlegbar ist? Dies ist die Aufgabe von Primzahlund

Mehr

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen 3: Primzahlen 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen Definition 40 (Teiler, Vielfache, Primzahlen, zusammengesetzte Zahlen) Seien a, b N. a ist ein Teiler von b ( a b ), falls es ein k N gibt

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

Probabilistische Algorithmen

Probabilistische Algorithmen Probabilistische Algorithmen Michal Švancar Gerardo Balderas Hochschule Zittau/Görlitz 21. Dezember 2014 Michal Švancar, Gerardo Balderas (HSZG) Probabilistische Algorithmen 21. Dezember 2014 1 / 40 Inhaltsverzeichnis

Mehr

Miller-Rabin Test. Primzahl- und Zerlegbarkeitstests. Zeugen für die Zerlegbarkeit ganzer Zahlen

Miller-Rabin Test. Primzahl- und Zerlegbarkeitstests. Zeugen für die Zerlegbarkeit ganzer Zahlen Miller-Rabin Test Primzahl- und Zerlegbarkeitstests Sei N eine positive ganze Zahl. Wie kann man möglichst effizient feststellen, ob N eine Primzahl oder zerlegbar ist? Dies ist die Aufgabe von Primzahlund

Mehr

Wahrscheinlichkeitsrechnung und Statistik

Wahrscheinlichkeitsrechnung und Statistik Babeş-Bolyai Universität Fakultät für Mathematik und Informatik Oktober 2018 Im Alltag... Laut den meteorologischen Vorhersagen wird es morgen regnen. Ob ich riskiere und die Wette verlieren werde? Ich

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Technische Universität München Fakultät für Informatik Lehrstuhl für Effiziente Algorithmen Dr. Hanjo Täubig Tobias Lieber Sommersemester 2011 Übungsblatt 1 16. September 2011 Grundlagen: Algorithmen und

Mehr

Primzahltest in Polynomialzeit Der Algorithmus von Agrawal, Kayal und Saxena

Primzahltest in Polynomialzeit Der Algorithmus von Agrawal, Kayal und Saxena Primzahltest in Polynomialzeit Der Algorithmus von Agrawal, Kayal und Saxena 1. Worum geht es? Das Problem, um das es geht, heißt PRIMES. Es entscheidet für eine vorgegebene Zahl n > 2 die Frage, ob n

Mehr

Euklidischer Algorithmus

Euklidischer Algorithmus Euklidischer Algorithmus Ermitteln des größten gemeinsamen Teilers mit Euklid: function ggt (m, n) Hierbei ist m begin 0undn 0vorausgesetzt. if m = 0 then return n else return ggt (n mod m, m) fi end Man

Mehr

Algorithmen und Komplexität, Teil II: Berechenbarkeit und Komplexität

Algorithmen und Komplexität, Teil II: Berechenbarkeit und Komplexität Algorithmen und Komplexität, Teil II: Berechenbarkeit und Komplexität Ralph Keusch 21. November 2017 Berechenbarkeitstheorie RAM-Maschine 1: M 1 1 2: M 0 1 3: M 0 M 0 M 1 4: M 2 M 2 M 1 5: GOTO 3 IF M

Mehr

2 Erste Beispiele. 2.1 Ein randomisierter Identitätstest

2 Erste Beispiele. 2.1 Ein randomisierter Identitätstest Erste Beispiele.1 Ein randomisierter Identitätstest Im folgenden geht es um die Aufgabe, die Gleichheit zweier großer Objekte zu überprüfen. Dabei werden die Objekte nicht in ihrer gesamten Struktur verglichen,

Mehr

Algorithmen auf Zeichenketten

Algorithmen auf Zeichenketten Algorithmen auf Zeichenketten Rabin-Karp Algorithmus Christoph Hermes hermes@hausmilbe.de Zeichenketten: Rabin-Karp Algorithmus p. 1/19 Ausblick auf den Vortrag theoretische Grundlagen... Zeichenketten:

Mehr

Übersicht. 1 Einführung. 2 Suchen und Sortieren. 3 Graphalgorithmen. 4 Algorithmische Geometrie. 5 Textalgorithmen. 6 Paradigmen

Übersicht. 1 Einführung. 2 Suchen und Sortieren. 3 Graphalgorithmen. 4 Algorithmische Geometrie. 5 Textalgorithmen. 6 Paradigmen Übersicht 1 Einführung 2 Suchen und Sortieren 3 Graphalgorithmen 4 Algorithmische Geometrie 5 6 Paradigmen Übersicht 5 Editdistanz (Folie 446, Seite 83 im Skript) Eingabe: Zwei Strings v und w Frage: Kommt

Mehr

Stromchiffre. Algorithmus Stromchiffre

Stromchiffre. Algorithmus Stromchiffre Stromchiffre Algorithmus Stromchiffre Sei G ein Pseudozufallsgenerator mit Expansionsfaktor l(n). Wir definieren Π s = (Gen, Enc, Dec) mit Sicherheitsparameter n für Nachrichten der Länge l(n). 1 Gen:

Mehr

Randomisierte Algorithmen Algorithmen, die Zufallsbits benutzen können. Fehlerfreie Algorithmen (Las-Vegas-Alg)

Randomisierte Algorithmen Algorithmen, die Zufallsbits benutzen können. Fehlerfreie Algorithmen (Las-Vegas-Alg) Wiederholung Randomisierte Algorithmen Algorithmen, die Zufallsbits benutzen können. Fehlerfreie Algorithmen (Las-Vegas-Alg) Komplexitätsklassen: EP=ZPP Algorithmen mit Fehlern (Monte-Carlo-Alg) Zweiseitiger

Mehr

Beispiel für simultane Kongruenz

Beispiel für simultane Kongruenz Beispiel für simultane Kongruenz Jetzt wollen wir das Lemma der letzten Einheit anwenden. Wenn man eine Zahl sucht, die kongruent zu y modulo m und kongruent zu z modulo n ist, so nehme man zam + ybn wobei

Mehr

Bsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994).

Bsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994). Primzahltest Wir wollen testen, ob eine gegebene Zahl n eine Primzahl ist Effizienter Algorithmus zum Faktorisieren ist unbekannt Kontraposition des Kleinen Satzes von Fermat liefert: Falls a n 1 1 mod

Mehr

Der Satz von Savitch

Der Satz von Savitch Der Satz von Savitch Satz (Savitch, 1970): Sei s 2 (log(n)). Danngilt NSPACE(s) DSPACE(s 2 ). Wir führen den Beweis für den Fall, dass s eine platzkonstruierbare Funktion ist: Sei M eine NTM, deren Platzbedarf

Mehr

Literatur. [9-3] [9-4]

Literatur. [9-3]   [9-4] Literatur [9-1] Willems, Wolfgang: Codierungstheorie und Kryptographie. Mathematik Kompakt, Birkhäuser, 2008 [9-2] Socher, Rolf: Algebra für Informatiker. Hanser, 2012 [9-3] https://de.wikipedia.org/wiki/fermatscher_primzahltest

Mehr

7 Die Sätze von Fermat, Euler und Wilson

7 Die Sätze von Fermat, Euler und Wilson 53 7 Die Sätze von Fermat, Euler und Wilson Es gibt einige Sätze aus der elementaren Zahlentheorie, die Spezialfälle von Aussagen über endliche Gruppen sind. Z.B. gilt für ein beliebiges Element x einer

Mehr

Probabilistische Turingmaschinen

Probabilistische Turingmaschinen Probabilistische Turingmaschinen Eike Müller 1. Juni 2010 Inhaltsverzeichnis 1 Motivation 2 2 Probabilistische Turingmaschinen 2 3 Einseitige Fehler und Nullseitige Fehler 3 3.1 Einseitige Fehler....................................

Mehr

Randomisierte Algorithmen am Beispiel Quicksort

Randomisierte Algorithmen am Beispiel Quicksort Randomisierte Algorithmen am Beispiel Quicksort Mathias Katzer Universität 28. Juli 2003 Mathias Katzer 0 Überblick Motivation: Begriff Randomisierung Quicksort Stochastik-Ausflug Effizienzanalyse Allgemeineres

Mehr

Formaler. Gegeben: Elementfolge s = e 1,...,e n. s ist Permutation von s e 1 e n für eine lineare Ordnung ` '

Formaler. Gegeben: Elementfolge s = e 1,...,e n. s ist Permutation von s e 1 e n für eine lineare Ordnung ` ' Sortieren & Co 164 165 Formaler Gegeben: Elementfolge s = e 1,...,e n Gesucht: s = e 1,...,e n mit s ist Permutation von s e 1 e n für eine lineare Ordnung ` ' 166 Anwendungsbeispiele Allgemein: Vorverarbeitung

Mehr

Der Miller-Rabin Primzahltest Florian Rienhardt Alle Rechte vorbehalten.

Der Miller-Rabin Primzahltest Florian Rienhardt Alle Rechte vorbehalten. 1 Der Miller-Rabin Primzahltest Der Miller-Rabin Primzahltest 2002-2009 Florian Rienhardt Alle Rechte vorbehalten. Zusammenfassung Für viele moderne Computeranwendungen, etwa für die Kryptographie, benötigt

Mehr

Monte-Carlo-Algorithmen für innermathematische Fragestellungen

Monte-Carlo-Algorithmen für innermathematische Fragestellungen Monte-Carlo-Algorithmen für innermathematische Fragestellungen Katharina Klembalski Humboldt-Universität Berlin 30. August 2012 Warum Monte-Carlo-Algorithmen im Mathematikunterricht? schriftl. Addieren

Mehr

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

Aufgabe der Kryptografie

Aufgabe der Kryptografie Aufgabe der Kryptografie Eve möchte die Unterhaltung mithören und/oder ausgetauschte Informationen ändern. Alice & Bob kommunzieren über einen unsicheren Kanal. Alice & Bob nutzen Verschlüsselung und digitale

Mehr

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

Zunächst ein paar einfache "Rechen"-Regeln: Lemma, Teil 1: Für beliebige Funktionen f und g gilt:

Zunächst ein paar einfache Rechen-Regeln: Lemma, Teil 1: Für beliebige Funktionen f und g gilt: Der Groß-O-Kalkül Zunächst ein paar einfache "Rechen"-Regeln: G. Zachmann Informatik 1 - WS 05/06 Komplexität 22 Additionsregel Lemma, Teil 1: Für beliebige Funktionen f und g gilt: Zu beweisen: nur das

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 7 26.11.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T15 Entwickeln Sie ein

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am..03 Randomisierte Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 11 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Das Quadratische Reste Problem

Das Quadratische Reste Problem Das Quadratische Reste Problem Definition Pseudoquadrate Sei N = q mit, q rim. Eine Zahl a heißt Pseudoquadrat bezüglich N, falls ( a ) = 1 und a / QR N. N Wir definieren die Srache QUADRAT:= {a Z N (

Mehr

IT-Security. Teil 14: Primzahltest

IT-Security. Teil 14: Primzahltest IT-Security Teil 14: Primzahltest 08.05.17 1 Literatur [14-1] Willems, Wolfgang: Codierungstheorie und Kryptographie. Mathematik Kompakt, Birkhäuser, 2008 [14-2] Socher, Rolf: Algebra für Informatiker.

Mehr

Kapitel III Ringe und Körper

Kapitel III Ringe und Körper Kapitel III Ringe und Körper 1. Definitionen und Beispiele Definition 117 Eine Algebra A = S,,, 0, 1 mit zwei zweistelligen Operatoren und heißt ein Ring, falls R1. S,, 0 eine abelsche Gruppe mit neutralem

Mehr

Lineare Kongruenzgeneratoren und Quicksort

Lineare Kongruenzgeneratoren und Quicksort Seminar Perlen der theoretischen Informatik Dozenten: Prof. Johannes Köbler und Olaf Beyersdorff Lineare Kongruenzgeneratoren und Quicksort Ausarbeitung zum Vortrag Mia Viktoria Meyer 12. November 2002

Mehr

Pseudo-Zufallsgeneratoren basierend auf dem DLP

Pseudo-Zufallsgeneratoren basierend auf dem DLP Seminar Codes und Kryptografie SS 2004 Struktur des Vortrags Struktur des Vortrags Ziel Motivation 1 Einleitung Ziel Motivation 2 Grundlegende Definitionen Zufallsgeneratoren 3 Generator Sicherheit 4 Generator

Mehr

Exponentiation: das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element

Exponentiation: das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element Problemstellung Banale smethode : das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element a n = } a a a {{ a } H n (schreiben ab jetzt a n statt a n ) Hinweis:

Mehr

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Übung zu Algorithmen und Datenstrukturen (für ET/IT) Übung zu Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2015 Matthias Wieczorek Computer-Aided Medical Procedures Technische Universität München Administratives Zentralübung (Mittwoch, 09:45

Mehr

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische

Mehr

8 Komplexitätstheorie und Kryptologie

8 Komplexitätstheorie und Kryptologie 8 Komplexitätstheorie und Kryptologie Verschlüsselung, Authentisierung,... müssen schnell berechenbar sein. Formal: polynomiell zeitbeschränkte Funktionen/Algorithmen Angreifer hat beschränkte Ressourcen.

Mehr

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Übung zu Algorithmen und Datenstrukturen (für ET/IT) Übung zu Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2017 Rüdiger Göbl, Mai Bui Computer Aided Medical Procedures Technische Universität München Administratives Zentralübung (Mittwoch, 09:45

Mehr

Exponentiation: das Problem

Exponentiation: das Problem Problemstellung Exponentiation: das Problem Gegeben: (multiplikative) Halbgruppe (H, ), Element a H, n N Aufgabe: berechne das Element a n = } a a a {{ a } H n (schreiben ab jetzt a n statt a n ) Hinweis:

Mehr

Daten suchen und durchsuchen. Programmieren und Problemlösen Daten suchen und durchsuchen, weiterführende Komplexitätstheorie

Daten suchen und durchsuchen. Programmieren und Problemlösen Daten suchen und durchsuchen, weiterführende Komplexitätstheorie Daten suchen und durchsuchen Lineare Suche Dennis Komm Programmieren und Problemlösen Daten suchen und durchsuchen, weiterführende Komplexitätstheorie Frühling 2019 1. April 2019 Lineare Suche Einfachste

Mehr

9. Rekursion. 1 falls n 1 n (n 1)!, andernfalls. Experiment: Die Türme von Hanoi. Links Mitte Rechts. Mathematische Rekursion

9. Rekursion. 1 falls n 1 n (n 1)!, andernfalls. Experiment: Die Türme von Hanoi. Links Mitte Rechts. Mathematische Rekursion Experiment: Die Türme von Hanoi. Rekursion Mathematische Rekursion, Terminierung, der Aufrufstapel, Beispiele, Rekursion vs. Iteration Links Mitte Rechts Mathematische Rekursion Viele mathematische Funktionen

Mehr

Volker Kaatz. Faktorisierung. Faktorisierung. Problem und Algorithmen. Relevanz in der Kryptographie

Volker Kaatz. Faktorisierung. Faktorisierung. Problem und Algorithmen. Relevanz in der Kryptographie Faktorisierung Problem und Algorithmen Relevanz in der Kryptographie Inhalt Begriff Faktorisierung Algorithmen (Übersicht) Strategie und Komplexität Pollard p-1 Algorithmus Pseudocode, mathematische Basis,

Mehr

13 Berechenbarkeit und Aufwandsabschätzung

13 Berechenbarkeit und Aufwandsabschätzung 13 Berechenbarkeit und Aufwandsabschätzung 13.1 Berechenbarkeit Frage: Gibt es für jede Funktion, die mathematisch spezifiziert werden kann, ein Programm, das diese Funktion berechnet? Antwort: Nein! [Turing

Mehr

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren VI.4 Elgamal - vorgestellt 1985 von Taher Elgamal - nach RSA das wichtigste Public-Key Verfahren - besitzt viele unterschiedliche Varianten, abhängig von zugrunde liegender zyklischer Gruppe - Elgamal

Mehr

Kapitel 2. Weitere Beispiele Effizienter Algorithmen

Kapitel 2. Weitere Beispiele Effizienter Algorithmen Kapitel 2 Weitere Beispiele Effizienter Algorithmen Sequentielle Suche Gegeben: Array a[1..n] Suche in a nach Element x Ohne weitere Zusatzinformationen: Sequentielle Suche a[1] a[2] a[3] Laufzeit: n Schritte

Mehr

Randomisierte Algorithmen

Randomisierte Algorithmen Randomisierte Algorithmen Kapitel 1 Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/~lohrey/rand WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/2006

Mehr

Kapitel 3: Die Sätze von Euler, Fermat und Wilson. 8 Der Satz von Euler

Kapitel 3: Die Sätze von Euler, Fermat und Wilson. 8 Der Satz von Euler Kapitel 3: Die Sätze von Euler, Fermat und Wilson In diesem Kapitel wollen wir nun die eulersche -Funktion verwenden, um einen berühmten Satz von Euler zu formulieren, aus dem wir dann mehrere interessante

Mehr

IT-Security. Teil 15: Zufall

IT-Security. Teil 15: Zufall IT-Security Teil 15: Zufall 09.05.17 1 Literatur [15-1] http://de.wikipedia.org/wiki/kryptographisch_sicherer_zufallszahlen generator [15-2] https://gnupg.org/documentation/manuals/gcrypt/fips-prng- Description.html

Mehr

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

Einführung (1/3) Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (1) Vorlesungen zur Komplexitätstheorie. Einführung (1/3) 3 Wir verfolgen nun das Ziel, Komplexitätsklassen mit Hilfe von charakteristischen Problemen zu beschreiben und zu strukturieren Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit

Mehr

Kryptographie und Komplexität

Kryptographie und Komplexität Kryptographie und Komplexität Einheit 4.4 Semantische Sicherheit 1. Sicherheit partieller Informationen 2. Das Verfahren von Rabin 3. Sicherheit durch Randomisierung Semantische Sicherheit Mehr als nur

Mehr

5 Zwei spieltheoretische Aspekte

5 Zwei spieltheoretische Aspekte 5 Zwei spieltheoretische Aspekte In diesem Kapitel wollen wir uns mit dem algorithmischen Problem beschäftigen, sogenannte Und-Oder-Bäume (kurz UOB) auszuwerten. Sie sind ein Spezialfall von Spielbäumen,

Mehr

Algorithmen und Datenstrukturen 1 Kapitel 5

Algorithmen und Datenstrukturen 1 Kapitel 5 Algorithmen und Datenstrukturen 1 Kapitel 5 Technische Fakultät robert@techfak.uni-bielefeld.de Vorlesung, U. Bielefeld, Winter 2005/2006 Kapitel 5: Effizienz von Algorithmen 5.1 Vorüberlegungen Nicht

Mehr

Willkommen zur Vorlesung Komplexitätstheorie

Willkommen zur Vorlesung Komplexitätstheorie Willkommen zur Vorlesung Komplexitätstheorie WS 2011/2012 Friedhelm Meyer auf der Heide V5, 21.11.2011 1 Themen 1. Turingmaschinen Formalisierung der Begriffe berechenbar, entscheidbar, rekursiv aufzählbar

Mehr

Stromchiffre. Algorithmus Stromchiffre

Stromchiffre. Algorithmus Stromchiffre Stromchiffre Algorithmus Stromchiffre Sei G ein Pseudozufallsgenerator mit Expansionsfaktor l(n). Wir definieren Π s = (Gen, Enc, Dec) mit Sicherheitsparameter n für Nachrichten der Länge l(n). 1 Gen:

Mehr

Kryptologie. Bernd Borchert. Univ. Tübingen SS Vorlesung. Teil 11. Primzahltests: Fermat, Miller-Rabin

Kryptologie. Bernd Borchert. Univ. Tübingen SS Vorlesung. Teil 11. Primzahltests: Fermat, Miller-Rabin Kryptologie Bernd Borchert Univ. Tübingen SS 2017 Vorlesung Teil 11 Primzahltests: Fermat, Miller-Rabin Primzahltests Problem: Gegeben n. Ist n Primzahl? Naive Methoden: Ausprobieren: gehe der Reihe nach

Mehr

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren VI.3 RSA - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman - vorgestellt 1977 - erstes Public-Key Verschlüsselungsverfahren - auch heute noch das wichtigste Public-Key Verfahren 1

Mehr

Präfix-Summe. Das Schweizer Offiziersmesser der Parallelen Algorithmen. Parallele Rechenmodelle Präfix-Summe Brents Lemma Anwendungen

Präfix-Summe. Das Schweizer Offiziersmesser der Parallelen Algorithmen. Parallele Rechenmodelle Präfix-Summe Brents Lemma Anwendungen Präfix-Summe Das Schweizer Offiziersmesser der Parallelen Algorithmen Parallele Rechenmodelle Präfix-Summe Brents Lemma Anwendungen Parallele Rechenmodelle Beispiel: Summieren von Zahlen Verlauf des Rechenprozesses:

Mehr

8. Woche Quadratische Reste und Anwendungen. 8. Woche: Quadratische Reste und Anwendungen 163/ 238

8. Woche Quadratische Reste und Anwendungen. 8. Woche: Quadratische Reste und Anwendungen 163/ 238 8 Woche Quadratische Reste und Anwendungen 8 Woche: Quadratische Reste und Anwendungen 163/ 238 Quadratische Reste Ḋefinition Quadratischer Rest Sei n N Ein Element a Z n heißt quadratischer Rest in Z

Mehr

Primzahlen und Programmieren

Primzahlen und Programmieren Primzahlen Wir wollen heute gemeinsam einen (sehr grundlegenden) Zusammenhang zwischen Programmieren und Mathematik herstellen. Die Zeiten in denen Mathematiker nur mit Zettel und Stift (oder Tafel und

Mehr

Übersicht. Nebenläufige Programmierung: Praxis und Semantik. Synchronisation (4) Eine untere Schranke für den Platzbedarf

Übersicht. Nebenläufige Programmierung: Praxis und Semantik. Synchronisation (4) Eine untere Schranke für den Platzbedarf Übersicht Komplexitätsresultate Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Synchronisation (4) Drei Komplexitätsresultate Eine genaue Schranke für den Platzbedarf

Mehr

Kapitel 1: Informationsverarbeitung durch Programme

Kapitel 1: Informationsverarbeitung durch Programme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 1: Informationsverarbeitung

Mehr

Probabilistische Algorithmen

Probabilistische Algorithmen Proseminar Theoretische Informatik 02.02.2016 Diane Hanke, Alexander Korzec Probabilistische Algorithmen Wolfgang Mulzer 1 Einführung 1.1 Probabilistischer Algorithmus Definition 1. [Probabilistischer

Mehr

Primes ist in P Der AKS-Primzahltest

Primes ist in P Der AKS-Primzahltest Primes ist in P Der AKS-Primzahltest Hans-Gert Gräbe Institut für Informatik, Universität Leipzig 10. Oktober 2003 1 Anfang August 2002 verbreitete sich die Nachricht, dass einige bis dahin unbekannte

Mehr

Kombinatorische Optimierung

Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 16 Programm: Einführung

Mehr

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben

Komplexität von Algorithmen Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekte mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

Mehr

Isomorphismus. Definition Gruppen-Isomorphismus. Seien (G, +) und (G, ) Gruppen. Die Abbildung f : G G heißt Gruppen-Isomorphismus, falls gilt

Isomorphismus. Definition Gruppen-Isomorphismus. Seien (G, +) und (G, ) Gruppen. Die Abbildung f : G G heißt Gruppen-Isomorphismus, falls gilt Isomorphismus Definition Gruppen-Isomorphismus Seien (G, +) und (G, ) Gruppen. Die Abbildung f : G G heißt Gruppen-Isomorphismus, falls gilt 1 f ist bijektiv f (u + v) = f (u) f (v) für alle u, v G, die

Mehr

Primzahltest für Mersenne-Primzahlen

Primzahltest für Mersenne-Primzahlen Primzahltest für Mersenne-Primzahlen Satz Lucas-Lehmer Test Sei n = 2 p 1 N für p P\{2}. Wir definieren die Folge S k durch S 1 = 4 und S k = S 2 k 1 2. Falls n S p 1, dann ist n prim. Beweis: Seien ω

Mehr

Stichpunktezettel fürs Tutorium

Stichpunktezettel fürs Tutorium Stichpunktezettel fürs Tutorium Moritz und Dorian 11. November 009 1 Kleiner Fermat Behauptung. Seien a, b N relativ prim und b eine Primzahl. Dann ist a b 1 = 1. Beweis. Wir definieren die Funktion f

Mehr

Berechenbarkeits- und Komplexitätstheorie

Berechenbarkeits- und Komplexitätstheorie Berechenbarkeits- und Komplexitätstheorie Lerneinheit 5: Die Klasse NP Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2015/2016 26.9.2015 Einleitung Thema dieser Lerneinheit

Mehr

Relationen und DAGs, starker Zusammenhang

Relationen und DAGs, starker Zusammenhang Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind

Mehr