FSK1-1 Operationen auf formalen Sprachen (2 Punkte)
Aufgabenstellung
Beweisen oder widerlegen Sie jede der folgenden Aussagen:
a) Seien und formale Sprachen über dem Alphabet , sodass alle Wörter in eine gerade Anzahl von ‘s haben und alle Wörter in eine gerade Anzahl von ‘s haben. Dann haben alle Wörter in eine gerade Anzahl von ‘s und eine gerade Anzahl von ‘s.
Gedankengang:
- Im Schnitt sind nur Wörter drin, die jeweils in und drin sind.
- D.h. es muss aus immer ein gerades A sein und aus eine gerade Anzahl an B’s
- Der Schnitt kann nur für Wörter erfolgen, die in beiden Sprachen drin sind und gleich sind
Beweis:
- Eine gerade Zahl wird definiert durch
- Sei ein Wort
- Sei und Funktionen, die die Anzahl an A’s und B’s im Wort darstellen
- Für alle Wörter in gilt laut Definition, dass diese eine gerade Anzahl von A’s haben
- Für alle Wörter in gilt laut Definition, dass diese eine gerade Anzahl von B’s haben
- Für ein Wort welches in ist, gilt - Dadurch folgt, dass jeweils die Definitionen für und einhalten muss, was bedeutet, dass:
b) Sei die formale Sprache definiert als . Dann gilt .
Z.Z.: Anzahl a’s in w kleiner gleich Anzahl b’s dann folgt, dass
Beweis:
- Ein Wort ist nur in der Sprache wenn es mehr oder gleich viele b’s wie a’s hat
- ist die Vereinigung von mit allen möglichen Wörtern aus inkl. dem leeren Wort die Anzahl von b’s ist hier einfach nur die Länge des Wortes
- Dies erfüllt jedoch trivialerweise die Definition der Sprache , da: und somit , da 0 kleiner gleich jeder anderen positiven Zahl ist
c) Sei ein Alphabet und . Sei die Sprache . Dann ist eine endliche Sprache.
Z.Z.: L, die Sprache aller Wörter w über dem Alphabet Σ mit einer Länge von höchstens k, ist eine endliche Sprache
Beweis
- Stimmt, da eine endliche Zahl ist und definiert ist, dass
- Es gibt für jedes Wort bis zur Länge bis also folgende mögliche Anzahlen
- Dies ist eine Endliche Geometrische Reihe im Stil: da es sich um eine endliche geometrische Reihe handelt ist die Behauptung, dass eine endliche Sprache ist trivialerweise korrekt.
- Alphabete sind immer endlich
d) Über dem Alphabet definieren wir die Sprache , also die Sprache der Wörter, die so viele ‘s und ‘s wie ‘s enthalten. Es gilt: .
(Z.Z.):
Beweis:
- Jedes Wort erfüllt per Definition die Bedingung .
- Das leere Wort erfüllt die Bedingung trivialerweise, denn es enthält keine Buchstaben.
- Die Konkatenation zweier Wörter ergibt ein Wort , für das gilt:
- Da Konkatenationen assoziativ sind, erweitert sich diese Eigenschaft auf die Konkatenation beliebig vieler Wörter aus .
- Folglich erfüllt jedes Wort in , einschließlich und beliebiger Konkatenationen von Wörtern aus , die definierende Bedingung von .
Daher ist bewiesen.
Induktiver Beweis für FSK1-1d
FSK1-2 Grammatiken angeben (2 Punkte)
Note
Sei . Geben Sie für jede der folgenden Teilaufgaben eine Grammatik als 4-Tupel an, sodass die Sprache über erzeugt. Verwenden Sie keine -Produktionen. Erläutern Sie, warum gilt, indem Sie die “Aufgabe” der einzelnen Variablen und Produktionen erläutern. Geben Sie außerdem jeweils den Typ Ihrer Grammatik an (mit Begründung).
Kochrezept zum Erstellen von Grammatiken
a)
- Alphabet:
- 4-Tupel Grammatikform
- Erklärung der Schreibweise
- reguläre Grammatik, da sie rechtslineare Produktionen verwendet.
- a und b produzieren und Aneinanderreihungen von a und b
b)
- Alphabet:
- 4-Tupel Grammatikform
Tutorium
Tutor sagt bei endlichen Mengen kann man es auch so schreiben wie unten, ist nur von Typ 2
c)
Für die Sprache , benötigen wir eine kontextfreie Grammatik (CFG), da das Muster eine spezifische Reihenfolge und Anzahl von ‘a’s und ‘b’s erfordert, die gleichmäßig verteilt sind. Hier ist eine mögliche Grammatik:
- Alphabet:
- 4-Tupel Grammatikform
- :
- :
- :
Tutoriumslösung
- :
- Grammatik Typ 2 linke seite nur Variablen
- nicht Typ 3, da S auf sich selbst refernziert z.B.
Die Grammatik wird dann folgendermaßen als 4-Tupel repräsentiert:
Diese Grammatik erzeugt Wörter in , indem sie zunächst eine beliebige Anzahl von ‘a’s hinzufügt (durch wiederholte Anwendung von ), gefolgt von einer gleichen Anzahl von ‘b’s (durch wiederholte Anwendung von ). Dann wechselt sie zum Zustand , wo sie eine gleiche Anzahl von ‘a’s hinzufügt (durch wiederholte Anwendung von ), gefolgt von einer gleichen Anzahl von ‘b’s zum Abschluss (durch wiederholte Anwendung von )
FSK1-3 Klammerausdrücke
Die Grammatik für Klammerausdrücke wird definiert durch das 4-Tupel , wobei die Produktionsregeln wie folgt lauten:
Fragen und Antworten
a) Von welchem Typ ist die Grammatik ?
Die Grammatik ist eine kontextfreie Grammatik (CFG) Typ 2, weil jede Produktionsregel ein einzelnes Nichtterminalsymbol auf der linken Seite hat, das durch eine Kette von Terminalen und/oder Nichtterminalen auf der rechten Seite ersetzt wird.
b) Stellen Sie für folgende Zeichenketten fest, ob sie Wörter in sind. Begründen Sie Ihre Antwort. Bei Wörtern die in sind, geben Sie eine Linksableitung, eine Rechtsableitung und einen Syntaxbaum an.
- i)
Synatxbaum fehlt
-
ii)
- enthält Variablen
-
iii)
- ] alleine kann nicht erzeugt werden
-
iv)
- ein ] zu viel bei eckigen klammern
c) Geben Sie vier verschiedene Wörter aus an, die nicht in Teilaufgabe b) vorkommen
d) Vier verschiedene Wörter aus , die nicht in sind
Beispiele für Wörter, die nicht in liegen:
- (
- )
- [
- ]
Diese Wörter sind nicht in , da sie die korrespondierenden Klammern nicht richtig schließen oder öffnen.
e) Beschreibung von
Die Sprache besteht aus allen korrekt geschachtelten Klammerausdrücken, die entweder runde oder eckige Klammern nutzen können. Ein korrekter Ausdruck muss jede geöffnete Klammer mit der entsprechenden schließenden Klammer der gleichen Form schließen.
FSK1-4 Spracheigenschaft per Induktion beweisen (0 Punkte)
Aufgabenstellung
Die Grammatik sei definiert durch . Beweisen Sie, dass gilt:
Hinweis: Beweisen Sie zunächst die allgemeinere Aussage, dass für jede Satzform gilt: Wenn von in Schritten erzeugt wird (d.h. ), dann ist . Verwenden Sie vollständige Induktion über .
Induktionsbeweis für die Spracheigenschaft von G
Um zu zeigen, dass für jede Satzform gilt: Wenn in Schritten von erzeugt wird (d.h. ), dann ist , verwenden wir eine vollständige Induktion über .
Induktionsanfang (IA): Für gibt es nur die Satzform , und diese enthält keine ‘s oder ‘s, also ist .
Induktionsvoraussetzung (IV): Angenommen, die Aussage gilt für eine beliebige Satzform , die in Schritten von erzeugt wird, d.h. .
Induktionsschritt (IS): Wir nehmen an, dass in Schritten von erzeugt wird. Dann muss eine Ableitung der Form haben, wobei eine Satzform ist, die in oder weniger Schritten erzeugt wird. Da in oder weniger Schritten erzeugt wird, gilt nach Induktionsvoraussetzung .
Nun betrachten wir die Ableitung . Es gibt drei mögliche Regeln, die angewendet werden könnten:
Für jeden dieser Fälle betrachten wir, wie viele ‘s und ‘s in hinzukommen:
-
Wenn die Regel angewendet wird, dann wird die Anzahl der ‘s und ‘s in verdoppelt, also bleibt das Verhältnis .
-
Wenn die Regel angewendet wird, dann wird ein und zwei ‘s hinzugefügt, also wird das Verhältnis .
-
Wenn die Regel angewendet wird, dann wird ein und zwei ‘s hinzugefügt, also wird das Verhältnis .
In jedem Fall bleibt das Verhältnis unverändert, was bedeutet, dass nach Schritten immer noch gilt.
Damit haben wir die Aussage für alle Satzformen bewiesen, die von erzeugt werden können, und der Induktionsbeweis ist abgeschlossen.