{"id":2006,"date":"2013-06-14T13:29:37","date_gmt":"2013-06-14T11:29:37","guid":{"rendered":"http:\/\/fernuni.digreb.net\/?p=2006"},"modified":"2025-11-25T23:13:01","modified_gmt":"2025-11-25T22:13:01","slug":"tib-kontextfreie-sprachen-und-kellerautomaten-lernziele-ke7-33","status":"publish","type":"post","link":"https:\/\/fernuni.digreb.net\/?p=2006","title":{"rendered":"TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 3\/3, Update 1)"},"content":{"rendered":"<p><strong>Update<\/strong>: Fehler im Automaten behoben.<\/p>\n<p>Letzter Beitrag zum Thema&#8230; ich tippe besonders langsam, versprochen \ud83d\ude09<\/p>\n<p><span style=\"font-size: 1.5em;\">Lernziel 5<\/span><\/p>\n<p style=\"padding-left: 30px;\"><em>Was sind determinierte Kellerautomaten?<\/em><\/p>\n<p>Wir k\u00f6nnten zwar mit nichtdeterministischen Kellerautomaten leben und w\u00fcrden es sogar. Aber es gibt da ein Problem: wir k\u00f6nnen sie technisch nicht realisieren.<\/p>\n<p>Den determinierten Kellerautomaten hatten wir im <a title=\"TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 2\/3, Update 2)\" href=\"https:\/\/fernuni.digreb.net\/?p=1920\">vorherigen Beitrag<\/a> auch bereits definiert.\u00a0Uns interessiert deshalb nicht <em>was<\/em> sie sind, sondern vielmehr <em>wie<\/em> sie sich von nichtdeterministischen Kellerautomaten unterscheiden und was das f\u00fcr Auswirkungen auf die erkannte Sprachklasse hat.<\/p>\n<p>Eine echte Teilmenge der von nichtdeterminierten Kellerautomaten erkannten, kontextfreien Sprachen ist die deterministische kontextfreie Sprache:<\/p>\n<blockquote><p><strong>Deterministisch kontextfrei<\/strong><\/p>\n<p>Eine Sprache ist deterministisch kontextfrei wenn es einen determinierten Kellerautomaten gibt, der sie erkennt.<\/p><\/blockquote>\n<p>Das <strong>Erkennen<\/strong> bedeutet folgendes:<\/p>\n<blockquote><p>Wenn \\(L\\subseteq\\Sigma^{*}\\) eine deterministisch kontextfreie Sprache ist, dann gibt es einen Kellerautomaten \\(A=(\\Sigma,\\Gamma,\\$,Q,q_0,\\{q_{+}\\},\\delta)\\) mit einem Zustand \\(q_{-}\\in Q\\), so dass f\u00fcr alle Worte \\(\\omega\\in\\Sigma\\) gilt:<\/p>\n\\(\\omega\\in L\\Leftrightarrow (q_0,\\omega\\$,\\$)\\vdash^{*}(q_{+},\\$,\\epsilon)\\)\n<p><em>Das Wort \\(\\omega\\) ist Teil der deterministisch kontextfreien Sprache wenn es eine \u00dcberf\u00fchrungsfolge im Automaten \\(A\\) gibt, die ausgehend vom Anfangszustand in einen akzeptierenden Endzustand m\u00fcndet und die Eingabe zu Ende gelesen wurde, wobei der Keller leer ist.<\/em><\/p>\n\\(\\omega\\notin L\\Leftrightarrow (q_0,\\omega\\$,\\$)\\vdash^{*}(q_{-},\\$,\\epsilon)\\)\n<p><em>Das Wort \\(\\omega\\) ist nicht Teil der deterministisch kontextfreien Sprache wenn es eine \u00dcberf\u00fchrungsfolge im Automaten \\(A\\) gibt, die ausgehend vom Anfangszustand in einen nicht-akzeptierenden Endzustand m\u00fcndet und die Eingabe zu Ende gelesen wurde, wobei der Keller leer ist.<\/em><\/p><\/blockquote>\n<p>Sie ist zudem auch noch eindeutig:<\/p>\n<blockquote><p>Jede deterministisch erkannte Sprache ist eindeutig*.<\/p><\/blockquote>\n<p>* erinnert Ihr euch noch an die Eindeutigkeit? Fall nicht: jedes abgeleitete Wort einer eindeutigen Sprache\/Grammatik hat nur einen einzigen Ableitungsbaum.<\/p>\n<p>Wir zeigen gleich, dass die deterministischen Automaten weniger leistungsf\u00e4hig sind. Folgende \u00dcberlegungen sind notwendig:<\/p>\n<p style=\"padding-left: 30px;\">1. ein deterministischer Kellerautomat akzeptiert nur Worte, die er zu Ende liest. Wir m\u00fcssen daher unseren deterministischen Automaten entsprechen ummodellieren und die Szenarien vermeiden, wo der Automat nicht weiterlesen kann:<\/p>\n<p style=\"padding-left: 60px;\">a) Keller leer bevor Eingabe zu Ende.<\/p>\n<p style=\"padding-left: 60px;\"><strong>L\u00f6sung<\/strong>: neues Keller-Leerheits-Zeichen, dass nie gel\u00f6scht wird.<\/p>\n<p style=\"padding-left: 60px;\">b) keine Folgekonfiguration f\u00fcr aktuelle Konfiguration vorhanden<\/p>\n<p style=\"padding-left: 60px;\"><strong>L\u00f6sung<\/strong>: Vervollst\u00e4ndigen von \\(\\delta\\), so dass wir zu jeder M\u00f6glichkeit einen Folgezustand haben<\/p>\n<p style=\"padding-left: 60px;\">c) das Erreichen eines Zyklus, wo der Kopf nicht bewegt wird<\/p>\n<p style=\"padding-left: 60px;\"><strong>L\u00f6sung<\/strong>: Erkennen und vermeiden des Zyklus.<\/p>\n<p style=\"padding-left: 30px;\">2. Wir haben einen ausgezeichneten, positiven Endzustand: entweder er akzeptiert das Wort und wir landen in \\(q_{+}\\) oder nicht und wir landen in\u00a0\\(q_{-}\\in Q\\).<\/p>\n<p>Mit der Vorarbeit aus dem letzten Beitrag, ist es nicht schwer diese weiteren Einschr\u00e4nkungen nachzuvollziehen.<\/p>\n<p>Der Beweis f\u00fcr die <strong>Komplementbildung<\/strong> gelingt durch simples Vertauschen der Zust\u00e4nde\u00a0\\(q_{+}\\) und\u00a0\\(q_{-}\\), so dass wir diese Eigenschaft zusammenfasen k\u00f6nnen:<\/p>\n<blockquote><p>Sei \\(L\\subseteq\\Sigma^{*}\\) deterministisch kontextfrei, so ist es auch \\(\\Sigma^{*}\\setminus L\\).<\/p><\/blockquote>\n<p><strong>Antwort zum Lernziel:\u00a0<\/strong>Kellerautomaten (PDAs) sind endliche Automaten, die durch einen Kellerspeicher erweitert wurden. Bei einem Kellerautomaten wird ein Wort dann erkannt wenn der Keller leer ist oder der Automat in einem Endzustand landet (oder beides gleichzeitig).<\/p>\n<p>F\u00fcr einen determinierten Kellerautomaten gilt zudem, dass es f\u00fcr jedes Eingabezeichen und jedes oberste Kellerzeichen nur einen Zustands\u00fcbergang gibt, so dass der Kellerautomat den Berechnungsweg nicht zuf\u00e4llig w\u00e4hlen kann. Ist das nicht der Fall und gibt es zu einem Eingabezeichen und einem obersten Kellerzeichen mehrere m\u00f6gliche Folgezust\u00e4nde, so ist der Kellerautomat nichtdeterministisch.<\/p>\n<p>F\u00fcr eine deterministisch kontextfreie Sprache \\(L\\) bedeutet es, dass wir in jedem Fall f\u00fcr ein Wort \\(\\omega\\in L\\) nach endlich vielen Schritten die Endkonfiguration \\((q_{+},\\$,\\epsilon)\\) (ausgewiesener Endzustand, Ende der Eingabe, leerer Keller) oder f\u00fcr ein Wort\u00a0\\(\\omega\\notin L\\)\u00a0\\((q_{-},\\$,\\epsilon)\\)\u00a0(beliebiger Zustand aus \\(Q\\), Ende der Eingabe, leerer Keller)\u00a0erreichen.<\/p>\n<p>&nbsp;<\/p>\n<h2>Lernziel 6<\/h2>\n<p style=\"padding-left: 30px;\"><em>Ist jede kontextfreie Sprache deterministisch? Mit Begr\u00fcndung!<\/em><\/p>\n<p>Ein (f\u00fcr mich) etwas verst\u00e4ndlicheres Beispiel habe ich in den <a href=\"http:\/\/www.informatik.hu-berlin.de\/forschung\/gebiete\/algorithmenII\/Lehre\/ws11\/einftheo\/skript\/einftheo-dcfl.pdf\">Folien der HU-Berlin<\/a> gefunden und w\u00fcrde das hier gerne anbringen. Nehmen wir zwei deterministisch kontextfreie Sprachen (DCFL), die von einem determinierten Automaten erkannt wird, z.B.<\/p>\n<p style=\"padding-left: 30px;\">\\(L_1=\\{a^i b^j c^k\\mid i\\neq j\\}\\in DCFL\\) sowie<\/p>\n<p style=\"padding-left: 30px;\">\\(L_2=\\{a^i b^j c^k\\mid j\\neq k\\}\\in DCFL\\).<\/p>\n<p>Beide Sprachen sind deterministisch kontextfrei. Wir k\u00f6nnen also einen deterministischen Kellerautomaten angeben, der sie erkennt.<\/p>\n<p>Um \\(L_1\\) zu entscheiden, k\u00f6nnen wir uns z.B. darauf beschr\u00e4nken die \\(a&#8217;s\\) einzulesen, \\(A&#8217;s\\) in den Keller zu schreiben und anschlie\u00dfend die \\(b&#8217;s\\) einzulesen und die \\(A&#8217;s\\) aus dem Keller zu entfernen. Es sind drei F\u00e4lle zu unterscheiden:<\/p>\n<p style=\"padding-left: 30px;\">1. Gab es weniger \\(a&#8217;s\\) als \\(b&#8217;s\\), so haben wir noch \\(b&#8217;s\\) auf dem Eingabeband, w\u00e4hrend der Keller bereits leer ist und alles ist gut.<\/p>\n<p style=\"padding-left: 30px;\">2. Gab es mehr \\(a&#8217;s\\) als \\(b&#8217;s\\), so haben wir keine \\(b&#8217;s\\) auf dem Eingabeband, w\u00e4hrend noch \\(A&#8217;s\\) im Keller sind und alles ist immernoch gut.<\/p>\n<p style=\"padding-left: 30px;\">3. Gab es die gleiche Anzahl \\(a&#8217;s\\) und \\(b&#8217;s\\), so haben wir einen leeren Keller just in dem Moment, wo wir keine \\(b&#8217;s\\) auf dem Eingabeband haben und das Wort wird abgelehnt.<\/p>\n<p>Das gleiche Verfahren klappt auch mit \\(L_2\\) (nur mit \\(b&#8217;s\\) und \\(c&#8217;s\\) statt mit \\(a&#8217;s\\) und \\(b&#8217;s\\)).<\/p>\n<p>Schauen wir uns doch eine weitere Sprache an:<\/p>\n<p style=\"padding-left: 30px;\">\\(L_1\\cup L_2 = \\{a^i b^j c^k\\mid i\\neq j\\) oder \\(j\\neq k\\}\\in CFL\\setminus DCFL\\).<\/p>\n<p>Wie man sieht, ist das eine Vereinigung der beiden Sprachen \\(L_1\\) und \\(L_2\\). Um das etwas anschaulicher zu machen, schauen wir uns die Mengen doch einmal mit \\(1\\leq i,j,k\\leq 2\\) an:<\/p>\n<p style=\"padding-left: 30px;\">\\(L2_1=\\{abbc,abbcc,aabc,aabcc\\}\\)<\/p>\n<p style=\"padding-left: 30px;\">\\(L2_2=\\{abcc,abbc,aabcc,aabbc\\}\\)<\/p>\n<p style=\"padding-left: 30px;\">\\(L2_1\\cup L2_2 = \\{abbc,abbcc,aabc,aabcc,abcc,aabbc\\}\\)<\/p>\n<p>W\u00e4hrend wir f\u00fcr f\u00fcr \\(L2_1, L2_2\\) und die Vereinigung der beiden Sprachen \\(L2_1\\cup L2_2\\) sogar einen endlichen Automaten angeben k\u00f6nnen, der sie erkennt (wir erinnern uns: das ist genau der Grund warum alle endlichen Sprachen sogar regul\u00e4r sind, ein akzeptierender Zustand pro Wort reicht im endlichen Automaten aus um die Sprachen zu erkennen), gelingt es uns bei \\(i,i,k\\in\\mathbb{N}\\) nur f\u00fcr \\(L_1\\) sowie \\(L_2\\) einen Kellerautomaten anzugeben, der die Sprache erkennt (wir m\u00fcssen die Anzahl der Buchstaben beobachen k\u00f6nnen und k\u00f6nnen das nur mindestens mit einem Kellerautomaten. Mindestens weil Turingmaschinen als st\u00e4rkstes Berechnungsmodell selbstverst\u00e4ndlich auch gehen, denn sie k\u00f6nnen ja selbst Typ-0-Sprachen erkennen).<\/p>\n<p>Weit mehr Probleme macht uns die Vereinigung! Das Problem mit ihr ist: sie ist zwar kontextfrei, aber nicht deterministisch kontextfrei. Denn daf\u00fcr k\u00f6nnen wir keine deterministische Kellermaschine angeben, sie sie erkennt.<\/p>\n<p>Woran liegt das? Wie wir oben gesehen haben, beobachten wir mit dem Keller nur eine Variable (die Anzahl unserer ersten, eingelesenen Buchstaben) und k\u00f6nnen so eine andere abh\u00e4ngig von dieser entscheiden. Das ist bei den Sprachen \\(L_1\\) und \\(L_2\\) ja kein Problem. Bei \\(L_1\\cup L_2\\) haben wir jedoch drei Variablen, die von einander abh\u00e4ngig sind. Denn wir m\u00fcssen \\(j\\) in Abh\u00e4ngigkeit von \\(i\\) und \\(k\\) in Abh\u00e4ngigkeit von \\(j\\) pr\u00fcfen. Das war&#8217;s also mit dem Determinismus, denn wir haben mehrere Wege, die wir beschreiten m\u00fcssen um am Ende einen zu finden, der funktioniert.<\/p>\n<p>Die <a href=\"http:\/\/web.engr.oregonstate.edu\/~tadepall\/cs516\/03\/m2a\">kontextfreie Grammatik<\/a> f\u00fcr\u00a0\\(L_1\\cup L_2\\) ist:<\/p>\n<p style=\"padding-left: 30px;\">\\(S\\rightarrow{DC \\mid AE \\mid B}\\)<\/p>\n\\(D\\rightarrow{F\\mid G}\\)\n\\(F\\rightarrow{aF \\mid aFb \\mid a}\\)\n\\(G\\rightarrow{Gb \\mid aGb\\mid b}\\)\n\\(C\\rightarrow{cC\\mid\\epsilon}\\)\n<p style=\"padding-left: 30px;\">\\(A\\rightarrow{aA\\mid\\epsilon}\\)<\/p>\n\\(E\\rightarrow{H\\mid I}\\)\n\\(H\\rightarrow{bH\\mid bHc\\mid b}\\)\n\\(I\\rightarrow{Ic \\mid bIc \\mid c}\\)\n<p style=\"padding-left: 30px;\">\\(B\\rightarrow{J \\mid K}\\)<\/p>\n\\(J\\rightarrow{aJ\\mid aJc\\mid aL}\\)\n\\(K\\rightarrow{Kc\\mid aKc\\mid Lc}\\)\n\\(L\\rightarrow{bL\\mid\\epsilon}\\)\n<p>Und daraus k\u00f6nnen wir den zugeh\u00f6rigen Automaten nach dem Schema aus dem <a title=\"TIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 2\/3, Update 2)\" href=\"https:\/\/fernuni.digreb.net\/?p=1920\">vorherigen Beitrag<\/a> bauen:<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-2058\" style=\"margin-left: 50px; margin-right: 200px;\" alt=\"aibjck_npda\" src=\"https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda.png\" width=\"322\" height=\"444\" srcset=\"https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda.png 460w, https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda-217x300.png 217w\" sizes=\"auto, (max-width: 322px) 100vw, 322px\" \/><\/a><\/p>\n<p>Download: <a href=\"https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda.rar\">AiBjCk_NPDA_JFLAP-Datei<\/a><a href=\"https:\/\/fernuni.digreb.net\/wp-content\/uploads\/2013\/06\/aibjck_npda.rar\"><\/p>\n<p><\/a><\/p>\n<p>Damit haben wir auch eine wesentliche Aussage f\u00fcr das n\u00e4chste Lernziel herausgearbeitet: dass wir keinen deterministischen Automaten f\u00fcr \\(L_1\\cup L_2\\) angeben k\u00f6nnen liegt daran, das\u00a0die deterministisch kontextfreien Sprachen zwar abgeschlossen sind bzgl. Schnitt und Komplement, aber <strong>nicht<\/strong> gegen Vereinigung, Durchschnitt, Spiegelung und Konkatenation! Und das obere Beispiel war die Vereinigung. Beispiele f\u00fcr Durchschnitt, Spiegelung und Konkatenation \u00fcberlasse ich erstmal euch \ud83d\ude09<\/p>\n<p>Zusammengefasst: Wir haben mit dem deterministischen Kellerautomaten, welche die Sprache erkennt, tats\u00e4chlich eine Beschneidung der M\u00f6glichkeiten, die uns ein nichtdeterministischer Kellerautomat bietet: wir k\u00f6nnen nicht mehr zwischen Berechnungspfaden w\u00e4hlen\u00a0und sind an unsere Wahl &#8222;gebunden&#8220;. War sie falsch, so landen wir in einer Sackgasse und damit war es das. Bei einem nichtdeterministischen Automaten haben wir w\u00e4hrenddessen (durch mehrere Folgekonfigurationen f\u00fcr eine Konfiguration) bereits andere Wege parallel beschritten, wo uns einer (wenn wir einen korrekten Automaten angegeben haben) schon zur L\u00f6sung f\u00fchren wird. War eine Berechnung falsch, so landen wir auf diesem einen Weg in einer Sackgasse und &#8230; es ist uns egal. Wir haben ja noch genug andere Wege, die wir parallel beschreiten.<\/p>\n<p>Hauptsache wir k\u00f6nnen beweisen, dass min. einer dieser Wege zu einem Ergebnis f\u00fchrt und entscheidet ob ein Wort sich in der Sprache befindet. Tut es das nicht, kann der nichtdeterministische Automat von uns aus solange weiterrechnen, bis er schwarz wird.<\/p>\n<p>Ein Blick aus einer anderen Brille: Um bei der Sprache \\(L_1\\cup L_2\\) entscheiden zu k\u00f6nnen ob ein Wort tats\u00e4chlich zur Sprache geh\u00f6rt oder nicht, ist der Algorithmus wirklich einfach: Wir z\u00e4hlen die \\(a&#8217;s\\), \\(b&#8217;s\\) und \\(c&#8217;s\\), speichern die Anzahl auf dem Hilfsband und vergleichen die drei Variablen nachdem wir die Eingabe vollst\u00e4ndig eingelesen haben miteinander. Ihr habt sicher schon eine TM im Kopf, die das macht. W\u00e4hrend wir das also mit einer DTM problemlos machen k\u00f6nnen, schaffen wir das mit einem PDA durch die Einschr\u00e4nkungen leider nicht.<\/p>\n<p><strong>Antwort zum Lernziel<\/strong>: Nicht jede kontextfreie Sprache ist deterministisch. Es gibt kontextfreie Sprachen, die aufgrund ihrer Struktur nicht von einem PDA erkannt werden k\u00f6nnen weil ihr Aufbau von mehreren Variablen abh\u00e4ngt, diese jedoch nicht durch einen einzigen Kellerspeicher deterministisch abgebildet werden k\u00f6nnen. Erst durch das Beschreiten mehrerer Berechnungspfade ist es m\u00f6glich auch mehrere Variablen in die Betrachtung einzubeziehen und aus der so generierten Vielzahl an Pfaden die Aussage zu treffen, dass einer in jedem Fall zum Ziel f\u00fchrt wenn das Wort sich in der Sprache befindet.<\/p>\n<p>Eine solche kontextfreie, aber nicht deterministische Sprache l\u00e4sst sich durch Vereinigung, Konkatenation, Durchschnitt oder Spiegelung einer oder mit mehreren deterministisch kontextfreien Sprachen erzeugen, da die Sprachklasse der deterministisch kontextfreien Sprachen nicht abgeschlossen gegen diese Operationen ist.<\/p>\n<h2>Lernziel 7<\/h2>\n<p style=\"padding-left: 30px;\"><em>Sind die kontextfreien bzw. deterministisch kontextfreien Sprachen abgeschlossen unter Vereinigung, Durchschnitt, Komplement und Schnitt mit regul\u00e4ren Mengen?<\/em><\/p>\n<p>Was soll ich hier schreiben? Reicht die Tabelle aus dem Skript? \ud83d\ude09 Ihr solltet euch noch einmal vor Augen f\u00fchren, wie die Sprachklassen zusammenh\u00e4ngen und die Beziehungen zwischen Unter- und Oberklasse sind. Dann wird euch auch deutlich warum diese gegen gewisse Operationen nicht abgeschlossen sein k\u00f6nnen. Vielleicht schreibe ich sp\u00e4ter noch ein paar S\u00e4tze dazu, aber bis dahin:<\/p>\n<p><strong>Antwort zum Lernziel:<\/strong><\/p>\n<table border=\"0\" cellspacing=\"0\">\n<colgroup width=\"189\"><\/colgroup>\n<colgroup width=\"85\"><\/colgroup>\n<colgroup width=\"104\"><\/colgroup>\n<tbody>\n<tr>\n<td align=\"LEFT\" height=\"16\"><\/td>\n<td style=\"text-align: center;\" align=\"LEFT\"><b>kontextfrei<\/b><\/td>\n<td style=\"text-align: center;\" align=\"LEFT\"><b>deterministisch<\/b><\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Vereinigung<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Durchschnitt<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Komplement<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Konkatenation<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Stern<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Schnitt mit regul\u00e4ren Mengen<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Lernziel 8<\/h2>\n<p style=\"padding-left: 30px;\"><em>Welche der folgenden Probleme sind f\u00fcr kontextfreie Grammatiken entscheidbar\/unentscheidbar? Wortproblem, Endlichkeitsproblem, Leerheitsproblem?<\/em><\/p>\n<p>Hier sollten wir einige Probleme auf den Mengen entscheiden k\u00f6nnen, diese sind:<\/p>\n<ul style=\"list-style-type: disc;\">\n<li><strong>Wortproblem<\/strong>: ob sich ein Wort \\(\\omega\\) in der Sprache \\(L\\) befindet (oder nicht).<\/li>\n<li><strong>Inklusion<\/strong>: ob die Worte einer Sprache \\(L_1\\) in einer anderen Sprache\\(L_2\\) enthalten sind<\/li>\n<li><strong>\u00c4quivalenz<\/strong>: ob die Sprache \\(L_1\\) die gleiche Sprache wie \\(L_2\\) ist.<\/li>\n<li><strong>Leerheit<\/strong>: ob die Sprache leer ist, d.h. wir k\u00f6nnen mir der Grammatik, die die Sprache erzeugt keine W\u00f6rter erzeugen. Achtung: jede leere Sprache ist regul\u00e4r.<\/li>\n<li><strong>Endlichkeit<\/strong>: ob die Sprache endlich ist (endliche Sprache = regul\u00e4re Sprache = endlicher Automat)<\/li>\n<li><strong>Universalit\u00e4t<\/strong>: ob die Sprache alle Kombinationen der Elemente aus dem Alphabet \\(\\Sigma\\) umfasst<\/li>\n<li><strong>Eindeutigkeit<\/strong>: ob es f\u00fcr ein Wort nur <a href=\"https:\/\/fernuni.digreb.net\/?p=1851\">einen Ableitungsbaum<\/a> gibt.<\/li>\n<li><strong>Determiniertheit<\/strong>: es gibt einen deterministischen Kellerautomaten, der entscheidet ob\u00a0\\(\\omega\\) zur Sprache geh\u00f6rt oder nicht.<\/li>\n<\/ul>\n<p><strong>Antwort zum Lernziel:<\/strong><\/p>\n<table border=\"0\" cellspacing=\"0\">\n<colgroup width=\"189\"><\/colgroup>\n<colgroup width=\"85\"><\/colgroup>\n<colgroup width=\"104\"><\/colgroup>\n<tbody>\n<tr>\n<td align=\"LEFT\" height=\"16\"><\/td>\n<td style=\"text-align: center;\" align=\"LEFT\"><b>kontextfrei<\/b><\/td>\n<td style=\"text-align: center;\" align=\"LEFT\"><b>deterministisch<\/b><\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Wortproblem<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Inklusion<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">\u00c4quivalenz<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Leerheit<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Endlichkeit<\/td>\n<td align=\"CENTER\">+<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Universalit\u00e4t<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Eindeutigkeit<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<tr>\n<td align=\"LEFT\" height=\"16\">Determiniertheit<\/td>\n<td align=\"CENTER\">&#8211;<\/td>\n<td align=\"CENTER\">+<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Damit haben wir auch die letzte Kurseinheit durch. Hoffentlich konntet Ihr etwas mit den Zusammenfassungen anfangen und es haben sich keine Fehler eingeschlichen. Wenn doch: ab damit in die Kommentare!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Update: Fehler im Automaten behoben. Letzter Beitrag zum Thema&#8230; ich tippe besonders langsam, versprochen \ud83d\ude09 Lernziel 5 Was sind determinierte Kellerautomaten? Wir k\u00f6nnten zwar mit nichtdeterministischen Kellerautomaten leben und w\u00fcrden es sogar. Aber es gibt da ein Problem: wir k\u00f6nnen sie technisch nicht realisieren. Den determinierten Kellerautomaten hatten wir im vorherigen Beitrag auch bereits definiert.\u00a0Uns &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/fernuni.digreb.net\/?p=2006\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eTIB: Kontextfreie Sprachen und Kellerautomaten (Lernziele KE7 3\/3, Update 1)\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-2006","post","type-post","status-publish","format-standard","hentry","category-theoretische-informatik"],"_links":{"self":[{"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/posts\/2006","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2006"}],"version-history":[{"count":35,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/posts\/2006\/revisions"}],"predecessor-version":[{"id":3541,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=\/wp\/v2\/posts\/2006\/revisions\/3541"}],"wp:attachment":[{"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2006"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2006"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fernuni.digreb.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2006"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}