math statistics state-machines computation-theory finite-state-machine

math - ¿Hay alguna diferencia entre una "máquina de estados finitos" y una "máquina de estados"?



statistics state-machines (4)

No estoy seguro de entender si hay una diferencia entre una máquina de estados finitos y una máquina de estados. ¿Estoy pensando demasiado en esto?

Sí, lo estás pensando demasiado. :-) Depende del contexto.

Obviamente, tomado literalmente, el término "máquina de estado finito" indica un número finito de estados, mientras que "máquina de estado" no hace tal promesa. Entonces, sí, hay una diferencia.

Sin embargo, creo que, dependiendo del contexto de la conversación, la gente simplemente dice "máquina de estado" en breve, sin considerar si se refieren a "máquina de estado finito" o "máquina de estado". Y en nuestro campo de programación de software, donde las máquinas de estado generalmente están representadas en código, a menudo podemos usar "máquina de estado" de manera intercambiable con "máquina de estado finito". Entonces, realmente, no, no hay diferencia.

OTOH, si estuviera hablando con un matemático después de la clase nocturna en el campus una noche, podría ser más selectivo con los términos específicos que usé. Entonces, sí, hay una diferencia (en este caso).

No estoy seguro de entender si hay una diferencia entre una máquina de estados finitos y una máquina de estados. ¿Estoy pensando demasiado en esto?


Claro que hay una diferencia. Uno tiene un número finito de estados, y el otro tiene un número infinito de estados. Es un poco incómodo dibujar una máquina de estados infinita, pero la matemática que permite una máquina de estados finitos también permitirá una máquina de estados infinita.

Eche un vistazo a la sección de modelos matemáticos de la página de Wikipedia de FSM. ¿Ves donde dice ''S es un conjunto de estados finitos y no vacíos''? Borrar ''finito''. Tu función de transición de estado también se volverá infinita, pero está bien, hay muchas funciones infinitas.

"From.ME.to.YOU" está combinando la taquigrafía verbal de Wikipedia con una verdadera proclamación de igualdad.


El término de máquina de estado finito (FSM) tiene una definición precisa en los libros de texto sobre teoría de autómatas. Los FSM permiten la representación más precisa y comprimida del comportamiento de las entidades de software, ya que son independientes del lenguaje de programación y la representación de datos. El término máquina de estado se usa a menudo para describir un conjunto de API de estilo FSM como Statecharts. Es desafortunado que los ingenieros de software rara vez utilicen todo el potencial de los FSM, ya que a menudo fueron quemados por una serie de problemas que afectaban a los gráficos de estado: por ejemplo, no determinismo.