The field is divided into three major branches: automata theory and languages, computability theory, and computational complexity theory, which are linked by the question: "What are the fundamental capabilities and limitations of computers?".
O campo divídese en tres áreas principais: a teoría e linguaxe de autómatas, a teoría da computabilidade e a teoría da complexidade computacional, que están ligadas pola pregunta: "cales son as capacidades fundamentais e as limitacións das computadoras?".