El caso más simple que conozco de un algoritmo que existe, aunque no se sabe qué algoritmo, se refiere a autómatas de estado finito.
El cociente de un idioma por un idioma se define como .L 1L1/L2L1L 1 / L 2 = { x ∣ ∃ y ∈ L 2 tal que x y ∈ L 1 }L2L1/L2={x∣∃y∈L2 such that xy∈L1}
Se demuestra fácilmente que un conjunto arbitrario cierra el conjunto regular bajo cociente. En otras palabras, si es regular y es arbitrario (no necesariamente regular), entonces es regular.L 2 L 1 / L 2L1L2L1/L2
La prueba es bastante simple. Sea una FSA que acepta el conjunto regular , donde y son respectivamente el conjunto de estados y el conjunto de estados de aceptación, y que sea un lenguaje arbitrario. Sea sea el conjunto de estados desde el cual se puede alcanzar un estado final aceptando un cadena a partir de .R Q F L F ′ = { q ∈ Q ∣ ∃ y ∈ LM=(Q,Σ,δ,q0,F)RQFLLF′={q∈Q∣∃y∈Lδ(q,y)∈F}L
El autómata , que difiere de
sólo en su conjunto de estados finales reconoce precisamente . (O vea Hopcroft-Ullman 1979, página 62 para una prueba de este hecho).M F ′ R / LM′=(Q,Σ,δ,q0,F′)MF′R/L
Sin embargo, cuando el conjunto no es decidible, puede que no haya un algoritmo para decidir qué estados tienen la propiedad que define . Entonces, aunque sabemos que el conjunto es un subconjunto de , no tenemos un algoritmo para determinar qué subconjunto. En consecuencia, aunque sabemos que es aceptado por una de las posibles FSA, no sabemos cuál es. Aunque debo confesar que sabemos en gran medida cómo se ve.F ′ F ′ Q R 2 | Q |LF′F′QR2|Q|
Este es un ejemplo de lo que a veces se llama una
prueba casi constructiva , que es una prueba de que una de un número finito de respuestas es la correcta.
Supongo que una extensión de eso podría ser una prueba de que una de las respuestas enumerables es la correcta. Pero no sé ninguno. Tampoco conozco una prueba puramente no constructiva de que algún problema sea decidible, por ejemplo, usando solo contradicciones.