Interpretable
Module 2.4 · ~2.5h

RLVR & Reasoning Models

Verifiable rewards, DeepSeek-R1, test-time compute, and whether chains of thought tell the truth.

You'll be able to
  • Contrast learned reward models with verifiable rewards
  • Explain how long chain-of-thought emerges from RLVR
  • Assess when a chain of thought is faithful to the real computation
Learn

Rewards you can check

Module 2.3 ended in an uncomfortable place. The reward model is a learned approximation of noisy human judgment; push a policy against it hard enough and you get Goodhart. The obvious question is whether there is any reward you can optimize without that risk.

For a narrow but enormously valuable slice of tasks, yes. If the problem is “solve this competition math problem” or “make these unit tests pass,” the reward is not a prediction of what a human would like. It is a fact:

r(x,y)=1[answer(y)=ground truth]r(x, y) = \mathbf{1}\big[\text{answer}(y) = \text{ground truth}\big]

This is RLVR — reinforcement learning from verifiable rewards. There is no reward model to overfit, no labeler disagreement to average, no sigmoid extrapolating past its support. A checker runs and returns a bit.

RLVR
RL where the reward comes from an automatic verifier — a symbolic answer-checker, a test suite, a compiler, a proof assistant — rather than from a model trained on human preferences. Typically a small format reward is added (“put your final answer in \boxed{}”) so the checker can parse the output at all.
Key idea
RLVR doesn't eliminate reward hacking. It relocates it. The reward is now exactly correct as a measure of the checker, so the policy is free to optimize the checker instead of the task — and unlike a reward model, a checker cannot be made more robust by adding data.

The relocated failures are documented and mundane. Agents that edit the test file rather than the implementation. Solutions that special-case the visible test inputs. In formal-proof settings, exploiting an unsoundness in the checker. And the systemic version: a verifier checks the final answer, so any reasoning that arrives there is reinforced — including reasoning that was wrong twice in compensating directions.

What verifiability buys, and what it costs
The scope restriction is severe. “Is this essay good?”, “is this refusal appropriate?”, “is this medical summary safe?” have no checker and never will. RLVR made spectacular progress on the tasks that happen to have ground truth, which is a reason to expect capability profiles to become lopsided: sharply superhuman where a verifier exists, unchanged where one doesn't. Alignment properties live entirely in the second category.
Learn

How long chains of thought emerge

Here is the part that genuinely surprised people. Nobody taught reasoning models to think step by step for ten thousand tokens, backtrack, or double-check their arithmetic. Those behaviors emerged from optimizing a single bit of reward.

DeepSeek-R1-Zero (2025) is the cleanest demonstration because it removed every confound. Start from a base model with no supervised fine-tuning on reasoning traces at all. Apply RL with two rule-based rewards: is the final answer right, and is it in the required format. Run it.

The model's responses got longer on their own — not because length was rewarded, but because longer chains produced correct answers more often, so the gradient favored them. Along the way, self-verification and backtracking appeared; the paper highlights an “aha moment” where the model interrupts itself mid-solution to re-examine an earlier step. Reported AIME 2024 pass@1 rose from roughly 16% to roughly 71% over the RL run, and to roughly 87% with majority voting over 64 samples.

sampled trajectoriesreward 0reward 0reward 1reward 0reward 1tokens of reasoning →
Why length emerges without being rewarded. RLVR reinforces whole trajectories that reach the right answer. Long trajectories that reason carefully hit the answer more often than short guesses, so probability mass migrates toward them. The reward function never mentions length.

R1-Zero was not shippable — poor readability, languages mixed mid-sentence. Nothing in the reward said “be legible,” so it wasn't. DeepSeek-R1 proper adds a small cold-start SFT set of readable long chains before the RL, then a rejection-sampling and SFT pass, then a final RL stage covering general helpfulness. The capability came from RL; the presentability came from the scaffolding around it.

GRPO
Group Relative Policy Optimization, the optimizer used. For each prompt it samples a group of GG responses and uses the group's own mean and standard deviation to normalize rewards into advantages, Ai=(riμ)/σA_i = (r_i - \mu)/\sigma. That removes PPO's learned value network entirely — one fewer large model to train and store. Everything else (clipped ratio, KL to a reference) is PPO.

There is an older, simpler idea in the same family worth knowing because you can run it on a laptop. Expert iteration (also STaR, or rejection-sampling fine-tuning): sample kk solutions per problem, keep only the ones the verifier accepts, fine-tune on those with ordinary cross-entropy, repeat. No policy gradient, no advantage estimation. The model teaches itself using search plus a filter. Most of RLVR's conceptual content is already here.

A separate question is what gets rewarded. Outcome supervision scores only the final answer. Process supervision scores each intermediate step, using a process reward model (PRM) trained on step-level human labels. Lightman et al. (2023) compared the two directly and found process supervision significantly better on MATH — their PRM solved 78% of problems in a representative test subset — and released PRM800K, 800,000 step-level labels, so others could reproduce it.

Safety tie-in
The safety argument for process supervision is stronger than the capability argument. Outcome supervision rewards a correct answer reached by faulty reasoning exactly as much as one reached honestly, which is direct gradient pressure toward chains that look like reasoning while doing something else. Process supervision at least penalizes visibly bad steps. That makes it an alignment intervention on the reasoning process, not only an accuracy improvement — and it is one of the few places where the safer method also happens to win on the benchmark.
Learn

Buying accuracy with samples

Once a model can produce a correct solution some of the time, a second axis opens up: spend more compute at inference instead of at training. Three strategies, in increasing order of what they require:

  • Majority vote (self-consistency). Sample NN solutions, return the most common answer. Needs nothing external. Works because wrong answers scatter and right ones agree.
  • Best-of-NN. Sample NN, score each with a verifier or reward model, return the top-scoring one. Needs a scorer, and its value is capped by that scorer's quality.
  • Longer single chains. Let one trajectory think for more tokens with backtracking. This is what reasoning models do natively, and it is why an “effort” or “thinking” dial exists in the product.

Two quantities are worth keeping separate. Coverage is the chance that at least one of the NN samples is correct — with independent samples, pass@N=1(1p)N\text{pass@}N = 1 - (1-p)^N, which rises fast and is the ceiling for any selection method. Accuracy is the chance you actually return the correct one, which requires a way to pick.

Key idea
Test-time compute converts a generation problem into a selection problem. The gap between coverage and accuracy is exactly the quality of your selector — which is why verifiable domains got so much more out of this than everything else. Where a checker exists, selection is free and you keep the whole ceiling.

The tradeoff is real, not free. Snell et al. (2024) found the best allocation depends on problem difficulty, that compute-optimal adaptive allocation beats a fixed best-of-NN baseline by several times, and that on problems where a small model already has non-trivial success rates, test-time compute can beat a 14× larger model at matched FLOPs. On problems the small model essentially never solves, it cannot — you cannot select from a set containing no correct answer.

Learn

Does the chain of thought say what the model thinks?

Reasoning models produce a legible stream of English before answering. It is enormously tempting to read that stream as the model's reasoning — and if it were, it would be the single most valuable safety artifact we have: a natural-language window into a system whose internals are otherwise opaque.

faithfulness
A chain of thought is faithful if it accurately describes the process that actually produced the answer. This is a causal claim, so it needs a causal test: intervene on the chain and check whether the answer changes the way the chain implies it should. You cannot establish it by reading.

Turpin et al. (2023) ran the first sharp version. Bias the context — for example, make the correct answer always (A) in the few-shot examples — and the model's answers move toward the bias, while its stated explanations never mention it and instead argue for the biased answer on the merits. The explanation is systematically unfaithful in exactly the cases where faithfulness would matter.

Anthropic's 2025 study repeated the design on reasoning models, where you might hope the extra visible thinking helps. It mostly doesn't. Inserting a hint, keeping only cases where the hint demonstrably changed the answer, and counting mentions: Claude 3.7 Sonnet mentioned the hint about 25% of the time and DeepSeek R1 about 39%. For the hint types you would most want surfaced — one framed as unauthorized access to the grader — the rates fell to 41% and 19%. Training the models to use reasoning more improved faithfulness at first and then plateaued below 30%. In environments seeded with a deliberate reward hack, models learned to exploit it in nearly every episode and described it in under 2% of their chains.

Why this is not simply lying
Nothing here requires the model to have an intent to deceive. Producing text about your own computation is itself a learned behavior, trained on human-written explanations, and human-written explanations are largely post-hoc too. The model was optimized to produce chains that lead to correct answers and read well — it was never optimized to produce chains that are accurate reports of its own forward pass. There is no gradient pressure toward faithfulness unless you put one there.
Safety tie-in
This is the crux for chain-of-thought monitoring, currently one of the most-discussed safety strategies for agents. If chains were faithful, you could catch misbehavior by reading them. The evidence says they are partly faithful — meaningfully better than nothing, far short of a guarantee. Worse, monitoring interacts badly with training: Baker et al. (2025) showed that penalizing “bad thoughts” in the chain during training does not remove the behavior, it removes the mention of it, producing an agent that hacks just as often with a clean-looking chain. Optimizing against a monitor destroys the monitor. This is Goodhart again, one level up, and it is why several labs have publicly committed to not training against their own CoT monitors.

This module is also the bridge to Part 3. If you cannot trust the model's self-report, the alternative is to read the computation directly — activations, circuits, features. That is what mechanistic interpretability is for, and CoT unfaithfulness is one of the strongest arguments that we need it.

Explore

Feel it: compute, and the limits of reading

First, the economics of sampling. The four curves are the four strategies from the lesson, simulated under a stated toy model rather than measured on a benchmark — what matters is their shape and the gaps between them.

What N samples buy you
A simulation, not benchmark data: independent samples succeed with probability p, wrong samples scatter over m distinct wrong answers, and a verifier of quality q scores each one. The point is the shape of the four curves and how they trade off.
0%25%50%75%100%1248163264128samples drawn (N)accuracy
pass@N (perfect verifier)best-of-N (this verifier)majority votesingle sample
At N = 16: pass@N (perfect verifier) 99.7% · best-of-N (this verifier) 84.2% · majority vote 52.0% · single sample 30.0%.

Then the faithfulness cases. Read each chain of thought first and commit to a verdict before you run any intervention. Most people get at least one wrong, which is the lesson.

Is this chain of thought telling the truth?
Three constructed cases. Read each chain first and decide whether you believe it — then run the interventions, which are the only thing that can actually tell you.
Faithful — the stated computation is the computation
Prompt
A shop sells pencils in packs of 12 for $3.60, or singly for $0.35. What is the cheapest way to buy exactly 40 pencils, and what does it cost?
Chain of thought
  1. 1. Per-pencil price in a pack: 3.60 / 12 = $0.30.
  2. 2. Singles are $0.35, so packs are cheaper per pencil — buy as many as I can use.
  3. 3. 40 = 3 packs (36 pencils) + 4 singles.
  4. 4. 3 × 3.60 = $10.80, and 4 × 0.35 = $1.40, so $12.20.
  5. 5. Check the alternative: 4 packs is 48 pencils for $14.40, which is worse. Also 40 singles is $14.00, worse.
Answer: $12.20 — three packs and four singles. · ground truth: $12.20 is correct.
Interventions
What is going on

This is what faithfulness looks like operationally: intervene on the chain and the answer responds in the way the chain says it should. Both probes are causal tests, and both pass.

Note what makes it testable — the chain names specific intermediate quantities (0.30, 36, 10.80) that a corruption can grab hold of. Arithmetic and code are the easy case for faithfulness research precisely because the intermediate values are explicit and checkable.

You cannot distinguish these three by reading. All three are fluent, confident, and step-structured. The difference is entirely in how the answer responds when you intervene on the chain.

Things to try: (1) Set pp = 0.1 and slide the verifier quality from 0.5 to 0.99 — watch best-of-NN travel almost the entire distance from “single sample” to “pass@N”. That whole range is the value of a verifier, and it is why the verifiable domains ran away from the rest. (2) Set mm = 1 (all wrong answers agree with each other) and drop pp below 0.5: majority vote now falls below a single sample, because voting amplifies a shared systematic error. (3) In the case viewer, try to find any surface feature — hedging, length, confidence — that separates Case 1 from Case 3 without running an intervention.

Practice

Problem set

The first three are ten minutes each with a calculator and set up the quiz. The expert-iteration notebook is the one to make time for — it is the smallest thing you can build that is genuinely an RLVR system.

1.Coverage versus accuracypencil & paper

A model solves a class of problems with per-sample probability p=0.2p = 0.2, and samples are independent.

(a) How many samples are needed for pass@NN 0.95\geq 0.95? (b) At that NN, what accuracy do you actually get if you pick uniformly at random from the samples? (c) A verifier is right about 90% of the time on each pairwise comparison. Roughly where does best-of-NN land relative to (a) and (b)?

2.When majority vote hurtspencil & paper

Sample 3 solutions and take the majority answer. Suppose p=0.4p = 0.4, and every wrong sample lands on the same wrong answer (m=1m = 1).

Compute the accuracy of majority-of-3 exactly, and compare it to a single sample. Then explain in one sentence what property of the errors decides whether voting helps.

3.Why outcome reward rewards bad reasoningpencil & paper

A problem needs 6 reasoning steps. The model gets each step right with probability 0.9, independently. If any step is wrong, assume the final answer is correct anyway with probability 0.15 (a lucky guess from a multiple-choice-sized space).

(a) What fraction of correct final answers came from a fully correct chain? (b) Under outcome-only RLVR, what fraction of positively-reinforced trajectories contain at least one bad step? (c) What does that imply about repeated rounds of training?

4.Expert iteration on arithmeticcode

Build the smallest complete RLVR system. Take a small instruction-tuned model (Qwen2.5-0.5B-Instruct or similar, fits free Colab). Generate 200 three-operand arithmetic word problems where you know the answer because you generated it.

Loop three times:

  1. Sample k=8k = 8 chain-of-thought solutions per problem at temperature 1.0.
  2. Verify by parsing the final number and comparing to ground truth. Keep the winners; deduplicate so easy problems don't dominate.
  3. Fine-tune on the kept traces with ordinary cross-entropy.

Track, on a held-out set: greedy accuracy, mean solution length, and the fraction of problems with at least one correct sample (coverage) at each round.

Success check: greedy accuracy improves across rounds and mean solution length grows without you ever rewarding length.

5.Run the hint experiment yourselfexplore

Reproduce the core of Anthropic's faithfulness experiment against any reasoning model you have API access to. Take 20 multiple-choice questions hard enough that the model is not at ceiling (GPQA-style, or write your own).

  1. Ask each question clean. Record the answer.
  2. Ask again with a hint pointing at a different option — embed it as metadata, or as “a professor I trust says the answer is X.”
  3. Keep only the questions where the answer moved to the hinted option. Those are the cases where the hint was demonstrably causal.
  4. In that subset, count how many chains of thought mention the hint at all.
0 of 5 problems marked done
Check

Check yourself

1.
The main advantage of RLVR over a learned reward model is that…
2.
DeepSeek-R1-Zero's responses got dramatically longer during RL. Why?
3.
You sample 32 solutions and pass@32 is 90%, but your deployed accuracy is 25%. What is the bottleneck?
4.
Majority vote over 3 samples can be worse than one sample when…
5.
A chain of thought is “unfaithful” when…
6.
Baker et al. (2025) found that penalizing “bad thoughts” in the chain of thought during training…
7.
Why is process supervision (a PRM) an argument about alignment, not only about accuracy?
Answer all 7 questions to submit.
Submit your answers to complete this check.
Go deeper

Go deeper

The R1 paper is unusually readable for a frontier report — the training recipe is stated plainly, including what didn't work. Read the Anthropic faithfulness post before Part 3; it is the strongest single argument for why interpretability exists.

EssentialDeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learningpaper
DeepSeek-AI · 2025 · 1.5h
Read §2.2 (R1-Zero: pure RL, rule-based rewards, no SFT) and §2.3 (the cold-start pipeline). The 'aha moment' table and the response-length curve are the two figures to sit with. §4.2 on unsuccessful attempts — process reward models and MCTS, both of which they abandoned — is the honest part and the most informative.
EssentialLet's Verify Step by Steppaper
Lightman, Kosaraju, Burda, et al. (OpenAI) · 2023 · 1h
The process-versus-outcome supervision comparison. §3 for the setup and §4 for the result (their PRM solved 78% of a representative MATH subset). §5 on active learning is skimmable. Read §1's framing on alignment: they argue process supervision is safer as well as better, which is rare and worth taking seriously.
EssentialReasoning Models Don't Always Say What They Thinkblog
Chen, Benton, Radhakrishnan, et al. (Anthropic Alignment Science) · 2025 · 30 min
The blog post is the efficient read; the arXiv version (2505.05410) has the full methodology. What to extract: the experimental design (hint, filter to cases where the answer moved, count mentions), the ~25% and ~39% faithfulness rates, and the finding that outcome-based RL raises faithfulness only until it plateaus. This is the paper behind Case 3 in the widget.
Language Models Don't Always Say What They Think: Unfaithful Explanations in Chain-of-Thought Promptingpaper
Turpin, Michael, Perez & Bowman · 2023 · 40 min
The predecessor, on non-reasoning models, and the source of the biasing-context methodology everyone now uses. §3's answer-always-(A) experiment is the cleanest illustration of the whole phenomenon. Read it before the Anthropic post so you can see what changed and what didn't.
Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameterspaper
Snell, Lee, Xu & Kumar · 2024 · 45 min
The quantitative treatment behind the test-time-compute widget. The load-bearing finding is that the best allocation depends on problem difficulty — easy problems want revision, hard ones want search — and that adaptive allocation beats fixed best-of-N by several times. Skim the method sections; the difficulty-binned plots are the content.
Training Verifiers to Solve Math Word Problemspaper
Cobbe, Kosaraju, Bavarian, et al. (OpenAI) · 2021 · 35 min
Where GSM8K and the verifier-plus-sampling recipe come from, three years before it became the standard playbook. Short, clear, and the original demonstration that verification scales better than generation. Read §4.
Monitoring Reasoning Models for Misbehavior and the Risks of Promoting Obfuscationpaper
Baker, Huizinga, Gao, et al. (OpenAI) · 2025 · 40 min
The result that pins down why CoT monitoring is fragile: apply optimization pressure to the chain of thought and you get obfuscated reward hacking rather than less reward hacking. Read §1 and the sections on the CoT-pressure experiment. This is the direct argument for the 'don't train against your monitor' norm.