Locked at the Entrance, Open Inside: Where RLVR Narrows the Solution Space
Organizations: School of Future Technology, Shanghai University · School of Computer Science, University of Birmingham
Abstract
Reinforcement learning with verifiable rewards (RLVR) substantially improves single-sample accuracy (pass@1) but causes the policy's solution space to contract, diminishing the returns of test-time scaling. In this work, we investigate where inside a reasoning trajectory this breadth is lost: does the policy fail to access a valid solution family, or does it fail to execute computation once initiated? To disentangle access from execution, we analyze the Countdown task, whose solution space can be exhaustively enumerated into discrete entrance families defined by the first operand and operator, across PPO on Qwen2.5-3B and GRPO on Qwen2.5-3B-Instruct. Across both training setups, solution coverage falls by up to 67%, halving even on problems solved across all checkpoints. We show that this contraction is heavily concentrated at the entrance: per-token likelihood shifts are 11x--16x larger prior to the first arithmetic operation than during downstream reasoning. Supplying only an unselected entrance prefix restores completion rates in low-access families by over an order of magnitude (0.018 -> 0.212 under PPO), demonstrating that alternative solutions remain executable but are no longer initiated. Guided by this localization, we find that while surface prompting fails to recover diversity, entrance-targeted interventions succeed: late-layer parameter interpolation with early checkpoints increases solution coverage by 37% at no loss in pass@1. Finally, we show that early-step entropy collapse recurs across six math benchmarks with 7B and 14B models, but is not an inevitable byproduct of reasoning optimization: an SFT baseline preserves more than double the coverage, and staged SFT--DPO--RLVR pipelines retain early-step entropy. In summary, reasoning breadth is lost at the door, not inside the room. Code: https://github.com/ershiyidian/early-branch-locking.
Figures & tables
| Checkpoint | pass@1 | pass@64 | pass@256 | Solution cov.@320 | Operator-class cov. |
|---|---|---|---|---|---|
| PPO run | |||||
| Base | 0.001 | 0.076 | 0.228 | 0.097 | 0.178 |
| Step 25 | 0.005 | 0.218 | 0.416 | 0.189 | 0.354 |
| Step 50 | 0.051 | 0.500 | 0.596 | 0.337 | 0.538 |
| Step 75 | 0.129 | 0.482 | 0.543 | 0.283 | 0.502 |
| Step 150 | 0.323 | 0.441 | 0.457 | 0.152 | 0.362 |
| Diagnostic | PPO | GRPO |
|---|---|---|
| NLL increase per token: entrance vs. execution | vs. | vs. |
| Designated completion: none minimal entrance | ||
| Minimal-entrance completion: early late |
| Step 50 | Step 275 | Step 275 any-valid | |
| Panel A: neutral scaffold, completion in the designated family | |||
| No entrance | 0.009 | 0.018 | 0.060 |
| Minimal entrance (operand and operator) | 0.113 | 0.212 | 0.261 |
| Completed first calculation | 0.102 | 0.276 | 0.329 |
| Panel B: grafts into the model’s own failed traces (step 275) | |||
| Feasible minimal entrance | 0.176 (reference 0.044; excess ) | 0.227 | |
| Accuracy | Solution breadth | |||
| Intervention | pass@1 | pass@1 | Coverage | coverage |
| Step-275 policy (control) | 0.278 | — | 0.111 | — |
| Prompt diversification | 0.125 | |||
| Forced alternative operator | 0.286 | 0.104 | ||
| Answer-only logit mixing | 0.105 | |||
| High-temperature decoding ( ) | 0.264 | 0.127 | ||
| Model | pass@1 | pass@64 | First-calc. | Distinct-trace rate |
|---|---|---|---|---|
| Qwen Base 7B | 0.379 | 0.754 | 1.063 | 0.780 |
| Qwen SimpleRL 7B | 0.510 | 0.760 | 0.744 | 0.444 |
| Qwen Distill 7B | 0.526 | 0.795 | 1.240 | 0.871 |
| OLMo-3 7B (SFT) | 0.447 | 0.781 | 1.189 | 0.770 |
| OLMo-3 7B (DPO) | 0.508 | 0.784 | 1.269 | 0.786 |
| OLMo-3 7B (RLVR) | 0.613 | 0.828 | 1.137 | 0.763 |
| Question | Henry wants to bake twice as many cookies as last year. When he finishes baking, he realizes he actually baked 15 more cookies than he meant to. He drops 5 of his cookies as he is putting them out to cool, and now has a total of 110 cookies. How many cookies did Henry bake last year? (Gold Answer: 50) |
|---|---|
| Qwen Base 7B Sample 6; correct Reverse Entrance | Henry now has 110 cookies. He dropped 5 cookies, so before dropping them he had 110 + 5 = 115 cookies. He baked 15 more than he meant to, so he meant to bake 115 - 15 = 100 cookies. This is twice last year, so he baked 100 / 2 = 50 cookies last year. The answer is 50. |
| Qwen SimpleRL 7B Direct RLVR; Sample 0 Forward Equation | Let be the number of cookies Henry baked last year. He intended to bake , so he baked cookies. After dropping 5, he has (2x + 15) - 5 = 110 cookies left. Simplifying gives , so and . The answer is 50. |
| OLMo-3 7B (RLVR) Staged RLVR; Sample 12 Reverse Entrance | Henry drops 5 cookies while cooling, and then has a total of 110 cookies left. So before dropping the 5 cookies, he had: 110 + 5 = 115 cookies. This 115 cookies is the actual number he baked: . The answer is 50. |
Appendix figures & tables21 assets
Supplementary material from the paper’s appendix.
Appendix
| Step 50 | Step 275 | |
| Panel A: access under two opening partitions among correct samples | ||
| Operator classes per problem (feasible) | 1.71 | 1.71 |
| Coverage of feasible operator classes | 0.538 | 0.253 |
| First-evaluated-pair labels per problem (feasible) | 3.99 | 3.99 |
| Coverage of feasible first-evaluated pairs | 0.368 | 0.117 |
| Panel B: operator probability at matched model-generated pre-operator prefixes | ||
| Checkpoint | Base | 25 | 50 | 75 | 100 | 125 | 150 | 175 | 200 | 225 | 250 | 275 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Coverage | 0.178 | 0.354 | 0.538 | 0.502 | 0.448 | 0.412 | 0.362 | 0.328 | 0.300 | 0.262 | 0.256 | 0.253 |
| Checkpoint | Leaf retention | Zero-retention fraction | Still solved |
|---|---|---|---|
| Step 75 | 0.722 | 0.132 | 0.879 |
| Step 100 | 0.644 | 0.176 | 0.824 |
| Step 125 | 0.584 | 0.198 | 0.802 |
| Step 150 | 0.476 | 0.264 | 0.758 |
| Step 175 | 0.432 | 0.319 | 0.692 |
| Step 200 | 0.380 | 0.319 | 0.681 |
| Set ( ) | Ckpt. | pass@1 | pass@64 | Format-valid | Solution cov. | Operator-class cov. |
|---|---|---|---|---|---|---|
| (58) | 50 | 0.117 | 0.960 | 0.331 | 0.564 | 0.940 |
| (58) | 275 | 0.737 | 0.971 | 0.749 | 0.286 | 0.654 |
| (33) | 50 | 0.027 | 0.586 | 0.228 | 0.542 | 0.795 |
| (33) | 275 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| Partition | Feasible labels/problem | Cov. step 50 | Cov. step 275 | Relative drop |
|---|---|---|---|---|
| Operator class (canonical) | 1.71 | 0.538 | 0.253 | 0.53 |
| Tree root operator | 1.79 | 0.548 | 0.249 | 0.55 |
| Full operator sequence | 3.08 | 0.424 | 0.163 | 0.62 |
| Tree signature | 3.75 | 0.410 | 0.159 | 0.61 |
| First evaluated pair | 3.99 | 0.368 | 0.117 | 0.68 |
| First merged numbers | 2.49 | 0.483 | 0.167 | 0.66 |
| top- | min- | pass@1 | pass@64 | Solution coverage | |
|---|---|---|---|---|---|
| 0.7 | 0.90 | 0.00 | 0.284 | 0.377 | 0.108 |
| 0.7 | 0.90 | 0.05 | 0.283 | 0.376 | 0.108 |
| 0.7 | 1.00 | 0.00 | 0.277 | 0.406 | 0.138 |
| 0.7 | 1.00 | 0.05 | 0.283 | 0.385 | 0.109 |
| 1.0 | 0.90 | 0.00 | 0.274 | 0.402 | 0.130 |
| 1.0 | 0.90 | 0.05 | 0.274 | 0.402 | 0.138 |
| Checkpoint | pass@1 | pass@64 | Solution coverage@320 |
|---|---|---|---|
| Base | 0.001 | 0.076 | 0.097 |
| Step 25 | 0.005 | 0.218 | 0.189 |
| Step 50 | 0.051 | 0.500 | 0.337 |
| Step 75 | 0.129 | 0.482 | 0.283 |
| Step 100 | 0.178 | 0.446 | 0.229 |
| Step 125 | 0.276 | 0.446 | 0.205 |
| Checkpoint | Retry cue | First number | Local calc. | Generic plan | Misleading plan |
|---|---|---|---|---|---|
| Step 50 | 0.031 | 0.037 | 0.147 | 0.024 | 0.040 |
| Step 275 | 0.015 | 0.015 | 0.211 | 0.023 | 0.004 |
| Relative position | Step 25 | Step 275 | Tokens | |
|---|---|---|---|---|
| 3.643 | 5.531 | 264 | ||
| 8.602 | 16.108 | 1404 | ||
| 2.098 | 3.315 | 1530 | ||
| 2.428 | 3.358 | 1530 | ||
| 0.982 | 1.304 | 1530 | ||
| 0.762 | 1.230 | 1530 |
| Condition | Ckpt. | Problems cont. | Prefix tokens | Rate |
| Panel A: state-only ablation | ||||
| Numeric multiset only | 200 | 12.9 | 0.002 | |
| Multiset and first operator (bare label) | 200 | 14.9 | 0.017 | |
| Successful natural-language scaffold | 200 | 171.1 | 0.998 | |
| Panel B: successful-trace boundary contrast | ||||
| Before op 1 | 50 | — | 0.145 | |
| Checkpoint | pass@1 | pass@64 | Native-format | Solution cov. | Entrance cov. |
|---|---|---|---|---|---|
| Step 25 | 0.142 | 0.703 | 0.905 | 0.358 | 0.766 |
| Step 50 | 0.181 | 0.710 | 0.947 | 0.384 | 0.735 |
| Step 100 | 0.321 | 0.700 | 0.903 | 0.385 | 0.637 |
| Step 150 | 0.450 | 0.657 | 0.864 | 0.304 | 0.540 |
| Step 200 | 0.489 | 0.670 | 0.941 | 0.279 | 0.479 |
| Step 300 | 0.507 | 0.673 | 0.947 | 0.267 | 0.479 |
| Checkpoint | pass@1 | pass@64 | pass@256 | Native-format rate | Solution cov. | Entrance cov. | Entrance |
|---|---|---|---|---|---|---|---|
| Step 25 | 0.121 | 0.633 | 0.750 | 0.900 | 0.467 | 0.932 | 1.585 |
| Step 450 | 0.429 | 0.570 | 0.621 | 0.941 | 0.268 | 0.571 | 0.760 |
| Checkpoint or contrast | Entrance | Execution |
|---|---|---|
| Step 25 | 6.840 | 1.078 |
| Step 450 | 14.917 | 1.788 |
| Late early |
| Checkpoint | Prefix | Designated completion | Any-valid | Native-format rate |
|---|---|---|---|---|
| Step 25 | none | 0.056 | 0.116 | 0.911 |
| Step 25 | minimal | 0.131 | 0.211 | 0.743 |
| Step 25 | first calc. | 0.143 | 0.198 | 0.843 |
| Step 450 | none | 0.104 | 0.434 | 0.941 |
| Step 450 | minimal | 0.188 | 0.354 | 0.793 |
| Step 450 | first calc. | 0.225 | 0.335 | 0.778 |
| Benchmark | DiD | 95% CI | Problems | Traces |
|---|---|---|---|---|
| AIME24 | 0.205 | 9 | 129 | |
| AMC23 | 0.307 | 36 | 484 | |
| GSM8K | 0.313 | 491 | 7736 | |
| MATH500 | 0.337 | 460 | 6018 | |
| Minerva | 0.193 | 132 | 1499 | |
| OlympiadBench | 0.273 | 322 | 4075 |
| Benchmark | Base-origin shift | RLVR-origin shift | Base traces | RLVR traces |
|---|---|---|---|---|
| AIME24 | 58 | 71 | ||
| AMC23 | 230 | 242 | ||
| GSM8K | 5133 | 2500 | ||
| MATH500 | 3404 | 2306 | ||
| Minerva | 689 | 690 | ||
| OlympiadBench | 2077 | 1760 |
| Model | Benchmark | pass@64 | pass@256 | Distinct first calcs. | First-calc. | Distinct traces |
|---|---|---|---|---|---|---|
| Base 7B | GSM8K | 0.993 | 1.000 | 8.98 | 1.054 | 148.5 |
| SimpleRL 7B | GSM8K | 0.973 | 0.975 | 2.20 | 0.247 | 22.0 |
| Base 7B | MATH500 | 0.950 | 0.965 | 10.20 | 0.829 | 158.9 |
| SimpleRL 7B | MATH500 | 0.937 | 0.950 | 3.32 | 0.288 | 25.2 |
| Benchmark | Families | RLVR-unreached | Overall completion | Unreached completion |
|---|---|---|---|---|
| GSM8K | 384 | 224 | 0.863 | 0.850 |
| MATH500 | 337 | 155 | 0.715 | 0.713 |
| Model | pass@1 | pass@64 | First-calc. | GSM8K correct-only |
|---|---|---|---|---|
| Qwen Base 7B | 0.379 | 0.754 | 1.063 | 0.894 |
| Qwen SimpleRL 7B | 0.510 | 0.760 | 0.744 | 0.285 |
| Qwen Base 14B | 0.377 | 0.774 | 1.207 | 0.970 |
| Qwen SimpleRL 14B | 0.546 | 0.774 | 0.711 | 0.300 |
| Model | Benchmark | pass@1 | pass@64 | First-calc. | Effective first calcs. |
|---|---|---|---|---|---|
| Distilled base 1.5B | GSM8K | 0.701 | 0.985 | 1.126 | 3.67 |
| RL over distill 1.5B | GSM8K | 0.766 | 0.980 | 1.206 | 4.02 |
| Distilled base 1.5B | MATH500 | 0.633 | 0.955 | 1.168 | 4.26 |
| RL over distill 1.5B | MATH500 | 0.732 | 0.955 | 1.130 | 3.93 |
| Supervision condition | pass@1 | pass@64 | pass@256 | Solution cov. | Entrance cov. |
|---|---|---|---|---|---|
| GRPO step 450 (RLVR) | 0.429 | 0.570 | 0.621 | 0.268 | 0.571 |
| SFT ( ) | 0.120 | 0.737 | 0.856 | 0.471 | 0.604 |
| SFT ( ) | 0.221 | 0.806 | 0.893 | 0.551 | 0.766 |
| SFT ( , 8k) | 0.310 | 0.853 | 0.923 | 0.725 | 0.825 |
| SFT ( , 16k) | 0.333 | 0.855 | 0.916 | 0.709 | 0.855 |
| SFT ( , uniform) | 0.269 | 0.836 | 0.928 | 0.779 | 0.821 |
Reasoning Diversity
Reasoning diversity studies how to represent, measure, and preserve distinct solution strategies in AI systems.
See all 20 papers