Idiomas sin contexto cerrados bajo inversión

8

En la clase de esta semana hemos estado aprendiendo sobre las CFL y sus propiedades de cierre. He visto pruebas de unión, intersección y cumplido, pero para la reversión, mi profesor acaba de decir que está cerrado. Quería ver la prueba, así que he estado buscando durante los últimos días, pero todo lo que he encontrado es que la mayoría de la gente dice que revertir las producciones es suficiente para demostrarlo. Aquellos que se vuelven un poco más formales solo afirman que hay una prueba inductiva fácil que pueden dar. ¿Alguien puede proporcionarme más información / sugerencias sobre la prueba inductiva? Por más que lo intente, no se me ocurre.

Sam Hooper
fuente

Respuestas:

11

Sus fuentes son correctas y me temo que solo hay poco que agregar, excepto el formalismo. I denotar la inversa (espejo) de cadena por .wwR

Si es una gramática, dejar que sea su invertido, por lo que para la producción de en tenemos en .GHAwGAwRH

Entonces por inducción se demuestra que si y sólo si .AGwAHwR

  • ( Base ) En cero pasos que tiene si y sólo si .AG0AAH0A
  • ( inducción ) Suponiendo que iff podemos aplicar cualquier producción en (y en en reversa) y obtener y respectivamente, donde de hecho es el reverso de .AGw1Bw2AHw2RBw1RBuGHAGw1uw2AHw2RuRw1Rw2RuRw1Rw1uw2

Esta es una prueba muy condensada, pero contiene todos los ingredientes necesarios. Nuevamente, una derivación de la gramática inversa es la inversa de la original. Esto es especialmente claro cuando se observan los dos árboles de derivación.

Hendrik Jan
fuente
¿esto vale para el lenguaje determinista libre de contexto?
akashchandrakar
@aksam Deterministic CFL no están cerrados bajo inversión. Tenga en cuenta que el determinismo para CFL generalmente se define con autómatas pushdown, no gramáticas.
Hendrik ene
7

Hay otra forma de ver este problema.

Considere que la Lengua es una CFL. Esto significa que hay una gramática que satisface la CFL. Podemos suponer que esto está en forma normal de Chomsky.LG={N,,P,S}

Si es parte del lenguaje, trivialmente también es parte del lenguaje. Ahora, para cada producción de la forma , reemplácela con, y para las producciones de la forma , donde , déjelo igual.ϵϵRP1ABP1BAP1aa

Desde el árbol de análisis de la cadena derivada, es fácil ver que el lenguaje derivado será exactamente el reverso del idioma inicial, ya que la construcción refleja el árbol de análisis original.

Ameet Deshpande
fuente
No creo que sea "otra forma": es la misma forma en que se expresó de una manera diferente (y en realidad, creo, más fácil de seguir). La parte donde dices "es fácil de ver" es la parte donde entra la inducción. De todos modos, +1 ya que esta respuesta es definitivamente útil.
David Richerby el
4

Antes que nada. Las CFL no están cerradas bajo intersección o complemento (o diferencia para el caso). Están cerrados bajo Unión, Concatenación, cierre de estrella de Kleene, sustitución, homomorfismo, homomorfismo inverso e inversión. NOTA: Los dos homomorfismos generalmente no están cubiertos en un curso de introducción a la teoría de computadoras.

Para probar la inversión, Sea L un CFL, con gramática G = (V, T, P, S). Sea L R el reverso de L, de modo que la gramática sea G R = (V, T, P R , S). Es decir, revertir cada producción.

Ex. P -> AB se convertiría en P -> BA

Como G R es un CFG, entonces L (G R ) es un CFL.

ahaywood
fuente
Bienvenido al sitio! Me sorprende que nadie se haya dado cuenta antes de que la pregunta afirma incorrectamente que las CFL están cerradas bajo intersección y complemento.
David Richerby