Pensé en este problema nuevamente, y creo que tengo una prueba completa. Es un poco más complicado de lo que esperaba. ¡Los comentarios son bienvenidos! Actualización: envié esta prueba en arXiv, en caso de que esto sea útil para alguien: http://arxiv.org/abs/1207.2819
Deje que sea un lenguaje sin contexto sobre un alfabeto . Deje ser un autómata pushdown que reconoce , con alfabeto de pila . Denotamos porel número de estados de . Sin pérdida de generalidad, podemos suponer que las transiciones de resaltan el símbolo superior de la pila y no presionan ningún símbolo en la pila o presionan en la pila el símbolo superior anterior y algún otro símbolo.Σ A L Γ | A | A ALΣALΓ|A|AA
Definimosy la longitud de bombeo, y mostrará que todo tal que tiene una descomposición de la forma tal que , y .p = | A | ( | Γ | + 1 ) p ′ w ∈ L | w | > p w = u v x y z | v x y | ≤ p | v y | ≥ 1 ∀ n ≥ 0 , u v n xp′=|A|2|Γ|p=|A|(|Γ|+1)p′w∈L|w|>pw=uvxyz|vxy|≤p|vy|≥1∀n≥0,uvnxynz∈L
Deje tal que . Sea una ruta de aceptación de longitud mínima para (representada como una secuencia de transiciones de ), denotamos su longitud por. Podemos definir, para, el tamaño de la pila en la posición de la ruta de aceptación. Para todos , definimos un
nivel sobre como un conjunto de tres índices con tal que:| w | > p π w A | π | 0 ≤ i < | π | s i i N > 0 N π i , j , k 0 ≤ i < j < k ≤ pw∈L|w|>pπwA|π|0≤i<|π|siiN>0Nπi,j,k0≤i<j<k≤p
- si=sk,sj=si+N
- para todo tal que ,i ≤ n ≤ j s i ≤ s n ≤ s jni≤n≤jsi≤sn≤sj
- para todo tal que , .j ≤ n ≤ k s k ≤ s n ≤ s knj≤n≤ksk≤sn≤sk
(Para ver un ejemplo de esto, vea la imagen para el caso 2 a continuación que ilustra un nivel).N
Definimos el nivel de como el máximo, de modo que tiene un
nivelEsta definición está motivada por la siguiente propiedad: si el tamaño de la pila sobre una ruta es mayor que su nivel , entonces los símbolos de la pila de más de niveles de profundidad nunca aparecerán. Ahora distinguiremos dos casos: , en cuyo caso sabemos que la misma configuración para el estado del autómata y los símbolos superiores de la pila se encuentran dos veces en los primeros pasos de , oπ N π N π l l l < p ′ l p + 1 π l ≥ p ′ v ylπNπNπlll<p′lp+1πl≥p′, y debe haber una posición de apilamiento y desapilamiento que pueda repetirse un número arbitrario de veces, a partir de la cual construimos e .vy
Caso 1. . Definimos las configuraciones de ya que las parejas de un estado de y una secuencia de símbolos de pila (donde pilas de tamaño inferior a a ser representado por un relleno a con un símbolo blanco especial, que es por eso que usamos al definir ). Por definición, hay
tales configuraciones, que es menor que . Por lo tanto, en los primeros pasos de de , la misma configuración se encuentra dos veces en dos posiciones diferentes, digamos . Denotamos por A A ll<p′AAll | Γ | + 1 p | A | ( | Gamma | + 1 ) l p p + 1 π i < j i j w i j π i ≤ j w = u v x y z y z = ε u = w 0 ⋯ i v = wll|Γ|+1p|A|(|Γ|+1)lpp+1πi<jiˆ (resp.
) la posición de la última letra de leída en el paso (resp.
) de . Tenemos . Por lo tanto, podemos factorizar con , , , . (Por denotamos las letras de de inclusivo a exclusivo.) Por construcción, .jˆwijπiˆ≤jˆw=uvxyzyz=ϵu=w0⋯iˆ x=w j ⋯| w| wx⋯ywxy| vxy| ≤pv=wiˆ⋯jˆx=wjˆ⋯|w|wx⋯ywxy|vxy|≤p
También tenemos que mostrar que , pero esto se deduce de nuestra observación anterior: los símbolos de pila más profundos que nunca aparecen, por lo que no hay forma de distinguir configuraciones que son iguales de acuerdo con nuestra definición, y una ruta de aceptación para se construye a partir de la de repitiendo los pasos entre y , veces.l u v n x w i j n∀n≥0,uvnxynz=uvnx∈Lluvnxwijn
Finalmente, también tenemos , porque si , entonces, porque tenemos la misma configuración en los pasos y en , sería un camino de aceptación para , contradiciendo la minimidad de .v = ϵ i j π π ′ = π 0 ⋯ i π j ⋯ | π | w π|v|>0v=ϵijππ′=π0⋯iπj⋯|π|wπ
(Tenga en cuenta que este caso equivale a aplicar el lema de bombeo para idiomas regulares codificando los símbolos de la pila superiores en el estado del autómata, lo cual es adecuado porque es lo suficientemente pequeño como para garantizar que sea mayor que el número de estados de este autómata El truco principal es que debemos ajustar para
-transitions.)l | w | ϵll|w|ϵ
Caso 2. . Sea un nivel . Para cualquier tamaño de pila , , asociamos el último push y el primer pop . Por definición, y . Aquí hay una ilustración de esta construcción. Para simplificar el dibujo, omito la distinción entre las posiciones de ruta y las posiciones de palabras que tendremos que hacer más adelante.l≥p′i,j,kp′hsi≤h≤sj
fp ( h ) = min ( { y ≥ j | s y = h } ) i ≤ lp ( hlp(h)=max({y≤j|sy=h})
fp(h)=min({y≥j|sy=h})j ≤ fp ( h ) ≤ ki≤lp(h)≤jj≤fp(h)≤k
Decimos que el estado completo de un tamaño de pila es el triple formado por:h
- El estado del autómata en la posiciónlp(h)
- el símbolo de la pila superior en la posiciónlp(h)
- El estado del autómata en la posiciónfp(h)
Hay posibles estados completos, y tamaños pila entre y
así, por el principio del palomar, existen, dos pila tamaños con
de tal manera que los estados completos en y son la misma. Como en el caso 1, definimos por , , y las posiciones de las últimas letras de leídas en las posiciones correspondientes en . Nos factor de dondep ′ + 1 s i s j g , h s i ≤ g < h ≤ s j g h ^ lp ( g ) ^ lp ( h ) ^ fp ( h ) ^ fp ( g ) w π w = u v x y z u = w 0 ⋯ ^ lp (p′p′+1sisjg,hsi≤g<h≤sjghlp(ˆg)lp(ˆh)fp(ˆh)fp(ˆg)wπw=uvxyz v= w ^ lp ( g ) ⋯ ^ lp ( h ) x= w ^ lp ( h ) ⋯ ^ fp ( h ) y= w ^ fp ( h ) ⋯ ^ fp ( g ) z= w ^ fp ( g ) ⋯ | w |u=w0⋯lp(ˆg),
,
,
, y .v=wlp(ˆg)⋯lp(ˆh)x=wlp(ˆh)⋯fp(ˆh)y=wfp(ˆh)⋯fp(ˆg)z=wfp(ˆg)⋯|w|
Esta factorización asegura que (porque según nuestra definición de niveles).k ≤ p|vxy|≤pk≤p
También tenemos que demostrar que . Para hacerlo, observe que cada vez que repetimos , comenzamos desde el mismo estado y la misma pila superior y no saltamos por debajo de nuestra posición actual en la pila (de lo contrario, tendríamos que presionar nuevamente en la posición actual, violando la maximidad de ), por lo que podemos seguir la misma ruta en y presionar la misma secuencia de símbolos en la pila. Por la maximidad de y la minimidad de , mientras leemos , no saltamos por debajo de nuestra posición actual en la pila, por lo que la ruta seguida en el autómata es la misma independientemente del número de veces repetimosv lp ( g ) A lp ( h ) fp ( h ) x v w v v v fp ( g ) A u v n x y n z w∀n≥0,uvnxynz∈Lvlp(g)Alp(h)fp(h)xv. Ahora, si repetimos tantas veces como repetimos , ya que comenzamos desde el mismo estado, ya que hemos empujado la misma secuencia de símbolos en la pila con nuestras repeticiones de , y dado que no mostramos más de lo que tiene apilados por la minimidad de , podemos seguir la misma ruta en y extraer la misma secuencia de símbolos de la pila. Por lo tanto, se puede construir una ruta de aceptación desde partir de la ruta de aceptación para .wvvvfp(g)Auvnxynzw
Finalmente, también tenemos , porque como en el caso 1, si e , podemos construir una ruta de aceptación más corta para eliminando y .v = ϵ y = ϵ w π lp ( g ) ⋯ lp ( h ) π fp ( h ) ⋯ fp ( g )|vy|>1v=ϵy=ϵwπlp(g)⋯lp(h)πfp(h)⋯fp(g)
Por lo tanto, tenemos una factorización adecuada en ambos casos, y el resultado está probado.
(El crédito es para Marc Jeanmougin por ayudarme con esta prueba).