Ist die Sprache L = { 0 n 1 m ∣ n und m sind co-prime }
Ich denke, dass es nicht kontextfrei ist, weil es für einen PDA zu kompliziert erscheint, um zu entscheiden, ob zwei Zahlen Co-Prime sind oder nicht.
Ich habe erfolglos versucht, das Pump-Lemma zu verwenden.
Jede Hilfe wäre gerne dankbar.
Bearbeiten:
Hier ist einer meiner fehlgeschlagenen Versuche mit dem Pump-Lemma:
Sei N
Wenn v x nur Nullen enthält, dann | v x | = K eine ganze Zahl zwischen 1 und N . Definiere m als m = N ! / k . Für i = m + 1 ist das Wort u v i w x i y = 0 p + N ! 1 p + N ! ∉ L.
Ich habe jedoch keine solche Ganzzahl i für die anderen Zerlegungsfälle gefunden.
Antworten:
Lächerlich, dass ich das vorher nicht gesehen habe ...
Der Beweis, dass die Sprache (nennen wir es L ) nicht kontextfrei ist, ist ein Widerspruch. Angenommen, L ist kontextfrei, durch das Pump-Lemma für CFGs gibt es eine Konstante N, so dass jeder String σ ∈ L so ist, dass | σ | ≥ N kann sie geschrieben werden , σ = u v x y z mit v y & ne; & egr; so dass für alle k ≥ 0 die Zeichenfolge u v k x y k z ∈ L . NehmenL L N σ∈L |σ|≥N σ=uvxyz vy≠ϵ k≥0 uvkxykz∈L m , n verschiedene Primzahlen (so dass gcd ( m , n ) = 1 ) und m , n > 2 N und nehmen σ = 0 m 1 n . Der gepumpte String ist 0 m + k a 1 n + k b für einige Konstanten a , b , nicht beide Null, und so, dass a < m und b < n (wir haben am,n gcd(m,n)=1 m,n>2N σ=0m1n 0m+ka1n+kb a b a<m b<n ,b≤N<m/2,n/2a,b≤N<m/2,n/2 by the way mm , nn were selected). The case of one of them zero was covered by OP, so consider a,b≠0a,b≠0 . Now:
m+ka≡0(modn)n+kb≡0(modm)
This has a unique solution k∗k∗ modulo mnmn by the chinese remainder theorem
(we have a<na<n , and as nn is prime, gcd(a,n)=1gcd(a,n)=1 ; similarly bb and mm ),
and thus we can write:
m+k∗a≡0(modmn)n+k∗b≡0(modmn)
quelle