Apakah pelengkap {ww | ...} bebas konteks?

13

Tetapkan bahasa sebagai . Dengan kata lain,LL={a,b}{www{a,b}}L berisi kata-kata yang tidak dapat diekspresikan karena beberapa kata diulang dua kali. ApakahL bebas konteks atau tidak?

Saya sudah mencoba untuk berpotongan L dengan abab , tapi aku masih tidak bisa membuktikan apa-apa. Saya juga melihat teorema Parikh, tetapi itu tidak membantu.

Evgeny Eltishev
sumber
Perhatikan pertanyaan terkait erat ini .
Raphael

Jawaban:

27

Ini bebas konteks. Berikut tata bahasanya:

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 aSA|B|AB|BA
Aa|aAa|aAb|bAb|bAa
Bb|aBa|aBb|bBb|bBa

menghasilkan kata-kata dengan panjang ganjil dengan a di tengah. Sama untuk B dan b .AaBb

Saya akan memberikan bukti bahwa tata bahasa ini benar. Biarkan (bahasa dalam pertanyaan).L={a,b}{www{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 xxLxL(G)xx=uvuvxABBAuabixdilambangkan , sehingga x = x 1 x 2x n . Maka karena x tidak dalam { w w w { a , b } n / 2 } , harus ada beberapa indeks i sedemikian rupa sehingga x ix i + n / 2 . Akibatnya kita dapat mengambil u = x 1x 2 i -xix=x1x2xnx{www{a,b}n/2}ixixi+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=x1x2i1v=x2ixnuxivxi+n/2u,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 xL(G)xLxABBAABx=uvuAvBu,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 kamuuvx{www{a,b}}u,vnu(+1)/2v(n+1)/2 memiliki huruf pusat yang berbeda berarti u ( + 1 ) / 2v ( n - + 1 ) / 2 . Sejak x = u v , ini berarti bahwa x ( + 1 ) / 2x ( n + + 1 ) / 2 . Jika kami mencoba mendekomposisi x sebagai x = w wu,vu(+1)/2v(n+1)/2x=uvx(+1)/2x(n++1)/2x mana w , w memiliki panjang yang sama, maka kita akan menemukan bahwa w ( + 1 ) / 2 = x ( + 1 ) / 2x ( n + + 1 ) / 2 = w ( + 1 ) / 2 , yaitu, w w ' , sehingga x { w wx=www,ww(+1)/2=x(+1)/2x(n++1)/2=w(+1)/2ww . Secara khusus, berikut bahwa x L .x{www{a,b}}xL

Evgeny Eltishev
sumber
2
Saya telah mengedit jawaban untuk memberikan bukti kebenaran untuk tata bahasa ini, berdasarkan petunjuk / sketsa yang diberikan oleh Evgeny Eltishev. Semoga sekarang menjadi lebih jelas mengapa ini berhasil.
DW
Bisakah itu menghasilkan "aabb"?
manasij7479
1
@ manasij7479 Ya: . SABaBa(aBb)aabb
J.-E.
3

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:

SEUϵEABBAAZAZaBZBZbUZUZZZab
A. Mashreghi
sumber
8
Welcome! The following is not a criticism of this answer. The Journal of Information and Computer Science is published by "World Academic Union", which is on Beall's list of predatory open access publishers. It's sad that there are companies in the world who will take relatively large amounts of people's money to publish papers that do nothing more than solve undergraduate-level exercises.
David Richerby
I don't have enough reputation to comment on the above answer. But that grammar seems wrong to me. It cannot generate "aaab" which is in the language.
A. Mashreghi
1
After performing CFGCNFCYK (you should try it), SABaAaBaaaBaaab, so it seems it can generate aaab.
Evil
You right it does
A. Mashreghi