List Counting Failures Are Not One Phenomenon
Organizations: Department of Computer Science The George Washington University Washington, D.C., USA
Abstract
Counting the items in a bracketed list looks trivial, yet open-weight chat models often get it wrong. Prior work usually blames input bottlenecks such as subword fragmentation or attention dilution, which predict that different models should fail in roughly the same way. Across seven instruct models on identical prompts, however, wrong answers form distinct modes: Qwen and Gemma 27B often flip odd lengths to a nearby even integer, OLMo concentrates errors on a few mid-sized integers, and Llama tends to under-count. These modes are useful labels rather than a stable family law (Gemma 9B does not reproduce Gemma 27B's odd-to-even drop), and heavier subword fragmentation does not make counting harder on our benchmark. When the model answers incorrectly, a linear probe can usually still recover the true count from the residual stream. Matching the same odd-to-even error also does not imply the same late-MLP magnitude fix: scaling a late MLP output helps Qwen modestly but is near null on Gemma 27B under the same protocol, while residual steering can move both only by trading odd gains for even losses. These results caution against transferring that magnitude fix across models without a transfer check.
Figures & tables
| Model | Role | Prec. |
|---|---|---|
| Qwen 2.5–14B | within-family scale | bf16 |
| Qwen 2.5–32B | reference | bf16 |
| Qwen 2.5–72B | within-family scale | nf4 |
| Gemma 2–9B | within-family scale | bf16 |
| Gemma 2–27B | cross-family | bf16 |
| OLMo 2–32B | cross-family (+ stages) | bf16 |
| Condition | Varies | Purpose |
|---|---|---|
| common_words | high-freq. English | Familiar baseline |
| rare_words | rare English | Frequency control |
| ml_single | one non-English lang. | Script/surface OOD |
| ml_mixed | mixed scripts | Script-mixing stress |
| random_strings | alphanumeric pseudowords | Tokenization load |
| Model | Gap CI | Shape | Acc c | Acc r | u w | Top wrong | |
|---|---|---|---|---|---|---|---|
| Qwen-32B | parity | 0.70 | 0.92 | 0.46 | 12, 14, 8 | ||
| R1-Distill | parity | 0.45 | 0.70 | 0.92 | 12, 6, 8 | ||
| Qwen-14B | parity | 0.58 | 0.77 | 0.75 | 12, 13, 8 | ||
| Gemma-27B | parity | 0.38 | 0.46 | 0.94 | 10, 11, 12 | ||
| Qwen-72B | weak parity | 0.86 | 0.93 | 0.11 | 13, 14, 15 | ||
| OLMo-32B | mid-range | 0.30 | 0.45 | 0.95 | 11, 8, 9 |
| model | model acc. | probe acc. | probe right, model wrong | % at | |
|---|---|---|---|---|---|
| OLMo 2–32B | 520 | 0.302 | 0.962 | 346 (66.5%) | 32% |
| R1-Distill Qwen 32B | 520 | 0.402 | 0.935 | 290 (55.8%) | 33% |
| Gemma 2–27B | 520 | 0.392 | 0.919 | 285 (54.8%) | 35% |
| Llama 3.1–70B (4-bit) | 520 | 0.465 | 0.979 | 268 (51.5%) | 43% |
| Qwen 2.5–14B | 520 | 0.575 | 0.927 | 197 (37.9%) | 47% |
| Qwen 2.5–32B | 520 | 0.704 | 0.923 | 131 (25.2%) | 69% |
| true-count probe | perm. | emit-probe | ||||
|---|---|---|---|---|---|---|
| model | model acc. | probe acc. | round-acc | on errors | ||
| Qwen 2.5–32B | 0.704 | 0.923 | 0.851 [0.79, 0.90] | 0.954 | 0.071 | 0.448 |
| Qwen 2.5–14B | 0.575 | 0.927 | 0.891 [0.84, 0.93] | 0.953 | 0.066 | 0.552 |
| Qwen 2.5–72B (4-bit) | 0.887 | 0.958 | 0.864 [0.76, 0.93] | 0.970 | 0.073 | 0.441 |
| Gemma 2–27B | 0.392 | 0.919 | 0.902 [0.86, 0.93] | 0.946 | 0.066 | 0.665 |
| OLMo 2–32B | 0.302 | 0.962 | 0.953 [0.93, 0.97] | 0.981 | 0.076 | 0.730 |
Appendix figures & tables24 assets
Supplementary material from the paper’s appendix.
Appendix
| Condition | Example list (items only) | Tok | |
|---|---|---|---|
| common_words | 5 | beach door window letter bird | 5 |
| common_words | 11 | water office car fish friend story rock fire road forest phone | 11 |
| rare_words | 11 | truculent ineffable quotidian …sesquipedalian | 31 |
| ml_single | 11 | Arabic nouns (e.g. school, garden, …market) | 23 |
| ml_mixed | 11 | mixed Chinese/Spanish/Arabic/Russian nouns | 21 |
| random_strings | 11 | 7nyh5 wtcp 88h8jc 3bwrz …pvkp5 | 49 |
| Model | Gap cw CI | Shape | Top wrong | |
|---|---|---|---|---|
| Gemma-27B | parity | 0.99 | 10, 12, 11 | |
| Gemma-9B | fixed mid-range | 0.79 | 11, 12 | |
| Llama-70B | under-count | 1.00 | 11, 10, 12 | |
| Llama-8B | under-count | 1.00 | 10, 12, 9 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 1.00 | 1.00 | 0.90 | 1.00 | 0.80 | 0.85 | 0.65 | 1.00 | 0.05 | 0.75 | 0.25 | 0.85 | 0.00 |
| rare_words | 1.00 | 1.00 | 0.95 | 0.65 | 0.80 | 0.80 | 0.80 | 1.00 | 0.30 | 0.95 | 0.50 | 0.85 | 0.15 |
| ml_single | 1.00 | 0.95 | 1.00 | 1.00 | 0.60 | 0.85 | 0.25 | 0.85 | 0.25 | 0.95 | 0.40 | 0.75 | 0.25 |
| ml_mixed | 1.00 | 1.00 | 0.85 | 0.60 | 0.60 | 0.70 | 0.00 | 0.55 | 0.00 | 0.50 | 0.05 | 0.05 | 0.00 |
| random_strings | 1.00 | 0.95 | 1.00 | 1.00 | 0.85 | 0.95 | 0.90 | 1.00 | 0.55 | 1.00 | 0.95 | 0.90 | 0.90 |
| 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | .00 | .00 | .00 | .00 | -.10 | -.05 | -.15 | .00 | +.95 | +.25 | +.15 | -.10 | -.65 |
| rare_words | .00 | .00 | +.05 | +.35 | +.20 | +.10 | +.20 | .00 | -.20 | +.05 | -.20 | +.40 | .00 |
| ml_single | .00 | -.05 | .00 | .00 | -.20 | -.05 | -.35 | -.30 | +.25 | +.05 | -.50 | -.45 | -.45 |
| ml_mixed | .00 | .00 | -.05 | -.10 | -.40 | -.35 | -.75 | -.55 | -1.25 | -1.00 | -1.35 | -1.75 | -2.70 |
| random_strings | .00 | -.05 | .00 | .00 | -.05 | -.05 | -.15 | .00 | -.45 | .00 | -.05 | -.10 | .00 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 0.95 | 0.95 | 0.80 | 0.95 | 0.50 | 0.75 | 0.50 | 0.75 | 0.20 | 0.95 | 0.05 | 0.15 | 0.00 |
| rare_words | 1.00 | 0.90 | 0.80 | 0.75 | 0.55 | 0.60 | 0.25 | 0.55 | 0.15 | 0.70 | 0.35 | 0.65 | 0.10 |
| ml_single | 1.00 | 0.85 | 0.80 | 0.90 | 0.65 | 0.85 | 0.20 | 0.75 | 0.15 | 0.70 | 0.55 | 0.30 | 0.20 |
| ml_mixed | 1.00 | 0.90 | 0.70 | 0.75 | 0.30 | 0.60 | 0.00 | 0.05 | 0.00 | 0.25 | 0.00 | 0.45 | 0.00 |
| random_strings | 1.00 | 1.00 | 1.00 | 0.90 | 0.75 | 0.80 | 0.50 | 0.90 | 0.50 | 0.90 | 0.55 | 0.65 | 0.55 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 1.00 | 1.00 | 1.00 | 1.00 | 0.95 | 0.95 | 0.85 | 0.80 | 0.95 | 0.60 | 0.85 | 0.60 | 0.65 |
| rare_words | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 0.75 | 0.95 | 0.45 | 1.00 | 0.80 | 0.10 | 0.35 |
| ml_single | 1.00 | 1.00 | 0.95 | 1.00 | 1.00 | 0.85 | 0.50 | 0.80 | 0.55 | 0.70 | 0.70 | 0.50 | 0.40 |
| ml_mixed | 1.00 | 0.95 | 0.95 | 0.95 | 0.75 | 0.75 | 0.15 | 0.40 | 0.15 | 0.80 | 0.20 | 0.25 | 0.10 |
| random_strings | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 0.95 | 0.85 | 1.00 | 1.00 | 0.90 | 0.90 | 0.90 | 0.55 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 1.00 | 1.00 | 0.90 | 0.55 | 0.25 | 0.15 | 0.15 | 0.75 | 0.10 | 0.10 | 0.00 | 0.00 | 0.00 |
| rare_words | 1.00 | 1.00 | 0.90 | 0.50 | 0.35 | 0.40 | 0.30 | 0.95 | 0.25 | 0.20 | 0.05 | 0.10 | 0.25 |
| ml_single | 1.00 | 1.00 | 0.65 | 0.20 | 0.15 | 0.30 | 0.40 | 0.55 | 0.05 | 0.15 | 0.00 | 0.00 | 0.00 |
| ml_mixed | 0.95 | 0.95 | 0.50 | 0.10 | 0.05 | 0.15 | 0.10 | 0.25 | 0.05 | 0.00 | 0.00 | 0.05 | 0.00 |
| random_strings | 1.00 | 1.00 | 0.75 | 0.35 | 0.25 | 0.55 | 0.20 | 0.60 | 0.05 | 0.20 | 0.35 | 0.55 | 0.15 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 0.95 | 0.85 | 0.35 | 0.45 | 0.00 | 0.85 | 0.10 | 0.50 | 0.30 | 1.00 | 0.05 | 0.50 | 0.00 |
| rare_words | 1.00 | 1.00 | 0.80 | 0.90 | 0.30 | 0.95 | 0.60 | 0.50 | 0.50 | 0.85 | 0.10 | 0.65 | 0.00 |
| ml_single | 1.00 | 1.00 | 0.50 | 0.45 | 0.25 | 0.70 | 0.15 | 0.65 | 0.25 | 0.65 | 0.35 | 0.35 | 0.30 |
| ml_mixed | 0.90 | 0.70 | 0.20 | 0.15 | 0.00 | 0.15 | 0.00 | 0.10 | 0.00 | 0.40 | 0.00 | 0.25 | 0.00 |
| random_strings | 1.00 | 0.70 | 0.55 | 0.75 | 0.70 | 1.00 | 0.25 | 0.95 | 0.60 | 0.85 | 0.40 | 0.65 | 0.65 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 1.00 | 0.55 | 1.00 | 0.90 | 0.30 | 0.00 | 0.10 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
| rare_words | 0.95 | 0.35 | 0.85 | 0.30 | 0.50 | 0.15 | 0.00 | 0.00 | 0.35 | 0.10 | 0.00 | 0.50 | 0.00 |
| ml_single | 0.95 | 0.45 | 0.80 | 0.65 | 0.75 | 0.25 | 0.60 | 0.20 | 0.15 | 0.10 | 0.00 | 0.40 | 0.15 |
| ml_mixed | 0.70 | 0.05 | 0.55 | 0.55 | 0.65 | 0.50 | 0.55 | 0.15 | 0.65 | 0.10 | 0.00 | 0.80 | 0.10 |
| random_strings | 0.85 | 0.75 | 0.55 | 0.60 | 0.40 | 0.45 | 0.20 | 0.25 | 0.85 | 0.35 | 0.00 | 0.65 | 0.00 |
| condition | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| common_words | 1.00 | 1.00 | 0.90 | 1.00 | 0.75 | 0.75 | 0.10 | 0.15 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
| rare_words | 1.00 | 1.00 | 1.00 | 0.95 | 0.80 | 0.95 | 0.55 | 0.30 | 0.95 | 0.55 | 0.50 | 0.00 | 0.70 |
| ml_single | 0.90 | 0.90 | 0.65 | 0.80 | 0.65 | 0.45 | 0.55 | 0.35 | 0.80 | 0.05 | 0.50 | 0.10 | 0.30 |
| ml_mixed | 1.00 | 0.95 | 0.95 | 1.00 | 0.75 | 0.35 | 0.70 | 0.45 | 0.95 | 0.05 | 0.15 | 0.05 | 0.40 |
| random_strings | 0.95 | 1.00 | 0.75 | 0.90 | 0.45 | 0.65 | 0.35 | 0.30 | 0.75 | 0.25 | 0.40 | 0.00 | 0.30 |
| probe pred mean | probe round-acc | model acc | |
|---|---|---|---|
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | |||
| 7 | |||
| 8 |
| Setting | Acc | Chance | Note |
|---|---|---|---|
| one answer model | 0.27 | 0.14 | |
| one answer family | 0.62 | 0.25 | |
| one wrong answer model | 0.39 | 0.14 | |
| bag of 40 wrong answers model | 0.93 | 0.14 | |
| bag of wrong answers family | 1.00 | 0.25 |
| Model | Family | Err rate | Top wrong emissions | Even share |
|---|---|---|---|---|
| Gemma 27B | gemma | 0.62 | 10:0.26, 12:0.13, 11:0.09, 5:0.08, 8:0.08 | 0.64 |
| Llama 70B | llama | 0.43 | 11:0.30, 13:0.13, 12:0.12, 10:0.09, 9:0.07 | 0.35 |
| OLMo 32B | olmo | 0.62 | 11:0.25, 14:0.17, 9:0.11, 7:0.11, 8:0.09 | 0.40 |
| Qwen 14B | qwen | 0.42 | 12:0.29, 14:0.13, 8:0.13, 10:0.11, 6:0.10 | 0.78 |
| Qwen 32B | qwen | 0.29 | 12:0.27, 10:0.18, 14:0.13, 8:0.12, 7:0.07 | 0.82 |
| Qwen 72B | qwen | 0.21 | 12:0.25, 13:0.23, 10:0.14, 14:0.11, 11:0.09 | 0.61 |
| condition | main eval seed | fine-grained seed |
|---|---|---|
| common_words | ||
| rare_words | ||
| multilingual_single | ||
| multilingual_mixed | ||
| random_strings | ||
| random-string pool | ||
Numerical Reasoning in Language Models
Numerical reasoning in language models studies how systems represent, calculate with, and explain numbers across mathematical and real-world tasks.
See all 150 papers