Algorithmentheorie 4. Vorlesung
|
|
- Nicole Rothbauer
- vor 5 Jahren
- Abrufe
Transkript
1 Algorithmentheorie 4. Vorlesung Martin Dietzfelbinger... Turingmaschinen B B B b a n d i n B B * # s c h r i f t B B B B B B B... Lese Schreib Kopf: Bewegen um 1 Bandfeld Schreiben Lesen 27. April 2006 Übergangsfunktion δ q m q 0 q 1 q q 3 2 Steuereinheit gegenwärtiger Zustand q Zustandsmenge Q FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Turingmaschinen Akzeptierte Sprache L M := {x Σ M akzeptiert x} heißt die von M akzeptierte Sprache. Turingmaschinen Haltesprache H M := {x Σ M hält auf x} heißt die Haltesprache von M. Rekursiv aufzählbare und rekursive Sprachen Eine Sprache L heißt rekursiv aufzählbar (r.a.), falls es eine TM M gibt, so dass L = L M ist. Eine Sprache L heißt rekursiv (rek.), falls es eine TM M gibt, die auf allen Inputs x Σ hält, so dass L = L M ist. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
2 Partiell rekursive Funktionen Eine Funktion f : D R heißt partiell rekursiv (p.r.), falls es eine TM M = (...,Σ,Γ,...) gibt derart dass D = H M, R (Γ {B}) und f = f M ist. Turingmaschinen Tricks endlicher Speicher in Steuereinheit Spurtechnik, Markierungen Kopieren/Transport von Bandinschriften Eine Funktion f : Σ R heißt (total) rekursiv, falls es eine TM M = (...,Σ,...) gibt derart dass f = f M ist. Beachte: Diese TM M hält auf allen Inputs x Σ. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Turingmaschinen Varianten mehrere Spuren einseitig unendliches Band k-band-tm Berechnungskraft unverändert Beweismethode: Simulation Modellerweiterung: k-band-turingmaschinen Eine 3-Band-TM:... B B B e i n g a b e B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B... Steuer einheit Allgemeiner: k Bänder, k Köpfe. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
3 Modellerweiterung: k-band-turingmaschinen Fazit: Wenn es bequem ist, können wir uns jede beliebige feste Menge von Bändern als gegeben vorstellen. Die Berechnungskraft des Modells ändert sich dadurch nicht. Welche Variante man benutzt, spielt für die Begriffe rekursiv aufzählbare Menge, rekursive Menge, partiell rekursive Funktion usw. keine Rolle. Zeit-/Platzbedarf bei Turingmaschinen Für M eine k-band-tm, x Σ : t M (x) := Zahl der Schritte, die M auf Eingabe x ausführt N { } s M (x) := Anzahl der verschiedenen Zellen, auf die die Köpfe von M bei Eingabe x schreibend zugreifen, auf allen Bändern zusammen ( N { }); T M (n) := max{t M (x) x Σ n } (Zeitbedarf im schlechtesten Fall über alle Eingaben der Länge n: worst-case- Zeitkomplexität); S M (n) := max{s M (x) x Σ n }. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Zeit-/Platzschranken bei Turingmaschinen Sei t: N R + eine Funktion. M heißt t(n)-zeitbeschränkt, falls T M (n) t(n) für alle n N gilt, d.h. falls t M (x) t( x ) für alle x Σ gilt. Beispiel: TM M ist 10n 2 -zeitbeschränkt (Genauer Verlauf von T M (n) ist nicht wichtig.) FG KTuEA, TU Ilmenau AT Zeit-Komplexitätsklassen Für t: N R + definieren wir: DTIME(t(n)) := {L M M ist k-band-tm, Die so definierten Sprachenmengen heißen Zeit-Komplexitätsklassen. Beispiele: c > 0 : M ist c t(n)-zeitbeschränkt}. DTIME(n),DTIME(n 2 ),DTIME(n log n),dtime(2 n ). Linearzeit, Quadratische Zeit,... FG KTuEA, TU Ilmenau AT
4 Programmiertechnik: Unterprogramme Bemerkung: M sei TM. Man kann bei der Programmierung einer anderen TM M die TM M als Unterprogramm nutzen Bänder von M... B B a a a... a B B B n Band von M M : Programm von M ohne M Beschreibung von M endliches Objekt! FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Programmiertechnik: Unterprogramme M schreibt auf ein sonst leeres Band Eingabe x für M, startet M durch Umschalten auf den Startzustand von M, und erhält nach Ende der M-Berechnung die Information, ob x L M oder nicht (per Zustand), oder den Funktionswert f M (x) Programmiertechnik: Unterprogramme Variante: M mit einseitig unbeschränktem Band: es genügt auch ein einseitig leeres Band von M als Arbeitsbereich für M. Möglich: Rücksprungpunkte im Programm von M aufs Band schreiben Aufrufe an beliebigen Stellen in M und sogar: rekursive Unterprogramme. Band von M kann gelöscht (mit B s überschrieben) werden oder für den nächsten Aufruf aufbewahrt. Dann setzt M seine eigene Berechnung fort. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
5 Programmiertechnik: Textsuche Häufige Teilaufgabe: suche Muster p = a 1 a n in Text t = b 1 b m. Beispiel: p = 10010, t = , p in t bei Position 9 und bei Position 12. Programmiertechnik: Textsuche Aufgabe: Auf Eingabe a 1 a n #b 1 b m {#} die erste Stelle j so dass a 1 a n = b j b j+n 1 falls eine solche Stelle existiert. Methode: Kopiere a 1 a n auf Band 3. Initialisiere Band 2 mit 1. Markiere b 1 auf Extra-Spur auf Band 1 mit. finde FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Band 1 Band 2 Band 3 Programmiertechnik: Textsuche Bandinhalt während der Rechnung : B a a... a # b b B B n 1 2 B a a... a B n b j * bin(j) b m Wiederhole: Programmiertechnik: Textsuche Vergleiche Wort auf Band 1, startend bei, Zeichen für Zeichen mit a 1 a n. Bei Übereinstimmung: fahre den Bandkopf auf Band 1 nach links zum und halte akzeptierend. Falls b 1 b m zu kurz : halte verwerfend. Sonst rücke um eine Zelle weiter nach rechts, erhöhe die Binärzahl auf Band 2 um 1. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
6 Programmiertechnik: Textsuche Anwendung: Records/Verbünde/Zeiger... feld3 # # identifier # feld1 # feld2 # feld3 # # identifier... Binärzahl Binärzahl Modelleinschränkung: Standardalphabete Hintergrund/Motivation: In echten Computern wird alles binär kodiert. Dies sollte auch bei TM gehen. (a) Eingabealphabet: Beispiel: Binärkodierung a a b c d # $ ϕ(a) ## identifier # 0 induziert und ϕ(ab#dc) = ϕ({ab#dc, a$d}) = { , }. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Standard-Eingabealphabet Allgemein: Zu Alphabet Σ, Σ 2, betrachte Binärkodierung ϕ : Σ 1 1 {0,1} log 2 Σ für die Buchstaben. Induziert Binärkodierung für die Wörter: ϕ(a 1 a n ) := } ϕ(a 1 ) {{ ϕ(a n } ), für n N,a 1,...,a n Σ {0,1}... und Binärkodierung für Sprachen über Σ: ϕ(l) = {ϕ(w) w L} {0,1}, für L Σ.... und Binärkodierung f ϕ für Funktion f über Σ. Proposition Standard-Eingabealphabet (i) L ist rekursiv ϕ(l) ist rekursiv; (ii) L ist rekursiv aufzählbar ϕ(l) ist rekursiv aufzählbar; (iii) f ist partiell rekursiv f ϕ ist partiell rekursiv. Beweisidee: (ii) : Habe: TM M mit L = L M. Neue TM M mit Eingabealphabet {0,1} tut folgendes: Teile Eingabe w in Blöcke der Länge log 2 Σ, übersetze mittels ϕ 1 in w = ϕ 1 (w ) über Σ, starte M. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
7 Standard-Eingabealphabet Proposition (i) L ist rekursiv ϕ(l) ist rekursiv; (ii) L ist rekursiv aufzählbar ϕ(l) ist rekursiv aufzählbar; (iii) f ist partiell rekursiv f ϕ ist partiell rekursiv. Beweisidee: (ii) : Habe: TM M mit ϕ(l) = L M. Neue TM M mit Eingabealphabet Σ tut folgendes: Übersetze Eingabe w in ϕ(w), starte M. (i), (iii): analog. Modelleinschränkung: Standardalphabete (b) Bandalphabet: Standardalphabet Γ = {0,1,B }, Blank B. Voraussetzung: Eingabealphabet {0,1}, nach (a) möglich. Behauptung: Sei M = (Q,Σ,Γ,B, q 0,F, δ) mit Σ = {0,1} eine TM. Dann kann das Verhalten von M durch eine TM M = (Q, Σ, Γ,...) mit Bandalphabet Γ = {0,1,B } simuliert werden. D.h.: es existiert eine TM M = (Q, {0,1,B }, {0,1},B,...) mit L M = L M, H M = H M, f M = f M. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Idee: log ( Γ ) B B B B B B code(b) code(a) code(b) 2 Kapitel 1.3: Nichtdeterministische Turingmaschinen... und Chomsky-0-Grammatiken Kopfbewegungen von M : M : Puffer: a ε Γ Decode Programm von M Nichtdeterministische TM deterministisch : in jeder Konfiguration genau eine Nachfolgekonfiguration... oder keine Haltekonfiguration Code a nichtdeterministisch : es ist erlaubt, dass in manchen Konfigurationen mehr als eine Nachfolgekonfiguration existiert FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
8 Nichtdeterministische Turingmaschinen kein Modell für realistischen Rechner wie weiß die Maschine, was sie als nächstes tun soll? : kein echtes Problem, denn eine nichtdeterministsiche TM rechnet nicht einfach Schritt für Schritt abstraktes Modell erleichtert (manchmal) Programmierung (in diesem Kapitel) hilft bei der interessanter Sprachklassen (Theorie der NP-Vollständigkeit) Eine nichtdeterministische Turingmaschine (NTM) M besteht aus 7 Komponenten: Q,Σ,Γ,B, q 0,F: wie bei gewöhnlichen TM δ: Q Γ P(Q Γ {L,R,N}) In einer Situation (q, a) (Zustand, gelesener Buchstabe) gibt es keinen, einen, oder mehr als einen möglichen Zug (q,a,d). Die möglichen Züge sind die Elemente von δ(q, a). Wenn δ(q, a) 2, dann existiert eine Auswahl oder Verzweigungsmöglichkeit. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Beispiel: Exaktes Rucksackproblem Problem RUCKSACK : Input: n Objekte mit Volumina a 1,...,a n, Rucksack mit Kapazität b. Frage: Kann man aus den Objekten einige auswählen, so dass sie den Rucksack exakt füllen, d.h. dass ihr Gesamtvolumen genau b ist? Gibt es eine Teilmenge I {1,...,n} mit i I a i = b? Formalisierung durch Sprache L Rucksack := {bin(a 1 )# #bin(a n )#bin(b) n N,a 1,...,a n,b 1, I {1,...,n} : i I Das Entscheidungsproblem RUCKSACK ist genau das Wortproblem für L Rucksack. Beispiel: a i = b}. 1010#101#1000#11#1101 L Rucksack ; 110#10#1010#110#1111 / L Rucksack. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
9 NTM für RUCKSACK 3 Phasen: auf Input w passiert folgendes: 1. Syntaxcheck: Hat w das richtige Format? Ist w L(1(0 + 1) (#1(0 + 1) ) + )? Bei Erfolg: Erreiche Zustand q 2, Kopf auf erstem Inputzeichen. Sonst: Halte verwerfend. 2. Wähle nichtdeterministisch einige der Zahlen aus. Formal: Ersetze einige der #-Zeichen durch 3. Streiche die per bin(a i ) markierten Zahlen. Addiere (Übung!) die restlichen Zahlen und prüfe, ob die Summe b ist. NTM für RUCKSACK : technisch 1. Syntaxcheck: wie ein DFA Bei Erfolg: Erreiche Zustand q 2, Kopf auf erstem Inputzeichen; sonst: Halte verwerfend. 2. δ(q 2,a) = {(q 2,a,R)}, für a Σ δ(q 2,#) = {(q 2,,R),(q 2,#,R)}, für a Σ δ(q 2,B) = {(q 3,B, L)}. 3. Überschreibe bin(a i ) mit Nullen: 00 0# (Skript: Deterministische TM für diese Aufgabe.) FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Addiere die verbleibenden Zahlen und prüfe, ob die Summe b ist. Falls ja, akzeptiere, falls nein, verwerfe. NTM für RUCKSACK : Eigenschaften Eingabe (a 1,...,a n,b) bestehe aus n + 1 Zahlen, syntaktisch korrekt. Nach Phase 2 sind genau 2 n viele verschiedene Situationen möglich. Entspricht: 2 n Teilmengen I {1,...,n} Falls i I a i = b, wird akzeptiert, sonst verworfen. Manche Berechnungen akzeptieren, manche verwerfen. (Willkürliche) Festlegung: NTM M akzeptiert w, falls mindestens eine der möglichen Berechnungen akzeptiert. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
10 Semantik von NTM NTM M = (Q,Σ,Γ,B, q 0,F, δ) sei gegeben. Schreibe k M k. Iteration k M k wird definiert wie bei TM. Menge K M der Konfigurationen: wie bei TM Startkonfiguration init M (x): wie bei TM Sei k = α 1 (q, a)α 2 Konfiguration. Für jedes Tripel (q,a,d) δ(q, a) gibt es eine Nachfolgekonfiguration k von k, und zwar: k wird aus k gebildet wie bei (deterministischen) TM, unter Benutzung des Zuges (q,a,d). FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT NTM M = (Q,Σ,Γ,B, q 0,F, δ) sei gegeben. k = α 1 (q, a)α 2 K M heißt Haltekonfiguration, wenn δ(q, a) = ist. Akzeptierend: q F Verwerfend: q Q F Folge init M (x) = k 0 k 1 k 2 (ohne Ende) heißt nicht-haltende Berechnung von M auf x. akzeptierende Berechnung : endet in akzeptierender Haltekonfiguration verwerfende Berechnung : endet in verwerfender Haltekonfiguration init M (x) = k 0 k 1 k t heißt eine haltende Berechnung von M auf x falls k t Haltekonfiguration. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
11 . NTM M = (Q,Σ,Γ,B, q 0,F, δ) sei gegeben. M akzeptiert x Σ, wenn M mindestens eine akzeptierende Berechnung für x hat, d.h. wenn es eine Berechnung Bemerkung: Wir definieren für NTM nicht: H M und f M. (3 Zeilen im Skript S. 61 streichen.) init M (x) = k 0 k 1 k t gibt, so dass k t akzeptierende Haltekonfiguration ist. Achtung: Es ist dann unwichtig, ob es auch verwerfende oder nicht haltende Berechnungen gibt. L M := {x Σ M akzeptiert x}. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Wurzel Zeitschritte Berechnungsbaum k 0 init (x) M 0 In einem Berechnungsbaum sind alle möglichen Berechnungen einer NTM M auf einem Input x zusammengefasst. Jede Berechnung ist ein Weg aus Konfigurationen, alle Wege haben einen gemeinsamen Startpunkt, die Startkonfiguration. k 1.. k 2 k 1 k k 2 k t k 1 k 2 k 3 k 4 Nachfolge konfigurationen von k t + 1 "akzeptiere" "verwirf" FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
12 Berechnungsbaum CT(M,x) ( computation tree ) ist ein endlicher oder unendlicher gerichteter Baum, folgendermaßen gebaut: (i) Wurzel, mit init M (x) markiert. (ii) Hat ein Knoten v im Baum Markierung k = α 1 (q, a)α 2 und ist δ(q, a) = {(q 1,a 1,D 1 ),...,(q s,a s,d s )}, und sind k 1,...,k s die Nachfolgekonfigurationen von k zu den s Zügen in δ(q, a), so hat v Nachfolger v 1,...,v s, die mit k 1,...,k s markiert sind. jeder Berechnung init M (x) = k 0 k 1 k t (endlich oder unendlich) entspricht ein Pfad im Baum; ein Knoten mit Markierung k ist Blatt k Haltekonfiguration; M akzeptiert x CT(M,x) hat mindestens ein akzeptierendes Blatt. CT(M,x) enthält alle Berechnungen von M auf x als Pfade. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Bemerkung Endlichkeit des Berechnungsbaums CT(M,x) hat endlich viele Knoten Beweis: : trivial. jede Berechnung von M auf x endet nach endlich vielen Schritten. : Wenn CT(M,x) unendlich ist, kann man per Induktion einen unendlichen Weg in CT(M, x) konstruieren; dies ist eine nicht abbrechende Berechnung; Details siehe Skript. Modellvarianten, Programmiertricks... genau wie bei den (deterministischen) TMs. Besonders wichtig: Nichtdeterministische Turingmaschinen mit k Bändern. Satz M sei NTM mit k Bändern. Dann gilt: (a) Es gibt eine 1-Band-NTM M mit L M = L M (b) Wenn jede Berechnung von M auf Inputs x Σ n nach höchstens t(n) Schritten anhält, so kann die NTM M in (a) so konstruiert werden, dass jede Berechnung von M auf Inputs x Σ n nach höchstens O(t(n) 2 ) Schritten anhält. Fazit: Benutze k Bänder, wenn bequem. Ende FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
13 Beispiel: Oberfolgenproblem Teilfolge : 1000 ist Teilfolge von Def.: u = b 1 b m heißt Teilfolge von x = a 1 a n, wenn es 1 i 1 < < i m n gibt, so dass b 1 b m = a i1 a im. Oberfolge : Def.: x heißt Oberfolge von u, wenn u Teilfolge von x ist. Beispiel: ist Oberfolge von 1000, nicht aber Beispiel: Oberfolgenproblem Gegeben: Beliebige r.a. Sprache L = L M, M TM. L := {x Σ w L : x ist Oberfolge von w}. Menge der Oberfolgen von Wörtern in L. Wir entwerfen eine 2-Band-NTM für L. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Input: x = a 1...a n Beispiel: Oberfolgenproblem 2 Phasen: 1: Lese x von links nach rechts, wähle nichtdeterministisch Zeichen aus, die auf Band 2 kopiert werden. Fahre Kopf auf Band 2 zurück. δ(q 0,a, B) = {(q 0,a,a, R,R),(q 0,a,B, R,N)}, für a Σ; δ(q 0,B, B) = {(q 1,B, B, N,L)}; δ(q 1,B, a) = {(q 1,B, a, N,L)}, für a Σ; δ(q 1,B, B) = {(q M 0,B, B, N,R)}. Beispiel: Oberfolgenproblem In Phase 1 gibt es genau 2 n verschiedene Abläufe. Auf Input x = abac steht auf Band 2 eines der folgenden Wörter: abac,aba,abc,ab,aac,aa,ac,a,bac,ba,bc,b,ac,a,c,ε. (16 Abläufe, 14 verschiedene Wörter.) Es gilt: M akzeptiert x genau dann wenn x eine Teilfolge y L M hat, d.h. wenn x L ist. 2: Lasse M auf der Inschrift von Band 2 ablaufen. FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
14 Gewöhnliche TM ist praktisch ein Spezialfall von NTM: Sei M = (Q,Σ,Γ,B, q 0,F, δ) eine deterministische TM Betrachte ˆδ : Q Γ P(Q Γ {L,R,N}) mit ˆδ(q, a) := { {(q,a,d)}, falls δ(q, a) = (q,a,d);, falls δ(q, a) = (undefiniert). Frage: Kann man mit NTM mehr berechnen als mit TM? Nein! Z.B.: = {a,b,c} Technik: Aufzähler für Erzeuge nacheinander: ε, a, b, c, aa, ab, ac, ba, bb, bc, ca, cb, cc, aaa, aab, aac,... Lemma Sei Alphabet. Dann existiert eine deterministische 1-Band- TM, die auf Eingabe ε unendlich lange läuft und dabei nacheinander die Konfiguration (q fertig,b) und dann die Konfigurationen (q fertig,a 1 )a 2 a n erreicht, für alle a 1 a n +. Idee: Zähle im d-ären System. (Details: Übung). FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Satz Ist L = L M für eine nichtdeterministische TM M, dann ist L rekursiv aufzählbar. Beweis: Gegeben sei NTM M = (Q,Σ,Γ,B, q 0,F, δ). Simulation : Beschreibe Arbeitsweise einer TM M. Menge der Einzelzüge von M: Z := Q Γ {L,R,N} (Endliche Menge!) Jede Berechnung k 0 k 1 k 2... entspricht einer (eindeutigen) Zugfolge (z 1,z 2,...) in Z. Aber: Nicht jede Zugfolge liefert Berechnung! Beispiel Rucksack-NTM: Konfiguration Zug (q 0,1)1#11#1#100 (q 0,1,R) (q 2,1)1#11#1#100 (q 2,1,R) 1(q 2,1)#11#1#100 (q 2,1,R) 11(q 2,#)11#1#100 (q 2,,R) 11 (q 2,1)1#1#10 (q 2,1,R) 11 1(q 2,1)#1#10 (q 2,1,R) 11 11(q 2,#)1#10 (q 2,#,R) 11 11#(q 2,1)#10 (q 2,1,R) (q 4,0)0#11#1# FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
15 TM M hat drei Bänder. Band 1: Eingabe x, nie verändert. Band 2: Arbeitsband von M. Band 3: Zugfolgen (z 1,z 2,...). M erzeugt auf Band 3 nacheinander jede mögliche endliche Folge (z 1,z 2,...,z r ) Z. Für jede dieser Folgen (z 1,z 2,...,z r ) wird folgendes getan: ( ) Kopiere x von Band 1 auf Band 2. Rechne auf Band 2 wie M, führe dabei im i-ten Schritt Zug z i aus, solange dies mit δ konsistent ist. Falls akzeptierende Konfiguration von M erreicht wird: halte, akzeptiere. Sonst: Lösche Band 2, erzeuge auf Band 1 nächste Zugfolge, gehe zu ( ) FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Beobachtung: Wenn x L M, es also mindestens eine akzeptierende Berechnung k 0 k 1 k 2... von M gibt, dann wird irgendwann eine Zugfolge erzeugt, die einer akzeptierenden Berechnung von M entspricht M hält akzeptierend. Wenn M akzeptierend hält, dann hat M soeben eine akzeptierende Berechnung von M durchgeführt x L M Ergänzung Leichte Modifikation von M kann beobachten, ob CT(M,x) endlich ist. (Für ein t führen alle mit δ konsistenten Zugfolgen der Länge t in eine Haltekonfiguration.) Dann: Verwerfend halten. Fazit: Wenn alle Berechnungsbäume von M endlich sind, dann ist L M rekursiv und M (modifiziert) hält auf allen Eingaben. Also: M akzeptiert x x L M. D.h.: L M = L M FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT
16 Zeitaufwand der Simulation: Z r O( x + r) = O( Z t ( x + t)) = O( Z t t). 0 r t Benutze NTM als bequeme Programmiertechnik! Hilfreich für den Nachweis von Abschlusseigenschaften (Übung, später) Fazit: Wenn t: N R + so ist, dass für jedes x Σ jede Berechnung von M auf x höchstens t( x ) Schritte macht, dann ist die simulierende Turingmaschine M O(2 c t(n) )- zeitbeschränkt, für c = 1 + log Z. (Exponentieller Blow-up) FG KTuEA, TU Ilmenau AT FG KTuEA, TU Ilmenau AT Skript Seiten Bis nächste Woche Übungsaufgaben drucken und vorbereiten FG KTuEA, TU Ilmenau AT
Algorithmentheorie 8. Vorlesung
Algorithmentheorie 8. Vorlesung Martin Dietzfelbinger 1. Juni 2006 1.7 Die Churchsche These Der intuitive Berechenbarkeitsbegriff wird durch die Formalisierung TM-Berechenbarkeit, also Rekursivität von
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 13. Vorlesung 07.12.2006 1 Überblick: Die Church- Turing-These Turing-Maschinen 1-Band Turing-Maschine Mehrband-Turing-Maschinen Nichtdeterministische
MehrRekursiv 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
MehrBerechenbarkeit und Komplexität: Erläuterungen zur Turingmaschine
Berechenbarkeit und Komplexität: Erläuterungen zur Turingmaschine Prof. Dr. Berthold Vöcking Lehrstuhl Informatik Algorithmen und Komplexität 24. Oktober 26 Programmierung der TM am Beispiel Beispiel:
MehrWeitere universelle Berechnungsmodelle
Weitere universelle Berechnungsmodelle Mehrband Turingmaschine Nichtdeterministische Turingmaschine RAM-Modell Vektoradditionssysteme λ-kalkül µ-rekursive Funktionen 1 Varianten der dtm Mehrkopf dtm Kontrolle
MehrAlgorithmentheorie 2. Vorlesung
Algorithmentheorie 2. Vorlesung Martin Dietzfelbinger 13. April 2006 FG KTuEA, TU Ilmenau AT 13.04.2006 Maschinenmodelle Registermaschinen (RAMs) bearbeiten Zahlen Turingmaschinen (TMn) bearbeiten Wörter/Strings/Zeichenfolgen
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (III) 8.07.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrInformatik III - WS07/08
Informatik III - WS07/08 Kapitel 5 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 5 : Grammatiken und die Chomsky-Hierarchie Informatik III - WS07/08 Kapitel 5 2 Definition
MehrTuring Maschinen II Wiederholung
Organisatorisches VL-03: Turing Maschinen II (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger Nächste Vorlesung: Mittwoch, Oktober 25, 14:15 15:45 Uhr, Roter Hörsaal Webseite: http://algo.rwth-aachen.de/lehre/ws1718/buk.php
MehrWillkommen 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
MehrAutomaten und Formale Sprachen 14. Vorlesung
Automaten und Formale Sprachen 14. Vorlesung Martin Dietzfelbinger 24. Januar 2006 Bis 31. Januar 2006: Folien studieren. Details und Beispiele im Skript, Seiten 174 196. Definitionen lernen, Beispiele
MehrTuringmaschinen 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 Schematische Darstellung einer Turing-Maschine: Kopf kann sich nach links und
MehrVL-03: Turing Maschinen II. (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger
VL-03: Turing Maschinen II (Berechenbarkeit und Komplexität, WS 2017) Gerhard Woeginger WS 2017, RWTH BuK/WS 2017 VL-03: Turing Maschinen II 1/27 Organisatorisches Nächste Vorlesung: Mittwoch, Oktober
MehrTyp-0-Sprachen und Turingmaschinen
Typ-0-Sprachen und Turingmaschinen Jean Vancoppenolle Universität Potsdam Einführung in formale Sprachen und Automaten Dr. Thomas Hanneforth (Präsentation aus Foliensätzen von Dr. Thomas Hanneforth und
MehrRucksackproblem und Verifizierbarkeit
Rucksackproblem und Verifizierbarkeit Gegeben: n Gegenstände mit Gewichten G={g 1,g 2,,g n } und Werten W={w 1,w 2,,w n } sowie zulässiges Gesamtgewicht g. Gesucht: Teilmenge S {1,,n} mit i i S unter der
MehrDas Halteproblem für Turingmaschinen
Das Halteproblem für Turingmaschinen Das Halteproblem für Turingmaschinen ist definiert als die Sprache H := { T w : T ist eine TM, die bei Eingabe w {0, 1} hält }. Behauptung: H {0, 1} ist nicht entscheidbar.
MehrHalteproblem/Kodierung von Turing-Maschinen
Halteproblem/Kodierung von Turing-Maschinen Unser Ziel ist es nun zu zeigen, dass das sogenannte Halteproblem unentscheidbar ist. Halteproblem (informell) Eingabe: Turing-Maschine M mit Eingabe w. Frage:
MehrPolynomielle Verifizierer und NP
Polynomielle Verifizierer und NP Definition Polynomieller Verifizierer Sei L Σ eine Sprache. Eine DTM V heißt Verifizierer für L, falls V für alle Eingaben w Σ hält und folgendes gilt: w L c Σ : V akzeptiert
MehrTheoretische Informatik. nichtdeterministische Turingmaschinen NDTM. Turingmaschinen. Rainer Schrader. 29. April 2009
Theoretische Informatik Rainer Schrader nichtdeterministische Turingmaschinen Zentrum für Angewandte Informatik Köln 29. April 2009 1 / 33 2 / 33 Turingmaschinen das Konzept des Nichtdeterminismus nahm
MehrGrundlagen 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
Mehr1.5 Turing-Berechenbarkeit
A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine
MehrH MPKP. Beispiel für eine Rechnung. Reduktion H MPKP. Überführungsregeln
H MPKP Konfiguration einer TM als String schreiben: Bandinschrift zwischen den Blank-Zeichen Links von der Kopfposition Zustand einfügen. Beispiel für eine Rechnung ##q ab##xq b##xyq 2 ##xyzq 3 ##xyq 4
MehrTheoretische Informatik II
Theoretische Informatik II Einheit 4.2 Modelle für Typ-0 & Typ-1 Sprachen 1. Nichtdeterministische Turingmaschinen 2. Äquivalenz zu Typ-0 Sprachen 3. Linear beschränkte Automaten und Typ-1 Sprachen Maschinenmodelle
MehrTheorie der Informatik
Theorie der Informatik 11. Kontextsensitive und Typ-0-Sprachen Malte Helmert Gabriele Röger Universität Basel 7. April 2014 Kontextsensitive und allgemeine Grammatiken Wiederholung: (kontextsensitive)
Mehr1.5 Turing-Berechenbarkeit
A.M. Turing (1937): Maschinenmodell zur exakten Beschreibung des Begriffs effektiv berechenbar Stift Mensch a c b b Rechenblatt a b b c Lese-/Schreibkopf endliche Kontrolle Turingmaschine Eine Turingmaschine
MehrTuring Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.
Thorsten Timmer SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke Turing Maschine SS 2005 p. 1/35 Inhalt Einführung Formale Definition Berechenbare Sprachen und Funktionen Berechnung ganzzahliger
Mehr11. 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
MehrInformatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07 18. Vorlesung 22.12.2006 1 Komplexitätstheorie - Zeitklassen Komplexitätsmaße Wiederholung: O,o,ω,Θ,Ω Laufzeitanalyse Die Komplexitätsklassen
MehrKontextsensitive und Typ 0 Sprachen Slide 2. Die Turingmaschine
Kontextsensitive und Typ 0 Sprachen Slide 2 Die Turingmaschine DTM = Deterministische Turingmaschine NTM = Nichtdeterministische Turingmaschine TM = DTM oder NTM Intuitiv gilt: DTM = (DFA + dynamischer
Mehr11.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
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 18. Januar 2018 INSTITUT FÜR THEORETISCHE 0 18.01.2018 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität
Mehr19. Nichtdeterministische Turingmaschinen und ihre Komplexität
19. Nichtdeterministische Turingmaschinen und ihre Komplexität Bei einem Turingmaschinenprogramm P aus bedingten Anweisungen wird durch die Forderung i a b B j i a b B j i a sichergestellt, dass zu jeder
MehrEin formales Berechnungsmodell: Turingmaschinen. Turingmaschinen 26 / 62
Ein formales Berechnungsmodell: Turingmaschinen Turingmaschinen 26 / 62 Ein formales Rechnermodell Bisher haben wir abstrakt von Algorithmen bzw. Programmen gesprochen und uns dabei JAVA- oder C++-Programme
MehrFalls 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
MehrLaufzeit einer DTM, Klasse DTIME
Laufzeit einer DTM, Klasse DTIME Definition Laufzeit einer DTM Sei M eine DTM mit Eingabealphabet Σ, die bei jeder Eingabe hält. Sei T M (w) die Anzahl der Rechenschritte d.h. Bewegungen des Lesekopfes
MehrOgden s Lemma: Der Beweis (1/5)
Ogden s Lemma: Der Beweis (1/5) Wir betrachten zuerst die Rahmenbedingungen : Laut dem auf der vorhergehenden Folie zitierten Satz gibt es zur kontextfreien Sprache L eine Grammatik G = (Σ, V, S, P) in
MehrFormale Sprachen. Script, Kapitel 4. Grammatiken
Formale Sprachen Grammatiken Script, Kapitel 4 erzeugen Sprachen eingeführt von Chomsky zur Beschreibung natürlicher Sprache bedeutend für die Syntaxdefinition und -analyse von Programmiersprachen Automaten
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
MehrMehrband-Turingmaschinen und die universelle Turingmaschine
Mehrband-Turingmaschinen und die universelle Turingmaschine Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 15 Turingmaschinen mit mehreren Bändern k-band
Mehra b b a Vom DFA zur TM Formale Grundlagen der Informatik 1 Kapitel 9 Turing-Maschinen Der Lese-/Schreibkopf Bedeutung der TM
Vom DFA zur TM Formale der Informatik 1 Kapitel 9 Frank Heitmann heitmann@informatik.uni-hamburg.de a b b a z 0 a z 1 a z 2 b 2. Mai 2016 Wir wollen auf dem Band nach rechts und links gehen können und
MehrKlausur 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
MehrInformatik III. Arne Vater Wintersemester 2006/ Vorlesung
Informatik III Arne Vater Wintersemester 2006/07 10. Vorlesung 24.11.2006 1 Turingmaschinen Informatik III 9. Vorlesung - 2 Turingmaschinen Eine (deterministische 1-Band) Turingmaschine (DTM) wird beschrieben
MehrTheoretische 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
MehrFragen 1. Muss eine DTM ein Wort zu Ende gelesen haben, um es zu akzeptieren? a) Ja! b) Nein!
4 Turingmaschinen Eingabeband nicht nur lesen, sondern auch schreiben kann und die zudem mit ihrem Lese-Schreib-Kopf (LSK) nach links und rechts gehen kann. Das Eingabeband ist zudem in beide Richtungen
Mehr8. 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
Mehr1 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
MehrKapitel: 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
Mehr2 Turingmaschinen 6. Eine nd. k-band-turingmaschine M zur Erkennung einer m-stelligen Sprache L (Σ ) m ist ein 8-Tupel
2. Turingmaschinen Als Formulierung von Algorithmen benutzen wir hier Turingmaschinen. Von den vielen Varianten dieses Konzeptes (s. Vorlesung Einführung in die Theoretische Informatik ) greifen wir das
MehrDie Komplexitätsklassen P und NP
Die Komplexitätsklassen P und NP Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen November 2011 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit und
Mehr12. Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP
12 Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP 12 Woche: Verifizierer, nicht-deterministische Turingmaschine, NP 254/ 333 Polynomielle Verifizierer und NP Ḋefinition Polynomieller
MehrKomplexitätstheorie WiSe 2011/12 in Trier. Henning Fernau Universität Trier
Komplexitätstheorie WiSe 2011/12 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Komplexitätstheorie Gesamtübersicht Organisatorisches / Einführung Motivation / Erinnerung / Fragestellungen
MehrTheoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK
Theoretische Grundlagen der Informatik 0 17.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Evaluation Ergebnisse
MehrZeitkomplexität (1) Proseminar Theoretische Informatik. Proseminar Theoretische Informatik: Lisa Dohrmann 1
Zeitkomplexität (1) Proseminar Theoretische Informatik Proseminar Theoretische Informatik: Lisa Dohrmann 1 Warum Komplexitätsbetrachtung? Ein im Prinzip entscheidbares und berechenbares Problem kann in
MehrTheoretische Informatik 1
Theoretische Informatik 1 Nichtdeterminismus David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Nichtdeterminismus NTM Nichtdeterministische Turingmaschine Die
MehrTheoretische 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
Mehr1 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 139 Unentscheidbarkeit Überblick Zunächst einmal definieren wir formal
MehrAlgorithmen 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
Mehr4.2 Varianten der Turingmaschine. 4 Turingmaschinen
4 Turingmaschinen Alles was intuitiv berechenbar ist, d.h. alles, was von einem Menschen berechnet werden kann, das kann auch von einer Turingmaschine berechnet werden. Ebenso ist alles, was eine andere
MehrAlgorithmentheorie 9. Vorlesung
Algorithmentheorie 9. Vorlesung Martin Dietzfelbinger 8. Juni 2006 Turingtafel von M: Gödelnummern TM-Codes (q 0, 0,q 2, 1,R), (q 0, 1,q 0, 0,R), (q 0,B,q 1, 1,N), (q 2, 0,q 2, 0,R), (q 2, 1,q 2, 1,R),
Mehr1 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 WS 11/12 155 Überblick Zunächst einmal definieren wir formal den Begriff
MehrEinführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/2006 20.12.2005 18. Vorlesung 1 Komplexitätstheorie - Zeitklassen Komplexitätsmaße Wiederholung: O,o,ω,Θ,Ω Laufzeitanalyse
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 20. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 20.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
MehrDank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Akzeptierbarkeit und Entscheidbarkeit. Teil V.
Dank Vorlesung Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I Bernhard Beckert Diese Vorlesungsmaterialien basieren ganz wesentlich auf den Folien zu den Vorlesungen
MehrTheoretische Informatik Mitschrift
Theoretische Informatik Mitschrift 7. Turingmaschinen Automatenmodell für Typ-0-Sprachen Einschränkung liefert Automatenmodell für Typ-1-Sprachen Alan Turing 1936, ursprüngliches Ziel: Formalisierung des
Mehr2.4 Kontextsensitive und Typ 0-Sprachen
Definition 2.43 Eine Typ 1 Grammatik ist in Kuroda Normalform, falls alle Regeln eine der folgenden 4 Formen haben: Dabei: A, B, C, D V und a Σ. Satz 2.44 A a, A B, A BC, AB CD. Für jede Typ 1 Grammatik
MehrEinfache Turing Maschine. Formale Spezifikation einer einfachen Turing Maschine. M = (Σ,Γ,#,Q,s,F, ) Σ
Einfache Turing Maschine Band Formale Spezifikation einer einfachen Turing Maschine Lese-/ Schreibkopf Endliche Kontrolle Rechenschrittregeln: (endlich viele) Startkonfiguration: x Σ * auf Band L/S-Kopf
MehrUmformung NTM DTM. Charakterisierung rek. aufz. Spr. Chomsky-3-Grammatiken (T5.3) Chomsky-0-Grammatik Rek. Aufz.
Chomsky-0-Grammatik Rek. Aufz. Satz T5.2.2: Wenn L durch eine Chomsky-0- Grammatik G beschrieben wird, gibt es eine NTM M, die L akzeptiert. Beweis: Algo von M: Schreibe S auf freie Spur. Iteriere: Führe
Mehr5.2 Endliche Automaten
114 5.2 Endliche Automaten Endliche Automaten sind Turingmaschinen, die nur endlichen Speicher besitzen. Wie wir bereits im Zusammenhang mit Turingmaschinen gesehen haben, kann endlicher Speicher durch
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der
Mehr2. 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 5. April 2005 2. Klausur zur Vorlesung Informatik III Wintersemester 2004/2005 Lösung! Beachten
MehrTuring-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
Mehrc) {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, λ}?
MehrDeterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen
Dr. Sebastian Bab WiSe 12/13 Theoretische Grundlagen der Informatik für TI Termin: VL 15 + 16 vom 17.12.2012 und 20.12.2012 Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen
MehrBerechenbarkeit 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
MehrPräsenzübung Berechenbarkeit und Komplexität
Lehrstuhl für Informatik 1 WS 2013/14 Prof. Dr. Berthold Vöcking 28.01.2014 Kamal Al-Bawani Benjamin Ries Präsenzübung Berechenbarkeit und Komplexität Musterlösung Name:...................................
MehrTheoretische 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
MehrBeweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist
CF versus CS Theorem CF ist echt in CS enthalten. Beweis: Nach dem Pumping-Lemma für kontextfreie Sprachen ist L = {a m b m c m m 1} nicht kontextfrei. Andererseits ist L kontextsensitiv, wie die Grammatik
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (V) 7.07.2016 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrTheoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik Vorlesung am 16.11.2010 INSTITUT FÜR THEORETISCHE INFORMATIK 0 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrTheoretische Informatik I
Theoretische Informatik I Einheit 4.3 Eigenschaften von L 0 /L 1 -Sprachen 1. Abschlußeigenschaften 2. Prüfen von Eigenschaften 3. Grenzen der Sprachklassen Sprachklassen Semi-entscheidbare Sprache Sprache,
MehrGrundlagen 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:
MehrTheoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung
Theoretische Informatik und Logik Übungsblatt (26S) en Aufgabe. Sei L = {w#w r w {, } }. Geben Sie eine deterministische Turingmaschine M an, welche die Sprache L akzeptiert. Wählen Sie mindestens einen
MehrBerechenbarkeit/Entscheidbarkeit
Berechenbarkeit/Entscheidbarkeit Frage: Ist eine algorithmische Problemstellung lösbar? was ist eine algorithmische Problemstellung? formale Sprachen benötigen einen Berechenbarkeitsbegriff Maschinenmodelle
MehrFORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch
FORMALE SYSTEME 3. Vorlesung: Endliche Automaten Markus Krötzsch TU Dresden, 17. Oktober 2016 Rückblick Markus Krötzsch, 17. Oktober 2016 Formale Systeme Folie 2 von 31 Wiederholung Mit Grammatiken können
MehrGrundbegriffe der Informatik Tutorium 13
Grundbegriffe der Informatik Tutorium 13 Tutorium Nr. 16 Philipp Oppermann 3. Februar 2015 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
Mehr13. Nichtdeterministische Turingmaschinen und ihre Komplexität
13. Nichtdeterministische Turingmaschinen und ihre Komplexität DETERMINISMUS VS. NICHTDETERMINISMUS DETERMINISMUS: Bei einer k-band-turingmaschine M wurde durch die colorblue Überführungsfunktion δ : Z
MehrWS07/08 Automaten und Formale Sprachen 14. Vorlesung
WS07/08 Automaten und Formale Sprachen 14. Vorlesung Martin Dietzfelbinger 29. Januar 2008 FG KTuEA, TU Ilmenau Automaten und Formale Sprachen WS07/08 29.01.2008 Klausur: Mittwoch, 5. März 2008 17:00 Uhr,
MehrBerechenbarkeit und Komplexität: Probleme, Sprachen, Maschinen
Berechenbarkeit und Komplexität: Probleme, Sprachen, Maschinen Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität 25. Oktober 2006 Was ist ein Problem? Informelle Umschreibung
MehrGrundlagen der Theoretischen Informatik
Grundlagen der Theoretischen Informatik Turingmaschinen und rekursiv aufzählbare Sprachen (V) 15.07.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie
MehrEinfü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...................................
MehrDisMod-Repetitorium Tag 4
DisMod-Repetitorium Tag 4 Endliche Automaten, Reguläre Sprachen und Kontextfreie Grammatiken 22. März 2018 1 Endliche Automaten Definition DFA Auswertungen Äquivalenzrelationen Verschmelzungsrelation und
MehrReguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,
Reguläre Sprachen Reguläre Sprachen (Typ-3-Sprachen) haben große Bedeutung in Textverarbeitung und Programmierung (z.b. lexikalische Analyse) besitzen für viele Entscheidungsprobleme effiziente Algorithmen
MehrEINFÜHRUNG IN DIE THEORETISCHE INFORMATIK
EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2011 14. NICHTDETERMINISTISCHE TURINGMASCHINEN UND DEREN KOMPLEXITÄT Theoretische Informatik (SoSe 2011) 14. Nichtdeterministische
MehrAkzeptierende Turing-Maschine
Akzeptierende Turing-Maschine Definition: Eine akzeptierende Turing-Maschine M ist ein Sechstupel M = (X, Z, z 0, Q, δ, F ), wobei (X, Z, z 0, Q, δ) eine Turing-Maschine ist und F Q gilt. Die von M akzeptierte
MehrTheoretische Informatik 1
Theoretische Informatik 1 Die Komplexitätsklasse P David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Äquivalenz von RM und TM Äquivalenz, Sätze Simulation DTM
Mehr