Referatsausarbeitung

Größe: px
Ab Seite anzeigen:

Download "Referatsausarbeitung"

Transkript

1 Referatsausarbeitung Thema: Das zweite LBA-Problem Vorlesung: Sequentielle und parallele Komplexitätstheorie Übung Dozent Datum Referenten Dr. Renate Winter Marcus Hörning Michael Muth Ronny Böhm Inhalt 1 GRUNDLAGEN WAS SIND LBA S? KONTEXTSENSITIVE SPRACHEN DIE LBA-PROBLEME DIE GESCHICHTE DES ZWEITEN LBA-PROBLEMS WAS SIND LBA-PROBLEME BEWEIS ALGORITHMUS FÜR DAS KOMPLEMENT VON A Konstruktion DIE FUNKTION F(N) Voraussetzungen A als kontextsensitive Sprache Berechnung von g(n) mit linearem Platzverbrauch Analyse... 6

2 1 1 Grundlagen 1.1 Was sind LBA s? LBA steht für Linear Beschränkte Automaten. Sie dienen zur Charakterisierung von kontextsensitiven Sprachen. Ein LBA ist definiert als ein Tupel M = (Σ, Q, δ, q 0, F, 0) mit: Σ ist eine endliche Menge von erlaubten Eingabesymbolen, Q ist eine endliche Menge von Zuständen, δist eine Überführungsrelation bzw. im deterministischen Fall eine Überführungsfunktion: Q {0} Q {0} {-1, 0, 1}, q 0 ist der Anfangszustand, F Q ist die Menge der End- oder Finalzustände und, 0 ist ein Symbol aus Σ und dient als Beschränkungsmarkierung. Eine Menge (oder Sprache) U Σ* heißt lt. Def. von einem LBA akzeptiert, wenn gilt: U = {p p (Σ\{0})* q (q F [q 0, p] a [q, 0])}. Ein LBA ist also eine Turingmaschine, die anstatt eines möglicherweise unendlichen Bandes, auf dem sie rechnen kann, auf den Teil des Bandes beschränkt ist, der die Eingabe und die Beschränkungssymbole enthält. Der Begriff linear beschränkt rührt daher, daß die Bandgröße der TM nun eine lineare Funktion der Eingabelänge ist. Wichtig hierbei ist, daß das 0-Symbol anfangs auf dem Band ist, wo es als beidseitige Begrenzungsmarkierung fungiert, aber nicht zum Wort selbst gehört. Zeichenerklärung: Großbuchstaben A, B, C und S stehen für Nichtterminale Kleinbuchstaben a, b und c stehen für Terminale oft stehen dabei x, y, z, u, v und w für Zeichenketten aus diesen griechische Kleinbuchstaben stehen hier für Zeichenketten aus Terminalen und Nichtterminalen 1.2 Kontextsensitive Sprachen Kontextsensitive Sprachen sind solche Sprachen, die von einer kontextsensitiven Grammatik erzeugt werden können. Im Allgemeinen bedeutet eine Produktion α β, daß in Ableitungen die Zeichenkette α durch die Zeichenkette β ersetzt werden kann. Eine kontextsensitive Grammatik ist ein System von Produktionen der Form α β mit β α. So sind zum Beispiel ABA ACA und ABA AbacCbA zulässige Produktionen, nicht aber ABA AA. Zusätzlich ist die Produktion S ε erlaubt, wenn S Startsymbol ist und nie auf der rechten Seite einer Produktion auftritt. Der Name kontextsensitiv entspringt einer Normalform, in der alle Produktionen die Form αbγ α βγ mit nichtleerem β haben. Die von kontextsensitiven Grammatiken erzeugten Sprachen heißen kontextsensitive Sprachen. Und dies sind genau die Sprachen, die von einer beidseitig beschränkten NTM, dem LBA, erkannt werden. 1

3 2 2 Die LBA-Probleme 2.1 Die Geschichte des zweiten LBA-Problems Die Lösung des sogenannten zweiten LBA-Problems kam 1987 völlig überraschend und unabhängig von einem Amerikaner und einem Slowaken gleichzeitig. Das Resultat besagt unter anderem, daß die Klasse der kontextsensitiven Sprachen unter Komplementbildung abgeschlossen ist. Das Problem wurde im Jahre 1964 von S.Y. Kuroda (Classes of languages and linearbounded automata, Inform. Contr. 7 (1964), ) gestellt. Die Bedeutung der beiden LBA-Probleme wurde immer wieder hervorgehoben und diskutiert. Im Jahre 1987 schien dann die Zeit irgendwie reif geworden zu sein. Völlig unabhängig voneinander wurde das zweite LBA-Problem von einem amerikanischen Wissenschaftler, N. Immerman (NSPACE is closed under complement, SIAM Journal on Computing 17 (1988), ) und einem slowakischen Studenten, R. Szelepcsényi (The method of forced enumeration for nondeterministic automata, Acta Informatica 26 (1988), )) gelöst. Interessant: Der Beweis ist wesentlich einfacher, als man dies bei einem 23 Jahre lang ungelösten Problem erwartet hätte. Außerdem ist die Lösung gerade komplementär zu der Vermutung, die zuvor bestand. 2.2 Was sind LBA-Probleme Kuroda zeigte in seiner Arbeit von 1964, daß die Klasse der Sprachen, die durch nichtdeterministische linear band-beschränkte TM (LBA) erkannt werden, mit der Klasse der kontextsensitiven Sprachen übereinstimmt. Das Resultat in heutiger Terminologie ausgedrückt besagt: NSPACE(n) = kss Das erste LBA-Problem ist die Frage, ob deterministische und nichtdeterministische LBA s äquivalent sind, also: NSPACE(n) = DSPACE(n)? Der Lösung dieses Problems am nächsten kommt der Satz von Savitch (J. Savitch: Relationships between nondeterministic and deterministic tape complexities. Journal of Computer and Systems Sciences 4 (1970), ), der besagt, daß folgendes gilt: für alle s(n) log n, also: NSPACE(s(n)) DSPACE(s 2 (n)) NSPACE(n) DSPACE(n 2 ). Das zweite LBA-Problem ist die Frage, ob die Klasse der durch nichtdeterministische LBA s akzeptierbaren Sprachen komplementabgeschlossen ist: NSPACE(n) = co-nspace(n)? Aus der negativen Lösung des zweiten LBA-Problems ergibt sich natürlich sofort die negative Lösung des ersten LBA-Problems, denn DSPACE(n) ist komplementabgeschlossen. Das zweite LBA-Problem ist nun gelöst (das erste aber nach wie vor ungelöst). Das Resultat ist also, daß die Klasse NSPACE(n) unter Komplement abgeschlossen ist, im Gegensatz zur vorherigen allgemeinen Vermutung! (Daraus ergibt sich jedoch noch keine unmittelbare Folgerung auf das erste LBA-Problem). 2

4 3 Aus dem folgenden Beweis ergibt sich sofort: für alle s(n) log n. NSPACE(s(n)) = co-nspace(s(n)) 3 Beweis Ziel dieses Beweises ist es, ausgehend von einem nichtdeterministischen Algorithmus zur Erkennung einer Sprache, einen ebenfalls nichtdeterministischen Algorithmus zu konstruieren, welcher unter linearer Platzbeschränkung das Komplement eben dieser Sprache erkennt. Gelingt dieses, wäre damit gezeigt, daß gilt: NSPACE(n) = co-nspace(n). 3.1 Algorithmus für das Komplement von A Konstruktion Wir gehen nun also davon aus, daß sich die Mitgliedschaft in einer Sprache A mittels eines (bezüglich gewisser Resourcenbeschränkungen im Moment nicht näher spezifizierten) nichtdeteterministischen Algorithmus M entscheiden läßt. Desweiteren solle die Anzahl der Wörter in A zu einer gegebenen Länge durch eine einfach 1 zu berechnende Funktion f : N N berechnet werden können. Unter Berücksichtigung dieser Voraussetzungen läßt sich der folgende Algorithmus M zur Entscheidung von A konstruieren: (1) INPUT x; (2) k := f( x ); (3) p := 0; (4) FOR y Σ *, y = x DO (5) Starte M auf y; (6) IF M akzeptiert THEN (7) IF y = x THEN REJECT; (8) p := p + 1; (9) END; (10) END; (11) IF p = k THEN ACCEPT ELSE REJECT. Dieser Algorithmus entscheidet also, ob das als Eingabe bereitgestellte Wort x im Komplement von A enthalten ist (x A?). Nach dem Einlesen der Eingabe x in Zeile (1) wird in Zeile (2) mittels der o.g. Funktion f die Anzahl der Wörter in A berechnet, deren Länge gleich der von x ist. In der Schleife (4) - (10) werden alle über dem Alphabet Σ * möglichen Wörter y, deren Länge der von x entspricht, durchlaufen. Hierbei wird M auf jedes y angesetzt, und die von M akzeptierten Wörter werden gezählt. Falls ein solches von M akzeptiertes Wort identisch mit x ist, verwirft der Algorithmus die Eingabe, da x dann nicht im Komplement von A liegen kann. Dieses Zählen ist notwendig, um nach Beendigung der Schleife sicherstellen zu können, daß alle y A betrachtet und von M akzeptiert wurden. Die Korrektheit dieses Algorithmus läßt sich recht einfach überlegen. Gilt x A, so muß die nichtdeterministische Rechnung, welche M auf y durchführt, in jeder Iteration akzeptieren, falls y A. Somit gilt nach Beendigung der Schleife: p = k, d.h., es wurden alle y A innerhalb der Schleife von M korrekt als solche erkannt. Da keines dieser y identisch mit x war, gilt folglich, daß x im Komplement von A liegt (x A ). 1 Einfach bedeutet hier, daß der Aufwand zum Berechnen von f nicht den Gesamtaufwand für die Bearbeitung der zugrundeliegenden Problematik übersteigt. 3

5 4 Wir haben nun also einen Algorithmus M konstruiert, der zur Entscheidung von A herangezogen werden kann. Betrachten wir nun die Zeit- und Platzkomplexität unseres neuen Algorithmus, wobei uns für die Beweisführung insbesondere letztere interessiert. Hierfür setzen wir für M die Zeitkomplexität t M (n) und die Platzkomplexität s M (n) voraus. Die Funktion f möge in Zeit t f (n) und mit Platz s f (n) berechnet werden können. Für den neuen Algorithmus ergibt sich somit: Zeitkomplexität: t f (n) + 2 O(n) t M (n) Platzkomplexität: s f (n) + O(n) + s M (n) Die erste Komponente der Zeitkomplexität ist die für die Berechnung von f erforderliche Zeit. In der Schleife werden alle Wörter y über dem Alphabet Σ *, für die y = x gilt, betrachtet, und M wird auf jedes y angesetzt. Für ein Alphabet Σ mit zwei Zeichen (z.b. Σ = {0,1}) wird die Schleife höchstens 2 n -mal durchlaufen, wobei in jeder Iteration M ausgeführt wird. Da die Schleife in Zeile (7) vorzeitig verlassen werden kann, ergibt sich die Laufzeit für die Schleife zu 2 O(n) t M (n). Die Platzkomplexität setzt sich zunächst aus dem von f und M benötigten Platz zusammen. Hinzu kommt der vom eigentlichen neuen Algorithmus benötigte Platz. Dieser setzt sich hauptsächlich aus den beiden Wörtern x und y zusammen. Da beide linearen Platz beanspruchen ( x = y = n), ergibt sich diese dritte Komponente der Platzkomplexität zu O(n). Wir verfügen nun über Informationen zur Zeit- und Platzkomplexität unseres Algorithmus zur Entscheidung von A. Sei nun A eine kontextsensitive Sprache, dann gilt: A CSL = NSPACE(n). Falls es nun gelingt, f(n) mit linearer Platzkomplexität zu berechnen, gilt somit nach unseren Erkenntnissen über die Platzkomplexität: A NSPACE(O(n)) = NSPACE(n). Um den Beweis nun zum Ziel zu führen, ist noch zu zeigen, wie f mit linearer Platzbeschränkung berechnet werden kann. 3.2 Die Funktion f(n) Voraussetzungen Die Berechnung der Funktion f(n) erfolgt ebenfalls auf nichtdeterministischem Wege. Wir wollen nun also eine nichtdeterministische, linear platzbeschränkte Maschine zur Berechnung von f konstruieren. Zuvor sollte jedoch überlegt werden, über welche Eigenschaften der Algorithmus verfügen muß, um f innerhalb des Algorithmus für A korrekt berechnen zu können. Es sind hauptsächlich folgende Eigenschaften von der nichtdeterministischen Maschine, welche f berechnet, zu erwarten: 1. Jede nichtdeterministische Rechnung ist entweder erfolgreich, wobei ein berechneter Zahlenwert ausgegeben wird, oder sie endet mit nicht erfolgreich. 2. Mindestens eine Rechnung ist erfolgreich, liefert also einen Ausgabewert. 3. Alle erfolgreichen Rechnungen liefern denselben Wert, nämlich f(n). Diese Forderungen an die f(n) berechnende Maschine stellen sicher, daß wir stets ein Ergebnis erhalten, welches eindeutig ist, d.h., es können bei verschiedenen (erfolgreichen) nichtdeterministischen Rechnungen nicht verschiedene Werte geliefert werden A als kontextsensitive Sprache Es besteht nun die Aufgabe, die Funktion f entsprechend den obigen Bedingungen zu realisieren. Dazu geht man von der Kontextsensitivität der Sprache A aus. Zu dieser Sprache existiert eine entsprechende kontextsensitive Grammatik G mit Variablenmenge V und Terminalalphabet Σ, welche die Sprache A erzeugt. Man definiere für alle n,i N Teilmengen T n i von ( V Σ ) * wie folgt: T n i = { x x n, S i G x }. 4

6 5 Diese Teilmengen beinhalten alle Wörter x, die in höchstens i Schritten vom Startsymbol S aus durch die Grammatik G ableitbar sind. Dabei bedeutet S i G x, daß die Satzform x in höchstens i Schritten aus dem Startsymbol S ableitbar ist. Für alle n gilt T n 0 = {S}. Dies ist unmittelbar ersichtlich, da T n 0 aller Wörter enthält, welche mit höchstens 0 Schritten aus dem Startsymbol S ableitbar sind nur das Startsymbol selbst. Für die kontextsensitive Grammatik G ist klar, daß es für jedes n ein m gibt mit T n m = T n m+1. Einen Beweis für diese Aussage möchten wir hier nicht angeben; falls daran Interesse bestehen sollte, sei hier auf das Buch von Uwe Schöning: Theoretische Informatik kurz gefaßt, Bibl. Inst, 1992 verwiesen, in welchem diese Thematik ausführlich behandelt wird. Wir führen hier statt dessen nur eine anschauliche Begründung des Sachverhaltes an: Die Teilmengen T n i bilden nach Definition die Menge aller Wörter x, welche in höchstens i Schritten vom Startsymbol S durch die Grammatik G ableitbar sind. Man beginnt mit 0 Schritten und erhöht die Anzahl der möglichen Schritte zur Bildung von Wörter über dem Alphabet (V Σ) * sukzessive um eins. Durch diese fortschreitende Erhöhung konstruiert man die entsprechenden Teilmengen T n i, bis man eine Schrittanzahl m+1 erreicht. Vergleicht man nun die Teilmengen T n m und T n m+1 miteinander, so stellt man fest, daß trotz der Vergrößerung der Anzahl der möglichen Schritte, kein neues Wort zur Menge T n m hinzugekommen ist, d.h. es konnten keine neuen Wörter mehr gebildet werden, also enthält die Menge T n m schon alle Wörter der Sprache A, welche durch die Grammatik G gebildet werden können. Sei g(n) = T n m nun eine Funktion, welche die Kardinalzahl der Teilmenge T n m berechnet, d.h. die Anzahl der Wörter der Sprache A, wobei m die eben beschriebene Zahl sei. Die Funktion g(n) soll hier als Realisierung der Funktion f unter den genannten Komplexitätsbedingungen aufgefaßt werden. Man kann den Algorithmus M soweit modifizieren, daß statt der Funktion f die Funktion g benutzt werden kann. Modifizierung des Algorithmus M : 1. Die FOR Schleife in M läuft jetzt über alle Satzformen y, anstatt über Terminalstrings in folgender Form: FOR y ( V Σ ) *, y n DO. 2. Anstelle Starte M auf x steht Verifiziere, daß S * y. Werden diese Veränderungen an M vorgenommen, kann f durch g ersetzt werden, Berechnung von g(n) mit linearem Platzverbrauch Um den Beweis zu vervollständigen, muß gezeigt werden, daß sich g nichtdeterministisch mit linearem Platzverbrauch berechnen läßt. Dahinter verbirgt sich die sogenannte induktive Zählmethode. Und zwar berechnen wir einfach (nichtdeterministisch) rekursiv der Reihe nach 1 = T n 0, T n 1, T n 2,... bis für ein m gilt T n m = T n m+1. Diese Zahl geben wir dann als g(n) aus. Was jetzt noch gebraucht wird, ist ein Verfahren, welches (nichtdeterministisch) die Teilmenge T n i+1 bzw. T n i+1 korrekt berechnet, unter der Voraussetzung, daß aus der vorhergehenden Runde T n i korrekt vorliegt. Zunächst das Verfahren: (1) {Es gelte k = T n i } (2) p : = 0; (3) FOR y (V Σ) *, y n DO (4) f : = FALSE; (5) m : = 0; (6) FOR z (V Σ) *, z n DO (7) IF S i G z THEN (8) m : = m + 1; (9) IF (z G y) OR (z == y) THEN f : = TRUE END; (10) END; (11) END; (12) IF m < k THEN REJECT END; (13) IF f THEN p : = p + 1 END; (14) END; 5

7 6 Wie oben bereits erwähnt arbeitet das Verfahren rekursiv, d.h., in diesem Fall bezieht sich rekursiv auf die Übernahme des Wertes T n i aus der vorhergehenden Runde, wie dies in Zeile (1) angedeutet wird. Dieser Wert wird als Vergleichskriterium gebraucht (Zeile (12)), um festzustellen, ob bei der nichtdeterministischen Auswahl eingerahmter Teil der Zeile (7) alle Wörter gebildet wurden, welche in höchstens i Schritten aus dem Startsymbol S ableitbar sind. Diese Wörter bilden die Menge T n i. Auf diese Weise wird gewährleistet, daß die Anzahl p, die sich am Ende ergibt, korrekt ist. Die Bildung der Menge T n i Zeilen (6) bis (10) ist notwendig, da nur so die Menge T n i+1 konstruiert werden kann. Die FOR Schleife in Zeile (6) läuft über alle Wörter z ( V Σ ) * mit einer Länge z n. In Zeile (7) wird dann überprüft, ob z aus S in i Schritten ableitbar ist. Wenn ja wird der Zähler m um eins inkrementiert und in der darauffolgenden IF Anweisung geprüft, ob z durch einen zusätzlichen Schritt zu y erweitert werden kann, oder ob z schon y ist. Falls dieser Fall eintritt, wurde ein Wort der Menge T n i+1 gefunden und das Flag f auf TRUE gesetzt. Wenn alle Wörter z in der inneren FOR Schleife benutzt wurden sind, wird in Zeile (12) der schon beschriebene Vergleich m < k durchgeführt. Es ist notwendig diesen Test durchzuführen, da sichergestellt werden muß, daß wirklich alle Wörter der Menge T n i erreicht wurden. Zeile (13) schließlich testet Flag f auf TRUE und im Falle der Korrektheit des Testes wird der Zähler p um eins erhöht. Zu dem Zeitpunkt, an dem alle Wörter y der äußeren FOR Schleife gebildet wurden sind und durch Zeile (12) kein Abbruch des Verfahrens zu irgendeinem vorherigen Zeitpunkt veranlaßt wurde, steht mit p die Anzahl der Wörter die in höchstens i Schritten aus dem Startsymbol S ableitbar sind, korrekt zur Verfügung und kann in der nächsten Rekursion als Vergleichswert benutzt werden. Das Verfahren läuft dann bis zum Erreichen des Wertes m+1, d.h., bis alle Wörter aus A gebildet worden sind Analyse Zur Analyse des Verfahrens ist zu sagen, daß es in der Tat mit linearem Platzbedarf auskommt. Begründung: Das Verfahren braucht O(n) Platz für die Satzform y und O(n) Platz für die Satzform z, da beide Wörter höchstens die Länge n haben können Bedingungen der FOR Schleife. Dies ergibt insgesamt eine Platzkomplexität von O(n). Durch Anwendung dieser Berechnungsart von g im Algorithmus M, kann A durch M so berechnet werden, daß die geforderten Komplexitätsbedingungen erfüllt werden und Ā NSPACE(O(n)) = NSPACE(n) gilt. Damit ist der Beweis zur Lösung des zweiten LBA Problems abgeschlossen und hat die Korrektheit der Lösung bestätigt. Literatur [1] U. Schöning: Perlen der Theoretischen Informatik 6

Willkommen zur Vorlesung Komplexitätstheorie

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

Mehr

2.4 Kontextsensitive und Typ 0-Sprachen

2.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

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 139 Unentscheidbarkeit Überblick Zunächst einmal definieren wir formal

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

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 18/19 Ausgabe 8. Januar 2019 Abgabe 22. Januar 2019, 11:00 Uhr (im

Mehr

19. Nichtdeterministische Turingmaschinen und ihre Komplexität

19. 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

Mehr

Informatik III - WS07/08

Informatik 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

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 WS 11/12 155 Überblick Zunächst einmal definieren wir formal den Begriff

Mehr

Das Halteproblem für Turingmaschinen

Das 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.

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

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

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

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

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Platzkomplexität David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 22.04.2016 Platzkomplexität Platzkomplexitätsklassen Zeit vs. Platzbedarf

Mehr

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

Turingmaschinen 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

Mehr

Rekursive Aufzählbarkeit Die Reduktion

Rekursive Aufzählbarkeit Die Reduktion Rekursive Aufzählbarkeit Die Reduktion Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen November 2011 Berthold Vöcking, Informatik 1 () Vorlesung Berechenbarkeit

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018

2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018 2. Klausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2017/2018 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie

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 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,

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 9. März 24 7. Reguläre Sprachen I Theorie der Informatik 7. Reguläre Sprachen I Malte Helmert Gabriele Röger Universität Basel 9. März 24 7. Reguläre Grammatiken 7.2 DFAs 7.3 NFAs

Mehr

5.2 Endliche Automaten

5.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

Mehr

Theorie der Informatik

Theorie 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)

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

Theoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische Grundlagen der Informatik. Vorlesung am 8. Januar INSTITUT FÜR THEORETISCHE INFORMATIK Theoretische Grundlagen der Informatik 0 08.01.2019 Torsten Ueckerdt - Theoretische Grundlagen der Informatik KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Letzte Vorlesung Eine

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 7. Dezember 2006 Rekursiv vs. rekursiv

Mehr

Deterministische und nichtdeterministische Turing-Maschinen, Typ1- und Typ0-Sprachen

Deterministische 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

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

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 6 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 10. Januar 2018 Abgabe 23. Januar 2018, 11:00 Uhr (im

Mehr

Turing Maschine. Thorsten Timmer. SS 2005 Proseminar Beschreibungskomplexität bei Prof. D. Wotschke. Turing Maschine SS 2005 p.

Turing 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

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

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

Theoretische Informatik. nichtdeterministische Turingmaschinen NDTM. Turingmaschinen. Rainer Schrader. 29. April 2009

Theoretische 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

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

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP

Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07. Nichtdeterministische Turingmaschinen und NP Proseminar Komplexitätstheorie P versus NP Wintersemester 2006/07 Vortrag am 17.11.2006 Nichtdeterministische Turingmaschinen und NP Yves Radunz Inhaltsverzeichnis 1 Wiederholung 3 1.1 Allgemeines........................................

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

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

2.2 Nichtdeterministische endliche Automaten

2.2 Nichtdeterministische endliche Automaten 2 Endliche Automaten arbeiten und hier kann dann ggf. auch wieder auf die Konstruktion verwiesen werden. Fragen 1. Wie viele Informationen kann man in einem DFA speichern? a) beliebig viele b) endlich

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

Definition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus:

Definition 78 Ein NPDA = PDA (= Nichtdeterministischer Pushdown-Automat) besteht aus: 4.7 Kellerautomaten In der Literatur findet man häufig auch die Bezeichnungen Stack-Automat oder Pushdown-Automat. Kellerautomaten sind, wenn nichts anderes gesagt wird, nichtdeterministisch. Definition

Mehr

Theoretische Informatik und Logik Übungsblatt 1 (2016S) Lösung

Theoretische 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

Mehr

Formale Sprachen. Script, Kapitel 4. Grammatiken

Formale 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

Mehr

Semi-Entscheidbarkeit und rekursive Aufzählbarkeit

Semi-Entscheidbarkeit und rekursive Aufzählbarkeit Semi-Entscheidbarkeit und rekursive Aufzählbarkeit Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 9. November 2009 Berthold Vöcking, Informatik 1 () Vorlesung

Mehr

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung

kontextfreie Grammatiken Theoretische Informatik kontextfreie Grammatiken kontextfreie Grammatiken Rainer Schrader 14. Juli 2009 Gliederung Theoretische Informatik Rainer Schrader Zentrum für Angewandte Informatik Köln 14. Juli 2009 1 / 40 2 / 40 Beispiele: Aus den bisher gemachten Überlegungen ergibt sich: aus der Chomsky-Hierarchie bleiben

Mehr

Theoretische Grundlagen der Informatik

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

Mehr

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III

Universität Karlsruhe Institut für Theoretische Informatik. Klausur: Informatik III Name Vorname Matrikelnummer Universität Karlsruhe Institut für Theoretische Informatik o. Prof. Dr. P. Sanders 26. Feb. 2007 Klausur: Informatik III Aufgabe 1. Multiple Choice 10 Punkte Aufgabe 2. Teilmengenkonstruktion

Mehr

Berechenbarkeit und Komplexität

Berechenbarkeit und Komplexität Berechenbarkeit und Komplexität Prof. Dr. Dietrich Kuske FG Theoretische Informatik, TU Ilmenau Wintersemester 2010/11 1 Organisatorisches zur Vorlesung Informationen, aktuelle Version der Folien und Übungsblätter

Mehr

ADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr

ADS-EI 5.2 Struktur einer Turing-Maschine 120/451 ľernst W. Mayr Bemerkung: Jede NDTM N (die die Sprache L(N) akzeptiert) kann in eine deterministische Turing-Maschine M konvertiert werden, die ebenfalls genau die Sprache L(N) akzeptiert. Beweisidee: Die Berechnungspfade

Mehr

Reguläre Sprachen. R. Stiebe: Theoretische Informatik für ING-IF und Lehrer,

Regulä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

Mehr

Nachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2013/14

Nachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2013/14 Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Nachklausur zur Vorlesung Theoretische Grundlagen der Informatik Wintersemester 2013/14 Vorname Nachname Matrikelnummer Hinweise Für die

Mehr

Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt:

Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt: 5.2 Linear beschränkte Automaten Definition 98 Eine Turingmaschine heißt linear beschränkt (kurz: LBA), falls für alle q Q gilt: (q, c, d) δ(q, ) = c =. Ein Leerzeichen wird also nie durch ein anderes

Mehr

Die mathematische Seite

Die mathematische Seite Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung Informatik III Christian Schindelhauer Wintersemester 2006/07 27. Vorlesung 08.02.2007 1 Komplexitätstheorie - Platzklassen Platzkomplexität Definition Simulation mehrerer Bänder Savitchs Theorem PSPACE

Mehr

Informatik III. Christian Schindelhauer Wintersemester 2006/ Vorlesung

Informatik 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

Mehr

Theoretische Grundlagen der Informatik

Theoretische 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

Mehr

3 Probabilistische Komplexitätsklassen

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

Mehr

Musterlösung Informatik-III-Nachklausur

Musterlösung Informatik-III-Nachklausur Musterlösung Informatik-III-Nachklausur Aufgabe 1 (2+2+4+4 Punkte) (a) L = (0 1) 0(0 1) 11(0 1) 0(0 1) (b) Der Automat ist durch folgendes Übergangsdiagramm gegeben: 0, 1 0, 1 0, 1 0, 1 0 s q 1 1 0 0 q

Mehr

Theoretische Informatik: Berechenbarkeit und Formale Sprachen

Theoretische Informatik: Berechenbarkeit und Formale Sprachen Prof. Dr. F. Otto 26.09.2011 Fachbereich Elektrotechnik/Informatik Universität Kassel Klausur zur Vorlesung Theoretische Informatik: Berechenbarkeit und Formale Sprachen SS 2011 Name:................................

Mehr

Lösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004

Lö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,

Mehr

Präsenzübung Berechenbarkeit und Komplexität

Prä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:...................................

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

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (II) 11.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

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 2011 14. NICHTDETERMINISTISCHE TURINGMASCHINEN UND DEREN KOMPLEXITÄT Theoretische Informatik (SoSe 2011) 14. Nichtdeterministische

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ätstheorie WiSe 2011/12 in Trier. Henning Fernau Universität Trier

Komplexitä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

Mehr

4.2.4 Reguläre Grammatiken

4.2.4 Reguläre Grammatiken 4.2.4 Reguläre Grammatiken Eine reguläre Grammatik ist eine kontextfreie Grammatik, deren Produktionsregeln weiter eingeschränkt sind Linksreguläre Grammatik: A w P gilt: w = ε oder w = Ba mit a T und

Mehr

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

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

Mehr

Theoretische Grundlagen der Informatik. Vorlesung am 17. Januar INSTITUT FÜR THEORETISCHE INFORMATIK

Theoretische 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

Mehr

4 Kontextsensitive und Typ 0 Sprachen

4 Kontextsensitive und Typ 0 Sprachen Hans U. Simon Bochum, den 05.02.2009 Annette Ilgen Beispiele zur Vorlesung Theoretische Informatik WS 08/09 Vorbemerkung: Hier findet sich eine Sammlung von Beispielen und Motivationen zur Vorlesung Theoretische

Mehr

Formale Grundlagen der Wirtschaftsinformatik

Formale Grundlagen der Wirtschaftsinformatik Formale Grundlagen der Wirtschaftsinformatik Nikolaj Popov Research Institute for Symbolic Computation popov@risc.uni-linz.ac.at Turingmaschinen und Kontextsensitive Sprachen Eine Turingmaschine besteht

Mehr

Aufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 13

Aufgabe Mögliche Punkte Erreichte Punkte a b c d Σ a b c d Σ x1 13 Universität Karlsruhe Theoretische Informatik Fakultät für Informatik WS 2003/04 ILKD Prof. Dr. D. Wagner 14. April 2004 2. Klausur zur Vorlesung Informatik III Wintersemester 2003/2004 Hier Aufkleber

Mehr

Polynomielle Verifizierer und NP

Polynomielle 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

Mehr

DisMod-Repetitorium Tag 4

DisMod-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

Mehr

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER Formale Sprachen Grammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marian KOGLER Grammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind Grammatiken.

Mehr

Kontextfreie Sprachen

Kontextfreie Sprachen Kontextfreie Sprachen Bedeutung: Programmiersprachen (Compilerbau) Syntaxbäume Chomsky-Normalform effiziente Lösung des Wortproblems (CYK-Algorithmus) Grenzen kontextfreier Sprachen (Pumping Lemma) Charakterisierung

Mehr

Die Unentscheidbarkeit extensionaler Eigenschaften von Turingmaschinen: der Satz von Rice

Die Unentscheidbarkeit extensionaler Eigenschaften von Turingmaschinen: der Satz von Rice Die Unentscheidbarkeit extensionaler Eigenschaften von Turingmaschinen: der Satz von Rice Holger Arnold Dieser Text befasst sich mit der Frage, unter welchen Bedingungen das Problem, zu bestimmen, ob die

Mehr

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann

Beweisidee: 1 Verwende den Keller zur Simulation der Grammatik. Leite ein Wort. 2 Problem: der Keller darf nicht beliebig verwendet werden, man kann Automaten und Formale prachen alias Theoretische Informatik ommersemester 2011 Dr. ander Bruggink Übungsleitung: Jan tückrath Wir beschäftigen uns ab jetzt einige Wochen mit kontextfreien prachen: Kontextfreie

Mehr

1. Übungsblatt 6.0 VU Theoretische Informatik und Logik

1. Übungsblatt 6.0 VU Theoretische Informatik und Logik . Übungsblatt 6. VU Theoretische Informatik und Logik 25. September 23 Aufgabe Sind folgende Aussagen korrekt? Begründen Sie jeweils Ihre Antwort. a) Für jede Sprache L gilt: L < L (wobei A die Anzahl

Mehr

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann. Der Satz von Kleene Wir haben somit Folgendes bewiesen: Der Satz von Kleene Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden

Mehr

Automaten und Formale Sprachen SoSe 2013 in Trier

Automaten und Formale Sprachen SoSe 2013 in Trier Automaten und Formale Sprachen SoSe 2013 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 2. Juni 2013 1 Automaten und Formale Sprachen Gesamtübersicht Organisatorisches Einführung Endliche

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

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

Ogden s Lemma: Der Beweis (1/5)

Ogden 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

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 9 2. Juli 2010 Einführung in die Theoretische

Mehr

Formale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung

Formale Sprachen. Grammatiken. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marion OSWALD. Grammatiken: Ableitung Formale Sprachen rammatiken und die Chomsky-Hierarchie Rudolf FREUND, Marion OSWALD rammatiken Das fundamentale Modell zur Beschreibung von formalen Sprachen durch Erzeugungsmechanismen sind rammatiken.

Mehr

13. Nichtdeterministische Turingmaschinen und ihre Komplexität

13. 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

Mehr

Grundlagen der Theoretischen Informatik

Grundlagen der Theoretischen Informatik Grundlagen der Theoretischen Informatik 4. Kellerautomaten und kontextfreie Sprachen (III) 17.06.2015 Viorica Sofronie-Stokkermans e-mail: sofronie@uni-koblenz.de 1 Übersicht 1. Motivation 2. Terminologie

Mehr

Chaos?! Überblick. Beispiele für Rekurrenzen. fn := 3fn-1 + 4fn Beweisen. Abwickeln. Raten Summen. Formelsammlung. Suche nach einer Systematik

Chaos?! Überblick. Beispiele für Rekurrenzen. fn := 3fn-1 + 4fn Beweisen. Abwickeln. Raten Summen. Formelsammlung. Suche nach einer Systematik Überblick fn := 3fn-1 + 4fn-2 + 1 Beispiele für Rekurrenzen Beweisen Raten Summen Abwickeln Formelsammlung Chaos?! Suche nach einer Systematik F3 03/04 p.294/395 Allgemeines Verfahren Bestimmung einer

Mehr

Überblick. F3 01/02 p.295/325

Überblick. F3 01/02 p.295/325 Überblick fn := 3fn-1 + 4fn-2 + 1 Beispiele für Rekurrenzen Beweisen Raten Summen Abwickeln Formelsammlung Chaos?! Suche nach einer Systematik F3 01/02 p.295/325 Allgemeines Verfahren Bestimmung einer

Mehr

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie Theorie der Informatik 17. März 2014 6. Formale Sprachen und Grammatiken Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 6.1 Einführung

Mehr

12. Woche: Verifizierer, nicht-deterministische Turingmaschine, Klasse NP

12. 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

Mehr

Akzeptierende Turing-Maschine

Akzeptierende 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

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 Theoretische Informatik 1 Nichtdeterminismus David Kappel Institut für Grundlagen der Informationsverarbeitung TU Graz SS 2012 Übersicht Nichtdeterminismus NTM Nichtdeterministische Turingmaschine Die

Mehr

Klausur: Berechenbarkeit und Komplexität (Niedermeier/Chen/Froese/Sorge, Sommersemester 2016)

Klausur: Berechenbarkeit und Komplexität (Niedermeier/Chen/Froese/Sorge, Sommersemester 2016) Technische Universität Berlin, Berlin, 28.07.2016 Name:... Matr.-Nr.:... Klausur: Berechenbarkeit und Komplexität (Niedermeier/Chen/Froese/Sorge, Sommersemester 2016) Einlesezeit: Bearbeitungszeit: Max.

Mehr

Nachklausur zur Vorlesung

Nachklausur zur Vorlesung Lehrstuhl für Theoretische Informatik Prof. Dr. Markus Lohrey Grundlagen der Theoretischen Informatik Nachklausur Nachklausur zur Vorlesung Grundlagen der Theoretischen Informatik WS 2016/17 / 27. Februar

Mehr