Chứng tỏ rằng {xy | x | = | y |, x ≠ y} không có ngữ cảnh


43

Tôi nhớ đã gặp một câu hỏi sau đây về một ngôn ngữ được cho là không có ngữ cảnh, nhưng tôi không thể tìm thấy bằng chứng nào về thực tế. Có lẽ tôi đã đánh giá sai câu hỏi?

Dù sao, đây là câu hỏi:

Chứng minh rằng ngôn ngữ là bối cảnh miễn phí.L={xy|x|=|y|,xy}


5
Ồ, đó là một trong những tốt! <3
Raphael

Câu trả lời:


35

Yêu cầu : là không có ngữ cảnh.L

Ý tưởng bằng chứng : Phải có ít nhất một sự khác biệt giữa nửa đầu và nửa sau; chúng tôi đưa ra một ngữ pháp đảm bảo tạo ra một và để phần còn lại tùy ý.

Bằng chứng : Đối với mục đích đơn giản, giả sử một nhị phân bảng chữ cái . Bằng chứng dễ dàng mở rộng đến các kích thước khác. Hãy xem xét ngữ pháp G :Σ={a,b}G

SABBAAaaAaaAbbAabAbBbaBaaBbbBabBb

Nó khá rõ ràng rằng nó tạo ra

L(G)={w1kxw2v1k+lyv2l|w1|=|w2|=k,|v1|=|v2|=l,xy}Σ;

nghi ngờ có thể thực hiện một cảm ứng lồng nhau trên l với phân biệt trường hợp trên các cặp ( x , y ) . Bây giờ, w 2v 1 đi lại (nói một cách trực quan, w 2v 1 có thể trao đổi các ký hiệu vì cả hai đều chứa các ký hiệu được chọn độc lập với phần còn lại của từ). Do đó, xy có cùng vị trí (trong một nửa tương ứng của chúng), hàm ý L ( G ) = LGkl(x,y)w2v1w2v1xyL(G)=LG không áp đặt các hạn chế khác đối với ngôn ngữ của nó.


Người đọc quan tâm có thể tận hưởng hai vấn đề tiếp theo:

Bài tập 1 : Hãy đến với một chiếc PDA cho !L

Bài tập 2 : Thế còn ?{xyz|x|=|y|=|z|,xyyzxz}


Nếu chúng ta sử dụng ngữ pháp này, chúng ta có thể tạo ra một chuỗi như: A a B b B a , t h e n B b Sau đó, chúng ta có một S là abba! Điều này không bằng ngôn ngữ thô L, có lỗi ở đây không? SMộtB Mộtmột BbBmột,theviết sai rồiBb
George.Ziao

@ George.Zhao Tôi không theo dõi. Rõ ràng, với x = a by = b a ? mộtbbmộtLx= =mộtby= =bmột
Raphael
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.