Modelle der Parallelverarbeitung

Größe: px
Ab Seite anzeigen:

Download "Modelle der Parallelverarbeitung"

Transkript

1 Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung 1. Turingmaschinen Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Sommersemester / 52

2 Überblick Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 2 / 52

3 Turingmaschinen mit einem Arbeitsband Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 3 / 52

4 Turingmaschinen mit einem Arbeitsband Turingmaschinen, einfachster Fall Eine Turingmaschine besteht im einfachsten Fall aus einem Arbeitsband ein Schreib-Lese-Kopf auf dem Band, verbunden mit einer Steuereinheit Alan Turing On computable numbers, with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society 42, S , / 52

5 Turingmaschinen mit einem Arbeitsband Definition von W 1 -TM Bestandteile T = (S,..., B,..., δ,... ) Zustandsmenge S Bandalphabet B Überführungsfunktion δ : S B S B D mit D = { 1, 0, 1} 5 / 52

6 Turingmaschinen mit einem Arbeitsband Definition von W 1 -TM Bestandteile T = (S,..., B,..., δ,... ) Zustandsmenge S Bandalphabet B Überführungsfunktion δ : S B S B D mit D = { 1, 0, 1} bzw. δ = (δ s, δ b, δ d ) mit Notation W 1 : δ s : S B S δ b : S B B δ d : S B D ein W: ein Arbeitsband (working tape) Index 1: ein Kopf auf dem Band 5 / 52

7 Turingmaschinen mit einem Arbeitsband Arbeitsweise von W 1 -TM Konfiguration ( globaler Gesamtzustand ): c = (s,b,p) mit Zustand s S Bandbeschriftung b : Z B, i. e. b B Z Kopfposition p Z schreibe C T oder C für die Menge aller Konfigurationen ein globaler Schritt : C C, wobei (s,b,p) = (s,b,p ) mit s = δ s (s,b(p)) { b δ b (s,b(p)) falls i = p (i) = b(i) falls i p p = p + δ d (s,b(p)) 6 / 52

8 Turingmaschinen mit einem Arbeitsband Beispiel S = {A, B,C, D, E, F, Z } B = {1, } L statt 1, R statt +1 δ gegeben durch die folgende Tabelle: A B C D E F Z B1R C R D1L E L A R A1L 1 F L D R E1R D L C1R Z 1R 7 / 52

9 Turingmaschinen mit einem Arbeitsband Beispiel A B 1 C 1 D 1 1 E 1 1 C 1 1 D D / 52

10 Turingmaschinen mit einem Arbeitsband Beispiel A B 1 C 1 D 1 1 E 1 1 C 1 1 D D 1 1 fleißiger Bieber ( mehr als Einsen, mehr als Schritte 8 / 52

11 Turingmaschinen mit einem Arbeitsband Ein noch fleißigerer Biber Pavel Kropitz (2010) A B C D E F Z B1R C1R D1L E1R A1L Z 1L 1 E1L F 1R B0R C L D R C1R mehr als Einsen nach mehr als Schritten 9 / 52

12 Der rote Faden durch die Vorlesung Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 10 / 52

13 Der rote Faden durch die Vorlesung In dieser Vorlesung betrachten wir Modelle der Parallelverarbeitung und zwar vom Standard -Standpunkt endliche Eingabe endliche Berechung endliche Ausgabe These von Church/Turing: Alle vernünftigen Modelle können die gleichen Funktionen berechnen. Das kann man für die parallelen Modelle auch beweisen. Wozu also Betrachtung paralleler Modelle? (und wozu Turingmaschinen?) 11 / 52

14 Der rote Faden durch die Vorlesung Effizienz Unterschiede zwischen verschiedenen Modellen erhofft/erwartet Zusammenhänge zwischen verschiedenen Modellen erhofft/erwartet wie messen? Komplexitätsmaße, genauer gesagt Maße für Berechnungskomplexität: Zeitkomplexität: Anzahl benötigter Schritte Platzkomplexität/Raumkomplexität:... andere...? / 52

15 Der rote Faden durch die Vorlesung Varianten gegeben: ein paralleles Modell! Es gibt schöne Algorithmen.? Wie realistisch ist das Modell?! Das Modell ist realistisch.? Wie schöne Algorithmen gibt es? tendenziell zu Beginn der Vorlesung: eher Standpunkt 1 gegen Ende der Vorlesung: eher Standpunkt 2 13 / 52

16 Weiteres zu Turingmaschinen mit einem Arbeitsband Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 14 / 52

17 Weiteres zu Turingmaschinen mit einem Arbeitsband In dieser Vorlesung überwiegend Entscheidungsprobleme, also Erkennung formaler Sprachen: endliche Eingabe: ein Wort w A + endliche Berechung endliche Ausgabe: ein Bit (akzeptiert/abgelehnt) 15 / 52

18 Weiteres zu Turingmaschinen mit einem Arbeitsband Eingabe formaler Sprachen bei TM Anfangszustand s 0 S Eingabealphabet A B { } Blanksymbol Anfangskonfiguration zu w: init : A + C : w 1 w n (s 0,b w, 1) mit { w i falls 1 i n b w (i) = sonst 16 / 52

19 Weiteres zu Turingmaschinen mit einem Arbeitsband Halten bei TM und Erkennung formaler Sprachen Menge von Endzuständen F S isfinal : C B : (s,b,p) [s F] Forderung s F a B : δ(s, a) = (s, a, 0) stellt sicher, dass Endkonfigurationen erhalten bleiben. Menge akzeptierender Endzustände F + F isaccepting : C B : (s,b,p) [s F + ] isaccepting(c) = isfinal(c) 17 / 52

20 Weiteres zu Turingmaschinen mit einem Arbeitsband Definition: Zeitkomplexität von TM In dieser Vorlesung: O. B. d. A. hält jede Maschine für jede Eingabe. akzeptable Annahme für z. B. harmlose Zeitschranken Dann sind die folgenden Funktionen total: time : A + N + w min{t N + isfinal( t (init(w)))} Time : N + N + n max{time(w) w A n } Diese Definition passt auch für andere Modelle, zum Beispiel W -TM siehe dort 18 / 52

21 Weiteres zu Turingmaschinen mit einem Arbeitsband Von TM erkannte Sprache L(T ) = {w A + isaccepting( time(w) (init(w)))} Diese Definition passt auch für andere Modelle. 19 / 52

22 Weiteres zu Turingmaschinen mit einem Arbeitsband Raumkomplexität für TM: 1. Versuch die Funktion (Diskussion: welche?) mem : C N + beschreibe den Speicherplatzbedarf einer Konfiguration definiere: space : A + N + w max{mem( t (init(w))) t time(w)} Space : N + N + n max{space(w) w A n } Was ist hier (unter Umständen) noch unzureichend? 20 / 52

23 Weiteres zu Turingmaschinen mit einem Arbeitsband Raumkomplexität für TM: 2. Versuch Definiere: left-end : A + Z + w min {p Z t time(w) : in t (init(w)) wird p benutzt} right-end : A + Z + w max {p Z t time(w) : in t (init(w)) wird p benutzt} space : A + N + w 1 + right-end(w) left-end(w) Space : N + N + n max{space(w) w A n } Diskussion: andere Ideen? 21 / 52

24 Weiteres zu Turingmaschinen mit einem Arbeitsband Definition: Raumkomplexität für TM Definiere: used-mem : C 2 Z c {p Z in c wird Feld p benutzt} space : A + N + w t time(w) used-mem( t (init(w))) Space : N + N + n max{space(w) w A n } leicht anpassbar an andere Modelle, z. B. W -TM dieses Thema kommt wieder... siehe dort 22 / 52

25 Weiteres zu Turingmaschinen mit einem Arbeitsband Eine Beispielsprache Theorem Jede W 1 -TM, die die formale Sprache L vv = {v2 v v v {0, 1} + } erkennt, hat Zeitkomplexität Time T (n) Ω(n 2 ). F. C. Hennie One-tape, Off-line Turing Machine Computations. Information and Control 8, S , / 52

26 Weiteres zu Turingmaschinen mit einem Arbeitsband Beweis des Satzes von Hennie zunächst technisches Hilfsmittel für den Beweis: sogenannte Überquerungsfolgen 24 / 52

27 Weiteres zu Turingmaschinen mit einem Arbeitsband Überquerungsfolgen: Definition sei w A + und i Z Überquerungsfolge cs(w, i) die Liste der Zustände der TM bei Übergängen von Feld i nach i + 1 oder umgekehrt, wenn sie mit init(w) startet Überquerungsfolgen können leer sein. 25 / 52

28 Weiteres zu Turingmaschinen mit einem Arbeitsband Zwei Beispielüberquerungsfolgen q 1 q 2 q 3 q 4 q 1 q 2 26 / 52

29 Weiteres zu Turingmaschinen mit einem Arbeitsband Überquerungsfolgen Definition Für w = w 1 w n A n und 1 i < j w bezeichne w[i : j] das Teilwort w i w j. Lemma Es seien w 1 und w 2 Wörter, die von TM gleich behandelt werden, d. h. beide akzeptiert oder beide abgelehnt werden. Es seien i 1 und i 2 zwei Feldnummern mit 1 i 1 < w 1 und 1 i 2 < w 2, so dass cs(w 1, i 1 ) = cs(w 2, i 2 ) ist. 27 / 52

30 Weiteres zu Turingmaschinen mit einem Arbeitsband Überquerungsfolgen Definition Für w = w 1 w n A n und 1 i < j w bezeichne w[i : j] das Teilwort w i w j. Lemma Es seien w 1 und w 2 Wörter, die von TM gleich behandelt werden, d. h. beide akzeptiert oder beide abgelehnt werden. Es seien i 1 und i 2 zwei Feldnummern mit 1 i 1 < w 1 und 1 i 2 < w 2, so dass cs(w 1, i 1 ) = cs(w 2, i 2 ) ist. Dann gilt:... was? / 52

31 Weiteres zu Turingmaschinen mit einem Arbeitsband Beweisskizze zum Lemma q 1 q 2 q 1 q 2 q 1 q 2 28 / 52

32 Weiteres zu Turingmaschinen mit einem Arbeitsband Überquerungsfolgen Definition Für w = w 1 w n A n und 1 i < j w bezeichne w[i : j] das Teilwort w i w j. Lemma Es seien w 1 und w 2 Wörter, die von TM gleich behandelt werden, d. h. beide akzeptiert oder beide abgelehnt werden. Es seien i 1 und i 2 zwei Feldnummern mit 1 i 1 < w 1 und 1 i 2 < w 2, so dass cs(w 1, i 1 ) = cs(w 2, i 2 ) ist. Dann gilt: Das Eingabewort w 1 [1 : i 1 ] w 2 [i : w 2 ] wird genauso behandelt wie w 1 und w / 52

33 Weiteres zu Turingmaschinen mit einem Arbeitsband Beweisskizze zum Lemma q 1 q 2 q 1 q 2 q 1 q 2 30 / 52

34 Weiteres zu Turingmaschinen mit einem Arbeitsband Satz von Hennie Theorem Jede W 1 -TM, die die formale Sprache L vv = {v2 v v v {0, 1} + } erkennt, hat Zeitkomplexität Time T (n) Ω(n 2 ). 31 / 52

35 Weiteres zu Turingmaschinen mit einem Arbeitsband Beweis Betrachte verschiedene Wörter w 1 L vv und w 2 L vv gleicher Länge n = 3m. w i = v i 2 m v i mit v i {0, 1} m (i = 1, 2) wegen w 1 w 2 auch v 1 v 2 Wegen des eben bewiesenen Lemmas gilt: Es darf keine Zustandsfolge s = (s 1,..., s k ) geben, so dass cs(w 1, i 1 ) = s = cs(w 2, i 2 ) für m/3 < i 1 < 2m/3 und m/3 < i 2 < 2m/3 denn für v 1 v 2 ist kein Wort v 1 2 l v 2 L vv. In L vv sind 2 m Wörter der Länge 3m. 32 / 52

36 Weiteres zu Turingmaschinen mit einem Arbeitsband Beweis des Satzes von Hennie (2) Zählt man alle Überquerungsfolgen mit einer Länge i < m/log S, so kommt man nur auf (m/log S ) 1 i=0 S i < S m/log S = (2 log S ) m/log S = 2 m Also müssen für mindestens ein Wort in L vv A 3m alle mittleren m 1 Überquerungsfolgen eine Länge von mindestens m/log S haben. Jeder Zustand in jeder Überquerungsfolge bedeutet einen Schritt der TM. Also ist die Anzahl TM-Schritte für diese Eingabe mindestens (m 1)m/loд S Ω(n 2 ). 33 / 52

37 Weiteres zu Turingmaschinen mit einem Arbeitsband andererseits... Beobachtung Es gibt eine W 1 -TM T mit Time T (n) Θ(n 2 ), die L vv erkennt. Übung / 52

38 Weiteres zu Turingmaschinen mit einem Arbeitsband Schreibweise: Komplexitätsklassen W 1 -TM-Spc(s(n))-Time(t(n)) Menge der formalen Sprachen, die von W 1 -TM T erkannt werden können mit Space T (n) s(n) und Time T (n) t(n) analog für W 1 -TM-Time(t(n)), etc. analog für W 1 -TM-Time(O(t(n))), etc. Beispiele: L vv W 1 -TM-Time(Θ(n 2 )) L vv W 1 -TM-Time(o(n 2 )) W 1 -TM-Time(Pol(n)) = P mit Pol(t(n)) = k N + O(t(n) k ) 35 / 52

39 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 36 / 52

40 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit mehreren Bändern/Köpfen unter Umständen mehrere Köpfe auf einem Band: W 1 oder W 2 oder W 3 oder... falls egal: W unter Umständen mehrere Bänder: W h1 W h2 W hk falls mehrere gleiche Bänder: z. B. 3W 5, W 1, W alle Köpfe mit der gleichen Steuereinheit verbunden 37 / 52

41 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit mehreren Bändern/Köpfen unter Umständen mehrere Köpfe auf einem Band: W 1 oder W 2 oder W 3 oder... falls egal: W unter Umständen mehrere Bänder: W h1 W h2 W hk falls mehrere gleiche Bänder: z. B. 3W 5, W 1, W alle Köpfe mit der gleichen Steuereinheit verbunden Ist das dann schon Parallelverarbeitung? 37 / 52

42 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k 38 / 52

43 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k Problem: 38 / 52

44 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k Problem: Die TM merkt nicht, wenn mehrere Köpfe auf dem gleichen Feld stehen. 38 / 52

45 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k Problem: Die TM merkt nicht, wenn mehrere Köpfe auf dem gleichen Feld stehen. Schreibkonflikte?! 38 / 52

46 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k Problem: Die TM merkt nicht, wenn mehrere Köpfe auf dem gleichen Feld stehen. Schreibkonflikte?! Lösungsmöglichkeiten: Verbot Kopf mit kleinster Nummer gewinnt auch nichts schreiben ermöglichen 38 / 52

47 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM analog zu W 1 -TM, aber: δ : S B h 1 B h k S (B D) h 1 (B D) h k Problem: Die TM merkt nicht, wenn mehrere Köpfe auf dem gleichen Feld stehen. Schreibkonflikte?! Lösungsmöglichkeiten: Verbot Kopf mit kleinster Nummer gewinnt auch nichts schreiben ermöglichen und Konflikte verbieten Das nehmen wir. 38 / 52

48 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Definition von W h1 W h2 W hk -TM Also: δ : S B h 1 B h k S (B D) h 1 (B D) h k mit B = B { }, wobei das nichts schreiben bedeutet. Diese Definition ermöglicht einer TM, herauszufinden, ob sich zwei Köpfe auf dem gleichen Feld befinden. Wie? also Schreibkonflikte problemlos vermeidbar 39 / 52

49 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Konfigurationen von W -TM c = (s,b 1,...,b k, (p 1,1,...,p 1,h1 ),... (p k,1,...,p k,hk )) mit s S b i B Z p i, j Z 40 / 52

50 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Erkennung formaler Sprachen mit W -TM analog wie bei W 1 -TM: Anfangszustand s 0 Anfangsbandbeschriftungen auf erstem Band das Eingabewort ggf. weitere Bänder leer Köpfe zu Beginn alle auf Feld 1 ihres Bandes finale und akzeptierende Zustände 41 / 52

51 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Zeit- und Raumkomplexität für W -TM Zeitkomplexität wie bei W 1 -TM siehe dort Raumkomplexität analog zu W 1 -TM siehe dort, aber used-mem : C 2 N + Z. 42 / 52

52 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Beispiel L vv mit W 3 -TM an der Tafel 43 / 52

53 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Beispiel L vv mit W 3 -TM an der Tafel Ergebnis: L vv W 3 -TM-Spc(Θ(n))-Time(Θ(n)) 43 / 52

54 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Beispiel L vv mit W 3 -TM an der Tafel Ergebnis: L vv W 3 -TM-Spc(Θ(n))-Time(Θ(n)) Kurzes Nachdenken zeigt, dass auch gilt: L vv W 2 -TM-Spc(Θ(n))-Time(Θ(n)) 43 / 52

55 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Zusammenhang zwischen W 1 - und W -TM Satz Für alle s(n) und t(n) größer gleich n gilt: W -TM-Spc(s(n))-Time(t(n)) W 1 -TM-Spc(Θ(s(n)))-Time(Θ(s(n) t(n))) W 1 -TM-Spc(Θ(s(n)))-Time(Θ(t(n) 2 )) Beweisidee: an der Tafel Das Beispiel L vv zeigt, dass der Exponent 2 optimal ist. Für die umgekehrte Richtung W 1 W kennt man keine wesentlichen Beschleunigungssätze. 44 / 52

56 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Zusammenhang zwischen W 1 - und W -TM etwas kompakter (ohne (n) ) notiert: Satz Für alle Raumschranken s id und Zeitschranken t id gilt: W -TM-Spc(s)-Time(t) W 1 -TM-Spc(Θ(s))-Time(Θ(s t)) W 1 -TM-Spc(Θ(s))-Time(Θ(t 2 )) 45 / 52

57 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Zusammenhang bei TM mit gleicher Gesamtkopfzahl 46 / 52

58 Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Zusammenhang bei TM mit gleicher Gesamtkopfzahl Satz Für alle t(n) n gilt: W k -TM-Time(t(n)) kw 1 -TM-Time(Θ(t(n))) H. J. Stoß. k-band-simulation von k-kopf-turing-maschinen. Computing, 6: , Richtung kw 1 W k ist viel leichter... Satz ist nichttrivial man versuche sich an einem Beweis / 52

59 Turingmaschinen mit speziellen Bändern Überblick Turingmaschinen mit einem Arbeitsband Der rote Faden durch die Vorlesung Weiteres zu Turingmaschinen mit einem Arbeitsband Turingmaschinen mit mehreren Arbeitsbändern/Köpfen Turingmaschinen mit speziellen Bändern 47 / 52

60 Turingmaschinen mit speziellen Bändern Motivation Erkennung einer regulären Sprache mit einer W 1 -TM: 48 / 52

61 Turingmaschinen mit speziellen Bändern Motivation Erkennung einer regulären Sprache mit einer W 1 -TM: TM fährt nur lesend nur einmal über das Wort 48 / 52

62 Turingmaschinen mit speziellen Bändern Motivation Erkennung einer regulären Sprache mit einer W 1 -TM: TM fährt nur lesend nur einmal über das Wort Das Arbeits -Band wird gar nicht als Arbeitsspeicher (zum Merken berechneter Informationen) benötigt. Aber die Definition von Raumkomplexität nimmt darauf keine Rücksicht. (könnte sie?) Man möchte aber gerne sublineare Raumkomplexitäten, z. B. 0 im Fall regulärer Sprachen. Ein analoges Problem werden wir in einem späteren Kapitel bei der Erzeugung großer Ausgaben durch eine TM haben. 48 / 52

63 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. 49 / 52

64 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. 49 / 52

65 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. Es gibt nur einen einzigen Kopf darauf. 49 / 52

66 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. Es gibt nur einen einzigen Kopf darauf. Diskussion: Warum? 49 / 52

67 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. Es gibt nur einen einzigen Kopf darauf. Diskussion: Warum? Der Kopf darf nur auf den Eingabesymbolen und dem jeweils ersten links bzw. rechts angrenzenden leeren Feld stehen 49 / 52

68 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. Es gibt nur einen einzigen Kopf darauf. Diskussion: Warum? Der Kopf darf nur auf den Eingabesymbolen und dem jeweils ersten links bzw. rechts angrenzenden leeren Feld stehen Diskussion: Warum? 49 / 52

69 Turingmaschinen mit speziellen Bändern Separates Eingabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. Es kann nur gelesen werden. Es gibt nur einen einzigen Kopf darauf. Diskussion: Warum? Der Kopf darf nur auf den Eingabesymbolen und dem jeweils ersten links bzw. rechts angrenzenden leeren Feld stehen Diskussion: Warum? Schreibweise: z. B. E-W 1 -TM 49 / 52

70 Turingmaschinen mit speziellen Bändern Beispiel: Erkennung L vv mit einer E-W 1 -TM an der Tafel: Variante mit kleiner Raumkomplexität 50 / 52

71 Turingmaschinen mit speziellen Bändern Beispiel: Erkennung L vv mit einer E-W 1 -TM an der Tafel: Variante mit kleiner Raumkomplexität Ergebnis: L vv E-W 1 -TM-Spc(O(logn))-Time(Pol(n)) 50 / 52

72 Turingmaschinen mit speziellen Bändern Beispiel: Erkennung L vv mit einer E-W 1 -TM an der Tafel: Variante mit kleiner Raumkomplexität Ergebnis: L vv E-W 1 -TM-Spc(O(logn))-Time(Pol(n)) Und was hat das in dieser Vorlesung zu suchen...? / 52

73 Turingmaschinen mit speziellen Bändern Separates Ausgabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. anfangs immer leer; Es gibt nur einen einzigen Kopf darauf, 51 / 52

74 Turingmaschinen mit speziellen Bändern Separates Ausgabeband für TM Wird bei der Bestimmung der Raumkomplexität ignoriert. anfangs immer leer; Es gibt nur einen einzigen Kopf darauf, der nur schreiben und sich nur nach rechts bewegen kann. Schreibweise: z. B. A-W 1 -TM 51 / 52

75 Turingmaschinen mit speziellen Bändern Zusammenfassung W 1 -Turingmaschinen benötigen zur Erkennung von L vv mindestens quadratische Zeit. Mit einer W 2 -Turingmaschine kann man L vv in Linearzeit erkennen. Mit einer E-W 1 -Turingmaschine kann man L vv auf logarithmischem Platz erkennen. Eingabe- und Ausgabebänder werden bei der Bestimmung der Raumkomplexität einer TM nicht berücksichtigt. 52 / 52

Formale Sprachen und Automaten

Formale Sprachen und Automaten Formale Sprachen und Automaten Kapitel 5: Typ 1 und Typ 0 Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Kapitel 5 Typ 1

Mehr

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014

Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausur zur Vorlesung Grundbegriffe der Informatik 5. März 2014 Klausurnummer Nachname: Vorname: Matr.-Nr.: Aufgabe 1 2 3 4 5 6 7 max. Punkte 6 8 4 7 5 6 8 tats. Punkte Gesamtpunktzahl: Note: Punkte Aufgabe

Mehr

2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen

2. Berechnungsmächtigkeit von Zellularautomaten. Ziele Simulation von Schaltwerken Simulation von Turingmaschinen 2. Berechnungsmächtigkeit von Zellularautomaten Ziele Simulation von Schaltwerken Simulation von Turingmaschinen Beispiel WIREWORLD Elektronen laufen über Drähte von einem Gatter zum nächsten 2.3 Satz

Mehr

Berechenbarkeit. Script, Kapitel 2

Berechenbarkeit. Script, Kapitel 2 Berechenbarkeit Script, Kapitel 2 Intuitiver Berechenbarkeitsbegriff Turing-Berechenbarkeit WHILE-Berechenbarkeit Church sche These Entscheidungsprobleme Unentscheidbarkeit des Halteproblems für Turingmaschinen

Mehr

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie

1 Einführung. 2 Typ-0- und Typ-1-Sprachen. 3 Berechnungsmodelle. 4 Unentscheidbarkeit. 5 Unentscheidbare Probleme. 6 Komplexitätstheorie 1 Einführung 2 Typ-0- und Typ-1-Sprachen 3 Berechnungsmodelle 4 Unentscheidbarkeit 5 Unentscheidbare Probleme 6 Komplexitätstheorie 15 Ziele vgl. AFS: Berechnungsmodelle für Typ-0- und Typ-1-Sprachen (Nicht-)Abschlußeigenschaften

Mehr

Modelle der Parallelverarbeitung 7. Baumförmige Zellularautomaten

Modelle der Parallelverarbeitung 7. Baumförmige Zellularautomaten Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung 7. Baumförmige Zellularautomaten Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Sommersemester 2016 1 / 29 Überblick

Mehr

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen.

Turing-Maschinen. Definition 1. Eine deterministische Turing-Maschine (kurz DTM) ist ein 6- Dem endlichen Alphabet Σ von Eingabesymbolen. Turing-Maschinen Nachdem wir endliche Automaten und (die mächtigeren) Kellerautomaten kennengelernt haben, werden wir nun ein letztes, noch mächtigeres Automatenmodell kennenlernen: Die Turing-Maschine

Mehr

GTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, diener@math.uni-siegen.de

GTI. Hannes Diener. 6. Juni - 13. Juni. ENC B-0123, diener@math.uni-siegen.de GTI Hannes Diener ENC B-0123, diener@math.uni-siegen.de 6. Juni - 13. Juni 1 / 49 Die Turingmaschine war das erste (bzw. zweite) formale Modell der Berechenbarkeit. Sie wurden bereits 1936 (also lange

Mehr

11.1 Kontextsensitive und allgemeine Grammatiken

11.1 Kontextsensitive und allgemeine Grammatiken Theorie der Informatik 7. April 2014 11. Kontextsensitive und Typ-0-Sprachen Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen 11.1 Kontextsensitive und allgemeine Grammatiken Malte Helmert

Mehr

8. Turingmaschinen und kontextsensitive Sprachen

8. Turingmaschinen und kontextsensitive Sprachen 8. Turingmaschinen und kontextsensitive Sprachen Turingmaschinen (TM) von A. Turing vorgeschlagen, um den Begriff der Berechenbarkeit formal zu präzisieren. Intuitiv: statt des Stacks bei Kellerautomaten

Mehr

Algorithmen mit konstantem Platzbedarf: Die Klasse REG

Algorithmen mit konstantem Platzbedarf: Die Klasse REG Algorithmen mit konstantem Platzbedarf: Die Klasse REG Sommerakademie Rot an der Rot AG 1 Wieviel Platz brauchen Algorithmen wirklich? Daniel Alm Institut für Numerische Simulation Universität Bonn August

Mehr

11. Übungsblatt. x y(top(push(x, y)) = y)

11. Übungsblatt. x y(top(push(x, y)) = y) Logik, Berechenbarkeit und Komplexität Sommersemester 2012 Hochschule RheinMain Prof. Dr. Steffen Reith 11. Übungsblatt 1. Ein Keller (engl. stack) ist eine bekannte Datenstruktur. Sei die Signatur S =

Mehr

Einige Beispiele zur Turingmaschine

Einige Beispiele zur Turingmaschine Einige Beispiele zur Turingmaschine Beispiel 1: Addition von 1 zu einer Dualzahl Aufgabe: Auf dem Eingabe-Band einer Turingmaschine steht eine Dualzahl (= Binärzahl, bestehend aus 0-en und 1-en, links

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (II) 2.07.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 1-12. Sitzung Dennis Felsing dennis.felsing@student.kit.edu http://www.stud.uni-karlsruhe.de/~ubcqr/2010w/tut gbi/ 2011-01-24 Überblick 1 Reguläre Ausdrücke Wiederholung

Mehr

Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion

Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion Berechenbarkeit und Komplexität: Rekursive Aufzählbarkeit und die Technik der Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität 26. November 2007 Semi-Entscheidbarkeit

Mehr

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume

a n b n c n ist kontextsensitiv kontextfreie Sprachen (Typ 2) Abschnitt 3.3 kontextfreie Sprachen: Abschlusseigenschaften Chomsky NF und binäre Bäume Kap 3: Grammatiken Chomsky-Hierarchie 32 Kap 3: Grammatiken Kontextfreie 33 a n b n c n ist kontextsensiti Beispiel 3111 modifizieren: Σ = {a, b, c G = (Σ, V, P, X ) V = {X, Y, Z P : X ε X axyz ZY YZ ay

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

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel

Turing-Maschine. Berechenbarkeit und Komplexität Turing-Maschinen. Turing-Maschine. Beispiel Berechenbarkeit und Komplexität Turing-Maschinen Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at

Mehr

Theoretische Informatik I

Theoretische Informatik I heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer

Mehr

Rekursiv aufzählbare Sprachen

Rekursiv aufzählbare Sprachen Kapitel 4 Rekursiv aufzählbare Sprachen 4.1 Grammatiken und die Chomsky-Hierarchie Durch Zulassung komplexer Ableitungsregeln können mit Grammatiken größere Klassen als die kontextfreien Sprachen beschrieben

Mehr

Sprachen und Automaten. Tino Hempel

Sprachen und Automaten. Tino Hempel Sprachen und Automaten 11 Tino Hempel Bisherige Automaten Automat mit Ausgabe/Mealy-Automat Akzeptor, Sprache eines Akzeptors Grenze: L = {a n b n } Kellerautomat erkennt L = {a n b n } Grenze:? T. Hempel

Mehr

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964)

Typ-1-Sprachen. Satz 1 (Kuroda ( ) 1964) Typ-1-Sprachen Satz 1 (Kuroda (1934-2009) 1964) Eine Sprache L hat Typ 1 (= ist kontextsensitiv) genau dann, wenn sie von einem nichtdeterministischen LBA erkannt wird. Beweis: Sei zunächst L Typ-1-Sprache.

Mehr

Modelle der Parallelverarbeitung 10. Realistische parallele Modelle

Modelle der Parallelverarbeitung 10. Realistische parallele Modelle Modelle der Parallelverarbeitung Modelle der Parallelverarbeitung 10. Realistische parallele Modelle Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Sommersemester 2016 1 / 42

Mehr

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Institut für Informatik Sommersemester 2007 B. Beckert Grundlagen d. Theoretischen Informatik:

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 heoretische Informatik 1 eil 2 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung U Graz SS 2009 Übersicht 1 uring Maschinen uring-berechenbarkeit 2 Kostenmaße Komplexität 3 Mehrband-M

Mehr

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

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

Mehr

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat

Frank Heitmann 2/47. 1 Ein PDA beginnt im Startzustand z 0 und mit im Keller. 2 Ist der Automat Formale Grundlagen der Informatik 1 Kapitel 5 Über reguläre Sprachen hinaus und (Teil 2) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. April 2015 Der Kellerautomat - Formal Definition (Kellerautomat

Mehr

1 Varianten von Turingmaschinen

1 Varianten von Turingmaschinen 1 Varianten von Turingmaschinen Es gibt weitere Definitionen für Turingmaschinen. Diese haben sich aber alle als äquivalent herausgestellt. Ein wiederkehrendes Element der Vorlesung: Äquivalenz von Formalismen

Mehr

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis:

Falls H die Eingabe verwirft, so wissen wir, dass M bei Eingabe w nicht hält. M hält im verwerfenden Haltezustand. Beweis: 1 Unentscheidbarkeit 2 Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Wintersemester 2014/15 #include char *s="include

Mehr

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}

c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}} 2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?

Mehr

Berechenbarkeit/Entscheidbarkeit

Berechenbarkeit/Entscheidbarkeit Berechenbarkeit/Entscheidbarkeit Frage: Ist eine algorithmische Problemstellung lösbar? was ist eine algorithmische Problemstellung? formale Sprachen benötigen einen Berechenbarkeitsbegriff Maschinenmodelle

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Teil 5 Bernhard Nessler Institut für Grundlagen der Informationsverabeitung TU Graz SS 2007 Übersicht 1 Problemklassen 2 NTM Nichtdeterministische Algorithmen 3 Problemarten Konstruktionsprobleme

Mehr

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln,

1 Σ endliches Terminalalphabet, 2 V endliche Menge von Variablen (mit V Σ = ), 3 P (V (Σ ΣV )) {(S, ε)} endliche Menge von Regeln, Theorie der Informatik 8. März 25 8. Reguläre Sprachen I Theorie der Informatik 8. Reguläre Sprachen I 8. Reguläre Grammatiken Malte Helmert Gabriele Röger 8.2 DFAs Universität Basel 8. März 25 8.3 NFAs

Mehr

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395

Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395 Deterministische Turing-Maschinen (DTM) F3 03/04 p.46/395 Turing-Machine Wir suchen ein Modell zur formalen Definition der Berechenbarkeit von Funktionen und deren Zeit- und Platzbedarf. Verschiedene Modelle

Mehr

Welches ist die fleißigste unter allen erdenklichen Turingmaschinen mit n Zuständen?

Welches ist die fleißigste unter allen erdenklichen Turingmaschinen mit n Zuständen? Fleißige Biber In den frühen sechziger Jahren ging Tibor Rado von der Ohio State University der Frage nach, wie viele Einsen eine Turingmaschine wohl auf ein zu Beginn leeres Band schreiben könne, ehe

Mehr

1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit

1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit 1 Prädikatenlogik: Korrektheit, Vollständigkeit, Entscheidbarkeit 1.1 Korrektheit Mit dem Kalkül der Prädikatenlogik, z.b. dem Resolutionskalkül, können wir allgemeingültige Sätze beweisen. Diese Sätze

Mehr

Theoretische Informatik 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Zeitkomplexität von Turingmaschinen Die Laufzeit einer NTM M bei Eingabe x ist die maximale Anzahl

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 heoretische Informatik 1 uringmaschinen David Kappel Institut für Grundlagen der Informationsverarbeitung echnische Universität Graz 11.03.2016 Übersicht uring Maschinen Algorithmusbegriff konkretisiert

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Turing-Maschine, Berechenbarkeit INSTITUT FÜR THEORETISCHE 0 KIT 07.11.2011 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 14: Endliche Automaten Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/38 Überblick Erstes Beispiel: ein Getränkeautomat Mealy-Automaten

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Rückblick Theoretische Informatik I 1. Mathematische Methoden 2. Reguläre Sprachen 3. Kontextfreie Sprachen Themen der Theoretischen Informatik I & II Mathematische Methodik in

Mehr

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23

Formale Methoden 1. Gerhard Jäger 9. Januar Uni Bielefeld, WS 2007/2008 1/23 1/23 Formale Methoden 1 Gerhard Jäger Gerhard.Jaeger@uni-bielefeld.de Uni Bielefeld, WS 2007/2008 9. Januar 2008 2/23 Automaten (informell) gedachte Maschine/abstraktes Modell einer Maschine verhält sich

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

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009

Theoretische Informatik. Grammatiken. Grammatiken. Grammatiken. Rainer Schrader. 9. Juli 2009 Theoretische Informatik Rainer Schrader Institut für Informatik 9. Juli 2009 1 / 41 2 / 41 Gliederung die Chomsky-Hierarchie Typ 0- Typ 3- Typ 1- Die Programmierung eines Rechners in einer höheren Programmiersprache

Mehr

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14 Kapitel: Die Chomsky Hierarchie Die Chomsky Hierarchie 1 / 14 Allgemeine Grammatiken Definition Eine Grammatik G = (Σ, V, S, P) besteht aus: einem endlichen Alphabet Σ, einer endlichen Menge V von Variablen

Mehr

Automaten und Formale Sprachen

Automaten und Formale Sprachen Automaten und Formale Sprachen Einführung Ralf Möller Hamburg Univ. of Technology Übung Fr. 14:30-15:15 Max Berndt, D1025 Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik,

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik 0 KIT 17.05.2010 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik nationales Forschungszentrum Vorlesung in am

Mehr

Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden:

Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: Sprachen und Automaten 1 Deterministische endliche Automaten (DFA) Ein deterministischer endlicher Automat (DFA) kann als 5-Touple dargestellt werden: M = (Z,3,*,qo,E) Z = Die Menge der Zustände 3 = Eingabealphabet

Mehr

Automaten und Coinduktion

Automaten und Coinduktion Philipps-Univestität Marburg Fachbereich Mathematik und Informatik Seminar: Konzepte von Programmiersprachen Abgabedatum 02.12.03 Betreuer: Prof. Dr. H. P. Gumm Referentin: Olga Andriyenko Automaten und

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik Wintersemester 2007 / 2008 Prof. Dr. Heribert Vollmer Institut für Theoretische Informatik 29.10.2007 Reguläre Sprachen Ein (deterministischer) endlicher Automat

Mehr

b) Eine nd. k-band-turingmaschine M zur Erkennung einer m-stelligen Sprache L (Σ ) m ist ein 8-Tupel

b) Eine nd. k-band-turingmaschine M zur Erkennung einer m-stelligen Sprache L (Σ ) m ist ein 8-Tupel 2. Turingmaschinen Zur Formalisierung von Algorithmen benutzen wir hier Turingmaschinen. Von den vielen Varianten dieses Konzeptes, die sich in der Literatur finden, greifen wir das Konzept der on-line

Mehr

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie

Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 07.02.2006 28. und letzte Vorlesung 1 Die Chomsky-Klassifizierung Chomsky-Hierachien 3: Reguläre Grammatiken

Mehr

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P 11 Woche: Turingmaschinen, Entscheidbarkeit, P 239/ 333 Einführung in die NP-Vollständigkeitstheorie

Mehr

Lösungen zur 3. Projektaufgabe TheGI1

Lösungen zur 3. Projektaufgabe TheGI1 Marco Kunze (makunze@cs.tu-berlin.de) WS 2001/2002 Sebastian Nowozin (nowozin@cs.tu-berlin.de) 21. 1. 2002 Lösungen zur 3. Projektaufgabe TheGI1 Definition: Turing-Aufzähler Ein Turing-Aufzähler einer

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

Das Rechenmodell namens. Turing-Maschine. Hans U. Simon (RUB) Homepage:

Das Rechenmodell namens. Turing-Maschine. Hans U. Simon (RUB)   Homepage: Turing-Maschine Slide 1 Das Rechenmodell namens Turing-Maschine Hans U. Simon (RUB) Email: simon@lmi.rub.de Homepage: http://www.ruhr-uni-bochum.de/lmi Turing-Maschine Slide 2 Die Turingmaschine DTM =

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2012 17. DIE KONTEXTFREIEN SPRACHEN II: ABSCHLUSSEIGENSCHAFTEN, MASCHINENCHARAKTERISIERUNG, KOMPLEXITÄT Theoretische

Mehr

Kontextfreie Grammatiken

Kontextfreie Grammatiken Kontextfreie Grammatiken Bisher haben wir verschiedene Automatenmodelle kennengelernt. Diesen Automaten können Wörter vorgelegt werden, die von den Automaten gelesen und dann akzeptiert oder abgelehnt

Mehr

Theoretische Informatik 2

Theoretische Informatik 2 Theoretische Informatik 2 Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2009/10 Die Chomsky-Hierarchie Definition Sei G = (V, Σ, P, S) eine Grammatik. 1 G heißt vom Typ 3 oder

Mehr

Theoretische Informatik I

Theoretische Informatik I heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer

Mehr

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen.

Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel: 1234q567 bedeutet: Kopf steht auf 5, Zustand ist q. Rechnung:

Mehr

1 Random Access Maschine

1 Random Access Maschine 1 RANDOM ACCESS MASCHINE 1 1 Random Access Maschine Neue Hardware: Random Access Maschine = RAM. Der Name hat nichts mit Zufall zu tun, sondern mit wahlfreiem Zugriff. Die RAM besteht aus einem Eingabeband,

Mehr

Worterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65

Worterkennung in Texten speziell im Compilerbau 14. April Frank Heitmann 2/65 Grenzen regulärer Sprachen? Formale Grundlagen der Informatik 1 Kapitel 4 Über reguläre Sprachen hinaus und Frank Heitmann heitmann@informatik.uni-hamburg.de Wir haben mittlerweile einiges kennengelernt,

Mehr

THEORETISCHE INFORMATIK

THEORETISCHE INFORMATIK THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek @ Institut für Theoretische Informatik Technische Universität Braunschweig Dezember 28 Inhaltsverzeichnis Endliche Automaten. Mathematische Grundbegriffe......................

Mehr

Kapitel 7: Kellerautomaten und kontextfreie Sprachen

Kapitel 7: Kellerautomaten und kontextfreie Sprachen Kapitel 7: Kellerautomaten und kontextfreie Sprachen Prof.-Dr. Peter Brezany Institut für Softwarewissenschaft Universität Wien, Liechtensteinstraße 22 1090 Wien Tel. : 01/4277 38825 E-mail : brezany@par.univie.ac.at

Mehr

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven WS06/07 Referentin: Katharina Blinova Formale Sprachen Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven 1. Allgemeines 2. Formale Sprachen 3. Formale Grammatiken 4. Chomsky-Hierarchie 5.

Mehr

Automaten und formale Sprachen Klausurvorbereitung

Automaten und formale Sprachen Klausurvorbereitung Automaten und formale Sprachen Klausurvorbereitung Rami Swailem Mathematik Naturwissenschaften und Informatik FH-Gießen-Friedberg Inhaltsverzeichnis 1 Definitionen 2 2 Altklausur Jäger 2006 8 1 1 Definitionen

Mehr

Komplexität und Komplexitätsklassen

Komplexität und Komplexitätsklassen Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 21 vom 21.01.2013 Komplexität und Komplexitätsklassen Die meisten Probleme mit denen wir zu tun haben sind entscheidbar.

Mehr

7. Übungsblatt zu Theoretische Grundlagen der Informatik im WS 2015/16

7. Übungsblatt zu Theoretische Grundlagen der Informatik im WS 2015/16 Karlsruher Institut für Technologie Institut für Theoretische Informatik Prof. Dr. Peter Sanders L. Hübschle-Schneider, T. Maier 7. Übungsblatt zu Theoretische Grundlagen der Informatik im WS 2015/16 http://algo2.iti.kit.edu/tgi2015.php

Mehr

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13

Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2012/13 Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Musterlösung der Hauptklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 22/3 Vorname Nachname Matrikelnummer

Mehr

Grundlagen der Informatik II

Grundlagen der Informatik II Grundlagen der Informatik II Tutorium 2 Professor Dr. Hartmut Schmeck Miniaufgabe * bevor es losgeht * Finden Sie die drei Fehler in der Automaten- Definition. δ: A = E, S, δ, γ, s 0, F, E = 0,1, S = s

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Einführung in die Theoretische Informatik Johannes Köbler Institut für Informatik Humboldt-Universität zu Berlin WS 2011/12 Die Registermaschine (random access machine, RAM) 0 I 0 1 I 1 2 I 2 m I m Programm

Mehr

Deterministische Turing-Maschinen

Deterministische Turing-Maschinen Deterministische Turing-Maschinen Um 900 präsentierte David Hilbert auf einem internationalen Mathematikerkongress eine Sammlung offener Fragen, deren Beantwortung er von zentraler Bedeutung für die weitere

Mehr

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17

Endliche Automaten. Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 Endliche Automaten Im Hauptseminar Neuronale Netze LMU München, WS 2016/17 RS- Flipflop RS-Flipflop Ausgangszustand 0 1 0 1 0 1 Set Reset neuer Zustand 0 0 0 0 0 1 1 0 1 1 0 1 0 1 0 0 1 0 Was ist ein endlicher

Mehr

Ausgewählte unentscheidbare Sprachen

Ausgewählte unentscheidbare Sprachen Proseminar Theoretische Informatik 15.12.15 Ausgewählte unentscheidbare Sprachen Marian Sigler, Jakob Köhler Wolfgang Mulzer 1 Entscheidbarkeit und Semi-Entscheidbarkeit Definition 1: L ist entscheidbar

Mehr

THEORETISCHE INFORMATIK

THEORETISCHE INFORMATIK THEORETISCHE INFORMATIK Vorlesungsskript Jiří Adámek Institut für Theoretische Informatik Technische Universität Braunschweig Januar 2014 Inhaltsverzeichnis 1 Endliche Automaten 1 1.1 Mathematische Grundbegriffe.......................

Mehr

Einführung in Berechenbarkeit, Komplexität und formale Sprachen

Einführung in Berechenbarkeit, Komplexität und formale Sprachen Johannes Blömer Skript zur Vorlesung Einführung in Berechenbarkeit, Komplexität und formale Sprachen Universität Paderborn Wintersemester 2011/12 Inhaltsverzeichnis 1 Einleitung 2 1.1 Ziele der Vorlesung...................................

Mehr

Einführung in die Informatik Turing Machines

Einführung in die Informatik Turing Machines Einführung in die Informatik Turing Machines Eine abstrakte Maschine zur Präzisierung des Algorithmenbegriffs Wolfram Burgard Cyrill Stachniss 1/14 Motivation und Einleitung Bisher haben wir verschiedene

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

Reguläre Sprachen und endliche Automaten

Reguläre Sprachen und endliche Automaten Reguläre Sprachen und endliche Automaten 1 Motivation: Syntaxüberprüfung Definition: Fließkommazahlen in Java A floating-point literal has the following parts: a whole-number part, a decimal point (represented

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

Formale Sprachen und Automaten

Formale Sprachen und Automaten Formale Sprachen und Automaten Kapitel 1: Grundlagen Vorlesung an der DHBW Karlsruhe Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2012 Ziel Einführung der wichtigsten

Mehr

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht

2 2 Reguläre Sprachen. 2.2 Endliche Automaten. Übersicht Formale Systeme, Automaten, Prozesse Übersicht 2 2. Reguläre Ausdrücke 2.3 Nichtdeterministische endliche Automaten 2.4 Die Potenzmengenkonstruktion 2.5 NFAs mit ɛ-übergängen 2.6 Minimale DFAs und der

Mehr

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten

Kapitel 3: Reguläre Grammatiken und Endliche. Automaten Kapitel 3: Reguläre Grammatiken und Endliche Automaten Prof.-Dr. Peter Brezany Institut für Softwarewissenschaft Universität Wien, Liechtensteinstraße 22 090 Wien Tel. : 0/4277 38825 E-mail : brezany@par.univie.ac.at

Mehr

Lexikalische Programmanalyse der Scanner

Lexikalische Programmanalyse der Scanner Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung

Mehr

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik

2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 2. Übungsblatt 6.0 VU Theoretische Informatik und Logik 25. September 2013 Aufgabe 1 Geben Sie jeweils eine kontextfreie Grammatik an, welche die folgenden Sprachen erzeugt, sowie einen Ableitungsbaum

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

Nichtdeterministische Platzklassen

Nichtdeterministische Platzklassen Sommerakademie 2010 Rot an der Rot AG 1: Wieviel Platz brauchen Algorithmen wirklich? Nichtdeterministische Platzklassen Ulf Kulau August 23, 2010 1 Contents 1 Einführung 3 2 Nichtdeterminismus allgemein

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 4: Wörter (und vollständige Induktion) Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Oktober 2008 1/29 Überblick Wörter Wörter Das leere Wort Mehr zu

Mehr

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005

1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005 Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 2004/05 ILKD Prof. Dr. D. Wagner 24. Februar 2005 1. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005 Aufkleber Beachten

Mehr

Automaten und Formale Sprachen ε-automaten und Minimierung

Automaten und Formale Sprachen ε-automaten und Minimierung Automaten und Formale Sprachen ε-automaten und Minimierung Ralf Möller Hamburg Univ. of Technology Literatur Gottfried Vossen, Kurt-Ulrich Witt: Grundkurs Theoretische Informatik, Vieweg Verlag 2 Danksagung

Mehr

Deterministischer Kellerautomat (DPDA)

Deterministischer Kellerautomat (DPDA) Deterministische Kellerautomaten Deterministischer Kellerautomat (DPDA) Definition Ein Septupel M = (Σ,Γ, Z,δ, z 0,#, F) heißt deterministischer Kellerautomat (kurz DPDA), falls gilt: 1 M = (Σ,Γ, Z,δ,

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

Unentscheidbarkeit. Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen

Unentscheidbarkeit. Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: Komplexitätstheorie und effiziente Algorithmen Vorlesung Berechenbarkeit und Komplexität alias Theoretische Informatik: und effiziente Algorithmen Wintersemester 2011/12 Prof. Barbara König Übungsleitung: Henning Kerstan & Jan Stückrath Worum geht

Mehr

1- und 2-Wege QFAs. Stephan Sigg Quantentheoretische Grundlagen. 3. DFAs und QFAs. 4. Einige bekannte Ergebnisse

1- und 2-Wege QFAs. Stephan Sigg Quantentheoretische Grundlagen. 3. DFAs und QFAs. 4. Einige bekannte Ergebnisse 1- und 2-Wege QFAs Stephan Sigg 09.12.2003 1. Einleitung und Überblick 2. Quantentheoretische Grundlagen 3. DFAs und QFAs 4. Einige bekannte Ergebnisse 5. Offene Fragen 6. Schluß Seminar 1- und 2-wege

Mehr

Übung zur Vorlesung Theoretische Information. Pumping Lemma

Übung zur Vorlesung Theoretische Information. Pumping Lemma Übung zur Vorlesung Theoretische Information Pumping Lemma Folie Ein Endlicher Automat q q, q 2, Akzeptierte Sprache? Folie 2 Ein Endlicher Automat q q, q 2, Akzeptierte Sprache? Am Anfang eine, dannach

Mehr

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution

Abschluss gegen Substitution. Wiederholung. Beispiel. Abschluss gegen Substitution Wiederholung Beschreibungsformen für reguläre Sprachen: DFAs NFAs Reguläre Ausdrücke:, {ε}, {a}, und deren Verknüpfung mit + (Vereinigung), (Konkatenation) und * (kleenescher Abschluss) Abschluss gegen

Mehr

Übung zur Vorlesung Theoretische Information. Minimierungsalgorithmus

Übung zur Vorlesung Theoretische Information. Minimierungsalgorithmus Übung zur Vorlesung Theoretische Information Minimierungsalgorithmus Folie Warum Automaten minimieren? Zwei endliche Automaten Automat q q Automat 2 q q Beide akzeptieren die selbe Sprache Welche? q 2

Mehr

Einführung in die Theoretische Informatik

Einführung in die Theoretische Informatik Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 3 14. Mai 2010 Einführung in die Theoretische

Mehr