La máquina de Turing es un modelo computacional teórico introducido por Alan Turing en 1936 para estudiar la capacidad de los algoritmos. Consiste en un cabezal lector/escritor que se mueve a lo largo de una cinta infinita leyendo y reescribiendo símbolos según una tabla de transiciones, y puede simular cualquier computadora digital. La máquina demuestra que existen problemas algorítmicos insolubles y sentó las bases para clasificar problemas según su complejidad computacional.