Có thể có 'trạng thái chết' trong ngữ pháp không ngữ cảnh không?


18

Một ngữ pháp không ngữ cảnh có thể bao gồm "trạng thái chết" từ một máy tự động, chẳng hạn như

G=({a,b,c},{A,B,C},{AaB,Bb,BC,CcC},A)?

Quy tắc sản xuất C c C sẽ lặp lại mãi mãi và không bao giờ tạo ra một từ. Điều này được cho phép hoặc PHẢI quy tắc sản xuất kết thúc với một thiết bị đầu cuối tại một số điểm?BCCcC

Câu trả lời:


24

Ngữ pháp không ngữ cảnh được phép chứa các quy tắc không hiệu quả . Điều này được chấp nhận, bởi vì mọi CFG tạo ra cùng ngôn ngữ với một số CFG thích hợp không chứa các quy tắc không hiệu quả, không có sản phẩm chuỗi trống và không có chu kỳ; Vì vậy, sẽ an toàn khi cho rằng CFG là phù hợp mà không mất tính tổng quát.


Không hoàn toàn: CFG thích hợp phải đáp ứng thêm hai yêu cầu. Vì vậy, tôi sẽ cải tổ điều này.
Revierpost

@reinierpost: Tôi đoán bạn có nghĩa là tồn tại các lớp CFG cấm các quy tắc không hiệu quả, nhưng vẫn bao gồm các CFG không phù hợp? Tôi đoán việc cải cách có thể đơn giản như: "trừ khi, ví dụ, chúng là"
mrcvens

Ý tôi là không phải mọi CFG mà không có quy tắc không hiệu quả là phù hợp, điều này mâu thuẫn với tuyên bố của bạn; nhưng định nghĩa về CFG phù hợp, bằng cách loại trừ rõ ràng các quy tắc không hiệu quả, cho thấy rõ rằng những điều này có thể có trong các CFG tùy ý, vì vậy đó là những gì tôi viết.
Revierpost

Cảm ơn bạn đã cải thiện của bạn. Tôi muốn nói rằng có những lớp con CFG mà chúng không được phép chứa những quy tắc như vậy.
ilke444

Có một CFG thích hợp không chứa các quy tắc không sinh sản, không có sản phẩm chuỗi trống và không có chu trình tạo ra cùng một ngôn ngữ như ({a}, {A}, {A-> epsilon}, A) không? Tôi thích câu đầu tiên. Có lẽ câu thứ hai phải là "Điều này là do định nghĩa của CFG cho phép bất kỳ chuỗi hữu hạn nào của các thiết bị đầu cuối và số không là phần bên trái của sản phẩm."
Theodore Norvell

3

Phải, tất nhiên. Mỗi NFA có thể được viết dưới dạng CFG. Và việc xây dựng một DFA với 'trạng thái chết' (thuật ngữ tôi được dạy, là 'chìm') là chuyện nhỏ.

G=({a},{A},{AA},A)
{a}

ϵ

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.