Estoy confundido sobre el ejemplo dado en el artículo de Wikipedia sobre gramática sensible al contexto:
https://en.wikipedia.org/wiki/Context-sensitive_grammar
Descargo de responsabilidad : ya he cambiado la sección discutida en el artículo de Wikipedia, por lo que el estado actual del artículo diferirá de lo que estoy discutiendo en esta pregunta. La versión original está aquí: https://en.wikipedia.org/w/index.php?title=Context-sensitive_grammar&oldid=747616366
La siguiente gramática, con el símbolo de inicio S, genera el lenguaje canónico sin contexto {anbncn: n ≥ 1}:
- S → abc
- S → a SB c
- c B → WB
- WB → WX
- WX → BX
- BX → B c
- b B → bb
No afirman directamente que esta gramática es sensible al contexto , pero la siguiente oración implica que la consideran sensible al contexto :
las reglas 3 a 6 permiten intercambiar sucesivamente cada cB por Bc (se necesitan cuatro reglas para eso ya que una regla cB → Bc no encajaría en el esquema αAβ → αγβ)
Entonces apelan a la forma canónica de las reglas gramaticales sensibles al contexto: αAβ → αγβ, lo que implica que toda la gramática es sensible al contexto.
Lo que me confunde es la regla # 3 , que parece no ajustarse al esquema αAβ → αγβ. Considero la terminal aquí como parte de , la variable como en el esquema, está vacía. Esto implica que no puede producir , ya que debe guardarse en el mismo lugar ( ).α B A β c B W B c c B → c …
¿Me perdí algo o esta gramática realmente se colocó aquí por error (ya que no es realmente sensible al contexto)?