La teoría de autómatas se centra en la abstracción de computación y lenguajes de programación considerando elementos como entrada, estado, transición y salidas. En la teoría, la entrada se lee parte por parte hasta completarse, y se manejan autómatas finitos que usan símbolos que pueden formar palabras y lenguajes. Alan Turing propuso en 1936 el estudio de una máquina capaz de resolver problemas matemáticos representados como algoritmos, introduciendo la noción formal de autómata.