¿Qué es Automata y por qué se necesita en la progresión de la informática?

Aplazaré el “qué” en esta pregunta, ya que es trivial mirar hacia arriba, y solo responderé el “por qué”.

Hay muchas razones por las que “se necesita”.

  • Es una asignatura central de informática. Si está interesado en la teoría de la computación, debe conocer la teoría de los autómatas y la teoría del lenguaje formal (están estrechamente relacionadas).
  • Los autómatas tienen muchas aplicaciones indefinidamente. Por ejemplo, los compiladores son un ejemplo de una aplicación que implementa máquinas de estado sofisticadas para leer e interpretar código de programación en su lenguaje de máquina.
  • Los autómatas pueden ser explorados por clase (cuántas reglas tienen, sus capacidades o estructura) y los problemas que pueden resolver. Por ejemplo, un autómata pushdown puede resolver más problemas que un autómata finito determinista (aceptan en un conjunto de idiomas más grande que este último). Estas máquinas se pueden construir en una jerarquía. Esto es fundamental para el lado “computable” de la informática teórica ya que en ese extremo de la teoría de la computación, estamos interesados ​​en lo que se puede resolver mediante algoritmo o no. Resolver un problema algorítmicamente depende del modelo de cálculo utilizado. Esto se basa elegantemente en la noción de una máquina de Turing y el estudio de la indecidibilidad.

Hay muchas otras razones por las cuales es necesario. Este es a menudo un tema que introduce uno a este fin de la informática teórica, por lo que a menudo es muy importante en el estudio de la informática.

¡Espero que esto ayude!