Dejar ser un lenguaje normal
Es el idioma ¿regular?
Sé que es muy similar a la pregunta aquí , pero el problema es que no es una simple subcadena de una palabra en un idioma normal, sino más bien un "medio exacto": tenemos que contar el prefijo y la longitud del sufijo.
Por lo tanto, supongo que no es regular, pero no pude encontrar una manera de demostrarlo. Tampoco se me ocurrió ninguna forma de modificar el NFA de aceptar .
Respuestas:
Sugerencia: considere algunos DFA paraL . Para cadan≥0 , dejar An ser el conjunto de estados s tal que hay alguna palabra de longitudn que lleva el DFA desde el estado inicial a s . DejarBn ser el conjunto de estados t tal que hay alguna palabra de longitudn que lidera el DFA de t a un estado de aceptación. Finalmente, para cualesquiera dos estadoss,t , dejar Rs,t ser el conjunto (regular) de palabras que llevan a la DFA de s a t . Tenemos
fuente
DejarD=(Q,Σ,δ,q0,F) ser un DFA para L . Sin pérdida de generalidad, asumaqS,qF∉Q . Construimos un ε-NFAN=(Q∪{qS,qF},Σ,Δ,qS,{qF}) para L2 de la siguiente manera:
Encuentra cada camino enD desde q0 a cualquier f∈F . Para cada caminopk:q0=qk,0−→−αk,1qk,1−→−αk,2…−→−αk,iqk,i−→−−αk,i+1…−→−−αk,nkqk,nk construir los caminos p(i)k:qk,i−→−−αk,i+1qk,i+1−→−−αk,i+2…−→−−−αk,nk−iqk,nk−i para 0≤i≤nk2 (es decir, construir todas las "partes intermedias" del camino). Esto se puede hacer de manera efectiva. ConstruirΔ combinando todos estos caminos, junto con:
Bosquejo de prueba queL(N)=L2 : Dejar w∈L(N) . Por construcción sabemos quew debe coincidir al menos en uno de los caminos p(i)k encima. Cada uno de este camino pertenece a un camino enD , que contiene un prefijo adicional y un sufijo de longitud i . Escogerx como la palabra descrita por este prefijo y y el descrito por el sufijo Encontramos esoxwy∈L , con |x|=|y|=i . Con un razonamiento similar encontramos para cadaw∈L2 un camino en N . Dejari ser la longitud de x y y perteneciendo a w . p(i)k para algunos k formas w .
AsíL(N)=L2 .
fuente