Nichtdeterministischer Kellerautomat
Konstruieren Sie einen nichtdeterministischen Kellerautomaten, der folgende Sprache über dem Alphabet {a, b} akzeptiert.
L = {wav | w, v ∈ {a, b}* ∧ |w| = |v|}
0%
Loesung
Unterloesung
Aufgabe 2:
30
Kontextsensitive Grammatik
Geben Sie eine kontextsensitive Grammatik für folgende Sprache über dem Alphabet {a} an.
L = {a2n |n ≥ 0}
0%
Loesung
Unterloesung
Aufgabe 3:
25
Menge in P
Geben Sie ein Python-Programm an, das folgende Menge in Polynomialzeit entscheidet. Begründen Sie, dass Ihr Programm in Polynomialzeit arbeitet (verwenden Sie die O-Notation).
A = {(x,y,z)x,y,z ∈ N mit xy = z}
0%
Loesung
Unterloesung
Aufgabe 4:
25
deterministisches Python-Programm für TSP
Geben Sie ein Python-Programm an, das folgende Menge in Exponentialzeit entscheidet. Be- gru ̈nden Sie, dass Ihr Programm in Exponentialzeit arbeitet (verwenden Sie die O-Notation).
TSP = {(m,K,k)m,k ∈ N, K ∈ Nm×m, ∃s1,...,sm mit {s1,...,sm}={1,...,m} und m−1 K(si, si+1) + K(sm, s1) ≤ k }
0%
Loesung
Unterloesung
Zusatzaufgabe 1:
20
Nichtkontextfreie Sprache
Zeigen Sie, dass die Sprache L = {aibj | i, j ∈ N ∧ j = i2} nicht kontextfrei ist.
0%
Loesung
Unterloesung
Zusatzaufgabe 2:
30
Ausdrücke in While-Programmen
Geben Sie eine Grammatik in Chomsky-Normalform an, die die Ausdrücke von While-Programmen (Seite 22 im Skript) erzeugt. Tragen Sie Ihre Grammatik in den CYK-Algorithmus (das Gerüst finden Sie in WueCampus) ein, testen Sie das Programm und laden Sie es in WueCampus hoch. Es sind folgende Vereinfachungen erlaubt:
Der Test auf reservierte Bezeichner kann vernachlässigt werden. D.h. (and+or(if)) stellt in dieser Aufgabe einen korrekten Ausdruck dar.
Verwenden Sie das Terminalalphabet Σ = {0,...,9,a,...,z,(,),+,−,Komma}. D.h. es sind keine Großbuchstaben in Bezeichnern erlaubt.
Verwenden Sie A → [a..z] als Abkürzung für die Regeln A → a, A → b, . . ., A → z. Verwenden Sie analog die Abkürzungen A → [0..9] und A → [1..9]. Im CYK-Algorithmus können diese Abkürzungen dann durch if w[i] in Maz: A[i][i]=1 behandelt werden, wobei Maz = {’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’, ’j’,’k’,’l’,’m’,’n’,’o’,’p’,’q’,’r’,’s’,’t’,’u’,’v’,’w’,’x’,’y’,’z’}.