Theoretical Computer Science Stack Exchange is a question and answer site for theoretical computer scientists and researchers in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

While teaching how to implement FSMs using synchronous logical circuits, I noticed an intriguing coincidence: in both the theoretical CS world, and in the electrical engineering world, "state" is typically denoted $q$ (and the state space $Q$). I first asked on, but then while researching a bit this topic, I found that even Turing's original 1936 paper uses $q_1..q_n$ to denote the states of the Turing machine.

So I wonder: When does this convention go back to, and why would a "state" be denoted $q$ ?

share|cite|improve this question
If I had to guess, I'd say $q$ is short for "configuration" (because $c$ and $k$ are already bound to "constant"). But that's just a guess. – Jeffε Dec 21 '12 at 15:28
this interesting question on the historical link between Turing machines and automata's top-voted answer denies there is a direct historical link between much automata theory and Turings 1936 paper. the bottom-voted answer points out the virtually identical similarity of the state table concept. – vzn Dec 21 '12 at 16:29
I think you may get a better answer if you post it on MathOverflow. They have more computability theory experts. Another good place to ask this is FOM mailing list which has many experts on history of computability. – Kaveh Dec 24 '12 at 21:47


"We may compare a man in the process of computing a real number to machine which is only capable of a finite number of conditions q1, q2, .... qR which will be called " m-configurations"

So he stressed the fact that the machine has a finite, discrete (not continuous) number of states or quantities. For me, it is a reference to the term Quanta used in physics to denote phenomena variating not continuously but by "leaps" or "quanta". In his 1950 article "Computing Machinery and Intelligence" Alan Turing is more explicit about "leaps" speaking of "sudden jumps":

"The digital computers considered in the last section may be classified amongst the "discrete-state machines." These are the machines which move by sudden jumps or clicks from one quite definite state to another."

So I think that Alan Turing used q instead of s to denote a machine state to stress the fact that the state machine can be only in a set of discrete and finite values like the quanta in physics. And since then, the same notation is generally used.

share|cite|improve this answer

I am not sure but I read somewhere that Q means Quantum. Because we know automata works in discrete time frame. An automaton always remains in some state in finite state set, and even starts with initial state q0. Also an automaton cannot be in more than one state at any instance of time. The word quantum comes from physics that means quantity, amount or number.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.