Auf ein letztes. Letzte Veranstaltung. Letzte Vorlesung. Mobble
over Urlaub. Ich fange einfach mal an und fange mal
an zu erzählen und gucke mal, wann ihr ruhig seid.
Ich soll heute mal hin? Ich glaube,
bestimmt mal war das eine gute Idee. Mal gucken,
jetzt wird es merklich, lauter, so ist es.
Wollen wir anfangen? Moderne Technik. So, letzte Veranstaltung
heute. Stoff, mit dem Stoff sind wir durch.
Heute fassen wir nochmal zusammen, dann kommen noch zwei
so große Frageblöcke
Und dann mache ich noch ein bisschen Werbung für Veranstaltungen in den nächsten Semestern.
Und ich glaube, da bin ich fertig. Gastin,
erzähle ich noch was zur Klausur, richtig, da war ja noch was.
Und dann mache ich Feierabend. Also, Zusammenfassung.
14 Wochen? Ja, 13. Und gemacht haben wir ja
Automatenteil und Logikteil. Die verbinden sich auch so ein bisschen,
aber das kann man in der Veranstaltung hier noch nicht so doll sehen,
wie man das in späteren Veranstaltungen sieht,
wie sehr die sich gegenseitig bedingen.
Vor allem so im Verifikationskontext sieht man das nachher
sehr deutlich
Aber hier so in FG1,
da laufen die ja noch so ein bisschen so parallel nebeneinander
und man sieht so ein bisschen so Verknüpfung bei dem Erfüllbarkeitsproblem,
dass man dann damit so irgendwie an die Komplexitätstheorie rankommt und sowas.
Aber es ist noch nicht so,
dass man die beiden Gebiete so richtig miteinander verschmolzen hätte,
wie man das später tun würde.
Deswegen ist das ja auch in der Zusammenfassung so,
dass ich einmal den Automatenteil wiederhole und dann die Logik teile
und zwischendrin so ein bisschen mal die Zusammenhänge erzähle.
Legen wir uns Automaten teil. Was haben wir denn da
so gemacht? Die meisten Folien kennt ihr schon,
weil wir auch zwischendurch so Zusammenfassungen ja immer mal gemacht haben,
aber lassen wir uns alles nochmal so Revue passieren
Die vier Sprachfamilien da oben hatten wir. Die regulären,
die kontextfreien, die einen Scheitball und die Aufzählbahnen.
Und die letzten beiden entscheiden mal und aufzählbar,
die gehen mit dem gleichen Modell und dann passt man halt
die Akzeptanzbedingungen bei dem Modell so ein bisschen an.
Und die anderen beiden hatten ja ganz unterschiedliche Modelle im Hintergrund.
Und dann haben wir auch gesehen,
dass hier diese echte Teilmengenbeziehungen gelten,
das regulär eine echte Timing von Kontext frei ist,
dass eine echte Timingmenge von entscheidbar und dass eine echte Timing von aufzählbar.
Und in den letzten zwei Wochen sind wir dann quasi hier
in die Entscheidbare noch tiefer eingegangen und haben die entscheidbaren Probleme
nochmal mit einer anderen Metrik betrachtet und die quasi bezüglich
ihrer Komplexität vor eine Zeitkomplexität irgendwie unterteilt
Also das, was wir da alles gemacht haben, das tummelt sich alles in entscheidbar.
Und die nächsten Folien, die sind jetzt immer so,
da gibt es so eine Folie zu den Modellen, für die jeweilige Sprachfamilie,
dann zu den Begriffen und dann zu den Verfahren, die wir so hatten.
Mit Betonung der Verfahren, die irgendwie für die Klausur dann auch relevant sind.
Also bei den Regulären hatten wir als Automatenmodelle die DFAs,
die NFAs, die Terminismus, nicht die Terminismus,
da hatten wir nochmal so Exkursartig,
dass man bei den NFAs noch so Landerkanten ranmachen kann,
dass man irgendwie keinen Buchstaben liest,
sondern irgendwie gar kein Symbol.
Und dann hatten wir noch die regulären oder rationalen Ausdrücke,
findet man beides so in der Literatur
Und die rechtslinearen Grammatiken, das waren dann so spezielle kontextfreie Grammatiken,
also kontextfreie Grammatiken sind ja gegenüber normalen Grammatiken schon stark eingeschränkt,
wenn man die dann noch stärker einschränkt, dann landet man irgendwie bei diesen Rechtslinearen Grammatiken.
Das waren so die Modelle,
die wir da hatten und wenn er bei jedem so denkt,
so ja, kenne ich, dann ist alles super,
wenn er bei irgendeinem denkt, so bin ich mir nicht mehr ganz sicher,
wie das aussah, dann solltet ihr das nochmal nachlesen,
so, die sollte man alle viereinhalb kennen,
also vier mit diesem Exkurs dazu, die Lamblakanten,
dass man den nochmal benutzen kann.
Und die Begriffe, die wir da so hatten,
waren die, dass man irgendwie bei den Automaten nochmal den Zustände,
Eingabesymbole, das Alphabet oder auch Eingabealphabet oder Führungsfunktion oder Relation,
je nachdem, wie man das machen möchte,
Staatszustand oder Staatszustände beim NFA und Endzustände.
Und dann konnte man den,
konnte man auch hier vollständig und initial zusammenhängend einführen,
initial zusammenhängen quasi die Komponente des Automaten, die einen tatsächlich interessiert,
weil die Zustände alle erreichbar sind und vollständig,
wenn man eben, egal in welchem Zustand man ist,
jedes Symbol lesen kann.
Also ganz sinnvolle Eigenschaften, die beiden. Und
für die Dynamik des Automaten haben wir dann so Konfiguration,
Rechnung eingeführt und dann eben die akzeptierte Sprache,
also all die Worte,
die von dem Automaten akzeptiert werden sollen
Eterminismus, nicht die Terminismus und als Begriff kommt auch gleich bei den Verfahren noch,
aber als Begriff auch noch so die Abschlusseigenschaft,
dass man sagen kann, eine Sprachfamilie ist abgeschlossen gegenüber einer Operation X,
wenn ich eben zwei Sprachen dieser Sprachfamilie nehmen kann und L1XL2 ist weiterhin in dieser Sprachfamilie,
ist die Sprachfamilie irgendwie abgeschlossen gegenüber dieses binären Operators X. Verfahren,
die wir hatten, ja als vorletztes kommt es da auf verschiedene Konstruktionen,
um Abschlusseigenschaften zu zeigen, aber erstmal haben wir angefangen,
gegeben,
Automat,
welche Sprache akzeptiert er oder auch andersrum
Dann immer diese zwei Richtungen, dass man irgendwie zeigt,
elf von A ist gleich ämden, also elf von A ist dann, die vom Automaten akzeptierte Sprache.
M ist irgendwie eine Menge von Worten und dann muss man zeigen,
dass das gleich ist, also dass der Automat genau diese Wörter akzeptiert und nicht mehr. Dann hatten wir so Techniken zum Konstruieren,
das war so irgendwie diese, sich einmal zu überlegen,
was will ich mir eigentlich merken,
so die Zustände kann ich benutzen,
um endlich viele Informationen zu merken, was will ich mir merken,
dann male ich die auf und mache dann die Kantenübergänge oder dass ich so versuche mit so einer unserer Fly-Methode im Startzustand zu starten und mir dann immer zu überlegen,
naja, wenn ich ein A lese oder wenn ich ein B lese,
kriege ich da irgendwie mehr Informationen,
will ich einen Zustandswechsel machen oder will ich in dem Zustand bleiben.
Das waren so die Techniken, die wir da hatten
Potenzautomatenkonstruktion vom NFA zum DFA. Gegeben NFA, Potenziautomatenkonstruktion machen,
kommt ein DFA raus. Verschiedene Konstruktionen, um Abschlussseigenschaften zu zeigen,
also die, die man so kennen sollte irgendwie,
wie geht Vereinigung, wie geht Durchschnitt, wie geht Kompliment.
So die drei wichtigen, die man so auch können sollte.
Die anderen sind dann eher so zum, wenn man längere Zeit zum Nachdenken hat.
Und dann auch ganz wichtig, Pumpinglämmer der regulären Sprachen,
um nachzuweisen, dass eine Sprache nicht regulär ist.
Also Pumpinglämmer macht eine Aussage über eine Eigenschaft,
die alle regulären Sprachen erfüllen und dann Vermutet man,
wenn man annimmt, dass eine gegebene Sprache nicht regulär ist,
dann sagt man angenommen, die wäre regulär,
dann müsste ja das Pumping-Lämmer gelten und dann führt man das zum Widerspruch.
Das solltet ihr alles ausführen können. Also so typische Klausuraufgaben irgendwie gegeben,
dieser NFA mit drei Zuständen, machen Sie mal die Potenziautomatenkonstruktion,
sodass dann DFA rauskommt, ausführen. Gegeben die und die Sprache,
zeigen Sie mal mit dem Pumping-Lämmer für reguläre Sprachen, dass die Sprache nicht regulär ist. Bei dem Aufgabentypus Sprachen,
die irgendwie ähnlich sind zu denen, die wir hatten,
zu denen, die wir hatten, also sowas wie A,
hoch NB, hoch M und dann irgendwie N-größer,
M oder M größer, N oder N gleich M,
irgendwie solche Geschichten oder in Ungleich M,
so irgendwie sowas, was man relativ schnell ausführen kann,
weil man weiß, wie man mit dem Pumpingglamour arbeitet,
ohne dass man jetzt irgendwie super kreativ in seine Zahlentheorie-Trickkiste greifen muss,
um irgendein Kunststück zu vollführen.
Da geht dann mehr so darum, dass man weiß,
wie man damit arbeitet,
dass man das einmal demonstriert
Genau, und hier genauso, ne? Irgendwie beweist das ein Automat eine Sprache akzeptiert,
klassische Aufgabe gegebene Sprache, bauen Sie mal einen DFA,
der die Sprache akzeptiert und zeigen Sie,
dass er das auch wirklich tut.
Da kommt dann auch nicht irgendeine Sprache,
wo man drei Stunden nachdenken muss, sondern auch irgendwas,
was relativ vertraut ist, ne? Also irgendwie der Automat,
bei dem nach jedem A und B kommt oder die Wörter,
die mit A beginnen und mit B enden oder irgendwie solche Geschichten,
so, ne?
Jo. Genau, dann, das wäre schon zu
regulären Sprachen. Habt ihr da Fragen zu?
Bei Regulier
Modelle begefahren, okay. Dann nächste Sprachfamilie, kontextfrei. Da haben wir zwar auch das Automatenmodell einmal so gesehen,
aber ja nicht richtig ausführlich behandelt, ist nur schön,
das zu wissen, dass es das gibt so,
dass wir primär gemacht haben, waren dann da das Grammatikmodell,
dass man dann gesagt hat, okay, so kontextfreie Grammatik,
wenn wir erstmal die ganz normalen Grammatiken eingeführt und dann eben speziell die kontextfreien,
wo die Produktion eben so stark eingeschränkt sind,
dass man sagt,
auf der linken Seite der Regel steht immer genau ein Non-Terminal.
Auf der rechten Seite was Beliebiges,
links ein Non-Terminal und dann kann man eben,
wenn man irgendeine Satzform hat,
das Non-Terminal durch die rechte Seite ersetzen
Kontextfrei, weil quasi dieses Non-Terminal ersetzt wird, unabhängig von dem Kontext,
in dem steht. Also ob links von dem großen A
irgendwie ein kleines B steht oder ein kleines C ist egal.
Ich sehe, dass das große A da steht und kann
die Produktion A nach, was auch immer, anwenden.
Deswegen kontextfrei. Und dann da die Begriffe non-terminale Terminale,
Terminale, die Buchstaben, die nachher die Wörter der Sprache irgendwie ausmachen,
Non-Terminale, die Zeichen, von denen man noch ableiten kann.
Dann Produktion irgendwie non-terminal durch etwas ersetzen und das Startsymbol,
damit man überhaupt weiß, von wo man loslegen darf.
Das ist dann wieder die Syntaktische Seite und die dynamische,
die kriegt man dann hier eben durch die Ableitung,
quasi Produktionen immer wieder anwenden, bis man irgendwie ein Wort hat,
das nur das Terminalzeichen besteht und die Wörter,
die man so generieren kann, das ist dann eben die generierte Sprache.
Genau, und da gab es dann noch diesen Begriff Landerproduktion,
der ist jetzt auch ein bisschen wichtiger als der Begriff der Landerkanten bei den NFAs,
weil bei den Landerproduktionen nochmal darüber geredet haben,
wie man die irgendwie bei Atomsky Normalform feststellen kann,
ob das Lander überhaupt generiert werden kann oder nicht.
Das war so der erste Schritt bei der Trumpsky Normalform,
denn da irgendwie S in dieser Menge,
die man bestimmt drin war, dann wusste man,
oh,
ich kann Lander mit der Grammatik generieren und sonst eben
nicht so
Genau, und hier auch so eingeklammert,
eine Begriffe zum PDA im Grunde genommen,
wie beim DFA und NFA, mit halt dem,
was zusätzlich noch so dazukommt, so Kellersymbol und sowas,
aber wie gesagt, das ist nur so,
dass ihr das nochmal seht,
dass das auch zu dieser Sprachfamilie gehört.
Da gibt es dann aber keine Fragen zu in der Klausur,
also bei den Grammatiken, da geht es.
Und die Techniken verfahren, die wir da hatten,
auch wieder genauso wie bei den regulären Sprachen,
begebenen Sprache zeigen sie, dass die kontextfrei ist,
indem man eben eine Grammatik angibt,
die die Sprache generiert und beweist,
dass sie das tut
Also beweist, dass eine Grammatik eine Sprache generiert und dann eben auch Techniken,
da hatten wir so diese zwei Techniken,
dass wir einmal gesagt haben, naja, links und rechts,
gleichmäßig wachsen, wenn man irgendwie so Produktionen hat,
wie von S geht's nach ASB.
Man benutzt die Produktion immer wieder,
dann erzeugt man eben irgendwie eh viele As auf der linken Seite,
eh viele Bs auf der rechten Seite und in der Mitte
ein großes S so.
Irgendwann geht das weg und dann mal links und rechts
das Gleiche. So die eine Techni-Idee,
die man da so haben kann und die andere so eine Art lineares wachsende,
dann geht es von S irgendwie zu AS und dann kann man eben so eine Kette von As damit generieren.
Und irgendwann muss man mal abbrechen mit S zu Lamda oder S
zu A oder irgendwie sowas
Aber das waren so die zwei Techniken, die wir da so hatten.
Und dann kann man die halt irgendwie kombinieren, um auf unterschiedliche Sprachen zu kommen.
Genau, das war das so beim Sprachengenerieren und so.
Und dann hatten wir diese Technik zur Herstellung der Jumpsky-Normalform mit diesem wichtigen Unterschritt,
die eine Grammatik zu reduzieren, sprich sie produktiv und erreichbar zu machen.
Das ist so das Schöne, was man haben möchte,
auch wieder bei einer Grammatik,
so ähnlich wie es beim DFA irgendwie schön ist,
wenn er vollständig und initial zusammenhängt, ist,
ist es bei einer Grammatik halt schön, wenn alle non-terminale produktiv sind.
Ansonsten bringen die halt gar nichts. Und wenn die erreichbar sind,
ist auch schön, das ist so das Gegenstück zu initial zusammenhängt,
weil wenn ich ein Non-Terminal habe,
das gar nicht erreichbar ist,
dann kann ich die Produktion auch wegschmeißen,
dann brauche ich die
irgendwie nicht
Genau, da hatten wir,
das war so ein sechsschrittiges Verfahren und wenn das jetzt so in der Klausur drankommt,
dann ist das nicht so,
dass man irgendwie eine Grammatik kriegt und sagt,
wenden Sie mal das ganze Verfahren an,
sondern dann kriegt man irgendwie eine Grammatik und dann sagt man hier,
reduzieren Sie mal,
dann muss man irgendwie nur zwei Schritte machen und dann kriegt man irgendwie eine andere Grammatik und sagt,
machen Sie nochmal irgendwie Schritt 4 und 5 von der Jumpsky-Normalform,
damit man eben nicht so in Folgefehler reinläuft.
Das ist dann so ein bisschen aufgegliedert, aber man sollte eben
alle Schritte können und auch irgendwie beschreiben können, was man tut. Also wir hatten,
glaube ich, auch mal so eine Frage irgendwie,
was muss man denn überhaupt machen, wenn man die Champsky-Normalform herstellen soll,
dann ist das eher eine Textaufgabe, wo man irgendwie beschreibt,
naja, als erstes mache ich dieses als zweites oder die Schritte sind so,
so, so,
so,
dann schreibt man
das Verfahren
Ja, und dann verschiedene Konstruktionen um Abschlusseigenschaften zu zeigen,
auch wieder so die typischen Vertreter,
dass man irgendwie so Vereinigung machen kann und vielleicht Sternbildung in dem Fall.
Ja, und mehr liebst du einen denn eigentlich gar nicht von den einfachen.
Und auch da Pumping-Lämmer, der kontextfreien Sprachen,
auch wieder Eigenschaften, die alle kontextfreien Sprachen haben.
Und man benutzt es, um zu zeigen,
dass eine Sprache nicht kontextfrei ist.
Genau, das war, genau, das war schon zu
den Kontextfreien
Da sind die Verfahren ein bisschen aufwendiger als bei den Regulären.
Also hier stimmt der Trumpskin-Oralform und auch das Pumping-Lämmer ist schon aufwendiger,
sowohl es zu formulieren, als auch es zu beweisen,
als auch später das zu benutzen.
Also wenn ihr euch noch an das Pumping-Lämmer für kontextfreie Sprachen erinnert,
da war halt das Problem,
dass bei dieser Zerlegung von dem Wort Z in UVW XY
dieses VWX über das ganze Wort irgendwie rüberwandern konnte.
Während bei dem Pumping-Lämmer für reguläre Sprachen, da war das
UV ja auf jeden Fall vorne in dem Wort drin,
also in diesen ersten Endbuchstaben.
Das ist also der wichtige Unterschied.
Fragen zu den Kontext rein
Entscheidbar und aufzählbar, gleiche Modelle. Deswegen gibst du dir jetzt
die gemeinsame Folie in Scheiter und aufzählbar. Geht über Touring-Maschinen,
haben wir unterschiedliche kennengelernt, so die terministische,
nicht die terministische und dann mit den unterschiedlichen Bändern.
Wichtig ist eigentlich nur, dass man weiß,
dass es die hier unten gibt und mit den beiden da oben,
da sollte man so besser arbeiten können,
weil man die dann ja eben auch braucht für diese Komplexitätsklassen.
P und NP, während das mit den vielen Bändern,
das führt man eigentlich nur ein, damit man nachher weiß,
oh ja, das geht alles. Und dann kann man eben,
wenn man jetzt eine Touring-Maschine auf einem gewissen Abstraktionslevel machen will
und eben nicht explizit das Zustandsübergangsdiagramm angeben will,
dann kann man eben mit diesen vielen Bändern arbeiten,
was meistens irgendwie angenehmer ist, als nur mit einem Band zu arbeiten.
Dann kann man halt so Sachen sagen wie, naja,
auf dem zweiten Band merke ich mir das und auf dem
dritten Band das und dann kann ich das alles benutzen
Wichtig ist halt, dass ihr auch hier bei mehreren Bändern,
ihr habt dann halt so eine Kaban-Touring-Maschine, das heißt,
die Anzahl der Bänder ist fest.
Also da spawnen nicht irgendwann, während man arbeitet,
plötzlich noch mehr Bänder und man hat plötzlich endlich viele Bände oder so,
das sollte halt nicht passieren.
Braucht man euch. Ja, und dann hier Church-Touring-These,
die sollte man auch einsortieren können, dass jedes Modell,
das wir so haben, gerade die berechenbaren Funktionen auch tatsächlich erfasst.
Und Gegenbeispiel dazu gibt es eben
noch nicht
Genau, das sind die Modelle und der Unterschied war dann ja bei entscheidbar und aufsehbar,
dass man gesagt hat, eine Sprache ist aufzählbar,
wenn es eine Touring-Maschine gibt, die die Sprache einfach akzeptiert,
so wie bei DFAs auch und NFAs und so.
Und Bayern Scheidbar hat man gesagt, die soll die Sprache
nicht nur akzeptieren, sondern sie soll wirklich auf jeder Eingabe anhalten.
Das war dann so der Unterschied bei den beiden Sprachfamilien und dann sieht man auch gleich,
okay, entscheidbar ist eine Teilmenge von aufzählbar,
weil immer anzuhalten oder nicht zwingend immer anhalten zu müssen,
wenn ich immer anhalten muss, dann muss ich irgendwie dieses Ding noch mehr machen.
Und dann ist das eine Teilmenge und dann haben wir auch gesehen,
dass das eine echte Teilmenge ist,
indem wir eben gezeigt haben,
dass es unentscheidbare Probleme wie eben zum Beispiel
das Halteproblem gibt
Genau, Begriffe da auch wieder, im Grunde genommen sehr ähnlich zu dem,
was man bei DFAs hatte, einfach weil es wieder ein Automatenmodell ist,
führt man im Grunde genommen die gleichen Sachen ein.
Jetzt hat man hier zusätzlich zu den Eingabesymbolen noch Bandsymbole,
damit man sich eben irgendwie mehr im Speicher merken kann,
über Führungsfunktionen, über Führungsrelation, Staatszustand, Endzustand,
das hatten wir alles und halt ein Symbol für das leere Feld,
um wirklich zu illustrieren,
so das Feld ist jetzt leer.
Das andere hatten wir auch alles so, eine Konfirktion,
Schrittrelation,
Rechnung,
Erfolgsrechnung,
akzeptierte Sprache
Im Grunde genommen alles so wie beim DFA, mit dem wichtigen Unterschied hier
eine Erfolgsrechnung oder eben ein Wort ist in der akzeptierten Sprache.
Nicht so wie beim DFA, wo man gesagt hat,
ich muss das Wort bis zum Ende lesen und dann im Endzustand sein,
sondern hier hat man einfach nur gesagt,
wenn ich irgendwann in der Rechnung im Endzustand bin,
dann kann ich schon akzeptieren. Macht algorithmisch auch Sinn,
wenn ich die Sprache all jener Worte akzeptieren will, die mit A beginnen,
so, wenn ich dafür jetzt einen Algorithmus haben will,
dann gucke ich mir die ersten Buchstaben an und wenn das ein A ist,
sage ich, ja, akzeptiere ich.
So, brauche ich nicht weiter rechnen. Genau,
und Touring berechenbar, dass man eben nicht nur Sprachen akzeptiert hat,
sondern dass man auch Funktionen berechnen konnte, gegeben das Argument X,
kann ich irgendwie F von X ausrechnen,
Und dann ist die Funktion F-Touring berechenbar und den Unterschied,
den wir eben schon hatten, aufzählbar und entscheidbar.
Dass man da die Begriffe und hier hatten wir dann vor allem so Konstruktionsgeschichten,
mit Pouring-Maschine machen, die eine Sprache akzeptiert,
Turing-Maschine machen, die eine Funktion berechnet, Turing-Maschine machen,
die eine Sprache entscheidet.
Und dann hier auch nochmal mit Abschlusseigenschaften auch so verschiedene Konstruktionen
für Abschlusseigenschaften. Also irgendwie zeigen sie,
dass die Menge der entscheidbaren Sprachen gegenüber Vereinigung abgeschlossen ist,
gegenüber Durchschnitt,
gegenüber Kompliment oder eben auch für Aufzählbarkeit
Wobei der Hauptspannende Punkt ist so Aufzählbarkeit und da die Vereinigung,
weil man dann eben irgendwie diesen Kniff mitkriegt,
dass man die nicht einfach hintereinander ausführen kann,
weil die eine ja vielleicht unendlich lange rechnet.
Und dann muss man die eben so abwechselnden Schritt tun lassen.
Das ist so die Konstruktionsidee,
die man eigentlich bei diesen Abschlussseigenschaften hier ganz gut mitnehmen kann.
Vielleicht kann man das woanders mal benutzen. Genau,
und dann eben auch hier als Verfahren beweisen, dass ein Problem unentscheidbar ist.
Also irgendwie angenommen mein Problem wäre, entscheidbar,
dann kann ich jetzt so und so und so bauen.
Und jetzt kann ich plötzlich ein unentscheidbares Problem lösen.
Widerspruch, also kann man ursprünglich als entscheidbar angenommenes Problem
nicht entscheidbar sein und muss also
unentscheidbar sein
Jo, das waren da die Verfahren. Da fragen zu?
Kann man auch so Fragen stellen in der Klausur, ne?
Wir geben irgendwie, ne, geben Sie die Touring-Maschine an,
die die Funktion F von X gleich X plus 1
berechnet oder irgendwie F von A hoch
N gleich A hoch N plus 1 irgendwie irgendwie rüberlesen,
A ranschreiben oder sowas. Dass man sowas machen kann oder
erklären Sie mal, was eine Touring-Maschine tun müsste,
die die Sprache A hoch NB hoch N akzeptiert
Nicht das Zustandsübergangsdiagramm angeben, weil das irgendwie lange dauert,
aber dass man dann irgendwie formulieren kann, naja,
ich streiche vorne in A weg,
hinten B weg und das mache ich halt so lange,
bis das irgendwie entweder nichts mehr auf dem Band steht oder
von einem noch was da ist.
Und dann kann ich dementsprechend akzeptieren oder nicht.
Das wäre so auf einer gewissen Abstraktionsebene oder im Zustandsübergangsdiagramm angeben,
dann für eher einfache Funktionen oder Sprachen.
Genau, dann hatten wir noch das Themengebiet Komplexitätstheorie.
Da gibt es keine Folie mit Modellen,
weil das einfach die DTMs und NTMs als Modelle sind.
Und dann zählt man quasi die Schritte,
die eins dieser Modelle macht,
während es
ein Wort akzeptiert
Oder auch nicht akzeptiert. Und da waren halt die wichtigen Begriffe,
Zeit beschränkt, Platz beschränkt, Zeitbeschränkung, Platzbeschränkung, Komplexitätsklassen,
oder die oberen beiden Punkte sind nicht ganz so wichtig,
der danach ist dann so P und NP, sollte man auf jeden Fall kennen,
Peacepace und NP-Space ist auch nicht so wichtig, aber P und NP,
die sind wichtig und die Begriffe hier unten, Reduktion,
NP vollständig und NP schwierig.
Das andere ist so alles schön zu wissen,
vor allem hier, der Punkt ist noch schön zu wissen,
so Shirt-Touring-These und erweiterte Church-Touring-These, dass man irgendwie weiß,
die Modelle, die die intuitiv berechenbaren Funktionen erfassen,
so nach Church-Touring-These, sind nicht nur alle Äquivalenten,
sondern nach der erweiterten,
die lassen sich auch alle mit Pulimien
Zeitaufwand,
mehr Aufwand miteinander simulieren
Genau, und dann U-Notationen ein bisschen benutzen können,
dass man irgendwie weiß, naja, U von N hoch 3 bedeutet,
wenn da irgendwie, wenn man irgendwie angeben soll,
dass ein Problem in NP ist und man kurz begründen will,
dass die Laufzeitschranke wirklich polyumiell ist,
dann will man halt üblicherweise nicht hinschreiben, guck mal,
das sind nur Endquadrat viele Schritte, sondern man sagt ja,
wie naja, es sind, oh, von Endquadrat viele,
damit man sich eben nicht um die Konstanten kümmern muss.
Aber nochmal, die wichtigen Begriffe hier auf der Folie,
PNP und dann unten Reduktion NPV stinkt NP schwierig,
die sollte man kennen,
die sollte man auch definieren können,
da sollte man irgendwie sagen können,
was da passiert
Und dann die Verfahren, die wir da hatten,
kurze Folie, nachweist das ein Problem in NP ist und nach,
was das ein Problem in NP vollständig ist.
Also gegeben irgendwie eine Sprache, zeigen Sie mal,
dass die ein NP ist, muss man irgendwie einen Algorithmus angeben,
der das Problem im Problemialzeit akzeptiert, der entscheidet.
Und der darf zusätzlich noch nicht die Terminismus benutzen.
Und muss mir irgendwie belegen können, dass der korrekt ist und
dass der diese Laufzeitschranke einhält. Und nachweist das ein Problem,
NP vollständig ist, halt so nach diesem Verfahren,
was wir in den letzten ein, zwei Vorlesungen hatten,
eine Reduktion angeben von einem,
schon als NP vollständig nachgewiesenen Problem auf dieses Neue und zeigen,
dass das Neue tatsächlich in NP ist.
Sonst weiß ich nur,
dass das NP schwierig ist
Jo. Fragen dazu? Komplexität. Und dann da nochmal die Folie,
die hatten wir auch schon mal, was wir so ausgelassen haben.
Hier unten sieht man halt ganz schön, diese Komplexitätsklasse CS
für Kontext sensitiv, die haben wir halt ausgelassen.
Jetzt kann man sehr schön beschreiben, was das ist,
dass es die Komplexitätsklasse, die von dem Automatenmodell erfasst wird,
hier linear beschränkter Automat, das ist das.
Das ist eine Touring-Maschine mit einem Komplexitätsmaß,
wo man sagt, die muss ON beschränkt sein.
Es gibt irgendwie eine konstante C,
sodass ich bei einer Eingabe N nur zehnmal N
viele Schritte machen darf
Und dann bin ich quasi unter diesen Entscheidbaren,
da habe ich halt überhaupt keine Komplexitätsschranken und hier bin ich
in einer ganz bestimmten Komplexitätsklasse, nämlich linear viel Platz.
Und die ist deswegen so speziell, weil man für die auch
einen Grammatiktyp angeben kann, deswegen hat die in ihrer,
hier in der Hierarchie da noch so einen speziellen Platz gefunden.
Und das sind ja die kontextsensitiven Grammatiken, kontextsensitiv,
da wird das Non-Terminal A quasi abhängig von dem Kontext,
in dem es ist, ersetzt und nicht wie bei kontextfreien, unabhängig davon.
Die haben wir, glaube ich,
übersprungen, also sowohl den Grammatiktyp haben wir nicht gemacht,
also den Automatentyp, aber dass ihr das mal gesehen habt,
dass hier auch noch die Type Einsprachen sind.
Ich glaube, ich habe das ab und an mal auf den Folien gehabt,
hier regulär sind Typ 3, CEF-Kontextfreies,
Typ 2 und aufzählbar hier ist Typ 0 und dann ist CS eben Typ 1. Genau,
was haben wir noch ausgelassen?
Hier deterministische Kellerautomaten, die Kellerautomaten,
die wir kurz anskizziert haben, die waren halt nicht deterministisch,
mit dem nicht deterministischen Modell erfasst man ja diese Sprachfamilie, CF-Kontextfrei.
Und wenn man das deterministisch macht,
dann rutscht man da raus, nämlich man ziemlich quer,
aber da fast einiges von regulär, aber nicht alles,
man hat fast einiges von CF, aber nicht alles.
Das hängt da so irgendwie Ben-Diagramm hängt das da so
ein bisschen quer. Genau, das waren die Sachen,
die wir so geskippt haben, die man,
wenn man das jetzt irgendwie in aller Ausführlichkeit behandeln will,
wenn man mehr Zeit hat, dann könnte man da auch überall nochmal einsteigen.
Super. Fragen? Das war der Automatenteil sonst. Dann
habe ich ganz viele Fragen. Ihr könnt ja mal gucken,
wie viele Fragen davon ihr ganz leicht beantworten könnt,
wo ihr irgendwie merkt, so oh,
da hakt es bei mir.
Und da, wo es hakt,
sollte man
nochmal nachlesen
Frage 1. Fängt einfach an. Gegeben der LFA.
Welche Sprache akzeptiert er
1, 2, 3, 4, 5, 6. Genau,
die sechste. 1 bis 4 wären so Paradebeispiele für,
zeigen Sie mal mit dem Pumping,
lernen wir für reguläre Sprachen,
dass die
nicht kontextfrei sind
Bei 1 und 4 kann man sich,
also von der Intuition her,
bei 1 bis 4 kann man sich irgendwie überlegen, oh,
wenn ich diese beiden Zahlen in Zusammenhang setzen muss oder will,
dann muss ich mir irgendwie die eine merken können,
damit ich irgendwie dieses Verhältnis bestimmen kann.
Also wenn ich gucken will,
bei der ersten auf M größer ist als N,
dann muss ich irgendwie wissen, wie viel N ist,
damit ich dann gucken kann, ob M wirklich größer ist.
Das kriege ich ja irgendwie mit so einem DFA nicht hin,
wenn ich mir nur endlich viele Informationen merken kann,
kann ich mir nicht irgendwie für beliebig große N merken,
was das gerade für ein Zahlenwert ist.
Also wird das wohl nicht klappen und mit dem Pampiläm für
reguläre Sprachen kann man die auch gut beweisen.
Genau, so bleibt so fünf und sechs übrig
Und 5 würde noch bedeuten, dass ich auch beispielsweise N-gleich-M
gleich Null, also das leere Wort machen kann.
Das geht dann nicht. Ich muss auf jeden Fall ein
A lesen und ich muss auf jeden Fall ein B lesen,
sonst komme ich nicht in Endzustand.
Also N&M, beide größer als eins.
Also größer gleich eins, Entschuldigung, großer gleich eins.
Und dann irgendwie beliebig viele As gefolgt von beliebig vielen Bs,
also auch nicht gemischt oder so,
sondern beliebig viele As gefolgt von beliebig vielen Bs.
Kriege ich das da irgendwie mit Zahlen hin
Hm. Wieder ein NFA und jetzt bei der Potentautomatenkonstruktion.
Was kommt da raus? Das sechste kann man kaum noch
lesen.
Das sechste ist
Musik 1, 2, 3, 4.
Genau. Wenn ich in Z0, Z1 bin,
und ich lese in B, also die Idee ist ja,
dass ich mir quasi in diesem Zustand des Potenziautomaten merke,
wo der NFA gerade so sein könnte.
Und wenn man jetzt irgendwie, warum auch immer,
in den Zustand Z0, Z1 ist, dann merkt man sich quasi gerade,
dass der NFA entweder in Z0 ist oder Z1.
Und wenn er jetzt ein B liest,
dann guckt man halt, was sind die Nachfolger von Z0,
was sind die Nachfolger von Z1, die schmeißt man zusammen.
Die Nachfolger von Z0, das ist eben Z0,
Nachfolger von Z1, ist Z2, zusammengeschmissen,
ist man in Z0,
Z2,
also der vierte
Was sich dazu stand? Dazu stand allgemein,
was ist allgemein der Staatszustand beim Potenzautomaten? Nicht bei dem
Beispiel, sondern allgemein. Fast. Er hat gesagt,
die Menge mit dem Staatszustand des NFAs, war richtig, ne?
Ist fast richtig? Bitte? Genau. Die Menge mit
denen statt zu ständen des NFAs. Der NFA kann theoretisch
mehrere Startzustände haben und all die packst du in die Menge
, fertig. Und Endzustände sind all die, die,
also Endzustände des Potenzautomaten, sind welche Zustände,
all die,
Mengen die
Genau, da stimmt der Singular mit einem. Da reicht dann einer,
weil man sich dann ja quasi in der Menge gemerkt hat,
wo der NFA überall sein könnte.
Er könnte also in meinem Endzustand sein und
dann wird er akzeptiert
Sowas hatten wir auch manchmal als Klausuraufgabe,
irgendwie einfach so eine Sprache gegeben und dann,
ja, was ist denn der reguläre Ausdruck dazu?
Wobei der schon so
ein bisschen nervt
Hm. Sehr schön finde ich,
dass es null Antworten bei siebtens und achtens gibt.
Das ist, glaube ich, das erste Mal heute.
Gehen wir die mal durch. Fangen wir mal hinten an.
Wer erstens gedrückt hat, kann sich schon vorstellen, warum.
Sechstens ist falsch, weil es ist einer davon.
Jetzt kann man sich überlegen, fünftens, was ist das Problem halt fünftens?
Bei fünftens gibt es nur einen so ein Problem,
aber das, was das Problem hat, oh ne,
bei fünften,
es gibt sogar mehrere Probleme,
Ah ja, bei 50 ist Megaproblem, erzähl mal.
Bitte? Er meint, es kann nicht 2-1 anfangen,
daher höchstens die hinten aus einem Stern, also Wörter,
die nur aus Einsen bestehen, die können mit Eins anfangen.
Aber genau, ansonsten hätte man das Problem,
es kann nicht sowas sein wie irgendwie 1-1,
0-1, irgendwie sowas, ne?
Genau. Sonst so vom Draufgucken hätte ich gesagt,
so dieses Eingeklammerte mit dem Stern brauche ich ja nicht nehmen,
dann habe ich nur das Wort Null.
Auch blöd. Oder noch genauer, wenn man hinguckt,
all die Wörter, die ich da mit dem linken Ausdruck bilde,
die enden alle auf Null.
Also beginnt mit null und dann kommen irgendwie beliebig viele Einsen gefolgt von einer Null.
Also endet das Wort immer auf null, das ist auch
irgendwie doof. Also das will man nicht. Was ist
das Problem bei viertens? Ihr wollt ja L genau beschreiben.
Genau, ne, da schließt viertens und zweitens aus.
Da stehen Sterne hinter der Null. Das ist doof,
weil dann kriege ich ja sowas hin wie 0-0,
0-0-1. Es soll ja über,
es soll ja auf jede Null sofort eine Eins folgen.
Also 0-1 sofort. Nicht irgendwann mal, sondern sofort.
Also da stieß viertens aus, da stieß zweitens aus.
Drittens, was die Mehrheit hat, Warum eigentlich?
Drittens, was die Mehrheit hat. Was ist bei drittens
das Problem? Was kriege ich da nicht hin? Genau,
Wörter könnte ich mit eins anfangen, die gleiche Idee, genau.
Oder auch sowas wie, ich kriege nicht ganz viele Einsen hin.
Also so null, 1-1-1-1
-1, kriege ich auch nicht hin.
Auch doof. Bleibt noch erstens, also erstens oder sechstens,
und erstens trifft es ziemlich gut. Ich kriege irgendwie beliebig viele Einsen vorneweg,
kann auch dadurch, dass das Eingeklammerte auch mit Sternen ist,
kann ich auch nur Einsen haben, das ist super.
So, und jetzt kommt eine Null,
also falls den jetzt irgendwann mal eine Null kommt,
kommen sofort danach wieder Einsen und auch wieder beliebig viele,
aber mindestens eine,
und das kann ich halt wiederholen
Kann ich immer wieder eine Null machen, aber nach der Null
kommt auf jeden Fall wieder eine Eins. Also erstens klappt,
aber der schon, der ist schon ein bisschen doof,
weil auch diese Formulierung folgt sofort eine Eins,
da kann man vielleicht noch interpretieren,
das ist schon so ein bisschen tricky,
aber die erste wäre, die gesuchte, ja.
1111011. War das das Wort? Nö,
du willst ja nur erreichen,
dass auf eine Null sofort eine Eins folgt,
dass danach noch mehr Einsen kommen,
ist ja okay
Bitte? In der hier? Also das Wort 1101,
das ist in der Sprache L drin,
da sind wir uns einig, ja?
110, 11, 1. Genau. Also 11011 ist in L
drin, ne? Okay, da sind wir uns einig,
das ist gut. Und das ist aber auch hier drin,
weil ich das hier hinkriege von dem 1-Stern,
nehme ich mir 2-1. Und hier nehme ich mir jetzt für das Stern,
nehme ich mir einmal einen Ausdruck aus 0-1 plus,
und zwar den Ausdruck 0-1-1. Und
da hast du ja genau 1-1,
0-1-
Passt das. Und wenn du jetzt sagst, irgendwie,
dann kommt vielleicht mal wieder eine Null oder so,
das kriegst du dann auch hin.
Wissensfrage, das geht schnell, ne?
Das ist ins Frankfurt. Naja, Abfrühstücken. Regulär
gegenüber Durchschnitt abgeschlossen,
ja oder nein
Mehr, ne? Ja, wie geht das?
Also wie heißt die Konstruktion, die wir gemacht haben?
Hatten wir dafür eine? Genau. Produktautomatenkonstruktion.
Also sollte man auch machen können, gegeben zwei DFAs,
wenden Sie mal die Produktautomatenkonstruktion an, um den DFA rauszukriegen,
der gerade den Schnitt der beiden Sprachen akzeptiert.
Welche der folgenden Aussagen gilt nach dem Pumpinglemmer?
Also wenn man sich denn so im Setting des Pumpinglemmers befindet
Musik Mervel kann ja schon mal drüber nachdenken, wie man
die falschen Aussagen korrigiert, sodass es richtige Aussagen sind.
Ist das... Die erste ist falsch. Wie korrigiert man
die? Was fehlt da? Die ist fast richtig,
aber nicht richtig. Genau, das I kann auch null sein,
also da müsste hier irgendwie stehen, I größer gleich null.
Nicht echt größer, sondern größer gleich,
weil das Wort UW muss auch in L drin sein
Von der Idee her, wenn man in den Beweis reinguckt,
die Idee war ja, dass das Foul eine Schleife ist,
also dass ich irgendwie mit dem U zu einem Zustand komme,
mit dem V wandere ich irgendwie durch den Automat und komme wieder in
diesen Zustand und mit dem Weg komme ich dann zu dem Endzustand.
Und dieses von dem Zustand irgendwie wieder zu ihm selbst zurückkommt,
das kann ich auch nullmal machen.
Deswegen darf das V auch rausfallen. Bei dem zweiten hier,
UV von der Länge, kleiner gleich N. Nicht echt kleiner,
sondern kleiner gleich. Das dritte ist richtig, weil das
gerade quasi das erste ist mit I größer gleich null.
Hier wird quasi gesagt, uh, V beliebig oft,
auch nullmal und dann weh,
das soll ein Älteren sein
Und beim vierten muss auch nicht echt größer sein als eins,
sondern darf auch gleich eins sein,
muss aber echt größer sein als null.
Also erstens, zweitens und viertens, würde jeweils stimmen,
wenn man statt dem kleiner oder größer eben ein kleiner,
gleich größer gleich macht, dann stimmen die.
Und sonst ist halt der dritte richtig.
Noch eine Frage zum Pumping-Demma. Wie viel Zerlegung muss ich
mir denn angucken? Also Z ist jetzt das Wort,
das man so gewählt hat und dann wie viel Zerlegung muss
ich betrachten und zum Widerspruch führen
Nimmt. Sechstens ist falsch. Und erstens und viertens
, bei erstens und vierten steht jeweils eine Zerlegung.
Das ist auch nicht das, das Pumping, den man sagt,
aus, es gibt eine Zerlegung von Z in UVW mit diesen drei Eigenschaften.
Wenn man das zum Widerspruch führen will, muss man zeigen,
dass es keine Zerlegung von Z gibt mit diesen Eigenschaften,
dass man also alle Zerlegungen zum Widerspruch führen kann.
Also erstens und viertens sind doof. Ich muss nicht eine Zerlegung finden und zum Widerspruch führen,
sondern alle, also zweitens oder drittens könnte es sein,
Und die kann man jetzt tatsächlich auch beide benutzen,
weil zweitens ist es in der Allgemeinheit formuliert,
da sagt man, alle Zerlegung muss ich zum Widerspruch führen.
Das ist richtig. Und das, was man üblicherweise macht,
ist drittens, dass man alle Zerlegungen nimmt,
die die erste und zweite Eigenschaft erfüllen, also UV-Kleine gleich N,
V größer gleich 1. Und dann zeigt man das dann,
UV-Stern W eben nicht in L ist,
also dass man irgendwie so ein i finden kann,
sodass UV-Hoch-IW nicht in Älteren ist.
Also zweitens und drittens sind beide richtig.
Drittens ist das, was man üblicherweise beim Beweisen
dann tut
Die Produktion von kontextreien Grammatiken, wie waren die denn
noch definiert? Das ist schon. VN,
die Non-Terminale, VT, die Terminale und V,
die Vereinigung,
neun Terminale und Terminale
Hm. Die Mehrheit sehe ich knapp so mit zehn Stimmen.
Das ist nicht wirklich überzeugend gerade. Erstens,
erstens wäre so die Definition, die man hätte,
wenn man Grammatiken ganz allgemein definieren will. Dass man sagt,
auf der linken Seite muss mindestens irgendwie ein Non-Terminal stehen.
Aber wie das eingebettet ist, ist egal. Also das,
was man bei erstens auf der linken Seite rausnimmt,
sind ja Wörter, die nur aus Terminalzeichen bestehen.
Also man im V-Stern und nimmt alles raus,
was nur aus Terminalzeichen besteht.
Da bleibt jetzt alles übrig,
was irgendwie mindestens ein Non-Terminal enthält
Zu viel. Wir wollen ja links genau ein Non-Terminal,
rechts was Beliebiges. Bei dem zweiten, da würde ich
von einem Non-Terminal nur noch zu Terminalzeichen ableiten können.
Das heißt, ich würde nach dem ersten Schritt aufhören.
Also von dem Staatssymbol S gehe ich zu einem Wort und mehr
kann ich nicht mehr machen, weil ich ja keine Non-Terminale generiert habe.
Funktioniert also auch nicht. Beim dritten, auch doof,
da habe ich auf der linken Seite gar keine Non-Terminale.
Und viertens, richtig, einen neuen Terminale auf der linken Seite,
auf der rechten Seite was Beliebiges, irgendein Wort,
bestehend aus neuen Terminalen und Herminalen, wie ich möchte.
Und fünftens auch wieder zu kurz, weil ich jetzt halt ein Non-Terminal
nur zu wieder genau einem Non-Terminal oder ein Terminal ableite.
Da wird auch sehr schnell Schluss sein
Bitte meine Frage. Nein. Nein. Frage
hinreichend beantwortet. Welche Sprache generiert die folgende Grawatte?
Kombiniert die beiden Techniken, die wir vorhin hatten
Musik Genau, die dritte hier,
dass man irgendwie von dem X aus erstmal i viele As und i viele Bs generiert und man muss ja von dem X nach AB abbrechen,
also muss man mindestens eins erzeugen, also hat man irgendwie A,
auch ein Bioren erzeugt und mit dem Y erzeugt man dann eben beliebig viele Cs,
aber eben auch mindestens eins, weil man eins zum Abbrechen braucht,
das hat man irgendwie, auch in B-O-N, A,
hoch in B hochenden und dann C-O-M, ne, typische Klausurfrage,
sei L und dann SL eben so definiert, ne,
auch in Bioch in C-O-M geben Sie eine Grammatik an,
die die Sprache generiert und beweisen Sie,
dass sie das auch wirklich tut.
Und dann gibt man eben irgendwie die Grammatik hier an oder was Ähnliches und beweist,
dass die Grammatik tatsächlich das tut, was man erreichen wollte.
Auch eine Wissensfrage. Womit fängt man an? Beim zweiten Schritt der Chomsky-Normalform,
wenn man eine Grammatik reduzieren will,
wenn wir mehr produktiv und erreichbar machen,
mache ich erst produktiv, mache ich erst erreichbar,
ist die Reihenfolge egal,
oder vier oder fünf
Jui. Tendenz zu, es ist egal. Nee,
ist nicht egal. Erreicht was auch nicht gut.
Produktiv ist richtig. Also erst die Produktiven ermitteln und dann
eben streichen und so und dann die erreichbar. Wenn man es andersrum macht,
dann kann man in relativ vielen Fällen eben in diese Ecke laufen,
dass man nachher etwas gebaut hat,
wo plötzlich dann doch wieder nicht erreichbare Dinge drin sind.
Man macht das mit den Erreichbaren, jetzt weiß man,
welche erreichbar sind. Jetzt schmeißt man die nicht produktiven raus
und plötzlich sind wieder welche drin, die wieder nicht erreichbar sind.
Das ist unglücklich, das will man ja gerade nicht.
Also erst das Produktive, dann das Erreichbare.
Und produktiv war eben die Geschichte hinten von den Terminalzeichen losgehen,
also Wörter, die nur aus Terminalzeichen bestehen, die Nonnenterminalermitteln,
die da hingehen. Und dann als nächstes die Non-Terminalermitteln,
die nur zu Terminalzeichen oder den eben ermittelten Non-Terminalen gehen und
immer so weiter. Dann hat man die,
die produktiv sind und erreichbar halt genau andersrum,
vom Startsymbol ausgehen, welche Non-Terminal sehe ich,
dann von denen ausgehen,
welche sehe ich da und
immer so weiter
Ich glaube, jetzt kommen zwei, drei so pure Wissensfragen.
Sind die kontextfreien Sprachen gegenüber Durchschnittsbildung abgeschlossen?
Ja, nein.
Nein ist richtig
Das ist immer so eine kleine Mehrheit gerade auf der falschen Seinigung.
Nein, das ist richtig. Das ist einfach so Wissensfrage,
kann man sich nochmal ein Diagramm aufmalen und kann sich angucken,
so von den gängigen, die wir hatten, den Sprachfamiliendurchschnitt,
Vereinigung, Kompliment, die sollte man so wissen,
regulär gegen alles, kontextfrei, nur gegenüber Vereinigung,
aber nicht Durchschnitt und Kompliment und dann aufzubauen und entscheidbar wieder gegenüber allem.
Also von den eben genannten Dreien. Die sind halt
nicht gegenüber Durchschnittsbildung abgeschlossen. Vielleicht merkt man sich,
dass sie nicht gegenüber Kompliment abgeschlossen sind und dann weiß man,
sie sind gegenüber Vereinigung, aber nicht Kompliment,
dann können sie auch nicht gegenüber Durchschnitt abgeschlossen sein,
sonst kriegt man das ja mit dem Morgen
sofort hin
Oh ja, hier noch mal Pumping Lamber,
diesmal für die, diesmal für die kontextfreien Sprachen.
Wie war denn da das Pumpen definiert?
Da steht jetzt überall I größer gleich null,
aber wo müssen die I sind?
An was darf man
Pump hätten
Vier. Ja, genau. Viertens. Ich darf von
dem V und dem X pumpen und nicht an den anderen.
Im Beweis kann man sich halt angucken, dass das daherkommt,
wie in der Trumpsky Normalform die Non-Terminale generiert werden.
Das ist hier die reguläre Sprache entscheidbar
Genau, ja, ne,
also zu einer regulären Sprache gibt es einen DFA und dann mache ich eine Touring-Maschine,
die den DFA simuliert und wenn der halt zu Ende gelesen hat und in einem Endzustand ist,
dann akzeptiere ich und sonst nicht und dann habe ich eine Touring-Maschine,
die die reguläre Sprache entscheidet.
Das ist jede Kontextfreisprache entscheidbar
Nicht die Regulieren, sondern die Kontextreihen. Und für
die Klausur begründen, warum? Also bei den DFAs,
das, was ich eben gesagt habe,
was würde man hier jetzt so sagen,
so mit dem PDA geht es nicht so schön.
Hatten wir, glaube ich, mal als entweder Übungs- oder Präsenzaufgabe,
eins von beiden, bin ich mir nicht ganz sicher,
bewerten es auf jeden Fall.
Auch ja, nicht mehr ganz so eindeutig,
aber es ist auch ja, Idee ist,
wenn die Sprache kontextfrei ist,
gibt es eine kontextfreie Grammatik dafür.
Dann gibt es
auch einen Schomskinomalform
Und die nehme ich und dann weiß ich,
weil die ja immer die Satzform immer wächst,
monoton wächst, entweder erzeuge ich ein Terminalzeichen,
dann hat sie die gleiche Länge oder ich erzeuge eben zwei Non-Terminalzeichen,
die ich dann ja nicht löschen kann.
Kann ich also alle Produktionen durchgehen bis zu der Länge meines Wortes,
was mich gerade interessiert, von dem ich gerade gucken will,
ob es in der Sprache drin ist oder nicht
. Und dann habe ich einen Algorithmus, der auf jeden Fall
terminiert, weil ich nur endlich viele Sachen ausprobieren muss.
Okay, das skippen wir mal,
das haben wir vorhin schon erzählt,
die aufzählbaren Sprachen gegenüber Durchschnittsbildung
Ja, in dem Fall ist es einfach,
ich führe die einfach beide aus, wenn der eine unendlich lange arbeitet,
weil er nicht Ja sagen will,
dann ist es ja auch egal, dann weiß ich ja,
dass sie nicht beide Ja sagen,
also da kann ich wirklich beide hintereinander ausführen.
Spannender ist bei der Vereinigung, da kann ich nicht
hintereinander ausführen, sondern muss die abwechselnd machen
Genau, es ist entscheidbar,
ich kann dann einfach eine gegebene Probleminstanz von X,
kann ich die mit der Reduktion in eine Probleminstanz von E umwandeln,
da kann ich es entscheiden und dann weiß ich auch die Antwort für die Probleminstanz für X,
das ist ja dann die gleiche,
also habe ich X entschieden und die hier NP oder beide NP,
das weiß ich nicht.
Ich weiß nur,
dass ich die Reduktion in Podiumialzeit hinkriege,
aber E könnte ja zum Beispiel auch irgendwie nur in Exponentialzeit zu berechnen sein oder so,
dann geht zwar die Reduktion schnell,
aber eh zu berechnen geht dann halt nicht schnell oder zu berechnen,
ob das die Probleminstanz in E ist oder nicht und dann kann ich die unteren beiden hier nicht schlussfolgern.
Auch zwei Sprachen und jetzt mit Polimialzeitreduktion und wenn jetzt L1
in NP ist, dann ist auch L2 in NP,
wenn L2 in NP ist,
dann auch L1 und so weiter,
welche davon
Untertitel der Amara.org-Community Genau, zwei und vier sind super,
die anderen sind falsch,
nur weil ich weiß,
dass L1 irgendwie ein P oder NP ist und ich weiß,
dass L2 quasi schwieriger ist oder mindestens so schwer,
weiß ich halt nichts über L2,
kann ich halt nicht schlussfolgern
Kann ich mal schlussfolgern, dass das entscheidbar wäre oder so.
Also A2 könnte sogar unentscheidbar sein. Aber wenn ich eben weiß,
dass L2 in NP ist, dann weiß ich auch,
L1 ist in NP, Polimalzeitreduktion anwenden und dann den NP-Algorithmus.
Oder wenn ich weiß, dass L2 in P ist,
dann weiß ich auch, dass L1 in P ist mit
der gleichen Argumentation.
Ja, super.
Und die letzten zwei
Genau, auch da, LNP nicht möglich,
doch schon, dann fallen die Klassen halt zusammen so,
kann man nicht ausschließen, man vermutet nur sehr,
sehr, sehr stark, dass das nicht sein kann,
eben wegen des zweiten Punktes, wenn L in NPC ist,
also NP vollständig und in P, dann folgt halt sofort,
dass die beiden Klassen gleich sind,
was man nicht so richtig glaubt,
das dritte nicht,
sondern das zweite folgt dann eben
Und viertens ist das ganz doof,
weil in NP vollständig zu sein bedeutet,
dass man unter anderem auch in NP ist,
also viertens stimmt gerade nicht.
Letzte Frage, genau. Machen wir mal
ein Stimmungsbild in 15 Sekunden, ja, nein.
Da geht die Klickgeschwindigkeit nochmal so richtig in die Höhe.
Ist schon schön
Ja. Kann ich beides verstehen. Also den zweiten Punkt kann ich auch verstehen.
Was muss man tun? Eine NP-vollständiges Problem darauf reduzieren und nachweisen,
dass das eigentliche Problem in NP ist,
dann hat man das gemacht. Und bei der Reduktion,
wenn ich jetzt eine Reduktion habe vom NP-vollständigen auf mein neues,
dann muss ich eben zeigen, dass die Reduktion korrekt ist.
Also X ist in L1 genau dann, wenn FOX in A2 ist,
auch irgendwie zwei Richtungen zu zeigen, wegen dem genau dann, wenn.
Und ich muss zeigen, dass die Reduktion im Polymialzeit geht,
die beiden Sachen muss ich machen. Und für die Klausur,
das einmal hier zur Nachbereitung, die ganzen Antworten, Einmal, zweimal.
Und für die Klausur, hier fehlt jetzt oft die Variante,
die ihr irgendwie gegebene Sprache konstruieren sie dazu.
So sind auch so ganz typische Klausuraufgaben. Konstruieren sie einen Automaten,
konstruieren sie eine Grammatik, irgendwie sowas. Und was wir eben auch nicht genau,
das ist immer so sprachlich nochmal so zwischendurch eingebaut habe,
was ihr dann in der Klausur selbst machen solltet,
hier Behauptungen begründen, beweisen so, dass man irgendwie sagt,
naja, die entscheidbaren Sprachen sind gegenüber Durchschnittsbildungen abgeschlossen,
weil, Punkt,
Punkt,
Punkt.
Gut,
Fragen dazu, Automatenteil
Ich habe gesehen, die Zeit wird langsam knapp.
Ich mache mal den, so an ein,
zwei Stellen kann ich vielleicht das ein bisschen beschleunigen hier.
Logikteil, was haben wir da gemacht? Aussagen logisch,
Prädikatenlogik, liegt ja jetzt auch schon wieder drei Wochen zurück.
Was haben wir gemacht in der Aussagenlogik? Sintax, Semantik
, also Sintax, was darf ich schreiben? Semantik,
welche Bedeutung hat das dann, was ich da aufgeschrieben habe?
Und wann ist das wahr, wann ist das falsch?
Dann haben wir aufbauend auf der Semantik Folgebarkeit und Äquivalenz eingeführt.
Das waren dann irgendwie nicht mehr nur,
ob eine Formel war oder falsch ist,
sondern ob quasi auf Metaebene eine Beziehung zwischen zwei Formeln
war oder falsch ist
Normalform, KNFDNF, konjunktive Normalform, disjunktive Normalform.
Und dann ging es halt darum, irgendwie zu einer Formel
möglichst schnell zu ermitteln, ob die Formel erfüllbar ist oder nicht.
Man war ein wie Kornformeln zu nehmen, dass man sagt,
okay, dann gucke ich mir jetzt nicht die ganze Aussage Logik an,
sondern nur ein Teil und eine andere Möglichkeit,
weil dieses Resolutionsverfahren einzuführen.
Und dann haben wir im Grunde genommen genau die gleichen Sachen
in der Prädikatenlogik auch gemacht, bis auf hier sowas wie die Prädikatenlogik einzuschränken.
Sowas haben wir dann halt nicht gemacht, bei der Aussagenlogik,
Einschränkung, Hornformeln, bei der Prädikatenlogik haben wir sowas nicht gemacht.
Gehe ich mal die einzelnen Punkte hier so durch irgendwie,
Sintax,
was haben wir
da gemacht
Definiert, die sind tax und halt diese ganzen Begriffe eingeführt,
Alphabet, Jungtour, Aussagensymbol, atomare Formel, komplexe Formel und so weiter.
Die solltet ihr deswegen können, weil irgendwie,
wenn ihr einen Text schreibt oder irgendwie die Aufgabenstellung leset,
dann kommen da eben diese Begriffe vor,
wie irgendwie Jungtor, Negation des Junktionen, irgendwie sowas.
Das solltet ihr können. Strukturbäume haben wir so ein bisschen exkursartig eingeführt,
um zu illustrieren, wie man mit struktureller Rekursion,
also dem vorletzten Punkt hier Grad und Tiefe von der Formel definieren kann.
Aber also, wenn man sich ein bisschen einschränken will,
dann könnte man die Strukturbäume,
die strukturelle Rekursion und Grad und Tiefe so ein bisschen rausnehmen,
aber eben strukturelle Induktion,
das sollte man
machen können
Ah, wobei, vielleicht, naja,
Grad und Tiefe rausnehmen, ist vielleicht keine so gute Idee,
weil man damit immer gute, gute strukturelle Induktionsaufgaben formulieren kann.
Von daher ist das vielleicht doch ganz gut, wenn man die kann.
Genau, das ist Sintax. Dann haben wir Semantik eingeführt,
irgendwie so eine Belegung zu den atomaren Formeln,
also eine Funktion, die jede atomaren Formel 0 oder 1 zuweist.
Und das kann man dann zu einer Auswertung der Formel
erweitern und dann eben ganze Formeln zu 0 oder 1,
also falsch oder wahr auswerten. Und eine Möglichkeit war dann,
wenn man jetzt ermitteln will, ist eine Formel,
eine Autologie oder eine Kontradition, also immer war,
immer falsch, dann konnte man irgendwie mit diesen Wahrheitstafeln arbeiten,
der Wahrheitswerteverlauf war dann eben die Spalte von der Formel
Erfüllende Belegung, eine Zeile, die die Formel zu eins auswertet,
falsifizierende Belegung, eine, die sie zu null auswertet,
Modell, gerade eine Belegung,
die die Formel erfüllt und dann diese Begriffe Kontingent allgemeingültig unerfüllbar.
Tortulogie, Kontraditionen und so weiter. Und hier diese Notation für A ist eine Belegung,
die F-Wahrmacht, A ist eine Belegung,
die er falsch macht, F wird immer wahrgemacht,
das ist also eine Tautologie oder F wird immer falsch gemacht,
das ist also eine Kontradition.
Und das Symbol ist also deutlich überbelastet,
das gibt es einmal hier für Belegungen,
dann gibt es das hier für sowas wie Tautologie,
Kontradition und dann gibt es das ja auch noch für Folgebarkeit
und Verfolgbarkeit,
nicht für Äquivalenz oder Verfolgbarkeit
Da hatten wir dann eben auch die Definition von Volkerbarkeit und Äquivalenz,
Äquivalenz, Wahrheitswerteverlauf stimmt genau überein. Also F wird wahrgemacht,
genau dann, wenn Gewahr gemacht wird. Und Volkerbarkeit,
alles, was F wahrmacht, muss auch GEMA wahrmachen.
Also jedes Modell für F muss auch Modell für G sein.
Nachweismitwahrheitstafeln, Nachweis ohne Wahrheitstafeln und Gegenbeispiel eben einfach mit und ohne Wahrheitstafeln auch. Typische Aufgaben,
auch der andere irgendwie gegeben, mehrere Formeln,
folgt die jetzt aus der anderen, ja oder nein,
gilt die Äquivalenz, ja oder nein, dass man sowas machen kann,
sehen wir auch gleich noch in den Fragen,
aber so von der Idee ist es, glaube ich,
schon klar
Normalform, DNFK-NF und da nochmal die Begriffe Literalklausel,
duale Klausel. Und auch da wieder so ein Verfahren,
was man irgendwie benutzen können sollte, also gegebene Formel,
stellen Sie mal eine DNF her oder auch die Frage gegebene Formel,
beschreiben Sie mal das Verfahren um, mittels Wahrheitstafeln eine DNF herzustellen.
Wie geht denn das? Welche Zeilen gucke ich mir an
und so weiter, dass man das beschreiben kann?
Also sowohl ausführen können solche Verfahren als auch beschreiben können,
was man denn tun würde. Und genau dann,
wenn man jetzt Normalformen hat, dann trat so in den Vordergrund,
dass man jetzt ein Verfahren haben will,
um Erfüllbarkeit oder eben Unaufführbarkeit zu testen.
Und da haben wir, wie gesagt,
einmal diese Einschränkung gehabt mit den Hornformeln oder eben Resolution
Und bei Hornformeln versteckt sich hier auch wieder mit dem Markierungsalgorithmus ein Verfahren,
also auch wieder eine typische Aufgabe gegebene Hornformel,
wenden Sie mal den Markierungsalgorithmus an oder auch,
wie läuft denn das Verfahren,
auch wieder so ganz zwei typische Sachen.
Genau, und dann noch hier Resolution, spezielles Ableitungsverfeindliche,
nochmal so in Klammern, aber das halt ausführen können.
Inklusive, wenn man möchte, hier diese Verfeinerung,
um sich die Arbeit irgendwie zu erleichtern, Peer-Resolution,
Ende-Resolution, Peer-Resolution, eine der beteiligten Klauseln,
nur positive Literale.
In der Resolution
genauso für negative.
Das war Aussagenlogik
Prädikatenlogik, auch ähnlich, Sintax eingeführt, Semantik eingeführt,
Normalform und dann Resolution. Und Sintax ist eben deutlich aufwendiger,
weil man eben noch hier die Quantoren drin hat und die Variablen,
Funktions- und Präditatensymbole. Das macht es halt deutlich aufwendiger
in der Sintax. Und dann kann man auch da,
wenn man möchte, strukturelle Induktion und strukturelle Rekursion einführen,
haben wir so im Detail nicht mehr gemacht,
aber haben wir, glaube ich, an keiner Stelle wirklich benutzt.
Meine Ersetzbarkeitstheorie haben wir es benutzt, aber sonst haben wir das nicht gemacht.
Genau, denn wenn man die Sintax hat,
darauf aufbaut und die Semantik auch deutlich schwerer als bei der Aussagenlogik,
sollte die auch machen können.
So gegebene Formel und vielleicht die Struktur auch gleich noch gegeben,
zeigen sie mal, ob das jetzt ein Modell ist oder nicht.
Also ob die die Formel wahrmacht oder nicht.
Oder auch gegeben zwei Formeln, widerlegen sie mal, dass die Äquivalent sind.
Dann muss man eben irgendwie eine Struktur angeben,
die die eine Formel wahrmacht und die andere nicht und das eben auch begründen.
Also jetzt sollte man solche Auswertungen hier machen können.
X-Variante sollte euch auch ein Begriff sein für die Auswertung der Quanturen.
Und dann kann man eben Vollgabarkeit und Äquivalenz genauso einführen
wie in der Auslandlogik auch
Genau, und dann Normalformen, auch deutlich umfangreicher,
weil man viel mehr machen kann. Und dann hat man halt welche,
die auf Äquivalenz basieren und welche, die auf Erfüllbarkeits-Äquivalenz basieren.
Und da hattet ihr Äquivalenzen durch Quanturen, genau,
dann hier der wichtige Punkt, gebundene Umbenennung von Variablen,
also dass man nicht die freien Variablen umbenennt, sondern die gebundenen,
dass man statt für alle XP von XE eben,
für alle Y und T von Y schreibt,
und dann Premixform, Quantoren ganz weit nach vorne ziehen.
Und wenn man das macht,
dann hat man eine Formel,
die ist Äquivalent zur ursprünglichen und sieht eigentlich auch schon schön aus,
vorne alle Quanturen,
alle Variablen unterschiedlich benannt
Und dann stört einen aber noch, dass da vielleicht freie Variablen drin sind.
Und wenn man schon in Richtung Resolution denkt, stören dann auch noch die Existenzkonturen.
Und da gab es dann eben diese Geschichten, dass man
freie Variablen binden kann, indem man ganz vorne in Existenzkontur hinschreibt.
Und dass man es coole misieren kann, indem man eben
durch Existenzkonturen gebundene Variablen durch School im Funktionsschool im Konstanten ersetzt.
Das waren da so die Sachen. Und dann konnte man
Clauso Normalform war quasi eine Formel in Preenix-Form,
die schoolemisiert ist und die geschlossen ist, also keine freien Variablen enthält.
Und dann bringt man die Matrix noch auf KNF,
also auf konjunktive Normalform. Und wenn man das alles gemacht hat,
dann kann man mit der Formel endlich losgehen und Resolution damit benutzen.
Und das ist dann hier auch so der letzte,
hier nochmal ein Fettdruck, dass das auch einfach,
dass man das als Wissen mitnimmt, dass die Prädikatenlogik unentscheidbar ist,
also kein Verfahren gibt, dass gegebene Formel entscheiden kann,
ob die erfüllbar ist oder nicht, was man dann aussagen,
du ja so schön machen kann,
in der Prädikatenlogik geht das nicht.
Und dann kann man aber trotzdem dieses Resolutionsverfahren einführen,
das terminiert dann halt nicht zwingend ist, aber immerhin korrekt und vollständig.
Und da hatten wir eben diese wichtige Unterroutine,
den Unifikationsalgorithmus und dann eben die Resolution selbst und diesen Weg hierhin,
den haben wir ja nur so ein bisschen Vogelperspektivartig gemacht,
aber ihr solltet eben den Unifikationsalgorithmus anwenden können und ihr solltet
prädikatlogische Resolution machen können
Der Weg dahinter ist noch nicht so wichtig,
aber dass wir halt zumindest aus der Vorlesung hier aus der Veranstaltung,
die beiden Fettdrucksachen hier mitnehmen, eine Unifikationsalgorithmusresolution.
Genau. Und was wir nicht gemacht haben,
so aus dem Buch von Schöning, Endlichkeitssatz der Aussagen,
Logik, den haben wir jetzt zweimal erwähnt,
aber den haben wir halt nicht bewiesen.
Das ist auch nochmal so eine Seite in dem Buch.
Dann haben wir nicht bewiesen, dass die Prädikaten Week unentscheidbar ist.
Mal kurz so angedeutet, aber nicht richtig gemacht.
Und dann eben diese ganzen Beweise,
die sich quasi hier in diesem Weg zur Resolution da tummeln,
die haben wir halt alle nicht gemacht.
Also Beweise im Rahmen der Herberen Theorie und dass Unifikation und Prädikat
logische Resolution tatsächlich korrekt ist, das haben wir auch nicht gemacht.
Das hätte man noch machen können,
wenn wir mehr Zeit da reinstecken wollen,
aber ich glaube,
das ist auch so
eine Stelle
Wo man in dem zweiten Semester ganz gut noch mal sparen kann.
Fragen? Dann wird ein bisschen knapp. Fragen dazu,
zweite Runde. Ich glaube, die ersten fünf oder so,
die können wir mal skippen, die sind jetzt nicht so wirklich anspruchsvoll.
Die haben wir auch schon mal gesehen. Hauptoperator,
da kann man irgendwie Hauptoperators quasi, der Operator,
der zuletzt angewandt wurde, um zwei Formeln miteinander zu verknüpfen,
um die letztendlich diese Formel rauszukriegen.
Und das ist hier dann irgendwie das Und,
um irgendwie das C und dem linken Teil miteinander zu
verbinden.
Also viertens
Richtige Formulierung der Induktionsannahme, haben wir auch schon mal gesehen,
seinen F&G-Formeln ist doof,
gelte die Behauptung für alle Formeln F&G bei drittens,
ist auch doof, weil ich da nichts beweisen muss.
Denn wenn ich dann zeige, hey,
wenn sie für alle Formeln F&G gilt,
dann gilt sie auch für F&G, naja,
das wusste ich eh schon.
Ich habe ja angenommen, dass sie für alle Formeln gilt.
Also habe ich ja eigentlich nichts zu zeigen. Weil viertens
habe ich auch nichts zu zeigen, wenn ich annehme,
dass sie für alle gilt.
Also hier zweitens ist super, sein F und G-Formeln,
für die die Behauptung gilt.
Das ist die richtige Induktionsannahme
Kennen auch schon. Tautologie, Kontradition und F-Kontingent,
da gehen wir doch mal
rein hier
Genau, ne? Wenn ich, also die Mehrheit hier mit Tortologie
ist super, wenn ich, wenn keine Kontradiktion ist,
dann ist T und K auch eine Kontradiktion, also immer falsch.
Dann habe ich hier eine Implikation, wo vorne immer was
Falsches steht, das wird also immer zu wahr ausgewertet.
Wer möchte, wer sich nicht sicher ist,
kann sich dafür meine Wahrheitstafel machen und dann müsst ihr beim Machen der Wahrheitstafel darauf achten,
dass es quasi eine Zeile, wo T-0 ist,
gibt es gar nicht.
Und eine Zeile, wo K1 ist, gibt es auch nicht.
Das heißt, es gibt nur die zwei Zeilen,
T-1, K0, F-0 und T-1, K0 F-1.
Also die zwei Zeilen gibt es,
T und K immer das Gleiche und F
halt 0 oder
Die dann macht, in werdet ihr feststellen,
T- und K ist immer null und die Implikation ist immer eins,
also ist das insgesamt eine Tautologie.
Also man kann da auch mit Wahrheitstaffel rangehen.
Und das ist so ganz typisch auch als Klausuraufgabe,
dass man so ein bisschen Semantik prüfen kann,
gegeben solche Formeln, was ist das jetzt?
Im Grunde genommen genau das Gleiche,
könnt ihr euch zu Hause nochmal angucken,
auch einfach wieder FK 0 oder 1 sein und dann kam
immer eine Kontralektion und dann kann man halt gucken, was da passiert.
Oh ja. Die zum Gehirnwurm kriegen, folgt FSG,
dann steht in der Wahrheitstafel Genau, die dritte.
Also F folgt aus G, das heißt, jedes Ding,
was Modell für G ist, soll auch Modell für F sein,
also wenn G da eine einstehen hat, muss auch öfter einstehen haben.
Also bei F steht überall eine eins, wo G eine hat.
Sehr unglücklich formuliert als Definition, die schönere ist irgendwie,
F folgt aus G genau dann,
wenn jedes Modell für G auch Modell für F ist.
Oh,
richtig oder falsch
Ja, falsch, ne? Wenn, also auch typische Klausuraufgaben, begründen Sie, ist das richtig oder falsch? Und dann sagt man halt,
ja, das ist falsch, weil eine Belegung,
die A wahr macht, aber B und C falsch,
also habe zu 1 ausgewertet,
B und C werden beide zu null ausgewertet,
macht die linke Seite wahr, A, oder,
das sind wahr, und die rechte Seite macht sie aber falsch,
weil weder A und B, richtig,
hier ist noch A und C,
und dann habe ich eine Belegung,
die die linke Seite warm macht,
die rechte aber falsch,
also kann das nicht
equalent sein
Das geht so in die Richtung von den Fragen,
wo ich vorhin meinte,
entweder ausführen oder es eben irgendwie beschreiben können,
dass man sagt,
geben Sie mal das Verfahren an,
wenn man zu F eine DNF machen will und dann kann
man das entweder mit Equalenzumformung machen oder eben mit Wahrheitstafeln
und was muss man sich da jetzt angucken
Die Spalte von F ist auch noch so grob richtig.
Ich muss mir natürlich zuerst die Spalte von F angucken,
um dann bestimmte Zeilen auszuwählen.
Aber das, was wirklich relevant ist, ist die Zeilen,
in denen F zu 1 ausgewertet wird.
Für so eine Zeile baue ich dann aus den Belegungen der
atomaren Formen, mir so eine duale Klausel.
Und die werden dann ja alle mit oder verknüpft. Das heißt,
die eine Stelle, wo die dann eine Eins hat,
wird dann mit oder verknüpft jeweils mit den anderen Stellen,
wo Einsen stehen und dann bin ich fertig
Ja, genau. Ja, und immer mit korrekter Ausgabe
. Wäre auch ein blödes Verfahren, wenn nicht.
Manchmal hilft die Ausgabe nicht, ist irgendwie doof,
manchmal mit fehlerhafter Ausgabe ist ganz gruselig
Wenn er nicht immer terminiert, naja,
das Resolutionsverfahren terminiert nicht immer, also wir kennen Verfahren,
die nicht immer terminieren, aber das terminiert immer.
Der markiert ja in jedem Schritt entweder neue Aussagesymbole oder er
hört eben auf zu markieren, dann kann ich auch aufhören.
Man gilt, das G folgt aus F,
genau dann,
Aber die, wie heißt das nicht, die absolute Mehrheit,
sondern die relative, die relative Mehrheit siegt hier mit dem Nicht-G&F.
Also Geh folgt aus F, genau dann, wenn,
jetzt kann ich das F nach rechts ziehen,
F impliziert gehen, eine Tautologie ist,
F impliziert geh, und F impliziert geh,
kann ich ja auflösen zu Nicht-F oder G. Soll dann also auch eine Tautologie sein.
Und wenn ich das negiere, dann muss eine Kontradiktion sein.
Und nicht F oder G, negiert es F und Nicht-G,
also der Teil hier F und Nicht-G, der sechste.
Der ist gut. Das würde ich auf Unerfüllbarkeit testen.
Genau, hier der vierte klappt fast,
da ist das nicht irgendwie an die falsche Stelle gerückt.
Die anderen sind tatsächlich alle falsch, also nur sechstens ist richtig.
Kann man sich mal überlegen, warum die anderen alle
falsch sind
Was man da immer als Gegenbeispiel angeben könnte. So,
jetzt nehmen wir uns den Bereich,
jetzt kommen gleich die letzte zur Aussagenlogik und dann kommen die Prädikatenlogikaufgaben,
wo es dann auch kniffliger noch wird.
Wie sieht die Resolvente aus
Sehr gut, so muss das. AC, nicht die... Super,
ich streiche das B und das Nicht-B raus,
das habe ich reserviert und dann bleibt ACC nicht
die übrig und weil es eine Menge ist,
brauche ich das Zähler nicht zweimal hinschreiben.
So, jetzt wird es doppelt fies,
jetzt kommen die Prädikaten logischen Aufgaben und wir haben nicht mehr
viel Zeit
Da könnt ihr gleich gucken,
ob ihr die für die Klausur relevanten Fähigkeiten habt,
ja, die Frage richtig zu beantworten,
ohne die Aufgabenstellung komplett gelesen zu haben.
Warte, ich weiß es gerade selbst nicht.
Viertens sieht gut aus. Oh, vier, uh,
uh. Hart, hartes Brot. Viertens und fünftens
ist es auch noch gut, ne?
Ne, war der viertens sieht gar nicht gut aus.
Fünften sieht gut aus. Sehr gut. Gut. Uff
. Ist ja fast noch die Mehrheit so, ne?
Ne, wenn ich das hier auswerte,
ich muss das Tupel auswerten und muss gucken,
ob das in I von P drin ist.
Also irgendwie drittens, viertens, fünftens
könnten es
noch sein
Und bei drittens habe ich das A irgendwie überhaupt nicht ausgewertet,
habe es stehen lassen. Und bei viertens und fünftens,
die sehen beide ganz gut aus. Bei viertens ist das Problem,
i von X würde jetzt die Interpretation von A nehmen,
um zu gucken, was mit der Variable X passiert.
Das will ich aber gerade nicht machen, sondern ich benutze
ja die X-Struktur, die X gerade auf D abbildet.
Und wenn ich die auf X anwende, dann steht hier
in die. Also was man hätte machen können,
wäre hier bei viertens hin zu schreiben,
i und dann unten da noch so ein X nach D,
dann wäre das auch richtig gewesen.
Aber so stimmt fünftens. Fünftens halt einziges tatsächlich
Noch ein bisschen schwieriger
Ja, ganz knapp, die vierte, ne,
die vierte ist auch noch, also es ist auch hässlich geschrieben,
zugegeben, aber die klappt, ne.
Normalerweise würde man den Allkonto wegkriegen, indem man jetzt so eine X-Struktur da hat,
also A von A mit X nach Nie unten oder sowas.
Und dann hätte man hier geschrieben,
für alle DNU muss I von F,
also die Interpretation von F,
die muss dann eben die irgendwo hin abbilden und das Element,
was da rauskommt, das muss in I von Kuh drin sein, ne.
Das ist hier mit X-Element U, ist das blöd geschrieben,
weil man da oben ja X schon als Variable benutzt hat.
Streng genommen kann man das machen, ist nur potthässlich,
ne. Also schöner wäre da hinzuschreiben für alle DNU und
dann okay, dann klappt die. Die zweite,
die auch so viele haben, die klappt nicht,
weil hier mit F weiterhin nur das Funktionssymbol habe.
Und ich brauchte aber iFond F. F ist ein Funktionssymbol und
ich will da jetzt aber die Funktion haben,
die kriege ich nur mit iFond F. Gebundene Umbenennung,
was passiert
Genau,
also das für alle X bezieht sich nur auf das P von X,
sonst hätte ich das so klammern müssen, für alle X,
Klammer auf, P von X oder Q von X,
Klammer zu, bezieht sich also nur da drauf,
gebundene Umbenennung, deswegen heißt es gebundene Umbenennung,
ich kann nur die Gebundenen umbenennen, nicht die anderen,
also ich kann nicht hier das Kuh von X irgendwie einen Kuh von Z machen oder so,
also kann ich nur den umbenennen,
hinten muss auf jeden Fall Kuh von X stehen bleiben,
das schließt schon alle anderen außer den dritten aus und dann kann man nochmal gucken,
für alle YP von Y statt für alle XP von X ist super,
das kann man machen,
also drittens ist richtig
Das ist auch ein bisschen fies, jetzt in 30 Sekunden,
aber man kann es relativ schnell mit Ausschlussverfahren machen, wenn man möchte.
Dann sieht man es eigentlich sehr schnell. Eines tatsächlich richtig
, deswegen Juhu. Noch die knappe Mehrheit dabei fünftens.
Im Grunde genommen kann man das ganz schnell machen,
man guckt sich die Formel an und sagt, alles klar,
ich soll das freie Y binden, dann kommt er,
ist existiert Y und Quanto ganz nach vorne.
Habe ich ja mehrfach betont, ganz nach vorne so,
das hier ist das einzige ganz nach vorne.
Alles andere ist nicht ganz vorne, das ist ganz vorne.
Also einfach die Formel, man könnte auch einfach hinschreiben,
es existiert Y F. Fertig, nö, nennt man das auch.
Aber das ist halt ganz nach vorne. Die anderen sind
nicht ganz vorne. Oh, das ist hart.
Das sind, in 30 Sekunden ist das hart
Genau. Der erste klappt nicht, weil ich hier das,
wenn ich den Allkonto einfach über das nicht drüber ziehe und
da nichts mache, das ist blöd.
Der zweite funktioniert, einfach den Quantoeimer geflippt, das ist super. Drittens,
klappt auch, da habe ich auch einmal hier den Quanto rübergezogen,
also habe ich quasi das Gleiche gemacht wie hier und dann
ist der existiert Y noch weiter nach vorne gezogen.
Also zwei und drei sind beide gut. Vier klappt nicht,
weil man wieder hier so ein Existenzkonto hat und fünftens,
wer streng genommen sogar auch noch richtig,
ja, wir strengen auch noch richtig,
weil sich das X und Y,
die sind halt,
bedingen sich
quasi nicht
Und dann könnte man da sogar die Quantoren drehen,
müsste man da in dem Fall aber dann speziell zeigen,
weil normalerweise kann man nicht einfach, wenn ich über drittens gucke,
wenn die Quantoren in der Reihenfolge sind,
die nicht einfach austauschen, unterschiedliche Quantoren nicht austauschen.
Also zweitens und drittens ist richtig,
fünftens sogar auch müsste man aber explizit zeigen.
Das ist keine Regelfirmen, das zu machen. Schoole Misierung,
in der Klausur müsste es dann selbst machen,
in der Klausur ist ja irgendwie die Formel F
da gegeben und dann wird gesagt,
machen Sie mal die Schoole Misierung und dann muss man halt
da irgendwie die richtige angeben
Musik Keine Ahnung. Wenn man drauf guckt,
sieht man relativ schnell der Sinn,
dass coole Misierung ist ja die Existenzkonturen wegzukriegen.
Also erstens und zweitens fliegt gleich raus. Fünftens fliegt er
auch gleich raus, weil da die Eilquanturen auch weg sind.
Also 1, 2, 5 ist irgendwie Unsinn.
Bleibt noch 3 und 4 übrig. Wenn man hier guckt,
bei viertens, da wurde irgendwie aus dem U ein A.
Und man liest die halt nicht von rechts nach links und er setzt dann,
sondern man setzt sie von links nach rechts untersetzt dann.
Und dann muss man das Y eben durch eine Funktion ersetzen,
die X als Argument hat.
Das ist hier passiert. Y wurde wohl durch F und
X ersetzt. Und das U dann durch eine Funktion,
die X und Z als Argument hat,
also hier das dritte
Das vierte würde quasi rauskommen,
wenn man die Quantoren von rechts nach links liest.
Man liest immer von links nach rechts.
Und die letzten zwei
Genau. Nee, ne? Wenn ich die unifizieren will,
dann nehmen wir mal an, am Anfang mache ich
hier noch aus dem X&Y oder aus dem YX.
Auf jeden Fall steht dann hier PXPXPF von X oder halt PYPY,
PMF von Y und dann muss ich halt P von Y und PF von Y unifizieren.
Und das klappt nicht, weil das Y eben in F von Y auftritt.
Also das ist diese eine Abbruchbedingung bei dem Unifikationsalgorithmus,
dass das nicht klappt. Letzte Frage, sind die hier
reservierbar? Zur Lehrenklausel sogar, nicht einfach irgendwie,
sondern zur Lehrenklausel
Ja, nein,
da sieht die Mitte da so mit dem Ja,
der erste Schritt ist immer,
dass man die Variablen umbenennt,
damit sie eben nicht gleich benannt sind in den Klausel,
dass ich also hier beispielsweise aus dem X eine U mache,
da habe ich auf der einen Seite P von Y und
P von F von X und auf der anderen Seite
nicht P von
Wenn ich die drei dann versuche zu unifizieren, das klappt,
dann setze ich Y durch F von X auf der linken Seite und auf der rechten,
das U durch F von X und dann habe ich halt
links P von F von X und rechts nicht P von F von X,
ja genau, unifizieren, resolvier, Entschuldigung,
und fertig.
Also das klappt mit dem Unifikator Y nach F von X
und X nach, erfunden, nix.
Da klappt es. Aber das Wichtige ist eben,
dass dieses X jetzt nicht hier,
wenn ich hier P von XP F von X hätte,
in einer Klausel,
dann wird es wieder nicht klappen,
weil ich die
dann nicht unifizieren kann
Super, dann sind wir auch fast fertig.
Haltet die Clicker nochmal fest, Nachbereitung, zack,
zack, dann auch da nochmal die Anmerkung,
das wird meistens nötig sein, dass sie diese Behauptung begründet und beweist.
Und jetzt noch ganz kurz der Ausblick zur Werbung und dann
noch zwei Sachen zur Klausur.
Werbung, die Maria Klumgelsdorf hatte mich gebeten,
nochmal Werbung für ihren Cockkurs zu machen. Cock ist ein Theorienbeweiser,
mit dem man mathematisches Argumentieren üben kann und vor allem
dann später in größeren Kontexten benutzen kann,
also auch so ein Verifikationskontext oder allgemein im mathematischen Kontext
Und genau, dieser Kurs ist,
die Zielgruppe ist sowohl Leute, die jetzt sagen so,
boah, ich hatte mit diesem mathematischen Argumentieren irgendwie Probleme,
denen soll eben geholfen werden,
dass sie quasi mit diesem Tool einen besseren Zugang dazu finden,
dass die eine Zielgruppe und die andere Zielgruppe ist tatsächlich Leute,
die sagen, ich hatte damit überhaupt keine Probleme,
ich kann damit recht gut umgehen,
die können dann eben in dem Kurs dieses Tool kennenlernen und kennenlernen,
wie man damit eben schwierige mathematische Sachverhalte unter Umständen
eben angehen kann
Haben eben auch dadurch einen schönen Einblick mal in ein aktuelles Forschungsgebiet,
weil quasi an diesen Theorienbeweisern aktuell ziemlich stark gearbeitet wird.
Und dann kann man da relativ früh in seinem Studium halt schon mal reinschnuppern.
Wenn ihr noch mal nachfragen wollt, hier Maria ist Ansprechpartner und
Sebastian Bühne von der Uni Potsdam, die machen das zusammen.
Maria hat hier ganz normal unsere E-Mail, ne?
Informatik.uni Hamburg.de und da sind die Tage, ich hatte mal geguckt,
ich glaube, der achte ist ein Samstag,
aber das waren die Tage, die sie mir geschickt haben.
Also wenn ihr das noch mal im KVV nachguckt,
ich glaube, das ist so gedacht,
dass am Samstag da dann auch was ist,
dass man sich einfach die zehn Tage komplett frei hält dann und es gibt
drei Credits dafür und am Ende gibt es eine Klausur,
die man quasi am Rechner macht,
während man eben mit diesem Cocktool arbeitet
Da wollte ich einmal Werbung für machen und dann eben,
es wird quasi einmalig angeboten. Also vielleicht verstetigt sich das,
aber jetzt wird es erstmal nur einmalig angeboten.
Also wenn ihr da Interesse daran habt, solltet ihr das wählen,
diesen Oktober. Und das hier sind die Veranstaltungen,
für die ich nochmal so Werbung machen wollte, jetzt so nach FG1,
wo benutzt man das, jetzt dieses mathematische Argumentieren,
Algorithmen und Datenstrukturen, so eine ganz typische Vorlesung,
wo man dann eben zeigt, dass Algorithmen korrekt sind und so.
Algorithmik später im Master für deutlich komplexere Algorithmen und ja,
FG2 kann man auch nächstes Semester wählen.
Klingt so von der Durchnummerierung, als würde es jetzt linear weitergehen, ist aber im Grunde genommen eigenes Themengebiet. Also man kann gut dieses Wissen über Automaten und so irgendwie im Hinterkopf behalten,
aber da geht es eben um Nebenläufigkeitsaspekte, so Parallelität,
Nebenläufigkeit, was gibt es da für Modelle,
wie kann ich sicherstellen, dass irgendwie nebenläufige Programme tatsächlich korrekt arbeiten,
wie kann ich mich mit anderen gut über sowas unterhalten,
so welche Modelle habe ich da,
dass da so die Zielsetzung und ansonsten könnt ihr,
wenn das KVV raus ist im, ich glaube August oder September,
mal gucken, was bei der neuen Arbeitsgruppe Algo,
das ist quasi dann die Fortsetzung Umwandlung der Theoriearbeitsgruppe,
also die neue Professorin für Theorie ist dann jetzt da,
die Frau Beerenbrink und ihre Arbeitsgruppe wird es eben sehr stark um Algorithmik gehen und da könnt ihr mal gucken,
was die jetzt so nächstes Semester so an pro-seminaren Seminaren und so die bieten,
die übernimmt dann quasi meine Vertretungsprofessur dann jetzt endlich in richtiger Besetzung und ab sofort hat Hamburg dann auch wieder eine richtige Theorieprofessur.
Nicht mehr nur in Vertreten, sondern so richtig, richtig.
Genau. Das zur Werbung, letzte zwei Fragen,
Schwierigkeit im Automatenteil, einmal für mich zum Klausur konzipieren.
Was fiel euch denn am schwersten, schwierigsten,
ihr wisst schon
Und ich schreibe euch, okay. Und das ist ja
gerade sehr ausgeglichen. Was fiel euch denn am zweitschwierigsten?
Ohne Scheibe, okay. Schwierigstens, ich habe mal gekippt
. Weniger teilt,
schnell klicken
Okay, ignorieren wir mal. Achtens, weil das war
am schwierigsten. Palmenblemer für Kontext, frei und NP-Vorständigkeit.
Und okay, und drittens, ne? Okay,
drei, fünf, acht, neun, alles klar.
Und die gleiche Frage für den Logikteil.
Quasi. Auch so mit erstens und zweitens gleich
Strukturelle Industrie und Petika. Ja, okay. Ich glaube,
da lohnt sich das nicht zu fragen, was am zweitschwierigsten war. Dann kriege ich die,
dann hüpfen die da alle zwischen 1,7 und 9. Okay,
das soll nicht heißen,
dass die Sachen gar nicht in der Klausur drankommen,
aber das hilft mir halt beim Klausurentwurf irgendwie darauf zu achten,
dass die quasi nicht überhand nehmen oder dass man die Fragen möglichst genau formuliert und sowas.
Also die Sachen kommen schon alle mehr oder weniger dran,
aber hilft mir dann ein bisschen meinem Klausurentwurf.
Letzte, letzten zwei Folien zur Klausurvorbereitung. Die Klausur ist am 6.08.
die erste und die zweite am 18.09., glaube ich,
oder 19.09. oder so, also den Montag da, zum Wiederholen.
Nutzt Skript und Bücher. Ihr könnt auch gerne
die Folien nochmal benutzen. Wenn ihr die Folien benutzt,
vielleicht am besten nochmal das Lecture to Go nebenher laufen lassen,
weil Folien ja üblicherweise, auch wenn man das gerne soll,
Studie benutzt.
So eine Folien sind meistens nicht so hundertprozentig aussagekräftig.
Auf einer Folie kann auch mal was Falsches stehen,
weil der Vortrag ja dann vorne stand und die ganze Zeit erzählt hat,
warum das falsch ist.
Das ist irgendwie so als Extrembeispiel nicht so cool.
Also benutzt lieber Skript und Bücher
Und vor allem hier rechnet viele Aufgaben. Die klausurtypischen Aufgaben sind online.
So ähnlich werden auch die Klausuraufgaben aussehen. Und genau,
Aufgabenzettel könnt ihr auch gerne nochmal durchrechnen und so. Das hilft auch,
aber etliche von den Aufgaben auf den Aufgabenzetteln sind halt so konzipiert,
dass man weiß, hey, da hat man ja eigentlich ein,
zwei, drei Stunden für, um da mal eine Aufgabe zu machen,
während man bei den klausurtypischen halt weiß, okay,
die sollten halt schnell gehen.
Da sollte so irgendwie, das sollte dann jeweils in fünf
bis zehn Minuten irgendwie gehen, wenn man dann nachher richtig vorbereitet ist.
Jetzt sollte das, kann das gerne länger dauern,
aber wenn ihr richtig vorbereitet seid, sollte das eben schnell gehen.
Genau. Das dazu Ich will bei dem Skript noch diesen Skript teilschreiben zu NP Vollständigkeit,
dass sie den dann auch noch irgendwie hoffentlich Ende der Woche habt,
zum Klausur vorbereiten.
Das kommt noch. Und ich schreibe noch mal was rum wegen
so einem Angebot von uns, ein bisschen was zu Repetitoriumsartiges zu machen,
in der Woche vor der Klausur.
Da schreibe ich morgen noch mal eine E-Mail,
da muss ich noch mal gucken, wie das mit Räumen und so geht.
Genau. Und habt ihr noch Fragen? Wie viele Aufgaben
steht auch auf den Klausurtypischen drauf? So grob zehn,
fünf pro Aufgaben teil oder das Ex-Proaufgabenteil sind zwölf,
so je nachdem,
so was zu grob
Was ist das? Wahrscheinlich ja. Also schreibe ich morgen nochmal was rum,
wie wir das so machen mit diesem Reputurungsartigen,
aber wahrscheinlich das plus nochmal so ein irgendwie vierstündiges,
wo man dann doch in so einem Plenum ist, irgendwie sowas.
Sonst noch? Erstens, zweitens, drittens, okay,
dann morgen fällt aus, wir sind durch mit dem Stoff.
Und genau, das war meine allerletzte Vorlesung,
da ich ja jetzt die Uni dann verlasse.
Und ja, ihr kriegt ja die Frau,
Frau Bier umbringt, die wird euch bestimmt auch eine Menge Freude
bereiten dann in der Algorithmenvorlesung nächstes Semester.
Und es ist auch schön, mal wieder jemanden zu haben,
der wirklich die Stelle besetzt und
nicht nur so in Vertretung
sie vertritt
Super. Dann danke für die 14 Wochen und viel Spaß
beim Lernen und wir sehen uns ja wahrscheinlich noch in
den Repertorien und so und dann
sind wir fertig