Tetapkan bahasa sebagai . Dengan kata lain, berisi kata-kata yang tidak dapat diekspresikan karena beberapa kata diulang dua kali. Apakah bebas konteks atau tidak?
Saya sudah mencoba untuk berpotongan dengan , tapi aku masih tidak bisa membuktikan apa-apa. Saya juga melihat teorema Parikh, tetapi itu tidak membantu.
formal-languages
context-free
formal-grammars
Evgeny Eltishev
sumber
sumber
Jawaban:
Ini bebas konteks. Berikut tata bahasanya:
S→A|B|AB|BA
A→a|aAa|aAb|bAb|bAa
B→b|aBa|aBb|bBb|bBa
A → a | a A a | a A b | b A b | b A a B → b | a B a | a B b | b B b | b B a
menghasilkan kata-kata dengan panjang ganjil dengan a di tengah. Sama untuk B dan b .A a B b
Saya akan memberikan bukti bahwa tata bahasa ini benar. Biarkan (bahasa dalam pertanyaan).L={a,b}∗∖{ww∣w∈{a,b}∗}
Dalil. . Dengan kata lain, tata bahasa ini menghasilkan bahasa dalam pertanyaan.L=L(S)
Bukti. Hal ini tentu berlaku untuk semua kata-kata aneh-panjang, karena tata bahasa ini menghasilkan semua aneh-panjang kata-kata, seperti halnya . Jadi mari kita fokus pada kata-kata panjang.L
Misalkan memiliki panjang genap. Saya akan menunjukkan itu x ∈ L ( G ) . Secara khusus, saya menyatakan bahwa x dapat ditulis dalam bentuk x = u v , di mana kedua u dan v memiliki panjang aneh dan memiliki surat-surat pusat yang berbeda. Jadi x dapat diturunkan dari A B atau B A (sesuai dengan apakah huruf pusat u adalah a atau b ). Pembenaran klaim: Biarkan saya th surat xx∈L x∈L(G) x x=uv u v x AB BA u a b i x dilambangkan , sehingga x = x 1 x 2 ⋯ x n . Maka karena x tidak dalam { w w ∣ w ∈ { a , b } n / 2 } , harus ada beberapa indeks i sedemikian rupa sehingga x i ≠ x i + n / 2 . Akibatnya kita dapat mengambil u = x 1 ⋯ x 2 i -xi x=x1x2⋯xn x {ww∣w∈{a,b}n/2} i xi≠xi+n/2 danv= x 2 i ⋯ x n ; huruf pusatuakan menjadi x i , dan huruf pusatvakan menjadi x i + n / 2 , jadi dengan konstruksiu,vmemiliki huruf pusat yang berbeda.u=x1⋯x2i−1 v=x2i⋯xn u xi v xi+n/2 u,v
Selanjutnya misalkan memiliki panjang genap. Saya akan menunjukkan bahwa kita harus memiliki x ∈ L . Jika x memiliki panjang genap, ia harus dapat diturunkan dari A B atau B A ; tanpa kehilangan umum, kira itu diturunkan dari A B , dan x = u v mana u adalah diturunkan dari A dan v adalah diturunkan dari B . Jika u , v memiliki panjang yang sama, maka kita harus memiliki u ≠x∈L(G) x∈L x AB BA AB x=uv u A v B u,v (karena mereka memiliki huruf pusat yang berbeda), jadi x ∉ { w w ∣ w ∈ { a , b } ∗ } . Jadi misalkan kamu , v memiliki panjang yang berbeda, katakanlah panjang ℓ dan n - ℓ masing-masing. Kemudian huruf pusatnya adalah u ( ℓ + 1 ) / 2 dan v ( n - ℓ + 1 ) / 2 . Fakta bahwa kamuu≠v x∉{ww∣w∈{a,b}∗} u,v ℓ n−ℓ u(ℓ+1)/2 v(n−ℓ+1)/2 memiliki huruf pusat yang berbeda berarti u ( ℓ + 1 ) / 2 ≠ v ( n - ℓ + 1 ) / 2 . Sejak x = u v , ini berarti bahwa x ( ℓ + 1 ) / 2 ≠ x ( n + ℓ + 1 ) / 2 . Jika kami mencoba mendekomposisi x sebagai x = w wu,v u(ℓ+1)/2≠v(n−ℓ+1)/2 x=uv x(ℓ+1)/2≠x(n+ℓ+1)/2 x mana w , w ′ memiliki panjang yang sama, maka kita akan menemukan bahwa w ( ℓ + 1 ) / 2 = x ( ℓ + 1 ) / 2 ≠ x ( n + ℓ + 1 ) / 2 = w ′ ( ℓ + 1 ) / 2 , yaitu, w ≠ w ' , sehingga x ∉ { w wx=ww′ w,w′ w(ℓ+1)/2=x(ℓ+1)/2≠x(n+ℓ+1)/2=w′(ℓ+1)/2 w≠w′ . Secara khusus, berikut bahwa x ∈ L .x∉{ww∣w∈{a,b}∗} x∈L
sumber
Bahasa ini bebas konteks, terbukti dalam makalah berikut:
Tomaszewski, Zach. "Tata Bahasa Bebas Konteks untuk String yang Diulang." Jurnal Informasi dan Ilmu Komputer , 2012 ( PDF ).
Tata bahasanya adalah sebagai berikut:
sumber