So. So, wollt ihr anfangen?
Habt ihr euch alle so einen Clicker geholt am Eingang?
Mach mal per Handzeichen, wer hat keinen Clicker?
Ja, das kriegen wir gleich noch hin,
das ist noch übersichtlich
Vorlesung, formale Grundlagen der Informatik 1, FG1, für Informatikstudenten.
Zisla, Wirtschaftsinformatiker bei Wahlbereich, glaube ich. Wer jetzt denkt,
oh Gott, hier soll ich gar nicht sitzen.
Jetzt ist noch eine Möglichkeit, schnell wegzulaufen. Ich bin
Frank Heilmann vom Arbeitsbereich TGI und ich mache den ersten Teil der Vorlesung.
Den zweiten Teil macht Christopher Habel von BSV.
Und ich fange erstmal an mit zehn total langweiligen Organisationsfolien,
wie das Ganze so aufgebaut ist und was auch die nächsten
sechs Monate,
sechs Wochen erwartet
Also, Montag, Dienstag machen wir Vorlesung. Montag von 12 bis 14
Uhr hier, Dienstag von 8 bis 10 Uhr hier.
Dienstag bis Freitag gibt es immer neue Übungs, gibt es
immer die Übungsgruppen. Da kriegt ihr einen neuen Aufgabenzettel,
da solltet ihr die Präsenzaufgaben bearbeiten und ihr gebt die bearbeiteten Übungsaufgaben
ab und ihr kriegt die Übungs, die Korrekturen der Vorvorvorvorwoche zurück.
Sage ich auch gleich immer nochmal was im Detail zu,
nur das ist ja immer so ein Überblick habt, wie das aussieht.
Dann gibt es Mittwoch immer einen neuen Lesestoff, das soll dazu dienen,
dass ihr euch gut auf die Vorlesung vorbereiten könnt.
Da sage ich auch gleich noch was zu
Und Freitags stelle ich immer jede Menge neue PDFs ins Netz.
Da ist dann immer so der neue Aufgabenzettel,
die Präsenzlösung der aktuellen Woche und die Musterlösung der Vor-vor-Woche.
Im Detail, Vorlesung habe ich ja schon gesagt,
Montag 12 bis 14, Dienstag 8 bis 10 hier.
Die Vorlesung wird aufgezeichnet nach hinten. Es gibt einen Livestream
im Netz und danach ist sie dann bei Lecture to go.
Also wenn ihr mal nicht kommen könnt, könnt ihr das
da gucken. Und die Vorlesung hat zwei Teile.
Das eine ist Automatentheorie von mir und das andere ist Logik
von Christopher Habel
Zum Lesestoff? Ihr seid alle unruhig geworden bei Livestreamen.
Nur um das zu konkretisieren, ich werde aufgenommen,
ihr habt das Glück, dass ihr noch nicht aufgenommen werdet.
Ich weiß noch nicht so genau, wie ich das gut finde.
Aber ich habe ein paar Leuten gesagt, dass es diesen Livestream gibt.
Also falls er zuguckt, hallo Papa, hallo Mama,
hallo Brüderchen. Lesestoff. Der Lesestoff soll dazu dienen,
dass ihr euch gut auf die Vorlesung vorbereiten könnt.
Wir haben das letztes Jahr ausprobiert und das hat Hat einen positiven und negativen Aspekt,
den positiven, der positive Aspekt war,
dass sich tatsächlich Leute vorher schon ein bisschen mit dem Stoff beschäftigt hatten,
was insbesondere die Übungsgruppen angenehmer gemacht hat.
Der Nachteil war, dass der Lesestoff viel zu umfangreich war.
Deswegen habe ich den neu geschrieben, weil letztes Jahr
hatten wir einfach immer nur Teile aus dem Skript genommen.
Ich habe den jetzt neu geschrieben und der Sinn des Lesestoffs
ist immer das Modell der jeweiligen Woche informal einzuführen.
Also dass ihr irgendwie relativ entspannt vier Seiten Text lesen könnt
und dann irgendwie wisst, ah ja, okay,
das ist so generell das Modell in der Woche.
Darum soll es gehen
Auf Seite 5 gibt es dann so eine so,
ich habe das immer mathematische Seite genannt, da steht das,
was auf den vorherigen vier Seiten informal eingeführt wurde,
noch mal in mathematischen Definitionen.
Das könnt ihr skippen beim ersten Lesen oder wenn ihr eben sagt,
hey, ich studiere sowieso Mathematik oder ich bin mathematisch versiert oder interessiert,
dann kann man das vielleicht auch schon gut lesen.
Ansonsten ist die Seite relativ schnell und ziemlich kompakt so.
Deswegen gerade jetzt beim ersten Lesestoff war es eben nicht
die Aufgabe, das schon zu lesen und zu verstehen.
Und die ersten vier Seiten enden immer mit so einem kleinen Selbsttest.
Da stehen einfach so ein paar Fragen irgendwie zu dem Lesestoff.
Soll so ein bisschen zum Nachdenken anregen und auf der
sechsten Seite sind dann eben die Lösungen dazu.
Oder Lösungsvorschläge dazu
Ja. Das dazu,
jetzt als Anmerkung der Lesestoffe und die aktuellen Übungszettel beziehungsweise Übungsgruppen,
die passen halt nicht genau zusammen,
weil die beispielsweise in dieser Woche werden wir jetzt irgendwie in den Übungsgruppen den Stoff von heute behandeln.
Der Lesestoff, den ich morgen dann irgendwie online stelle,
der ist aber als Vorbereitung für die nächste Woche gedacht.
Also müsst ihr euch irgendwie ein bisschen organisieren. Die meisten werden
wahrscheinlich irgendwie am Wochenende die Übungszettel machen oder so und dann müsst ihr ein bisschen gucken,
dass ihr irgendwie trotzdem am, keine Ahnung, Samstag,
Sonntag nochmal Zeit habt, auf den Lesestoff drauf zu gucken.
Übung, in den Übungen verteilen wir den neuen Aufgabenzettel.
Den gibt es aber auch schon irgendwie am Freitag immer online.
Also wir sind jetzt vorher ansehen möchte, kann das gerne tun.
Sonst bringen wir den auch immer in genügender Zahl in die
Übungsgruppen mit
Dann, in den Übungen wollen wir primär die Präsenzaufgaben behandeln.
Und wir haben uns, wir haben so
die letzten Jahre mit so einem Rotationssystem experimentiert.
Das will ich einmal kurz erläutern. Das funktioniert so,
ihr kriegt also, nehmen wir mal, ihr kriegt zwei Präsenzaufgaben.
Dann fangt ihr mit der ersten Aufgabe an.
Am Anfang teilt der Übungsgruppenleiter euch irgendwie in Dreiergruppen ein.
Und dann habt ihr irgendwie so zehn Minuten,
um ein bisschen an der Aufgabe zu arbeiten.
Dann arbeitet ihr da dran. Der Übungsgruppenleiter geht ein bisschen
rum und hilft euch. Und dann nach so circa zehn
Minuten gibt es eine kurze Pause und dann geht irgendwie aus
jeder Dreiergruppe einer im Uhrzeigersinn weiter und aus jeder Dreiergruppe einer entgegen des Uhrzeigersinns weiter.
Dadurch mischen sich die Gruppen so ein bisschen.
Das führt immer auch dazu, die einzelnen Dreiergruppen sind irgendwie
auf einem unterschiedlichen Stand. Jetzt kommt zu dieser Rotation,
jetzt müssen die Leute sich irgendwie auf den gleichen Stand bringen.
Sprich, sie müssen sich miteinander unterhalten und irgendwie über
den Stoff reden
Das mit dieser Rotation machen wir zweimal, dann sind so circa 30 Minuten um.
Und dann wird nochmal im Plenum die Präsenzaufgabe besprochen.
Und dann machen wir das Ganze nochmal mit der zweiten Aufgabe
und dann sind die 90 Minuten auch schon rum.
Ja. Und letztes Semester war das so,
da haben wir das Bethy 2 ausprobiert, da war das so,
dass am Anfang ein bisschen skeptisch vorherrschte, so irgendwie so,
hm, ich muss mit Leuten zusammenarbeiten,
die ich nicht kenne.
Und am Ende fanden das eigentlich eine Menge Leute ziemlich gut,
insbesondere auch, weil sie irgendwie tatsächlich mal alle Leute aus der Übungsgruppe kennen.
So, weil wir mit allen mal zusammengearbeitet hat,
man kennt die alle
Und wenn du mal irgendwie im Laufe der Übungsgruppe
in so einer Dreiergruppe seid, wo ihr denkt,
mein Gott, was für Pappnasen oder so, naja,
nach zehn Minuten ist Rotation, dann seid ihr da wieder raus.
Ja, und am Ende der Übungsgruppe gebt ihr dann immer
die Lösung der Übungsaufgaben der Vorwoche ab und ihr kriegt eben die Korrekturen von der Vorwoche zurück.
Dann wird es ein Tutorium geben, das macht Niklas Stehenfahrt,
Freitag 16 bis 18 Uhr in B201. In dem Tutorium werden,
weil wir in den Übungsaufgaben nicht die Musterlösung,
weil wir in den Übungsaufgaben nicht die Musterlösung zu den Übungsaufgaben sprechen,
wird das im Tutorium gemacht, für die, die wollen.
Ihr kriegt eine hoffentlich sehr ausführliche Musterlösung von mir immer zu den Übungsaufgaben.
Wenn euch die genügt, ist alles super. Wenn ihr
irgendwie sagt, hey, ich habe sowieso die volle Punktzahl,
dann ist auch egal. Wenn ihr seid irgendwie so,
komisch, den Aspekt habe ich irgendwie nicht verstanden oder so,
dann könnt ihr ins Tutorium gehen, da werden die Übungen dann nochmal besprochen.
Und das dient eben zur Klausurvorbereitung. Was ich nicht machen wollte,
um das einmal explizit zu erwähnen,
ist quasi ein Tutorium in der Woche für den aktuellen Übungszettel,
weil das eigentlich so sein soll,
ihr solltet eigentlich die vier Stunden Vorlesung haben und dann eben in der Übungsgruppe irgendwie die Präsenzaufgaben bearbeiten.
Und das sollte genügen, um euch eben auf den Übungszettel vorzubereiten. Wenn man noch ein Tutorium anbietet,
dann Also meiner Erfahrung nach war das relativ häufig so,
dass man entweder aus dieser 4- plus-2-Veranstaltung plötzlich eine 6 plus-2-Veranstaltung macht,
das ist nicht Sinn der Sache, oder es führt dazu,
dass ein Teil, der hat gerade der Teil der Leute,
für die das eigentlich nicht gut ist,
nur noch zum Tutorium geht und dann eben nur noch auf die Übungszettel vorbereitet ist oder auf das ganze Drumherum nicht mehr.
Das führt meist dazu, dass man das zwei bis drei
Wochen nicht mehr weiß, was so passiert,
weil man eben nur noch die Aufgaben lösen kann.
Und das ist alles nicht Sinn der Sache. Wie gesagt,
ihr habt ja auch die Präsenzaufgaben, um euch eben gut auf die Übungsaufgaben vorzubereiten.
Falls wir nach zwei Wochen irgendwie merken, oh,
das funktioniert gar nicht oder so, 100 Leute schwimmen,
dann können wir auch noch mal im Semester irgendwie Tutorium einrichten,
aber im Moment würde ich das mal so versuchen und ich
denke auch,
dass das klappt
Genau, das Tutorium, also eher zum Nachbesprechen.
Und dann eben ist das gut zur Klausurvorbereitung. Dann wird es ein Repetitorium geben,
also direkt vor beiden Klausuren wird es ein Repetitorium geben.
Die Termine dastehen noch nicht fest. Da wollte ich mich noch ein bisschen mit den,
was ist sonst noch so eine Pflichtveranstaltung habe,
irgendwie SE2 und Ala und sowas,
die machen ja auch oft Repertatorien,
dass ich mich mit denen ein bisschen abspreche,
wann das so ist und wann eure Klausuren sind und so.
Aber üblicherweise in der Woche vor der Klausur. Ja,
dann noch die Kriterien in den Übungen,
ihr sollt 50 Prozent der Punkte
insgesamt machen
Und 20 Prozent der Punkte auf zehn von zwölf Aufgabenzetteln.
Ihr sollt aktiv mitarbeiten. Wir sollten nicht mogeln,
nicht abschreiben und so weiter. Und dann stehen noch
ein paar Sachen auf den Webseiten oder auf dem Modulhandbuch,
aber das ist so das Wichtige. Also zusammengefasst,
kommt zu den Übungen, arbeitet mit und alles wird gut.
Und dann bei der Klausur, die ist auch zweigeteilt.
Es gibt eine Automaten-Logik-Teil und da müsst ihr insgesamt 50 Prozent der Punkte machen. Ja,
das dazu, das war jetzt gerade ziemlich viel,
also wir haben Vorlesungen und Folien, wir haben Übungsgruppen mit den Präsenzaufgaben,
wir haben die Lesestoff, wir haben das Tutorium,
wir haben das Ripple-Tutorium rot hervorgehoben wird, ist der Pflichtteil.
Kann man machen, ihr müsst das nur in die Jungsgruppen
eigentlich gehen, aber ich würde euch empfehlen,
eben auch in die Vorlesung zu gehen.
Ich würde euch empfehlen, mit einem Skript oder dem Buch
zu arbeiten und eben ordentliche Aufgaben zu rechnen.
Aber das, was tatsächlich Pflicht ist, ist die Übungsgruppe.
Ja, dann zwei gute Bücher. Das Obere ist für
den Automatenteil. Gibt es auch auf Deutsch.
Findet ihr in einiger Anzahl in der Bibliothek. Ist,
glaube ich, damals auch nicht so teuer, kostet,
glaube ich, irgendwie 29 Euro in der deutschen Version.
Und da drunter das Buch von Schöning, Logik für Informatiker.
Das ist für den Logikteil, der in sechs Wochen beginnt.
Das kostet, glaube ich, 20 Euro, wenn ich
mich nicht irre. Genau, das sind die Literaturhinweise.
Dann, es gibt auch ein Skript,
sowohl im Automatenteil als auch im Logikteil.
Das sind, ich glaube,
jeweils circa 200 Seiten
Und ihr wisst ja wahrscheinlich, dass die Skripte nicht mehr
gedruckt werden. Also früher wurde das mal zentral hier gedruckt
und dann konnte man das in der Vorlesung verteilen.
Das ist mittlerweile nicht mehr so. Wir haben das letztes Jahr so organisiert,
das würden wir dieses Jahr auch wieder machen,
dass wir halt einmal fragen, wer alles eins haben will.
Dann kriegen wir das meistens ein bisschen günstiger,
dann lassen wir das drucken und dann teilen wir das aus.
Das heißt, die Frage wäre jetzt,
könnt ihr euch einmal schnell überlegen,
wer gerne ein Skript haben möchte,
also ein gedrucktes Skript oder wer sagt irgendwie mir reiche digitale Version oder ich drucke mir das selbst aus oder was auch immer.
Deswegen einmal die Frage, wer ein Skript möchte,
dann kann ich gleich einmal
diese Klicker ausprobieren
So. Ihr dürft A oder B drücken.
A ist Ja und B ist nein.
Gute Frage,
aber einige hatten schon gedrückt
Vier, fünf, sexy.
Warte, wo sind die denn?
Hast du
noch einen
Tschüss. Alles klar
Super. Da wollte ich mit. 170 stand da eben.
Ich hätte vielleicht noch mal sagen sollen, was das kostet.
Ungefähr 10 Euro. Also wir haben letztes Mal,
glaube ich, 5 Euro bezahlt für ein Skriptteil.
Jetzt ins zweite Skriptteile sollten 10 Euro sein.
Wir haben allerdings letztes Mal auch nur 60 Stück gedruckt.
Kann sein, dass wenn wir jetzt 160 drucken,
dass es dann irgendwie günstiger wird
Ich bringe das heute mal in Erfahrung. Das heißt,
die Leute, die ab, also genau,
ab heute sind Übungsgruppen. Wenn ihr in euren Übungsgruppen seid,
sagt ihr dem Übungsgruppen leider euren Namen und dass ihr ein Skript wollt,
damit wir das nachher richtig zuordnen können und gebt denen schon mal den Geldbetrag.
Da würde ich sagen, also die,
die jetzt am Dienstag Übungsgruppe haben,
gebt denen einfach mal 10 Euro, wenn das irgendwie weniger ist,
gehen wir euch das nicht hier zurück.
Und ab Mittwoch weiß ich hoffentlich, was das kostet,
dann kann ich von den Leuten irgendwie den richtigen Betrag einsammeln.
Und dann laufe ich irgendwann wahrscheinlich mit knapp 2.000 Euro durch
die Gegend und versuche diese Skripte zu bezahlen.
Und verteilen tun wir die dann hoffentlich nächste Woche in
den Übungsgruppen, dann habt ihr die
relativ zeitnah
Ja, das zum Organisatorischen, dann noch einmal organisatorisch zur Vorlesung.
Ich benutze mehrere farblich markierte Boxen. Die Routen sind meist
so für irgendwas, was gerade ganz wichtig ist.
Entweder wenn das so ein typischer Fallstrick ist,
wo man immer wieder reinläuft oder wenn es eben irgendwie klausurrelevant ist oder ich irgendwie betonen will,
hier, das war der Kernpunkt in der Vorlesung oder so.
Dafür sind die Routen, die Gelben sind so die normalen Sachen,
normale Anmerkung oder eben auch Definitionen, Beweise und so weiter.
Grün nehme ich meistens für Beispiele und blaue ist so eine Box,
wenn ich irgendwie für Interessierte nochmal was sagen will,
wo ich irgendwie sagen will, okay,
das behandeln wir nicht in der Tiefe,
aber wenn ihr möchtet, wenn ihr schon merkt,
wie toll der FG,
ich will mich spezialisieren in dem Bereich oder so,
dann gebe ich da irgendwie
einen Literaturhinweis und könnt ihr das nachvollziehen
Üblicherweise benutze ich die Boxen so,
manchmal falle ich auch aus diesem Muster raus.
Aber üblicherweise wird das irgendwie so aussehen. Habt ihr Fragen
zum Organisatorischen? Alles klar. Gut. Dann nochmal,
um es zu betonen, die Übungsgruppen gehen heute los, ne?
Ob man die Folien kriegt, war die Frage.
Ja, kriegt ihr. Normalerweise auch entweder kurz
vor oder kurz nach der Vorlesung.
Wo wir die Folie. Achso, ist die,
die Links zu, die sind auf dem Übungszettel drauf.
Ich dachte, es macht wenig Sinn, die Links,
wo die Folien sind, auf die Folien zu machen.
Deswegen sind die auf die Links hin. Und ich glaube
auch in der Stinemail. Ich meine, ich hätte das
auch in der Stinemail geschrieben, wo ihr das finden könnt.
Genau, das auch noch. Lest bitte eure Stinemails,
also irgendwie mindestens mal irgendwie einmal die Woche oder so.
Oder fordert das automatisch auf euren E-Mail-Account,
falls mal irgendwas ist, keine Ahnung, Vorlesung,
die ausfällt, Übungsgruppen, die umgeschoben werden müssen oder so,
dann mache ich das normalerweise irgendwie über diese Stineliste
Gut, sonst noch fragen. Zum ersten, zum zweiten
und zum dritten. Dann zur Motivation des Stoffes,
wisst ihr, war das ja eine Orga-Kram,
wir haben noch gar nicht gesagt, worum es gehen soll.
Wer die allererste Folie noch in Erinnerung hat,
da stand irgendwas mit endlichen Automaten drauf.
Und nur um das mal von Anfang an zu motivieren,
endliche Automaten. Man kann damit in der Informatik etwas machen,
was man in der Informatik relativ häufig tut,
irgendwie Systeme modellieren
Warum modelliert man überhaupt Systeme, damit man irgendwie ein Modell hat,
an dem man sich schon mal bestimmte Eigenschaften überlegen kann?
Und im besten Fall, die eben auch vielleicht noch automatisch
verifizieren kann. Also sowas wie modelliert irgendwie was,
sonst wollte ich vielleicht gucken, hey,
wenn ich auf Abbrechen klicke,
komme ich dann wirklich immer wieder irgendwie in so einen sicheren Zustand oder stürze mein Programm ab oder bleibt irgendwo hängen oder sowas.
Solche Sachen könnt ihr dann irgendwie verifizieren. Und um einen
endlichen Automaten an einem ganz einfachen Beispiel einmal zu illustrieren,
wenn ihr euch einen Schalter vorstellt,
irgendwie einen Lichtschalter oder nichts beliebigend Schalter,
dann kann der irgendwie an oder aus sein
Jetzt kann man sagen, okay, aus, irgendwie zwei
mögliche Zustände. Und durch Betätigen des Schalters kann man irgendwie
von dem einen Zustand in den anderen Zustand wechseln.
Da macht man irgendwie zwischen den Zuständen Kanten. Und dann sieht
das Ganze irgendwie so aus. Jetzt kann man sich noch überlegen,
wenn man sein System irgendwie verfeinern will, sagt man,
okay, nehmen wir an, das ist wirklich ein Lichtschalter.
Und es geht darum, man geht in den Raum rein.
Und üblicherweise soll das Licht vielleicht aus sein, wenn man in den Raum reingeht.
Dann sagt man, okay, aus soll auch ein Startzustand sein.
Dann sagt man vielleicht noch, Ich möchte eigentlich,
dass man kann es bei diesen Lichtschalter irgendwie nach Belieben betätigen,
aber wenn ich rausgehe aus dem Raum, dann soll er bitte wieder aus sein.
Das heißt, man möchte vielleicht auch gleichzeitig sagen,
dass nur solche Zustandsfolgen irgendwie, also nur solche Abfolgen von Aktionen gut sein sollen,
wenn die einen eben auch wieder in diesen Zustand aus überführen.
Spricht man in Informatik von einem Endzustand? Grafisch würde man das dann so machen,
dass man sagt, okay, ein Pfeil nach aus rein soll modellieren,
dass das der Staatszustand ist, die zwei Kreise sollen modellieren,
dass das ein Endzustand ist.
Und nachher werden wir dann irgendwie sagen,
dass genau diese Folgen von gerade vielen Bs,
also zwei Bs, vier Bs, sechs Bs,
das sollen dann die guten Aktionsfolgen sein,
die wollen wir akzeptieren,
die mit ungeraden vielen Bs,
die führen uns ja irgendwie in den Zustand an,
die wollen wir nicht akzeptieren
Das wollen wir damit machen. Jetzt kann man sich schnell vorstellen,
okay, man kann natürlich auch irgendwelche Systeme mit viel,
viel mehr Zuständen modellieren.
Das hat jetzt nur zwei und sieht auch relativ einfach aus.
Aber die Kernsachen sind schon drin. Nämlich,
dass wir eine endliche Anzahl von Zuständen haben,
dass wir einen Startzustand haben, dass wir Endzustände haben,
dass wir irgendwie Zustandsübergänge haben und dass das System immer genau ein Zustand ist.
Funktioniert das gerade noch? Ich höre mich irgendwie doppelt.
Ja,
alles gut
So, und jetzt hat sich in der Informatik,
das ist ja so eine Überlegung, dass man sagt,
wie man sich das vielleicht, keine Ahnung, beim Fahrkartenautomaten vorstellen würde.
Da steht dieser Kasten und der ist irgendwie in einem Zustand
und jetzt drücke ich so Knöpfe.
Also ich führe irgendwelche Aktionen aus oder so.
In der Informatik ist es auch ein bisschen historisch gewachsen,
hat sich eher so eine Vorstellung durchgesetzt, dass man sagt,
okay, ich habe einen Automaten und der liest ein Eingabewort von einem Eingabeband.
Grafisch. Irgendwie so. Unten so eine Automatwiederung. Unten
so ein Automat, wie wir den auch eben schon gesehen haben.
Und oben das Eingabeband mit irgendwie dem Eingabewort
Und jetzt ist nachher die Überlegung, dass man sagt,
okay, ich fange irgendwie ein Z-0 an und ich lese das A. So,
als wenn hier so eine A-Kante rausführt, dann sage ich,
okay, das geht also, dieses A zu lesen.
Jetzt wechsle ich in den Zustand Z1 und gehe mit
diesem Lesekopf ein Feld weiter nach rechts.
Und so mache ich dann immer weiter. Und wenn ich
am Ende das Wort gelesen habe und in einem Endzustand bin,
dann will ich akzeptieren. Was man sich relativ gut überlegen kann,
ist, dass es egal ist,
ob ich von einer Folge von Aktionen ausgehe oder ob ich vorher sage,
naja, gut, nehmen wir mal an, irgendwie,
ich gebe diese Aktionsfolge vor und schreibe die halt irgendwie auf dem Band.
Da passiert das Gleiche. Und hier genauso,
ob ihr irgendwie so ein Eingabewort habt oder ob ihr euch überlegt,
der Automat hat zwei Knöpfe A und B und die könnt ihr irgendwie nach Belieben drücken.
Das läuft irgendwie von dem Ergebnis nachher aufs Gleiche hinaus
Ja. Und auch wenn das Automatmodell noch relativ einfach aussieht und
auch nicht so, als hätte das sofort einen praktischen Nutzen.
Ist das so ein Grundlagenmodell oder so ein Basismodell für alle weiteren Automatenmodelle,
mit denen man dann eben noch viel mehr machen kann?
Und genau darum soll es dann eben gehen. Wir werden
mit dem Modell anfangen und uns dann eben Stück für Stück an Erweiterung herantasten.
Genau, noch mal ein paar Buzzwords, um das zu motivieren.
Man benutzt tatsächlich auch schon diesen endlichen Automaten in ziemlich vielen Anwendungsfällen.
Das eine ist so im Rahmen von Compilerbau,
dass man Parser und Compiler damit machen kann.
Das andere ist das, was ich eben schon illustriert habe,
dass man dem System damit modelliert und dann Eigenschaften überprüft
Dann ist ein Automat eine grundlegende Datenstruktur für Wortmengen im Allgemeinen. Sprich, ihr könnt,
ihr habt als Datenstruktur dann nicht nur sowas wie Graphen und Bäume und Hashmaps oder so,
sondern ihr könnt dann als Datenstruktur eben auch irgendwie einen Automaten haben,
der dann quasi eine Menge von Worten,
nämlich genau die Menge von Worten, die er akzeptiert,
darstellt.
Dann eben, was ich schon gesagt hatte,
Grundlage vieler weiterer Automatenmodelle,
also wenn man da noch irgendwie Wahrscheinlichkeiten ran tun will oder
irgendwelche anderen Dinge
Dann sind das weitere Automatmodelle und dann hier nochmal zwei Punkte stehen oben schon,
zwei weitere Punkte nochmal, um die zu betonen,
in der technischen Informatik werden die sehr viel eingesetzt.
Kennt ihr vielleicht noch aus Rechnerstrukturen, wer das gehört hat,
da heißen die dann irgendwie Mili und Moor-Automaten. Und bei Protokollen werden die typischerweise auch eingesetzt und Protokolle damit zu modellieren. Und ein letzter wichtiger Punkt,
der immer so ein bisschen irgendwie so mitschwimmt,
man sagt das immer irgendwie so,
aber einübendes abstrakten Denkens und Erkenntnisgewinn, dieses mit dem abstrakten Denken,
es soll eben dazu führen, dass ihr später,
wenn ihr Erfahrung gesammelt habt und ihr kommt irgendwie,
ihr kriegt ein neues Problem, dass ihr schneller in einem,
also je mehr Wissen ihr angehäuft habt,
desto schneller seht ihr in einem Problem was vielleicht so die dahinter liegende Struktur ist und wie ihr das algorithmisch lösen könnt,
das Problem.
Wenn ihr beispielsweise noch nie gehört habt, was ein Baum ist,
dann werdet ihr Probleme haben bei irgendeiner Problemstellung festzustellen, oh,
das ist eigentlich ein Baum und was ich machen muss,
ist eine Tiefensuche oder so.
Und bei Automaten ist das ähnlich,
dass man irgendwie wieder neue Dinge kennenlernt,
mit denen man dann in der Informatik recht häufig arbeiten kann.
Und das letzte Erkenntnisgewinn, wir werden aufbauend auf diesem Modell weitere Modelle einführen,
die werden dann immer komplexer und können auch immer mehr.
Und letztendlich werden wir zu einem Modell kommen in so fünf Wochen,
mit dem man quasi sich Gedanken darüber machen kann,
was man überhaupt algorithmisch lösen kann und was nicht
Und dann werden wir eben tatsächlich zeigen können, dass es auch etliche Probleme gibt,
die man gar nicht lösen kann, obwohl die relativ einfach gestellt sind.
Also bei all der schönen, bunten digitalen Welt,
die uns so umgibt, ist das dann ganz erstaunlich,
dass recht einfache Sachen tatsächlich gar nicht gelöst werden können, algorithmisch.
Da werden wir hinkommen. Und wenn man dann sagt,
okay, das geht und das geht nicht, so,
dann ist das erstmal so eine Grenzlinie, wo man sagt,
naja, wenn ich vielleicht jede, jede,
jede Menge Zeit habe, dann kann ich das noch lösen.
Aber es gibt eben dann auch noch die Grenze zwischen,
was lässt sich denn praktisch lösen und was lässt sich praktisch nicht lösen.
Also wenn ich euch irgendwie ein Problem gebe,
dessen Lösung irgendwie, weiß ich nicht,
zigtausend Jahre dauert, dann sagt die vielleicht,
naja gut, theoretisch könnte ich das lösen,
aber praktisch eben nicht in vertretbarer Zeit.
Da lernen wir dann noch
so Komplexitätsmaße kennen
Und nie an uns Stardamm auch einem der ganz großen Probleme,
einem dieser sieben Millennium-Probleme, der PNP-Frage,
sieben große ungelöste Probleme der Mathematik, die um die Jahrtausendwende mal formuliert wurden.
Und das ist eins davon. Da stellt quasi die Frage,
ob es, man kann die Frage so formulieren,
dass man sagt, dauert es eigentlich genauso lange,
eine Lösung zu finden, wie eine Lösung zu überprüfen.
Also wenn ich euch irgendwie zwei Zahlen gebe und ihr sollt die addieren,
dauert das tatsächlich länger, als wenn ich euch zwei Zahlen
unter das Ergebnis gebe und ihr braucht nur noch überprüfen,
ob das stimmt.
Das ist da so
die Frage
Das nochmal zur Motivation. Und jetzt könnte das losgehen.
Das war nur so Vorgeplänke. Jetzt kommt erstmal dieser harte Mathematikteil. Mathematik,
die eine diskrete Mathematik hattet und die wir jetzt nochmal brauchen.
Ich habe das so eingedampft auf die Sachen aus der Mathematik,
die wir tatsächlich jetzt hier in diesem Kontext brauchen.
Und wenn ich irgendwelche anderen Sachen zwischendurch nochmal neu brauche,
dann werde ich die irgendwie einführen.
Aber jetzt erstmal nur so die Grundlagen dessen,
was wir irgendwie brauchen
Endliche Mengen, M1, ich schreibe mir die geschweißten Klammern,
alle die Elemente, die da drin sein sollen,
Zahlen, Buchstaben, was auch immer.
Unendliche Menge, irgendwie durch Punkte oder so angegeben,
was da drin sein soll, ein, zwei, drei,
vier, fünf, sechs, sieben und so weiter.
Das Enthaltensein-Symbol und das Nicht-Enthaltensein-Symbol. Und die Kardinalität durch diese
Striche, wie viele Elemente in der Menge drin sind.
Dann werden die Elemente einer Menge oft eben durch ein Prädikat beschrieben,
dass die Elemente in der Menge charakterisiert. Das hatte die auch in diskrete Mathematik,
das macht man dann so, dass man sagt, okay,
in M3 sollen all die X aus den natürlichen Zahlen drin sein,
also all die natürlichen Zahlen mit jetzt einer bestimmten Eigenschaft,
nämlich mit der Eigenschaft, dafür ist der Strich,
dass irgendwie eine andere natürliche Zahl existiert,
die heißt I und die beiden sollen dann eben so miteinander verbunden sein,
dass man sagt, X ist gleich zweimal I.
Das heißt, was ist in M3 drin?
Was ist in M3 drin? Die geraden Zahlen, Ungarn
, Zahlen, die? Ja, alle geraden Zahlen,
0,246 und so weiter.
Thailmengen-Beziehung. A, ist eine Timenge von B, genau dann, wenn.
Jedes Element in A, auch in B drin ist.
Beispiel 1, 4, 5, 1, 2,
3. Teilmenge, ja oder nein?
Bitte? Ihr könnt es auch einfach rufen. Ich kann das
so schnell gar nicht sehen, von wo das kommt.
Timing, ja oder nein? Was sagst du? Nein
. Sagt jemand, ja? Dadurch die Punkte soll angedeutet sein,
dass da noch viel, viel mehr Zahlen drin sind,
also noch vier, fünf, sechs, sieben, acht und so weiter.
Das heißt, alle Elemente auf der linken Seite sind
auch auf der rechten Seite drin,
da geht die Timeng-Beziehung
Timing, ja oder nein? Ja, ne? Ist
sogar gleich, aber er ist eben auch eine Timingenge.
Nein, vier ist links, vier ist nicht rechts.
Nein, du, fertig. Mengen Gleichheit, A ist gleich B,
genau dann, wenn A eine Timinge von B ist und
B eine Timinge von A ist. Mit ersten zeigen wir,
dass alle Elemente, die in A drin sind,
auch in B drin sind und mit zweiten zeigen wir,
dass alle Elemente, die in B drin sind,
auch in A drin sind.
Also kann es irgendwie kein Element geben, das in der
einen Menge drin ist, aber nicht in der anderen.
Das ist eine Mengengleichheit und echte Teilmenge eben,
wenn A eine Timinge von B ist,
aber wenn die nicht gleich sind
Jetzt, um das zu betonen, weil wir das nachher ganz,
ganz oft brauchen werden, wenn ich eine Mengengleichheit zeigen will,
dass hier, dann muss ich diese beiden Richtungen zeigen.
Ich muss einmal von einem Element in A ausgehen und zeigen,
dass das auch in B ist und einmal von einem Element
in B und zeigen, dass das auch in A ist.
Und am besten geht das, indem ihr das sauber trennt,
indem ihr irgendwie sagt, okay,
ich will jetzt A gleich B zeigen,
also erstens Artiming von B, zweitens B-Time eng von Adel,
dann ist das sauber getrennt und dann sieht man auch,
wo ihr argumentiert
Die Operationen auf Mengen, die ja auch alle hattet,
ne, Vereinigung, A vereinigt mit B,
ich nehme alle Elemente aus A,
ich nehme alle Elemente aus B,
schmeiße die zusammen in eine neue Menge und dann streiche ich noch hier doppelt auftretende Elemente,
ne, wenn eins hier doppelt auftritt und zwei,
dann braucht es in der Menge eben nur einmal stehen.
Schnitt, ich nehme den Schnitt einer Menge genau die Elemente,
die in beiden drin sind, 1, 2,
4, 1, 2, 3,
da ist in beiden eben die 1 und die 2 drin,
die nehme ich in den Schnitt
Kompliment, ich schmeiße aus der ersten Menge genau die Elemente aus der zweiten Menge raus,
sofern die dann da drin sind. Das heißt, aus 1,
2, 4 schmeiße ich 1, 2, 3 raus,
3 ist gar nicht drin, brauche ich nicht rausschmeißen,
wenn ich 1 und 2 rausschmeiße, bleibt noch die 4 übrig.
Jetzt eine der schwereren, die Potenzmenge,
die Potenzmenge von A sind all die Teilmengen von A. Das heißt,
wenn ich irgendwie die Menge 1, 2 habe,
kann ich mir überlegen, naja,
die Lehre mengen ist immer eine Teilmenge und die Menge selbst ist auch eine Teilmenge.
Und da muss ich eben noch gucken, okay,
wie viele echte Teilmengen kann ich aus den Elementen bilden,
die eben in der Menge drin sind,
wenn ich nur zwei Elemente habe,
dann Kann ich auch nur eins oder zwei als Timing haben.
Warum diese Schreibweise? Also P von A kann ich mir irgendwie vorstellen.
P für Potenzmenge, Potenzmenge von A, das ist irgendwie okay.
Warum schreibt man da noch zwei hoch A?
Weißt du das einer? Genau. Die Antwort war,
weil das die Anzahl der Elemente in der Potenzmenge ist,
das stimmt. Wenn ihr,
also wenn man da oben die Kardinalität nehmt,
zwei hoch Kardinalität von A,
dann kommt da genau die Anzahl der Elemente in der Potenzmenge
Begründung, ihr könntet über diese Menge A hier, also sofern denn A endlich ist.
Ihr könntet über bei der Menge A, hier,
ihr könnt ja zu jedem Element sagen, ob es,
also ihr nehmt die Übermenge sozusagen in diesem Fall 1,
2 und jetzt sagt ihr zu jedem Element,
soll es in der Teilmenge drin sein oder nicht,
ja oder nein.
Jetzt habt ihr die Möglichkeit, zu jedem Element nein
zu sagen, ihr habt die Möglichkeit, zu jedem Element
Ja zu sagen und ihr habt dann irgendwie die Möglichkeit,
das zu kombinieren. Wenn man das auf nullen und einsen mappt,
also null für 9 und 1, für Ja,
dann habt ihr die Möglichkeit,
jeden String zwischen 0,000 und 1,1111 zu produzieren.
Das sind genau zwei hoch A
viele Strings
Oder wenn ihr End-Elemente habt, zwei Hochend fiel.
Und kathesisches Produkt, zwei Mengen A und B,
dann kommt in das kathesische Produkt all die Zwei-Tubel,
sodass das erste Element aus dem Tubel NA drin ist und das zweite Element in B.
Und ein kleines Beispiel, wenn ihr irgendwie 1,
2 habt und in einer anderen Menge A, B,
C, dann müsst ihr eben eins mit A zusammentun,
eins mit B,
eins mit C und dann 2 mit A,
2 mit B und 2 mit C.
Und dann kommen eben
die Tubel raus
Lässt sich auch verallgemeinern, kathiesisches Produkt, könnt auch irgendwie sagen,
okay, dann nehme ich irgendwie en viele Mengen,
eins bis AN, dann kriege ich solche Tubelder raus,
X1 bis XN und jedes Element XI ist eben dann gerade aus der Menge AI.
Und dann ganz wichtig, so eine Teilmenge R,
das ist jetzt irgendwie, ich nehme einige Tubel hier,
nehme vielleicht nicht alle, sondern nur einige davon,
dann habe ich eine echte Teilmenge von A1 bis AN und das ist dann eine endstellige Relation.
Kennt ihr vielleicht noch irgendwie aus der Graphentheorie,
da hat man irgendwie zwei Knoten und eine Kante dazwischen,
das wird dann irgendwie durch die Relation ausgedrückt,
dass man sagt, naja, V1 mit V2 verbunden,
also nehme ich das Tubel V1,
V2 oder wenn ich noch ein Kantengewicht habe,
V1,
5,
V2 oder so
Beispiel mit Z und A habe und ich will jetzt,
betrachte jetzt die dreistellige Relation hier ZA-Kreuz, Z-Kreuz A-Kreuz Z,
dann kann ich eben irgendwelche Tupeln nehmen, wo links und rechts,
ganz links und ganz rechts ein Element aus Z steht und in der Mitte ein Element aus A.
Jetzt kommt noch Funktion, Funktion brauchen wir auch noch,
Totale Funktion, F von A nach B,
jedem Element aus dem Definitionsbereich, A,
ein Element aus dem Bildbereich B zuweisen, zum Beispiel eben indem man sagt,
F geht von 0-1 nach 0-1,
mit eben 0 wird auf 1 abgebildet und 1 wird auf 0 abgebildet,
also das invertieren, aus der technischen Informatik so.
Oder wenn man sagt, von den natürlichen Zahlen,
natürlichen Zahlen, mit X wird abgebildet,
auf zweimal X oder eben als alternative Schreibweise,
F von X gleich 2X. Und da gibt es dann auch so Begriffe irgendwie bijektiv,
injektiv, sujektiv, da wurde der ja zu Anfang des Studiums zur Genüge mit gequält.
Ich glaube, wir brauchen die hier gar nicht,
deswegen habe ich die hier weggelassen.
Was ich nochmal betonen wollte hier,
es kann durchaus irgendwelche Elemente aus A geben für die F von A nicht definiert ist,
dann ist die Funktion nicht total,
sondern nur partiell
Und es gibt eben zu jedem Element aus B höchstens ein Urbild.
Oder anders ausgedrückt, wenn ihr so ein X aus A nehmt,
was sein Element aus dem Urbildbereich hier, dann könnt ihr nicht gleichzeitig sagen,
dass ihr das auf 5 und auf 4 abbilden wollt.
Das kann man auf ein Element abbilden, aber nicht irgendwie auf 2.
Aber zwei Elemente aus A können das gleiche Bild haben.
Also ich kann irgendwie 4 und 5 auf das Gleiche abbilden.
Typische Schulbeispiel, F und X gleich X Quadrat und dann
wird irgendwie minus 1 und 1 mit Bice of 1 abgebildet.
Nach den Funktionen, das war jetzt im Grunde genommen all das,
was wir aus diskrete Mathematik so brauchen werden.
Jetzt kommen neue Grundlagen, die wir auch brauchen werden,
die auch was mit Mengen zu tun haben. Und zwar mit diesem,
wir haben ja eben schon über Worte kurz geredet,
das führe ich auch einmal schnell ein,
dann haben wir alle Grundlagen so zusammen,
die wir so brauchen und dann können wir mit den spannenderen Sachen loslegen.
Erstmal ein Alphabet, im Grunde genommen eine Menge von Buchstaben,
A, B, C, brauchen wir,
damit wir nachher bei dem Automaten sagen können, welche Buchstaben der überhaupt lesen darf.
Dann Konkretenation, dargestellt durch so einen kleinen Punkt,
ist zum Hund Hintereinanderschreiben von Buchstaben. Ich buche da am Abend,
Buchstaben B, ich will die verknüpfen, dann wird das A,
Und ich kann das dann natürlich auch irgendwie auf Worte erweitern.
Also A, verknüpfen mit B, ist halt A,
B. Und dann kann ich nachher sagen,
wenn ich jetzt das Wort A, B mit den Buchstaben C verknüpfe,
dann wird das eben A, B,
C. Also im Grunde genommen passiert da nichts anderes,
als dass man den Punkt halt irgendwann weglässt.
Man schreibt die Sachen eng zusammen und dann ist man fertig.
Dann gibt es noch speziell das leere Wort, das ist das Wort mit null Buchstaben.
Das wird entweder mit Lamda oder mit Epsilon bezeichnet,
da gibt es auch in der Literatur geht das fröhlich durcheinander. Ich fürchte,
bei uns geht das sogar teilweise durcheinander, was die Aufgaben,
also mal auf dem Aufgabenzettel Lamda und mal in Epsilon,
ich versuche das zu vermeiden,
aber es kann mir mal vorkommen,
deswegen,
dass ihr es gleich wisst,
das kann sowohl Lamda oder auch Epsilon steht beides
für das leere Wort
Und dann noch hier die Konkertination, das erinnert ja schon
durch den Punkt, so irgendwie an das Mahlzeichen.
Deswegen machen wir auch so Sachen, dass wir,
wenn wir ein Wort W haben und wir wollen irgendwie W,
mal W machen, also wie, mit W,
konkertinieren, dann schreiben wir dafür auch weh zum Quadrat.
Oder eben allgemein, wie hoch kam, wenn wir weh hier vorne kam,
minus eins mal konkertinieren und dann noch ein W rankommt.
Also wenn ihr irgendwie das Wort Haus habt und ihr macht
irgendwie haushoch drei, dann ist das eben Haushaushaus.
Und da gibt es die beiden Spezialfälle,
wie hoch eins ist eben eins,
so wie ihr das auch irgendwie vorher den natürlichen Zahlen kennt,
so vier Hoch eins ist vier und wie hoch null
ist eben das leere Wort
Auch da zur Begründung, warum man das macht mit dem Hochnull,
dass die Korkatenation sieht ja so ähnlich aus wie eine Multiplikation
und bei der Multiplikation ist ja auch so,
dass irgendwie vier zum Quadrat ist,
viermal vier und vier hoch null ist eben irgendwie das neutrale Element eins.
Und wie hoch null ist dann eben das neutrale Element bezüglich der Konkertination.
Wenn er irgendwie ein Wort mit dem leeren Wort konkertiniert,
dann kommt das Wort selbst wieder raus.
Also Slamda, das neutrale Element.
Ein bisschen Beispiele. Wenn ich das miteinander konkertinieren will,
so ähnlich wie wir das auch bei dem Kreuzprodukt hatten,
jeder mit jedem
Nur, dass wir jetzt eben keine Tubel bilden,
sondern dass wir die Sachen irgendwie direkt hintereinander schreiben. Das heißt,
hier kommt jetzt irgendwie AB, verknüpft mit AB raus,
das AB, mit dem AB, habt ihr AB,
AB, dann AB, mit B,
dann habt ihr AB, B, und so weiter.
Und weil die beiden Elemente hier AB verknüpft mit AB und ABA verknüpft mit B,
da kommt ja wieder das gleiche Wort raus, ABAB,
dann brauche ich nur einmal aufschreiben.
Deswegen wird die Menge darunter
irgendwie kleiner
Dann das, da muss man jetzt, wie gesagt,
Lamda ist das neutrale Element, da passiert nichts,
wenn ich das irgendwie vor oder hinter ein Wort schreibe.
Das heißt, a verknüpfend BSA, B und a verknüpft mit Lamda ist eben Lamda.
Und genauso ist Lamda verknüpft mit B, B und Lamda
verknüpft mit Lamda ist eben wieder das leere Wort.
Also wenn ihr nichts hinschreibt und dahinter schreibt ihr nochmal nichts,
dann habt ihr insgesamt irgendwie nichts geschrieben.
Dann kommt das raus. Und so ähnlich wie wir das eben mit den Worten hatten,
so mit W-Quadrat, W,
Hoch 3 und so weiter,
kann man das natürlich auch mit Mengen von Worten machen,
dann ist er hoch 1 wieder die Menge selbst und R-Quadrat
ist dann eben ehrmal A und er hoch 3 ist R-Quadrat mal
A Quadrat,
mal R und so weiter
Und als Spezialfall haben wir eben eher auch null, das ist das Lamdam.
Ah ja, und jetzt noch die Mengen R Plus und
R mal, die brauchen wir gleich für das Alphabet.
In R Plus sage ich einfach, okay,
ich habe jetzt so eine Menge von Worten R und jetzt
kann ich ja betrachten R1, R2, R3,
R4, R5 und so weiter.
Und wenn ich die alle vereinige, das ist R Plus.
Und bei R Stern sage ich,
okay, ich nehme R Plus und dann nehme ich noch
das Lamda dazu
Das, was wir da vor allem brauchen, ist,
wenn wir so ein Alphabet-Sigmar haben, dann sind in Sigmar
Stern genau die Menge aller endlichen Wörter über diesem Alphabet.
Begründung, in Sigmar sind ja nur Symbole, also ABC oder so,
dann ist in Sigmar Quadrat zum Beispiel alle zwei buchstabigen Wörter,
die ihr aus ABC bilden könnt.
In Sigmar hoch drei sind alle drei buchstabigen Wörter,
in Sigmar hoch vier, alle vier Buchstabigen und so weiter.
Wenn ihr jetzt hier die Vereinigung bildet,
dann kriegt ihr also alle endlichen Wörter,
die ihr irgendwie aus diesen Buchstaben bilden könnt.
Plus noch, weil Sigmar Stern ist das leere Wort.
Genau, und dann nennt man nachher
jede Teilmenge von Sigmar Stern
eine formale Sprache
Und für die, die es für die mathematischen Interessierten formaler,
kann man das Ding als freies Mouid auffassen.
Könnt ihr mal googeln, freies Mouid. Zusammengefasst,
weil es ist gerade drei recht vollgepackte, vollgepackte Folien waren,
die wichtigsten Dinge nochmal, die wir gleich brauchen werden,
sieht man für eine Menge von Symbolen, ein Alphabet,
Beispiele, ABC oder 0-1. Lamdor oder Äpzilon für das leere Wort?
Das leere Wort selbst ist nie in einem Alphabet drin,
in einem Alphabet sollen ja Symbole drin sein und das
leere Wort zeichnet sich ja gerade dadurch aus,
dass das eben keine Symbole enthält
Das heißt, das ist nie in einem Alphabet drin,
kann aber in einer Menge von Worten drin sein,
das ist ein Unterschied. Konkretination von Symbolen oder Worten,
haben wir eben gesehen, einfach hintereinander schreiben, von Wortmengen,
jedes Element der ersten Wortmenge mit jedem Element der zweiten Wortmenge verknüpfen.
Dann diese Hochschreibweise, R2, R3 oder Sigma 2,
Sigma 3, W2,
W3 für das Mehrfache hintereinander ausführen von der Konkretination mit den Sonderfällen.
R hoch null ist eben die Menge,
die das leere Wort enthält und wie hoch null,
wenn wen Wort ist,
ist Lamda
R plus für alle Worte, die sich durch beliebiges Aneinanderreihen von Worten
aus R bilden lassen und erstern eben wie er plus,
aber das Lander kommt noch hinzu.
Das sind so die wichtigsten Sachen.
So, jetzt gibt es Klickerfragen. Was meint ihr denn
, was da rauskommt
Nee. Man kann das ja auch ausmachen mit diesem
bunten Muster, aber ich finde das ja ganz schön.
Habt ihr alle, das sieht noch so leer aus
Ja. Was kommt denn raus? Wer möchte sich denn
öffentlich positionieren? Das vierte, ne? Ja,
das vierte, das klingt gut. A mit DE,
A mit FG und dann eben Bezi mit DE und BC
mit FG. Mal gucken, was da rausgekommen ist.
Ah,
sieht gut aus
Für die drei Prozent auf der zwei. Ihr verbindet nicht erst
die Elemente aus der ersten Menge miteinander und dann mit der zweiten.
Sondern da steht ja noch ein Komma zwischen A und B
, C. Ihr nehmt ein Element aus der ersten Menge,
also das A verbindet das nacheinander mit allen Elementen aus der zweiten Menge.
Und dann macht ihr das mit dem BC nochmal.
Und das dritte wäre auch spannend, aber auch so ist
es nicht definiert
So, da dürft ihr nochmal,
was kommt denn da raus?
Das Armin semen
Musik Und was kommt raus?
Vier. Ja, genau
Drei finde ich auch okay. Drei ist auch gut.
Drei ist aber noch nicht komplett vereinfacht. Bei 3 und 4
ist beides richtig. Bei 3 kann man aber sagen,
dass das leere Wort muss man halt nicht mehr hinschreiben.
Also A verknüpft mit dem leeren Wort ist eben A. Und A,
B, C verknüpft mit dem leeren Wort ist A,
B, C. Was insbesondere dazu führt,
dass noch dieses Element A, B,
C in der dritten Menge, ihr solltet nicht denken,
dass A, B, C und das leere Wort und A,
B, C unterschiedliche Elemente wären.
Sondern der Kram hier, dieses A, B,
C mit dem Lamda und dieses A, B,
C, das ist das gleiche Element,
also kann ich das einmal streichen und dann kommen eben
diese drei Elemente da raus
Und das zweite... Oh ja, das zweite ist auch schön. Ich weiß nicht,
ob wir auf die gleiche Art und Weise darauf gekommen seid wie ich.
Man könnte auf das zweite kommen, wenn man denkt,
dass das leere Wort quasi wie eine Multiplikation mit null wäre.
Also wenn es das Wort löschen würde,
wenn nämlich A, B, C mit B,
C mache, dann kriege ich genau dieses A,
B, C, B, C raus, A,
B, C mit Lamda, kill das Wort,
brauche ich nicht aufschreiben.
A mit B, C kommt das A, B,
C raus und A mit Lamda killt das Wort,
brauche ich nicht aufschreiben.
So könnte man auf das zweite kommen.
Das ist aber nicht das, was das leere Wort tut,
sondern das leere Wort bei der Konkertination Ist das neutrale Element?
Wie mit Lamda verknüpft es eben weh? Genau. Und die Eins,
die würde man kriegen, wenn man nur die,
wenn man die beiden Elemente miteinander verknüpft und die beiden Elemente miteinander verknüpft.
Und das ist auch nicht, ne?
Ihr verknüpft das Element ABC mit BC, ABC mit Lamda,
A mit BC und A mit Lamda.
Dann habt ihr das
Und nochmal, wenn ich AB habe, was ist dein R-Quadrat?
R ist jetzt übrigens, kann man sowohl als Alphabet interpretieren,
mit dem Buchstaben AB, als auch als Wortmenge,
die eben gerade die Worte A und B enthält.
Führt aber zum gleichen Ergebnis
. Und was kommt raus
Bitte? Die drei. Ja, genau. Drei klingt gut.
Eins. Sehr gut. Ja. Die eins wäre,
wenn wir sagen würden, er null vereinigt mit R1,
vereinigt mit R2. Oder wenn man sich R2 immer so definieren würde,
dass alles, was man davor halt auch noch mit drin ist oder sowas.
R2 ist aber R mal R, also A, B,
mal A, B. Und dann kommt er eben genau A,
A, A, B, B, A und B, B raus.
Das zweite wäre so ähnlich wie das erste,
nur eben R1 vereinigt mit
Und das vierte, da würde man sagen,
ich mache um alles nochmal Mengenklammern rum,
das macht man aber auch nicht.
Also einfach das dritte, jedes Element aus R,
einmal mit jedem Element aus R verknüpft.
Und letzte Frage.
Oder ist schön
Musik Musik Eins ist richtig, warum?
Warum ist eins richtig? Nochmal bitte, Entschuldige
Ja, genau, aber warum ist eins richtig?
Nochmal? Ja, okay. Die Antwort war bei zwei
oder drei falsch. Es ist natürlich richtig, so als Antwort,
weil in Air schon A und B drin ist und ich dann mit A und B,
also wenn ihr Sieg mal Stern hättet, also sieht man gleich A,
B und jetzt Sieg mal Stern, dann sind das genau die Worte,
die ihr eben aus A und B bilden könnt.
Und da das da schon auf jeden Fall drin ist,
ist egal,
was ihr noch irgendwie mit dem A,
B und dem BA
für eine Timing davon
konstruieren könnt
Menge aller ungeraden Wörter, das würde man kriegen,
wenn man irgendwie so was hat wie AAA, B,
B, B und dann eben alle drei buchstabigen Teilwörter.
Nee, das stimmt gar nicht, ne? Nee,
da müsst ihr nochmal drüber nachdenken. Die Menge der geraden Worte,
die kann man so kriegen. Die kriegt man durch AA,
B, B, A, B und BA.
Und das dann hochstern. Dann kann man nämlich nur gerade Wörter konstruieren.
Dadurch kriegt man die geraden Wörter und die ungeraden Wörter würde
man dann kriegen durch Sigmarstern, ohne das eben Gesandte.
Dann kriegt man die ungeraden. Und die unendlichen Wörter,
sowas hatten wir gar nicht,
dass wir in der Erweiterung von den Automaten,
das geht dann so zu Omega-Automaten hin,
dann kann man
auch unendliche Wörter lesen
Zwei Anmerkungen. Erstens, jetzt habe ich euch gerade ungefähr
eine Dreiviertelstunde mit Grundlagen gequält. Es tut mir auch leid
und ich hoffe, ihr kommt nächstes Mal trotzdem wieder.
Aber wir fangen jetzt mit den spannenderen Sachen an.
Wir brauchen das alles ein bisschen als Grundlage,
damit wir gleich ein bisschen drüber reden können.
Und die sahen auch irgendwie formal fassen können.
Und das Zweite ist, ich habe eben eine SMS gekriegt,
ich kann den Livestream nicht finden.
Weiß ich auch nicht, was ich jetzt machen soll
Schnell mal zurücksimsen oder so. Ah, endlich Automaten.
Das Bild hatten wir eben. Das wollen wir
jetzt formal fassen. Wie würdet ihr das denn definieren?
Was braucht ihr denn alles? Eine rechte Seite final echt
. Was braucht ihr denn alles so? Wie gehen wir
denn mal hin? Er läuft schon weg. Also wenn
ich mir das Bild angucke, brauchen wir irgendwas für
die Zustände
Nee, nicht, was der akzeptiert,
sondern wenn wir so ein Automaten, wir wollen das Automatenmodell,
hast recht, aber wenn wir das Automatenmodell wollen, wir formal fassen jetzt.
Wie machen wir das? Bei einer Gruppe würden wir irgendwie sagen,
ich habe eine Menge und dann habe ich irgendwie Operationen da drauf und so weiter.
Und das hier wollen wir jetzt alles irgendwie in eine formale Definition packen.
Das heißt, was wir erstmal brauchen, ist irgendwie diese Zustände,
Z0, Z1, Z2. Packen wir alle in eine Menge.
Das heißt, wir sagen, okay,
wir haben eine Menge von Zuständen, Z. Dann brauchen wir die Symbole,
die packen wir vielleicht auch in eine Menge,
wenn wir die jetzt irgendwie explizit haben wollen.
A und B irgendwie in die Menge Sigma.
Wie macht ihr das mit den Kanten? Wie würdet ihr
das ausdrücken formal
Das ist beim ersten Modell ein bisschen schwierig,
aber wenn man nachher ein PDA machen und so,
also ein weiteres Automatenmodell, dann kriegt ihr das,
glaube ich, hin.
Ja, wie würdest du verknüpfen? Entschuldigung,
die Antwort war, dass zwei Elemente aus der ersten Menge
mit einem Element aus der zweiten Menge verknüpft werden.
Was ist die erste Menge,
was die zweite Menge und wie würdest du verknüpfen?
Ja. Genau. Und wie machst du
die Verknüpfung?
Ja, Relation oder so, ne?
Genau, das könnte man machen. Die Antwort war,
die eine Menge soll Z sein, also die Zustände,
die andere Menge, das Alphabet und dann nochmal die Menge Z
und dann hat man irgendwie eine Relation.
Das kann man machen. Das, was man bei endlichen Automaten üblicherweise macht,
ist, dass man sagt, ich will ja eindeutig,
wenn ich in Z 0 bin und das A lese, nach Z1 wechseln.
Das heißt, ich mache das gleich mit einer Funktion.
Ich bilde das Tubel Z0A auf den Nachfolgezustand ab.
Und dann brauche ich noch irgendwie den Startzustand,
da schreibe ich mir einfach auf, welcher das ist,
Z0 und ich brauche irgendwie einen Endzustand,
die schreibe ich mir alle in eine Menge und
dann habe ich das formal definiert
Sieht dann so aus. Ist ein Fünftupel,
bestehend eben aus der Menge der Zustände, dem Eingabealphabet,
dann die Überführungsfunktion, jedem Tupel aus Zustand und Eingabesymbol
weise ich den eindeutigen Nachfolgezustand zu.
Dann gibt es einen Startzustand, da lege ich irgendwie
im Tupel fest, welcher das sein soll.
Und ich habe eine Menge von Endzuständen. Ja,
aber sind wir genau ein Startzustand, aber ich kann mehrere Endzustände haben.
Macht auch Sinn, wenn ich mehrere Startzustände hätte,
dann wüsste ich nicht,
wo ich anfangen soll
Und mehrere Endzustände zu haben, macht auch Sinn,
weil ich vielleicht sagen will, naja, ist mir egal,
ob das und das und das passiert oder ob er vielleicht
eine ganz andere Wahl gemacht hat, ist beides okay.
Da habe ich mir irgendwie mehrere Endzustände. Jetzt für die Dynamik,
ich habe das vorhin ganz am Anfang einmal ganz kurz erzählt,
aber hier nochmal informal die Dynamik von so einem System.
Wir haben so einen Automaten und er kriegt ein Eingabewort weh.
Also irgendwie so ein Wort aus Buchstaben aus Sigmar.
Jetzt beginnt er also in diesem Startzustand Z0 und nehmen wir
mal an, dass weh mit dem Symbol X beginnt
Hat ja irgendeinen ersten Buchstaben,
nennen wir das mal X. Was wir jetzt machen,
ist, wir gucken in die Überführungsfunktion,
wohin sie das Tupel Z0X abbildet und das ist dann der Nachfolgezustand.
Dann wechseln wir in diesen Nachfolgezustand, jetzt sagen wir,
okay, wir sind also in einem anderen Zustand und bei dem Wort streichen wir das X weg.
Jetzt haben wir ein neues Teilwort und da machen wir das Ganze normal.
Wird dann mit dem aktuellen Zustand und mit dem Restwort fortgeführt. Jetzt müssen wir uns noch überlegen,
wie wollen wir das definieren, dass wir sagen,
okay, das Wort wird jetzt akzeptiert,
also es war ja diese Geschichte mit den Endzustand landen und das sagt man jetzt,
das Wort wird akzeptiert,
wenn ich das Wort bis zum Ende lesen kann und dann
in einem Endzustand bin
Beides muss gelten. Es reicht nicht, irgendwie in einen
Endzustand zu kommen. Es reicht nicht, das Wort zu
Ende gelesen zu haben, sondern beides muss gegeben sein.
Ich muss das Wort bis zum Ende lesen können und dann
in einem Endzustand sein. Beispiele. Der Automat,
und der kriegt das Wort A, B, B,
A, wenn ich in Z0 bin und das A lese,
dann kann ich diese Kante hier nehmen.
Das heißt, ich wechsle in den Zustand Z1, zack.
Und jetzt kann ich hier,
jetzt schiebe ich den Lese-Schreibkopf ein nach rechts und bin dann
bei dem
Nächster Schritt, ich bin jetzt in Z1 und muss das
B lesen, das kann ich über diese Kante machen.
Da wechsle ich den Zustand also quasi nicht,
man spricht trotzdem von einem Zustandswechsel,
ich wechsle dem von dem Zustand Z1 in die Zustand Z1
und gehe mit dem Lesekopf wieder ein Feld weiter nach rechts.
Ich mache das Ganze normal, bin wieder in Z1,
lese das B, das kann ich machen, nicht da.
Und jetzt kann ich zu guter Letzt diese Kante hier nehmen.
Und jetzt habe ich das Wort bis zum Ende gelesen
und bin in einem Endzustand, das heißt,
das Wort würde ich akzeptieren,
Das ist ein positives Beispiel, jetzt kommen die drei negativen Beispiele.
Wenn ich nur ABP habe, dann lese ich erstmal,
wie eben das A, in den Z1.
Und dann lese ich zweimal das B, bleib in Z1,
einmal gelesen, bin auch mal gelesen.
So, jetzt habe ich das Wort zu Ende gelesen,
bin aber nicht im Endzustand. Das heißt, ich akzeptiere nicht
. Das Wort kann ich also bis zum Ende lesen,
aber ich würde es halt nicht akzeptieren.
Das Beispiel geht ganz schnell, es gibt keine B-Kante aus Z0
raus. Das heißt, ich kann da nicht weiterlesen.
Man spricht dann davon, dass der Automat blockiert
Was bedeutet, dass er eben das Wort nicht lesen kann,
dann kann er es auch nicht akzeptieren.
So, und jetzt noch ein ganz wichtiges Beispiel, ARB.
Das A kann ich lesen, dann mache ich den Zustandsübergang nach Z1.
Dann wieder das A, kann ich lesen, mache ich den Zustandswechsel nach Z2.
Da habe ich keine Kante, also kann ich B nicht lesen.
Das Wort wird nicht akzeptiert. Ich bin zwar im Endzustand,
aber ich kann das Wort nicht zu Ende lesen,
also akzeptiere ich nicht.
Okay, beides muss gelten, ne
Da nochmal Zusammenfassung fürs Nachbereiten, das ist das, was eben rausgekommen war,
was akzeptiert wird und was nicht akzeptiert wird mit der Begründung, warum irgendwas nicht akzeptiert wird.
Das ist nur zum Nachbereiten. Was man jetzt definiert sich noch,
ist die sogenannte erweiterte Überführungsfunktion, die sieht das mal ein bisschen kryptisch aus,
das ist aber eigentlich relativ einfach, also das, was sie tut,
ist nachher einfach, ich möchte nicht einfach nur sagen können,
wenn ich in einem Zustand bin und ein Symbol lese,
bin ich irgendwie im Nachfolgezustand,
sondern ich möchte vielleicht mehrere Schritte auf einmal zusammenfassen können.
Ich möchte vielleicht bei jedem gleich sagen können,
dass ich mit lesen von AA oder so in dem Zustand der 2 bin,
ohne das Schritt für Schritt machen zu müssen.
Dafür definiert man sich diese erweiterte Überführungsfunktion, die eben sagt,
vom Zustand aus Z, wenn ich ein Wort lese,
dann ist das der Zustand, in dem ich dann bin,
wenn ich das sukzessive lesen würde. Definiert man dann hier rekursiv,
da passiert aber im Grunde genommen genau das,
was wir eben hatten, bei dem hier,
ich bin im Zustand Z und ich habe ein Wort,
das aus mindestens zwei Buchstaben besteht,
dann bestimme ich jetzt hier eben den Nachfolgezustand des ersten Symbols,
bin da irgendwie in dem Nachfolgezustandshead Strich und dann steht hier halt irgendwie Zeit Strich und das Restwort.
Und außenrum ist halt immer dieses Delta-Dach. Da als Beispielautomat,
ich da sage irgendwie Z0, also ich bin in Z0,
ich will das Wort 001 lesen,
dann bin ich eben durchlesen von null, bleibe ich in Z0,
das heißt, als nächstes bin ich hier in Z001,
wir lesen von null, bleibe ich wieder in Z0,
München Z01 und dann kann ich die 1 lesen und lande in Z1.
Und das, warum man das macht, ist,
weil man typischerweise diesen Kram dazwischen nicht mehr aufschreiben möchte,
sondern man möchte direkt sagen,
Delta-Dach von Z 0001 ist eben gleich Z1. Deswegen diese Funktion.
Kann man sich so Zwischenschritte sparen, die man eh sieht. Alternative,
mit Rechnungen zu arbeiten, das führt aber,
also im Grunde genommen ist das das Gleiche,
wie wenn man das Delta-Dach hier weglassen würde,
wenn man nur mit dem ZXW arbeiten würde und hier eben mit dem Nachfolgezustand weh.
Eine Konfiguration soll ein Tupel sein,
bestehend aus dem Zustand und dem Wort, mit der Bedeutung,
ich bin in dem Zustand Z und das Wort,
was ich noch lesen muss,
ist weh
Und einen Konfigurationsübergang ist dann von ZW nach Z-Strich V mit eben der Eigenschaft,
wie lässt sich irgendwie als XV treiben und mit Delta ZX komme ich zu Z-Strich.
Könnt ihr machen, wie ihr wollt,
könnt ihr entweder Konfigurationsübergänge benutzen oder eben diese erweiterte Überführungsfunktion,
das dient einfach nur dazu, dass man aufschreiben kann,
wie sich ein Automat dynamisch verhält, Schritt für Schritte.
Eine Rechnung ist dann eine Folge von solchen Konfigurationsübergängen und wenn
die Rechnung irgendwie in Z-Strich Lamda endet und Z-Strich ein Endzustand ist,
dann bedeutet das ja gerade,
ich habe das Wort bis zum Ende gelesen,
Lamda ist ja das leere Wort, das heißt,
es gibt da nichts mehr zu lesen und Z-Strich ist ein
Endzustand,
das heißt,
ich akzeptiere
Das nennt man da eine Erfolgsrechnung. Beispiel der Automat,
den wir vorhin hatten, ich fange in der Konfiguration Z0A, BBA an.
Durchlesen von A komme ich zu Z1. Das heißt,
als nächstes habe ich die Konfiguration Z1 und das Restwort ist eben BBA.
Dann macht man das noch zweimal. Mit dem B bleibt da
irgendwie in dem Z1 drin und zu guter Letzt wechselt man dann
mit dem A in den Zustand Z2. Und dann ist man
in Z2 Lambda und weil Z2 in Endzustand ist und landet
das leere Wort,
sagt man nicht akzeptiere
Äh, die erste Frage war, merkte mal die zweite.
Die erste Frage war, wofür die vier Punkte da oben stehen?
Hab ich nicht erwähnt, danke. Das soll nur andeuten,
dass man prinzipiell ein beliebig langes Wort auf diesem Eingabeband aufschreiben kann.
Also wir sagen nicht, wir haben Automaten und der
hat nur zehn Eingabefelder oder so, sondern wir sagen,
wir haben Automaten und denen kann ich ein Eingabewort vorlegen.
So, und dieses Eingabewort kann halt beliebig lang sein,
endlich lang, aber beliebig lang.
Und der muss eben das Eingabeband auch beliebig lang sein.
Das heißt, die Punkte deuten nur an,
du könntest auch längere Worte hinschreiben. Und im Grunde genommen
diese Geschichte hier oben, Die ist ja auch nur zur Illustration.
Also wir haben ja zum Beispiel den Leseschreibkopf jetzt nicht irgendwie
in der Definition drin gehabt oder so.
Der steckt ja in der Dynamik nachher drin,
dass wir sagen, hier unten mit den Konfigurationsübergängen,
ich wandere auf dem Wort weiter nach rechts,
aber wir haben ja nicht beim Automaten irgendwie gesagt,
und dann haben wir noch Lesekopf und ich kann das und das damit machen oder so.
Das steckt so ein bisschen in den Konfigurationsübergängen drin.
Zweite Frage? Das hier? Definitionsgemäß gleich.
Also es wird definiert
Boah. Es wird definiert, dass Delta Dach von Setcom Alamda
eben gerade Z ist und dann wird hier rekursiv definiert,
was dann dann mit längeren Wörtern gemeint ist. Wie gesagt,
die Definition ist so ein bisschen kryptisch, wenn man die irgendwie,
wenn man das nicht so aufschreiben würde, hier mit den direkten Übergängen,
sondern wenn man das da immer wieder reinschreiben würde,
dann hat man nachher so eine lange geschachtelte Kette von Deltas,
das sieht dann irgendwie total blöd aus,
aber wenn man das immer gleich ausführt,
ist das okay,
dann sieht das irgendwie so aus.
Genau, ich habe die Frage gar nicht wiederholt.
Also die Frage war, was dieses Doppelpunkt gleich bedeutet,
das Doppelpunkt gleich bedeutet, wird definiert als.
So, Fragen bis dahin zur Arbeitsweise vom DFA oder zur Definition vom DFA.
Dann da kurz einen Hinweis, dass mit den Rechnungen,
das wird, also es steht in nicht jedem Buch drin,
aus irgendwelchen Gründen, die meisten machen das halt mit dieser erweiterten Überführungsfunktion.
Wenn ihr euch das Beispiel von eben anguckt und das Beispiel davor,
dann werdet ihr feststellen,
dass das quasi das Gleiche ist,
nur dass man bei dieser erweiterten Überführungsfunktion
immer noch ein Delta-Dach davor schreibt
So. Ich arbeite ganz gerne mit den Rechnungen,
weil wir die später auch brauchen werden,
bei späteren Automatenmodellen arbeitet man dann ganz viel mit solchen Rechnungen,
weil man da eben immer diese Konfigurationen hat und bei den Konfigurationen dann immer gleich sehen kann,
ah ja, okay,
ich bin in dem Zustand und das Wort muss ich noch lesen oder eben bei späteren Modellen,
was der Automat dann noch so hat.
Deswegen wollte ich die Rechnung gerne hier schon einführen,
weil die aber auch nicht im Skript steht,
drückt ihr euch am besten die eine Folie aus und macht euch das mit
dem Post-it dann auch irgendwie in das Skript rein oder so,
dann habt ihr das auch, ne?
Gut, dann gibt es noch die akzeptierte Sprache.
Wir interessieren uns meistens dafür, gegeben Automat Welche Worte der
alles akzeptiert? Wir interessieren uns nicht nur dafür,
ob er eingegebenes Wort akzeptiert oder so, sondern wir möchten gerne wissen,
welche Worte der insgesamt akzeptiert und welche nicht. Und die akzeptierte Sprache,
das sind dann eben genau die Worte aus Sigmar Stern,
mit der Eigenschaft,
dass wenn ich eben im Staatszustand starte und ihm das Wort wie vorlege,
dass er dann eben in einem Endzustand landet und das Wort bis zum Ende gelesen hat.
Oder alternativ oben die Notation, dass er eben mit der
erweiterten Überführungsfunktion im Endzustand landet.
Außerhalb ist die gleiche. Genau. Und die Mengen,
die von einem DFA akzeptiert werden,
die bezeichnen wir dann als reguläre Mengen
Und die Familie aller regulären Mengen, das ist dann die Sprachfamilie Reck.
Kurzer Hinweis, wenn wir also ein DFA haben,
dann ist LA, also die von dem Automaten,
A akzeptierte Sprache, das ist eine Menge von Wörtern.
Und die ist dann in Reck drin, das heißt Dreck ist irgendwie
eine Menge in der Mengen drin sind oder eben eine Familie von Mengen.
Also ein Wort, das ist eine Kockerte Nation von Buchstaben,
mehrere Worte zusammengenommen und in eine Menge gepackt,
ist eine formale Sprache, wenn es einen Automaten gibt,
der die akzeptiert,
dann ist das sogar eine reguläre Sprache und alle diese
regulären Sprachen zusammengenommen bilden eben diese Sprachfamilie Reck
Wird uns in der Zukunft auch öfter begegnen,
weil wir irgendwie uns unterschiedliche Automatenmodelle angucken und unterschiedliche Sprachfamilien,
die von diesen Automaten akzeptiert werden. Und noch zwei letzte Begriffe,
die sind für heute nicht so wichtig,
aber dass sie die schon mal gesehen habt,
ein DFA heißt vollständig,
wenn es zu jedem Pärchen aus Zustand und Eingabesymbol immer ein Nachfolgezustand gibt.
Das bedeutet, jede Eingabe kann gelesen werden,
egal wo ihr seid und welchen Buchstaben ihr lesen müsst,
es gibt auf jeden Fall Nachfolgezustand.
Vielleicht ist das irgendwie ein Arrowstate,
wo ihr alles auffangt, aber es gibt auf
jeden Fall Nachfolgezustand
Und initial zusammenhängt, wenn ihr wirklich jeden Zustand erreichen könnt mit irgendeinem Eingabewort,
führt dazu, also wenn ihr Elemente habt,
die dem widersprechen, dann habt ihr irgendwie ja was gebastelt,
was ihr gar nicht erreichen könnt, also das könnt ihr wegschmeißen.
Meistens braucht man eben tatsächlich immer nur Initialzusammenhängende Automaten. So,
das nur, dass ihr schon mal gesehen habt,
da gehe ich irgendwie nächstes Mal noch mal drauf ein,
Zusammenfassung für den Teil, die Begriffe,
die wir da jetzt gerade so hatten, DFA,
also endlicher deterministischer Automat, der hatte Zustände,
der hatte einen Startzustand,
der hatte einen Endzustand,
der hatte diese Überführungsfunktion,
was war das mit den Kanten
Dann haben wir dazu die erweiterte Überführungsfunktion definiert,
damit wir eben nicht nur mit einzelnen Buchstaben Kantenübergänge machen können,
sondern mit ganzen Worten.
Dann hatten wir eben einmal kurz vollständig und initial zusammenhängt.
Das ist aber wie gesagt heute noch nicht so wichtig.
Und um dann eben seine Dynamik mit dieser Überführungsfunktion beschreiben
zu können, hatten wir Konfiguration, Konfigurationsübergänge.
Wir hatten den Begriff der Rechnung und der Erfolgsrechnung,
wenn er das Wort akzeptiert. Und alle Wörter insgesamt,
die ja akzeptiert sind, seine akzeptierte Sprache.
Und die nennt man auch eine reguläre Menge und alle
regulären Mengen zusammengenommen sind da die Sprachfamilie Reck.
Das hatten wir. Und jetzt kommt,
glaube ich,
wieder Hitfragen
Englisch. Ja. Der Automat gegeben,
welche Worte akzeptiert er
Genau. Ich habe gerade gesehen, ich komme ein bisschen
in Zeitnot. Ich mache es mal ein bisschen schneller.
Zweitens ist es richtig. Wichtig sind die Worte,
die er bis zum Ende lesen kann und dann muss er in einem Endzustand sein.
Das heißt, er kann die Null lesen,
dann ist er im Endzustand oder er kann 0-1-0 lesen,
dann ist er auch in einem Endzustand.
Das heißt, beide Worte sind in der akzeptierten Sprache.
Während das Wort zum Beispiel 0-1,
da war zwar mal in meinem Endzustand, ist aber,
wenn er das Wort zu Ende gelesen hat, nicht in einem Endzustand.
Das heißt, das kann er nicht akzeptieren und mehr
als zwei Worte sind natürlich auch möglich.
Mehr als zwei Inzustände sind auch möglich.
Dann, ups. Ist das ein DFA? Ja,
nein, weiß nicht, sage ich nicht.
Als fünftes dürft ihr auch noch drucken für,
ich kann nicht mehr,
ich will nach Hause gehen
1,5. Das hätte ich eben nicht sagen sollen, ne?
Jetzt bin ich ja echt mal gespannt.
Ja, mit 37 Prozent immerhin eine hauchdünne Mehrheit für zweitens
Es ist ein DFA, weil beim DFA war die Überführungsfunktion ja eine Funktion.
Das heißt, zu einem Tubel bestehend aus Zustand und Eingabesymbol
könnt ihr genau einen Nachfolgezustand definieren. Wenn ihr aber hier sagt,
dass ihr für Z0 und Lesen der Null nach Z0
kommen wollt und gleichzeitig sagt ihr für Z0 und Lesen
der Null will ich nach Z1 kommen.
Das könnt ihr nicht durch eine Funktion ausdrücken. Das heißt,
das ist kein DFA. Es muss eindeutig bestimmt sein,
wenn ich in einem Zustand bin,
wo ich durch Lesen eines Symbols hinkomme
Tönen. Welche Sprache akzeptiert dieser DFA
. . . . . Ja, sehr gut.
Genau, er akzeptiert die dritte. Die zweite,
sagen 0 Stern 1, all die Worte akzeptiert er zwar,
aber er kann ja mehr.
Er kann ja nach Lesen von 0 Stern 1 in Z2
ja auch noch Nullen lesen
Die vierte, da wäre mehr drin, als er kann,
weil wenn er ins Set 2 ist, Entschuldigung,
kann er keine Einsen mehr lesen,
sondern eben nur noch Nullen.
Deswegen, die vierte kann zu viel,
die zweite kann zu wenig, die dritte passt genau.
Und die erste kann auch zu wenig.
Letzte Frage,
was kann der denn
Musik . . . . . Warum habt ihr
den viertens gesagt? Weil der sagt, das sieht am
kompliziertsten aus,
das muss stimmen
Das finde ich aber gut, dass das rausgekommen ist.
Richtig ist tatsächlich drittens. Und die Frage ist auch,
also wir haben das zwar eben so ein bisschen gesagt,
so ja, okay, die Sprache kommt raus,
das muss passen oder so,
aber wenn man jetzt eben bei solchen etwas komplizierteren Beispielen vielleicht irgendwie landet,
dann muss man sich eben auch überlegen, wie macht man das formal?
Und im Grunde genommen, wenn ich jetzt sage,
hier drittens ist richtig, ja gut,
dann könnte ich mir das glauben oder nicht,
aber im Endeffekt läuft es darauf hinaus,
dass das erstmal eine Behauptung ist.
Ich behaupte drittens ist richtig und ich muss das noch zeigen.
Ich muss beweisen querstrich begründen, dass das richtig ist
Und wir hatten ja vorhin schon diese Geschichte,
Mengengleichheit und dann war da diese rote Box mit,
es sind zwei Richtungen zu zeigen.
Und genauso sind hier jetzt auch zwei Richtungen zu zeigen.
Es ist zu zeigen, dass jedes Wort,
was der Automat akzeptiert, also wenn ein Wort in LA drin ist,
dass das dann eben auch in dieser so dargestellten Menge ist.
Und andersherum, dass wenn ein Wort in dieser so dargestellten Menge ist,
dass es dann eben auch von dem Automaten akzeptiert wird.
Darum soll es jetzt nochmal kurz gehen.
Wir brauchen das auch auf dem Übungszettel, deswegen,
ich würde sagen, ich mache einen Ticken schneller und außerdem
überziehe ich
fünf Minuten
Schenke ich euch aber nächstes Mal, okay?
Oder ihr kriegt nächstes Mal, sagen wir,
ihr kriegt nächstes Mal sieben Minuten und dafür gebt ihr mir heute fünf.
Also dir, das machen wir. Übrigens einmal kurz zur Begründung,
warum das dritte richtig ist. Nur eine informale Begründung,
aber warum das dritte richtig ist. Wenn ihr euch die Zustände anguckt,
ihr könnt in jedem Zustand 0 und 1 lesen.
Das bedeutet, ihr könnt jedes Wort lesen,
das aus Nullen und Einsen besteht, egal wie das aussieht.
Die Kanten zu Z2, also in den Endzustand,
da stehen aber Einsen dran.
Das heißt ein Wort, das sie akzeptiert,
muss auf einer Eins enden
Und das ist genau das, was die dritte Sprache ausdrückt.
Die sagt, irgendwie ein Wort, das aus Nullen und Einsen
besteht und es endet aber auf jeden Fall auf einer Eins.
Deswegen ist das dritte richtig. Und bei den anderen
kann man sich Gegenbeispiele überlegen, warum das nicht klappt.
Ja. So, jetzt machen wir das einmal an einem
mit diesen beiden Richtungen zeigen und so.
Einmal an einem Beispiel. Und dann machen wir auch Schluss.
Welche Sprache akzeptiert dieser DFA? Jetzt kann ich behaupten,
dass der Automat also diese Sprache akzeptiert
Wenn ihr eben gut aufgepasst habt, dann sagt schon so,
hm, glaube ich nicht so richtig, aber mal gucken, was jetzt passiert.
Die Schreibweise hier übrigens soll einfach nur bedeuten,
hatten wir ja vorhin schon mit dem definitionsgemäß gleich,
das hier ist meine Behauptung, ich behaupte,
dass LA gleich dieser Menge ist und damit ich gleich nicht so viel Schreibarbeit habe,
nenne ich diese Menge eben M.
Und was ich jetzt zeigen will, ist, dass LA
tatsächlich gleich M ist. Nochmal, um es anzumerken,
das ist eine Behauptung, ich muss das jetzt beweisen,
dafür sind zwei Richtungen zu zeigen, einmal,
dass LA eine Timing von M ist und dann eben das
M eine Timing von LA ist.
Und das Wichtige jetzt ist, Erstens,
ihr müsst das sauber trennen. Ihr sagt, okay,
ich zeige jetzt die eine Timing-Beziehung später, zeige ich die andere Timing-Beziehung.
Und dann müsst ihr darauf achten, je nachdem,
welche Timing-Beziehung ihr zeigt, geht ihr von etwas anderem aus.
Wenn ihr diese Teilmengen-Beziehung zeigen wollt, dann geht ihr von den Worten aus,
die der Automat akzeptiert und zeigt, dass die auch in M sind.
Wenn ihr die Timing-Beziehung zeigen wollt, dann sagt ihr,
sei weh ein beliebiges Wort aus diesem M,
muss das Wort irgendwie so und so und so aussehen.
Also kann der Automat das auch akzeptieren. Beispiel,
Beweis, Entschuldigung, erste Timing-Beziehung. Wir wollen zeigen,
dass wenn der Automat das Wort akzeptiert,
dass das dann auch in M ist
Sei, wie also ein Wort aus LA. Das bedeutet
insbesondere, dass dieses Wort von dem Automaten akzeptiert wird.
W wird von A akzeptiert. Da Z1,
der einzige Endzustand ist, muss W auf eins enden.
Weil das die einzige Kante in Z1 rein ist. Vorher,
wo kam die Kante her, vorher war der Automat in Z0.
Und da kann man nur Nullen lesen. Zusammengefasst heißt das,
W hat die Form U1 mit U besteht eben
nur aus Nullen
Wenn ich mir das hier angucke, so ein Wort ist auch hier drin.
Ich nehme die ganzen Nullen aus dieser Menge und dann kommt
hier die Eins und da nehme ich das leere Wort.
Dann habe ich das Wort U1 konstruiert und gezeigt,
dass das auch in M drin ist.
Es gilt also auch, dass das WNM drin ist.
Das war ein bisschen schnell eben,
um das nochmal zu betonen, dieses Wort hier,
U1, ist auch in der Menge M drin,
weil das U hier drin ist, in 01 Stern.
Ich benutze die Einsen ja gar nicht.
Die Eins ist hier drin, ist auch okay.
Und hier kann ich das leere Wort rausnehmen.
Dann habe ich U1 Lamda, das ist da drin,
also ist das Wort
auch in
Rückrichtung. Jetzt würde ich zeigen,
dass die Menge M eine Teilmenge von L.A. ist.
Das heißt, ich fange an mit einem Wort aus M.
Jetzt muss ich mir überlegen, okay, wie sieht denn das aus?
Jetzt kann ich das irgendwie an diesen Konkertenationspunkten zerlegen, das Wort.
Das heißt, weh lässt sich zerlegen in X1 X2 X3,
wobei X1 eben hier raus ist.
X3 da draus und X2 aus der 1 besteht.
So, und jetzt gibt es einen schönen Trick,
der wird uns auch immer mal wieder begegnen.
Das sagt ja, wenn ich sage hier X2 ist 1
und das Wort lässt sich so zerlegen.
Das heißt ja, das sind wir auf jeden Fall
eine 1-Auftritt
Jetzt kann man sagen, naja, wenn in wen eins auftritt,
dann muss es ja auch eine Stelle geben,
wo die eins das erste Mal auftritt.
Wenn es ein Wort gibt,
wo die eins das erste Mal auftritt, heißt das,
davor kann es nur Nullen gegeben haben oder nichts.
Sonst ist das irgendwie ein Widerspruch zu der Aussage,
es muss irgendwo das erste Mal auftreten.
Das muss also auch eine Stelle geben, an der die
eins das erste Mal auftritt. Und das wiederum bedeutet,
wir können das Wort sogar so zerlegen, in X1 X2-Strich X3-Strich,
mit der Eigenschaft, dass X1 eben nur aus Nullen besteht.
Jetzt kommt diese erste eins. Naja,
und dann kommt irgendwas, was,
was 001 besteht
So, und bei dem Wort können wir jetzt sagen,
okay, geben wir das mal A irgendwie als Eingabe,
dann kann ich zunächst dieses ganze Wort X1-Strich-1-1-X2,
X3-Strich, da kann ich zuerst diesen X1-1-Strich teillesen,
der besteht ja nur aus Nullen,
das war der Teil hier.
Den kann ich halt hier lesen und in Z0 bleiben.
Sag ich, okay, da komme ich also von dem Zustand Z0
durch mehrere Übergänge wieder in den Zustand, zeigt Null.
Und das Restwort, was ich dann habe, da fehlt eben das X1-Strich.
Dann kann ich mit der Eins diesen Übergang machen,
Z0, 1X3-Strich führt zu Z1-X3-Strich,
also ich mache diesen Übergang
So, während ich so fröhlich diesen Beweis aufschreibe,
merke ich jetzt irgendwann so,
oh Gott, jetzt funktioniert das alles gar nicht mehr.
Ups, es gibt da gar keine Karte raus,
also blockiert der Automat und das Wort wird gar nicht akzeptiert.
Stelle ich fest, okay, meine Behauptung von eben war vielleicht blöd,
ich muss die irgendwo anpassen und was Neuem was anderes beweisen.
Die Sprache hier kann offensichtlich zu viel. Andersrum kann ich
die Teilmenge ja zeigen. Ich kann zeigen,
dass LA eine Teilmenge von M ist. Das heißt,
M kann jetzt also irgendwie mehr, weil ich es andersrum nicht zeigen kann.
Aus dem Beweis von eben ergibt sich auch gleich ein Gegenbeispiel.
Ich kann nämlich sowas hier nehmen 0-1,
also da wäre das X-1-Strich, wäre jetzt die 0,
das X-2-Strich ist die 1 und dann wähle ich mir als X-3-Strich irgendein Wort und stelle fest,
oh,
das kann der Automat nicht mehr lesen
Das Wort ist in M drin, kann aber vom Automaten nicht akzeptiert werden.
M ist also zu groß. Und jetzt kann man
so Sachen machen, wie dass man sich überlegt,
naja, was habe ich da eigentlich versucht zu beweisen,
wo hat das nicht geklappt?
Das hat offensichtlich da nicht mehr geklappt, wo irgendwas noch nach der Eins kam.
Also kann ich vielleicht mal eine Menge M anpassen und kann sagen,
nächster Versuch, ich möchte zeigen, dass LA eben dieser Menge entspricht.
Das glauben wir jetzt auch schon eher,
wenn wir uns den Automaten angucken,
aber das... Ich weiß, ich soll Schluss machen,
aber das ist ein bisschen...
Und alles so typisch
Ja. Mein Laptop ist noch da.
Hast du mich abgewürgt?
Leiten. Aha.
Ich habe nicht mal was angefasst. Okay,
bringen wir das mal schnell zu Ende. Neuer Versuch,
jetzt wollen wir zeigen, dass das eben dem 0-Sterne-1 entspricht.
Die eine Richtung, die funktioniert genau wie eben. Bei der anderen Richtung,
da geht es jetzt auch relativ schnell, sagen wir,
okay, sei wie eben Element aus M,
dann lässt sich weh zerlegen in U1 mit,
US nur aus Nullen und die 1 kommt von da.
Und dann kann man sagen, okay,
dann komme ich eben von Z0 durchlesen von U,
bleibe ich in Z0 und mit Lesen von 1,
komme ich dann in
Ich bin dann in Lam, habe dann das Wort komplett gelesen,
bin in einem Endzustand und akzeptiere mich fertig.
Das war das. Das ist noch die Anmerkung,
da steht das jetzt im Grunde genommen nochmal,
wenn ihr eben auf so eine Menge M kommt,
von der ihr meint, dass die von dem Automaten akzeptierte Sprache ist,
dann ist das noch zu beweisen.
Und dazu müsst ihr eben diese zwei Timing-Beziehungen zeigen.
Einmal das L.A. eine Teilmenge von M ist.
Ich gehe von einem Wort aus, das der akzeptiert
und zeige dann, dass es auch ein M ist.
Und dann müsst ihr von einem Wort aus M
ausgehen und zeigen,
dass das in L.A. ist
Und als Tipp auch für die Präsenzaufgaben,
trennt das erstmal sauber, dass ihr euch wirklich bewusst macht,
welche Richtung ihr jetzt gerade zeigen wollt.
Und dann kommt das nachher mit der Zeit,
dass ihr dann auch wirklich auf der einen Seite mit dem Automaten
akzeptiert und auf der anderen Seite eben mit der Menge M. Kurzer Ausblick,
zwei Minuten noch, kurzer Ausblick.
Diese Geschichte, die wir auch schon gesehen haben letztes Mal.
Quatsch, letztes Mal. Diese Geschichte, die wir
vorhin auch gesehen haben, mit diesen zwei Kantenübergängen.
Da ist jetzt ja nicht mehr determiniert, wie der Nachfolgezustand
Das nennt man dann nicht die Terminismus und mit dem Modell
werden wir uns nächstes Mal beschäftigen. Ihr könnt euch
schon mal überlegen, wie ihr die Überführungsfunktion definieren würdet.
Stehen so mehrere Sachen zur Auswahl. Mit dem Modell
werden wir uns beschäftigen und uns dann der Frage nähern,
ob das Modell vielleicht mehr kann und wofür das überhaupt da ist,
was man damit machen kann.
Das werden wir nächstes Mal machen. Die zusammenfassenden Folien überspringe ich
mal. Da stehen nochmal zusammengefasst alle die Begriffe drauf,
die wir jetzt so hatten, aus den mathematischen Grundlagen,
Buchstaben, Wörter,
das bei den endlichen Automaten
Und da ist nochmal das Vorgehen zusammengefasst,
was ihr in der Präsenzaufgabe anwenden sollt.
Ausblick hatte ich Ende Feierabend.