En los autómatas finitos deterministas, hay exactamente una transición de estado para cada par de símbolo-estado de entrada. Tampoco hay transiciones de épsilon, lo que significa que no puede cambiar estados sin consumir nada de la entrada.
En autómatas finitos no deterministas, puede haber 0 o más transiciones de estado para cada par de entrada-estado. También puede tener transiciones epsilon. Cuando no hay transición de estado para un par de entrada-estado dado, decimos que el autómata se ha bloqueado, lo que significa que no puede continuar procesando la entrada y, por lo tanto, no acepta la entrada. Cuando hay más de una opción para una transición de estado para un par de estado de entrada dado, entonces la máquina puede seguir todas las rutas posibles (piense en ello como un cálculo paralelo), si una de las rutas termina en un estado de aceptación, entonces digamos que el autómata aceptó la cadena de entrada.
Sin embargo, ambos autómatas son equivalentes en términos de potencia. Puede parecer que un autómata no determinista es más poderoso, pero se ha demostrado que ambos autómatas son equivalentes, lo que significa que reconocen la misma clase de idiomas llamados idiomas regulares. La prueba de equivalencia es por construcción en la que muestra que dado un DFA, puede construir un NFA equivalente, y viceversa. La prueba se puede encontrar en cualquier libro de texto sobre teoría de la computación.
- ¿Cuál es la prueba de primitiva determinista más rápida?
- ¿Cuál es el significado del lema de Schwartz-Zippel?
- ¿Cuál es el mejor lenguaje de codificación para las cosas matemáticas? ¿Dónde puedo aprenderlo?
- ¿Cuáles son los pasos que debo seguir para dominar las matemáticas? ¿Y cuál es la forma más rápida de alcanzar este objetivo?
- ¿Por qué una máquina Turing puede ejecutar todos los algoritmos informáticos?