Tôi bối rối về ví dụ được đưa ra trong bài viết Wikipedia về ngữ pháp nhạy cảm ngữ cảnh:
https://en.wikipedia.org/wiki/Context-sensitive_grammar
Disclamer : Tôi đã thay đổi phần thảo luận trong bài viết trên wikipedia, vì vậy trạng thái hiện tại của bài viết sẽ khác với những gì tôi đang thảo luận trong câu hỏi này. Phiên bản gốc có tại đây: https://en.wikipedia.org/w/index.php?title=Context-sensitive_grammar&oldid=747616366
Ngữ pháp sau đây, với ký hiệu bắt đầu S, tạo ra ngôn ngữ không ngữ cảnh chính tắc {anbncn: n 1}:
- S → abc
- S → một SB c
- c B → WB
- WB → WX
- WX → BX
- BX → B c
- b B → bb
Họ không tuyên bố trực tiếp rằng ngữ pháp này nhạy cảm với ngữ cảnh , nhưng câu tiếp theo ngụ ý rằng họ coi nó là ngữ cảnh nhạy cảm :
quy tắc 3 đến 6 cho phép trao đổi liên tiếp từng cB thành Bc (cần có bốn quy tắc vì quy tắc cB → Bc sẽ không phù hợp với sơ đồ αAβ → αγβ)
Vì vậy, họ thu hút hình thức chính tắc của các quy tắc ngữ pháp nhạy cảm theo ngữ cảnh: αAβ → αγβ, ngụ ý rằng toàn bộ ngữ pháp là nhạy cảm theo ngữ cảnh.
Điều tôi bối rối là quy tắc số 3 , dường như không phù hợp với sơ đồ αAβ → αγβ. Tôi coi terminal ở đây là một phần của , biến là trong lược đồ, trống. Điều này ngụ ý rằng không thể tạo ra , vì nên được lưu trên cùng một vị trí ( ).αMột β c B W B c c B → c ...
Có phải tôi đã bỏ lỡ điều gì đó hoặc ngữ pháp này thực sự bị đặt nhầm ở đây (vì nó không thực sự nhạy cảm với ngữ cảnh)?