Chain of Thought: The Idea That Started It

The observation that launched reasoning models was almost embarrassingly simple: if you ask a language model to "think step by step" before answering, it gets dramatically better at hard problems — with no change to the model at all. That a few words of prompting could unlock reasoning already latent in the model was a clue about something deep: the ability to reason was there, waiting to be elicited, and giving the model room to work was the key.

Reasoning models generate an extended chain of thought before answering. That idea has a direct ancestor: chain-of-thought (CoT) prompting, the discovery that prompting a model to produce intermediate reasoning steps sharply improves its performance on complex tasks. This post traces the idea — what CoT is, why it works, its variants like self-consistency, and how it leads directly from a prompting trick to models trained to reason. Understanding CoT is understanding the foundation reasoning models are built on.

The discovery: step by step helps

The core finding: prompting a model to reason step by step — rather than jump straight to an answer — substantially improves accuracy on problems that require multiple steps (arithmetic, commonsense, symbolic reasoning). Instead of asking “what’s the answer?”, you prompt the model to “show its work,” and it produces a sequence of intermediate reasoning steps leading to the answer. The improvement on multi-step problems was large and surprising:

This is the seed of everything that follows: the realization that a model’s reasoning ability is partly a matter of giving it room to reason, not just what it knows. “Let’s think step by step” turned out to be one of the highest-leverage prompts ever found.

Why generating reasoning helps

Why should writing out intermediate steps make a model more accurate? The mechanism connects to how LLMs compute:

So CoT isn’t cosmetic — it changes the computation. Writing out steps decomposes the problem, spends more compute, and conditions the answer on explicit reasoning. That’s why a prompt with no model change can produce large accuracy gains, and it’s the same mechanism reasoning models exploit at a much larger scale.

Self-consistency and sampling many paths

A powerful extension of CoT, and an early form of spending test-time compute for accuracy, is self-consistency: instead of generating one chain of thought, generate many and take the most common answer.

Self-consistency is important as a bridge idea: it shows that you can spend more inference compute (generate many reasoning paths) to get better answers, without touching the model. This is exactly the test-time-compute principle the next post develops — and self-consistency, best-of-N, and verifier-based selection (a later post) are all variations on “sample more, then choose well.” CoT gave one reasoning path; self-consistency showed that many paths plus aggregation is better still.

From prompting to trained reasoning

CoT prompting revealed reasoning was latent and elicitable — but prompting has limits, and closing them leads directly to reasoning models:

So the arc is clear: CoT prompting discovered that reasoning helps and is elicitable; self-consistency showed that spending inference compute on multiple reasoning paths helps more; and reasoning models take the logical next step of training the model to reason well and natively spend inference compute on thinking. Chain of thought is where it started — a prompt that unlocked reasoning — and the rest is scaling and internalizing that idea. Next: test-time compute, the principle that ties it all together.

Key takeaways

Further reading

Sources & References

Training on the model's own successful reasoning