Hier findet Ihr meine Zusammenfassungen und ErlÀuterungen zur theoretischen Informatik (01657 und 01658).
Diese Zusammenfassungen hier habe ich eig. nur fĂŒr mich erstellt und habe sie spĂ€ter einigen Kommilitonen zur VerfĂŒgung gestellt um ihnen etwas Zeit zu sparen, da der Stoff in der dargestellten Form doch eher schwer verdaulich ist. AuĂerdem gibt es ein Problem mit der SekundĂ€rliteratur, da bestimmte Dinge im Skript einfach anders definiert sind. Sie sind zwar dennoch korrekt, aber auch bestimmten GrĂŒnden besteht im Skript z.B. etwas aus einem 4-Tupel und in der Literatur aus einem 5-Tupel, usw.
Da die Zusammenfassungen den Mitstudenten anscheinend ganz gut beim VerstÀndnis der Materie halfen (wenn ich der positiven Resonanz glauben darf), habe ich beschlossen sie online zu stellen. Vielleicht helfen sie euch auch.
Thema Copyright
Die Fragestellungen und einige Inhalte stammen aus dem Skript der FernUni Hagen, das Copyright liegt also dort. Stellen, die ich aus dem Buch von Dirk W. Hoffmann oder Rolf Socher entnommen habe sind ebenfalls markiert. Ich habe mich bemĂŒht alle Bilder selbst zu erstellen, nur CC–Bilder zu verwenden oder mindestens die Quelle zu nennen. Wenn irgendwo was fehlt oder ich euer Bild verwendet haben sollte, was ihr nicht wollt, bitte ich um eine kurze Mail an mich. Ich entferne es direkt.
Ganz wichtig
Auch wenn ich die Zusammenfassungen nach bestem Wissen und Gewissen angefertigt habe, gibt es sicherlich noch irgendwo den ein oder anderen Fehler. Aber nichts stört den Lernprozess so wie diese. ErklÀrungen werden nicht nachvollziehbar wenn man nicht auf das selbe Ergebnis kommt wie der Autor. Sollten euch daher grobe Schnitzer auffallen, bitte sofort per Mail oder in den Kommentaren melden. Danke!
Behaltet aber eines im Hinterkopf:
Auch sollten die Zusammenfassungen höchstens ergÀnzend zum Skript verwendet werden wenn Ihr mal eine andere Sicht auf die Dinge braucht weil ihr im Skript nicht weiterkommt. Nur das Skript ist wirklich verbindlich!
PS: Ihr merkt aus den obigen Zeilen, dass ich mit der PrĂŒfung nicht so ganz zufrieden war. Ich habe bestanden. Aber nicht so gut, wie ich das gerne hĂ€tte und wie das dem Aufwand, den ich betrieben habe entsprechen wĂŒrde.
Das lag aber nicht am Prof., sondern einfach an der Tatsache, dass ich mich habe von dem Gedanken leiten lassen, das VerstĂ€ndnis der Materie und der ZusammenhĂ€nge wĂŒrde ausreichen. Denn darum ginge es ja letztendlich: etwas zu verstehen. Die genauen Definitionen seien etwas, was man zur Not wĂŒrde nachschlagen können. Das ist leider nicht richtig. Bestimmte Dinge mĂŒssen einfach „sitzen“ und exakt formuliert werden können.
HÀtte ich das vorher gewusst, hÀtte ich mich anders vorbereitet. Mehr im Stil von BGB als im Stil von Software Engineering.
Das hat aber nichts mit dem Prof. oder der PrĂŒfung zu tun. Diese ist fair, der Prof. sehr nett und die Benotung wohlwollend. Macht euch also darĂŒber keine Gedanken. Lernt aber nicht nur fĂŒr das VerstĂ€ndnis der Materie, sondern lernt auch, euch mathematisch prĂ€zise genug auszudrĂŒcken um die wichtigen Definitionen ohne FĂŒllwörter oder Ungenauigkeiten benennen zu können.
Ich weiĂ, dass genau dies ein Problem bei einem Fernstudium ist. Denn das höchste der GefĂŒhle ist, dass man gelegentlich mit den Mitstudenten skyped oder sich auch mal in der Lerngruppe trifft. Das reicht aber leider nicht, denn i.d.R. ist der Mitstudent auch nicht so tief in der Materie drin, dass er Ungenauigkeiten direkt erkennt und euch darauf hinweist. Man spricht darĂŒber, erklĂ€rt es einander und gut ist’s. Das ist aber nicht genug.
Daher nehmt auch, selbst wenn ihr meint alles verstanden zu haben, die Gelegenheit wahr an den Studientagen oder den Mentoriaten teilzunehmen, bearbeitet die Einsendeaufgaben so gut es halt geht und schreibt die Leistungsnachweise. Nutzt jede Gelegenheit um euch in Genauigkeit zu ĂŒben. Es geht hier schlieĂlich um Mathematik und nicht um Politik đ
Zusammenfassungen theoretische Informatik A (01657)
Kurseinheit 1
Die erste Kurseinheit der theoretischen Informatik A beginnt mit Flussdiagrammen, Einzelschritt-, Schrittzahl- und Gesamtschrittfunktionen und ihrer Semantik. AnschlieĂend geht es von Maschinen ĂŒber Registermaschinen mit nur drei Grundoperationen zu verallgemeinerten Registermaschinen mit komplexeren Möglichkeiten.
Diese nutzen wir um zu beweisen, dass Zahlenfunktionen berechenbar sind und weisen das anhand einiger Beispiele auch mittels vollstĂ€ndiger Induktion ĂŒber die Einzelschrittfunktion nach.
TIA: Flussdiagramme, Registermaschinen und berechenbare Zahlenfunktionen (Lernziele KE1)
- Angabe und ErlÀuterung der Definition des Flussdiagramms
- Angabe und ErlÀuterung der Semantik des Flussdiagramms
- Angabe und ErlÀuterung der Definition und Semantik einer Maschine
- Angabe und ErlÀuterung der Definition einer Registermaschine
- Angabe und ErlÀuterung der Definition einer verallgemeinerten Registermaschine
- Angabe der Definition einer berechenbaren Zahlenfunktion
- Zeigen, dass eine Funktion berechenbar ist
Kurseinheit 2
In der zweiten Kurseinheit gibt es zwar nur drei Lernziele und das Skript ist im Umfang her ziemlich dĂŒnn, aber es werden tatsĂ€chlich essentielle Dinge angesprochen. FĂŒr mein Empfinden auch etwas zu schnell abgehandelt. In SekundĂ€rliteratur widmen die Autoren diesen Themen eigene Kapitel.
Die behandelten Themen sind: die Cantorsche Tupelfunktion (auch Paarungsfunktion genannt), sowie einige Eigenschaften berechenbarer Zahlenfunktionen und die damit zusammenhÀngende primitive- und \(\mu\)-Rekursion, die uns die \(LOOP\)-und \(WHILE\)-Berechenbarkeit mathematisch abbilden.
TIA: Berechenbare Zahlenfunktionen (Lernziele KE2)
- Angabe und ErlÀuterung der Definition und der Eigenschaften der Cantorschen Tupelfunktion
- ErlÀuterung der Abschlusseigenschaften berechenbarer Zahlenfunktionen
- Definition der WHILE-Programme, ErlÀuterung ihrer Semantik und Angabe des Zusammenhangs zu berechenbaren Funktionen
Kurseinheit 3
Das Thema dieser Kurseinheit sind Turingmaschinen. Einband-, Mehrbandmaschinen und wie sie ineinander ĂŒberfĂŒhrt werden können.
In diesem Kontext treffen wir auch die Hilfssymbole zur Simulation der Kopfpositionen von Mehrbandmaschinen und wie wir sie eliminieren um das Arbeitsalphabet (Bandalphabet) nicht unnötig aufblĂ€hen zu mĂŒssen.
Weiterhin beweisen wir hier die Berechenbarkeit einfacher Wortfunktionen mittels vollstĂ€ndiger Induktion ĂŒber die Turingmaschinen nach.
TIA: Turingmaschinen, Bandmaschinen und berechenbare Wortfunktionen (Lernziele KE3)
- ErlÀuterung der Definition einer Turingmaschine
- Nachweis der Berechenbarkeit einfacher Wortfunktionen
- ErlÀuterung der Definition einer Bandmaschine
- ErlÀuterung der Grundidee des Beweises Turing-berechenbar = Band-berechenbar
- ErlÀuterung der Grundidee des Beweises, dass man bei Bandmaschinen ohne Hilfssymbole auskommt
Kurseinheit 4
Diese Kurseinheit ist etwas dicker als die anderen. Bzw. sollte sie sein, da doch einige essentielle Themen wie \(WHILE\)– und \(LOOP\)-Berechenbarkeit angesprochen werden. Leider sind die entsprechenden Kapitel im Skript nur knapp gehalten, wĂ€hrend sie in anderer Literatur ein paar Seiten mehr umfassen.
Behandelte Themen sind die folgenden: Standardnummerierung und die dadurch induzierte Beziehung zwischen Zahlen und Wortfunktionen, \(LOOP\)-Berechenbarkeit und damit die primitiv-rekursiven Funktionen, die \(WHILE\)-Berechenbarkeit und die \(mu\)-rekursiven Funktionen, Churchsche These und erste ErwÀhnung der Beweisverfahren mittels Diagonalisierung (Cantor).
TIA: Berechenbarkeit (Kernziele KE4)
- Angabe und ErlÀuterung der Definition einer Standardnummerierung von \(\Sigma^{*}\)
- Formulierung und ErlÀuterung der Beziehung zwischen Zahlen- und Wortfunktionen
- Definition der primitiv-rekursiven Funktionen
- Beweis, dass bestimmte Funktionen primitiv-rekursiv sind
- Definition der \(\mu\)-rekursiven Funktionen
- ErlÀuterung der Churchschen These
- Beweis der Existenz von nicht-berechenbaren Funktionen durch Diagonalisierung
Kurseinheit 5
Auch wenn die Kurseinheit mit 30 Seiten doch recht dĂŒnn ist, habe ich es irgendwie geschafft daraus ebenfalls 30 Seiten zu machen. Puh!
Die doch nicht so einfach (fĂŒr mich zumindest) erschlieĂbaren Themen waren die Standardnummerierung \(\varphi\) der einstelligen, evtl. partiellen, berechenbaren Funktionen \(P^{(1)}\), die StandarskomplexitĂ€t \(\Phi\), das utm-, smn- und das \(\Phi\)-Theorem inkl. einiger lustiger SĂ€tze wie dem Ăquivalenzsatz von Rogers oder dem Rekursionssatz inkl. Anwendungsbereichen in der Selbstreproduktion.
Alles in Allem eine sehr gelungene Kurseinheit, die (fĂŒr mich) bis jetzt durchaus die Niveauspitze darstellt. Oder ich hatte zu wenig Kaffee.
- ErlÀuterung der Definition der Standardnummerierung \(\varphi\) von \(P^{(1)}\)
- ErlÀuterung des \(\Phi\)-Theorems
- Beweis der Berechenbarkeit von \(h:\mathbb{N}^3\rightarrow\mathbb{N}\) (als Vorarbeit zum utm-Theorem)
Exkurs: utm-Theorem und Zusammenhang zu Programmiersprachen
- Zusammenhang zwischen \(\varphi\), dem utm-Theorem und Programmiersprachen
TIA: utm-Theorem (Lernziele KE5, 2/3)
- Anwendung und ErlÀuterung des utm-Theorems
TIA: smn-Theorem, Ăquivalenzsatz von Rogers und Rekursionssatz (Lernziele KE5, 3/3)
- ErklÀrung und Anwendung des smn-Theorems
- ErlĂ€uterung des Ăquivalenzsatzes fĂŒr Nummerierungen/Programmiersprachen (Rogers)
- Formulieren des Rekursionssatzes
Kurseinheit 6
Und als ich dachte, dass mehr als drei BeitrÀge zu einer Kurseinheit nicht gehen, kam Kurseinheit 6. Mit insg. 26 Seiten ist das wahrscheinlich der lÀngste Beitrag zu einer Kurseinheit.
Die Themenvielfalt ist hier aber auch so groĂ, dass jedes Thema einen eigenen Kurs wert wĂ€re: Rekursive und rekursiv aufzĂ€hlbare Mengen und ihre Eigenschaften, Nachweis dieser Eigenschaften und Zusammenhang zwischen diesen, Bild- und Projektionssatz, Halte- und Selbstanwendbarkeitsproblem, erste Ăbungen der Reduktion, der wichtige Satz von Rice, das Ăquivalenz- und Korrektheitsproblem und der Gödel’sche UnvollstĂ€ndigkeitssatz.
Nach dieser KE bin ich wirklich ĂŒberzeugt, dass beide Teile des Kurses eig. mindestens eigene 10 ECTS verdient hĂ€tten.
TIA: Rekursive und rekursiv-aufzÀhlbare Mengen (Lernziele KE6, 1/4)
- Definition rekursiver und rekursiv aufzÀhlbarer Mengen von Zahlen und Wörtern
- Abschlusseigenschaften rekursiver und rekursiv aufzÀhlbarer Mengen
- Nachweis der RekursivitÀt/Entscheidbarkeit von Mengen
- Nachweis der rekursiven AufzÀhlbarkeit/Semi-entscheidbarkeit von Mengen
- ErlÀuterung des Zusammenhangs zwischen rekursiven und rekursiv-aufzÀhlbaren Mengen
TIA: Bild- und Projektionssatz (Lernziele KE6 2/4)
- Charakterisierung der r.a. Mengen durch Bild- und Projektionssatz
- Halte- und Selbstanwendbarkeitsproblem
- ErklÀrung der Reduzierbarkeit und Methode der Reduktion
- Satz von Rice
- Ăquivalenz- und Korrektheitsproblem
- Gödel’scher UnvollstĂ€ndigkeitssatz
TIA: Gödel’scher UnvollstĂ€ndigkeitssatz (Lernziele KE6, 4/4)
- Detailbetrachtung: Gödel’scher UnvollstĂ€ndigkeitssatz, Peano und Beweissysteme
Kurseinheit 7
Das ist nun die letzte Kurseinheit des ersten teils der theoretischen Informatik.
Alle Berechenbarkeitskonzepte, die wir vorher hatten, haben wir nur auf den natĂŒrlichen Zahlen (Registermaschinen) und Worten ĂŒber einem Alphabet (durch Turingmaschinen) definiert. Was wir vergessen haben, waren die reellen Zahlen. Auf diese lassen sich die behandelten Konzepte nicht einfach so ĂŒbertragen. Da bedarf es schon etwas mehr Anstrengung.
TIA: Berechenbarkeit auf anderen Mengen (Lernziele KE7, 1/2)
- Definition der Berechenbarkeitskonzepte, welche durch eien Nummerierung auf einer Menge \(M\)induziert werden: \(\nu\)-rekursiv, \(\nu\)-r.a, \((\nu,{\nu}^{‚})\)-berechenbar
- Nachweis der \(\nu\)-RekursivitĂ€t und \((\nu,{\nu}^{‚})\)-Berechenbarkeit
TIA: Berechenbarkeit auf anderen Mengen (Lernziele KE7, 2/2)
- ErklĂ€rung der Reduzierbarkeit und Ăquivalenz von Nummerierungen
- Konstruktion einer reellen Zahl \(x\) einer Funktion \(\nu:\mathbb{N} \rightarrow \mathbb{R}\), die nicht im Bild von \(\nu\) liegt
- Definition berechenbarer Funktionen \(f \subseteq {({\Sigma}^{\omega})}^k \rightarrow{\Sigma}^{\omega}\)
- Definition der Cauchy-Darstellung der reellen Zahlen
- Zeigen, dass z.B. \(x \mapsto x+5\) \((\rho,\rho)\)-berechenbar ist
Zusammenfassungen theoretische Informatik B (01658)
Kurseinheit 1
Die erste Kurseinheit der theoretischen Informatik B startet direkt mit der Frage nach den KomplexitĂ€tsmaĂen in Bezug auf Turingmaschinen: die wichtigsten Ressourcen sind Band und Zeit. Diese werden in dieser Kurseinheit erstmals definiert und anschlieĂend weiter ausgebaut, ZusammenhĂ€nge hergestellt und die BandreduktionssĂ€tze angesprochen.
Maschinenmodelle und KomplexitÀtsklassen (Lernziele KE1)
- Definition der KomplexitĂ€tsmaĂe Zeit und Band fĂŒr Turing-Maschinen
- Definition der KomplxitÀtsklassen
- Zusammenhang zwischen Band- und ZeitkomplexitÀt
- Darstellung der Aussage der BandreduktionssÀtze und Beweisidee
Kurseinheit 2
Bei dieser Kurseinheit kĂŒmmern wir uns um die Separation von KomplexitĂ€tsklassen bei Zeit und Band und wenden diese an um zu zeigen, dass Funktionen in unterschiedlichen KomplexitĂ€tsklassen sind. Mittels HierarchiesĂ€tzen können wir auch eine Hierarchie auf diesen KomplexitĂ€tsklassen bilden.
Separations- und HierarchiesÀtze (Lernziele KE2)
- Verstehen des Verfahrens von Separations- und HierarchiesÀtzen
- Voraussetzung fĂŒr Separations- und HierarchiesĂ€tze benennen und begrĂŒnden
- Anwendung der SĂ€tze zum Beweis von Separationen und echten Inklusionen
- Definition von band- und zeitkonstruierbaren Funktionen
- Beschreibung des Beweises von \(ZEIT(n) \subset{ZEIT(n \cdot log n)}\) (fehlt leider)
- Beweis der Beziehungen zwischen den Klassen P, LOGSPACE, PSPACE
Exkurs/Vorschau: P-NP-Problem und das Problem des Handlungsreisenden
- Kleine Vorschau auf die kommenden Kurseinheiten und detaillierte Besprechung des TSP sowie des P-NP-Problems
Kurseinheit 3
In KE3 geht es um die nichtdeterministische KomplexitĂ€t, Kontrollturingmaschinen und nichtdeterministische Turingmaschinen, die ĂberfĂŒhrung der beiden Modelle ineinander innerhalb der gleichen Band- und Zeitschranken, erste ErlĂ€uterung der polynomiellen Reduktion und der NP-VollstĂ€ndigkeit von Mengen.
Alles in allem eine gelungene und wichtige Kurseinheit.
TIB: Nichtdeterministische KomplexitÀt (Lernziele KE3)
- ErklÀrung der Modelle der KTM und der NTM
- Ăquivalenz der Modelle begrĂŒnden
- Definition nichtdeterministischer KomplixitĂ€tsmaĂe und -klassen
- Zusammenhang zwischen deterministischen und nichtdeterministischen KomplexitÀtsklassen
- Definition von \({}\leq_{pol}{}\)
- ErklÀrung der VollstÀndigkeit
Kurseinheit 4
Nachdem wir in der letzten Kurseinheit die \(NP\)-KomplexitĂ€t hatte, kommen wir hier zu \(NP\)-vollstĂ€ndigen Problemen: \(2D\)-Domino (Kachelproblem) und \(SAT\) bilden die Grundpfeiler. Wir zeigen die VollstĂ€ndigkeitsbeweise und polynomielle Reduktionen dieser Probleme, geben ein paar weitere \(NP\)-vollstĂ€ndige Probleme an (\(CLIQUE\) wird detailliert besprochen) und zeigen, warum \(GAP\) vollstĂ€ndig fĂŒr \(NLOGSPACE\) ist.
TIB: Nichtdeterministische Probleme (Lernziele KE4 1/2)
- Wie ist die Idee des VollstÀndigkeitsbeweises zu \(2D\)-Domino?
- Wie beweist man die VollstÀndigkeit einer Menge?
TIB: Nichtdeterministische Probleme (Lernziele KE4 2/2)
- Wie ist der VollstÀndigkeitsbeweis zu \(SAT\)?
- Wie fĂŒhrt man eine einfache, polynomielle Reduktion \({}\leq_{pol}\) aus?
- Angabe einiger NP-vollstÀndigen Probleme, Details zu \(CLIQUE\)
- Warum ist \(GAP\) vollstĂ€ndig fĂŒr \(NLOGSPACE\)?
Kurseinheit 5
Mit dieser Kurseinheit beginnt das groĂe Thema Grammatiken/Sprache, welches uns bis KE7 begleiten wird.
ĂberabzĂ€hlbarkeit, Noam Chomsky, Regeln der Typ-0/Typ-1/Typ-2/Typ-3-Grammatiken, die Beziehung zwischen semi-entscheidbaren/rekursiv-aufzĂ€hlbaren Wortmengen, Beziehungen zwischen Grammatik und Turingmaschine, die Inklusionsbeziehung zwischen den Sprachklassen, die Beziehung zwischen regulĂ€ren Mengen und rechtslinearen Grammatiken, regulĂ€re AusdrĂŒcke, die Transformation von Grammatiken in die rechtslineare Normalform (inkl. Beispiel) sind die Stichworte in dieser Kurseinheit.
TIB: Grammatiken und regulÀre Sprachen (Lernziele KE5 1/1)
- Was ist eine Grammatik \(G\), wie definiert man die Sprache \(L(G)\)?
- Welche Sprachklasse wird durch Grammatiken definiert?
- Was sind Typ-1-, Typ-2-, Typ-3-Grammatiken?
- Wie definiert man regulÀren Mengen?
- Welche Sprache wird durch einen regulÀren Ausdruck definiert?
- Was ist eine rechtslineare Grammatik?
- Wie zeigt man, dass die regulÀre Sprache von rechtslinearen Grammatiken erzeugt wird?
- Wie transformiert man eine rechtslineare Grammatik in eine rechtslineare Normalform?
Kurseinheit 6
Mittels endlichen Automaten werden hier die regulĂ€ren Sprachen erkannt. Ebenfalls definieren wir hier nichtdeterministische Automaten, VollstĂ€ndigkeit, ĂberfĂŒhrungsfunktionen, transitive HĂŒllen usw. und zeigen diese Definitionen auch an einem Beispiel und stellen mit diesem Automaten fest ob ein Wort in einer Sprache ist oder nicht. Auch konstruieren wir zu einem nichtdeterminierten Automaten einen determinierten, der die selbe Sprache erkennt (was bei Kellerautomaten nicht funktioniert, aber dazu in KE7 mehr).
Wir setzen im nĂ€chsten Beitrag regulĂ€re AusdrĂŒcke in Beziehung mit endlichen Automaten anhand eines Beispiels. Auch betrachten wir die Abgeschlossenheit der regulĂ€ren Sprachen mit bestimmten Operationen und die Beweisidee anhand konkreter Beispiele um dann mit dem Pumping Lemma fĂŒr regulĂ€re Sprachen und den Entscheidungsproblemen den Beitrag abzuschlieĂen.
Der letzte Punkt fĂŒhrt uns zu AbleitungsbĂ€umen kontextfreier Grammatiken mit einem grafischen Beispiel, der Eindeutigkeit von Grammatiken (wichtig!) und als kleinen Exkrus: zu SyntaxbĂ€umen.
TIB: Endliche Automaten und kontextfreie Grammatiken (Lernziele KE6 1/3)
- Wie definiert man die von einem endlichen Automaten erkannte Sprache?
- Wie kann man zu einem nichtdeterminierten endlichen Automaten einen determinierten konstruieren, der dieselbe Sprache erkennt?
TIB: Endliche Automaten und kontextfreie Grammatiken (Lernziele KE6 2/3)
- Wie konstruiert man zu einem endlichen Automaten \(A\) einen regulÀren Ausdruck \(\alpha\) mit \(L(A)=L(\alpha)\)?
- Wie zeigt man, dass die regulÀren Sprache unter den in Satz 8.4.1 genannten Operationen abgeschlossen sind (Beweisidee)?
- Welche „Probleme“ sind fĂŒr regulĂ€re Sprachen entscheidbar?
- Wie lautet das Pumping-Lemma fĂŒr regulĂ€re Sprachen? Wie kann man es verwenden um nachzuweisen, dass eine Sprache nicht regulĂ€r ist?
TIB: Endliche Automaten und kontextfreie Grammatiken (Lernziele KE6 3/3)
- Was sind AbleitungsbÀume kontextfreier Grammatiken?
- Wann ist eine kontextfreie Grammatik bzw. Sprache eindeutig?
Kurseinheit 7
In dieser Kurseinheit dreht sich alles um Kellerautomaten. ZunĂ€chst kĂŒmmern wir uns um die Chomsky-Normalform und wie man sie erzeugt. AnschlieĂend wird das Pumping-Lemma fĂŒr kontextfreie Sprachen erklĂ€rt und an zwei detaillierten Beispielen (positiv und negativ) angewandt.
Im letzten Beitrag widmen wir uns dann um determinierte Kellerautomaten und die (Unter-)Sprachklasse, die von ihnen erkannt wird. Anhand eines Beispiels wird gezeigt, dass die Klasse der deterministisch kontextfreien Sprachen nicht abgeschlossen ist gegen Vereinigung und die Vereinigung zweier deterministisch kontextfreier Sprachen nur eine kontextfreie Sprache erzeugt. Diese Sprache wird dann in eine Grammatik und dann in einen nichtdeterministischen Kellerautomaten ĂŒbersetzt. Zuletzt geht es dann um die Abschlusseigenschaften dieser Sprachklasse und die Entscheidungsprobleme in diesen.
TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 1/3)
- Wann ist eine Grammatik in Chomsky-Normalform und wie konstruiert man eine solche aus einer beliebigen kontextfreien Grammatik?
- Was besagt das Pumping-Lemma fĂŒr kontextfreie Sprachen und wie wendet man es an?
TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 2/3)
- Wie sind Kellerautomaten und die von ihnen akzeptierte Sprache definiert?
- Wie zeigt man, dass Kellerautomaten genau die kontextfreien Sprachen erkennen?
TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 3/3)
- Was sind determinierte Kellerautomaten?
- Ist jede kontextfreie Sprache deterministisch? Mit BegrĂŒndung!
- Sind die kontextfreien bzw. deterministisch kontextfreien Sprachen abgeschlossen unter Vereinigung, Durchschnitt, Komplement und Schnitt mit regulÀren Mengen?
- Welche der folgenden Probleme sind fĂŒr kontextfreie Grammatiken entscheidbar/unentscheidbar?
