Tìm ngôn ngữ được tạo bởi ngữ pháp không ngữ cảnh


11

Đây là một câu hỏi từ cuốn sách Rồng (Tôi xin lỗi vì lỗi dịch thuật, tôi không có phiên bản tiếng Anh):

Ngôn ngữ nào được tạo ra bởi ngữ pháp này?

SaSbSbSaSϵ

Tôi không biết tôi phải làm gì ở đây. Định nghĩa trong cuốn sách về các ngôn ngữ nói điều này (và đó là khá nhiều trong chương này):

một ngôn ngữ là tập hợp tất cả các từ có thể được tạo bởi bất kỳ cây phân tích cú pháp nào.

Vì vậy, nếu tôi muốn biến "bất kỳ" cây phân tích cú pháp nào khỏi ngữ pháp này, tôi có thể đệ quy tiếp tục xây dựng nó, chỉ sử dụng hai quy tắc đầu tiên. Tôi đã tìm kiếm một chút và có ấn tượng rằng mọi quy tắc phải được sử dụng một lần, nhưng tôi không chắc chắn. Sẽ rất hữu ích nếu ai đó có thể cung cấp một số mẹo để giải quyết các loại vấn đề này.


1
Gợi ý: Sử dụng biểu thức chính quy
Bartosz Przybylski 18/03/13

Để biết mẹo xem câu trả lời dưới đây. Trả lời câu hỏi của bạn: không, không cần thiết phải sử dụng mọi quy tắc ít nhất một lần. Bắt đầu với ký hiệu bắt đầu (hoặc tiên đề) và áp dụng quy tắc viết lại cho đến khi bạn chỉ còn lại các ký hiệu đầu cuối (ở đây viết thường).
Hendrik ngày

giả sử Chuỗi rỗng không phải là Biểu tượng đầu cuối, theo hiểu biết của tôi thì không thể chỉ có các ký hiệu đầu cuối còn lại hoặc tôi có thể hiểu sai điều gì không?
dan


SaSbSaaSbbSaabbSaabbbSaaabbba

Câu trả lời:


6

ab

Sẽ rất hữu ích nếu ai đó có thể cung cấp một số mẹo để giải quyết các loại vấn đề này.

Không có công thức một kích cỡ phù hợp cho tất cả ở đây. Nói chung là không thể giải quyết được, cho dù hai CFG tạo ra cùng một ngôn ngữ hay hai CFL là cùng một ngôn ngữ. Một phương pháp hữu ích đang cố gắng chú ý các thuộc tính vẫn bất biến trong quá trình sản xuất.


5

Gợi ý: Xây dựng một số từ được tạo bởi ngữ pháp này. Bạn có thấy một mô hình? Bạn có thể mô tả một số thuộc tính của tất cả các từ được tạo ra bởi ngữ pháp, chỉ bằng cách xem các quy tắc? Khi bạn đã đoán (chính xác) ngôn ngữ do ngữ pháp tạo ra, sẽ không quá khó để chứng minh điều đó.

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.