Apply to my task
arXiv:2608.01000 ★ 91 Aug 2, 2026

Judging ≠ Enumerating: Why LLMs Miss Half the Right Answers When Asked to Make a Complete List

Key result

Discovery: an LLM catches a planted extra item in a list 6-7 times more often than its own omission — it's blind to the gaps it creates itself. The "rule instead of a list" method lets you get a complete checklist of correct answers or test cases with no silent losses. Instead of asking it to list everything — ask it to formulate a rule for checking one candidate at a time: accuracy jumps from 0.48 to 0.99, because compiling a list and evaluating a single option are different tasks for the model, even though the underlying knowledge is the same.

01

TL;DR

When you ask a model to list everything — every synonym of a word, every correct answer variant, an entire checklist of criteria — it quietly drops a huge chunk of valid options. But if you hand it one specific candidate and ask "does this fit?" — it answers almost flawlessly. The reason is that enumerating a list and checking a single item are different tasks for the model, even though the underlying knowledge is identical: while building a list, the model writes items one by one and decides for itself when to stop, without ever seeing the options it hasn't "thought of" yet.

The real pain point is that the model errs by omission, not by adding junk. An extra wrong item on a list is visible and can be crossed out during review. A missing correct item is an invisible hole — you won't spot it unless you already know the full list. In the study, models catch "planted" extra items 6-7 times more often than they catch omissions. On the coding task this gets absurd: a model that judges a finished solution with 74-90% accuracy will, when asked to write its own test cases, reject 58-81% of genuinely correct solutions — because it invents requirements that were never part of the task.

The fix is simple: don't ask the model to list everything — ask it to formulate a rule that lets you check any given candidate. When the model states a rule instead of a list, accuracy jumps to nearly perfect (in the study, from ~0.48 to ~0.99). Bonus tip: before trusting a finished checklist or rubric, run one known-good example through it first — if the rule rejects it, the rule is broken and needs a rewrite.

Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.

02

Method Blueprint

STEP 1: Ask the model to state a RULE (criterion), not a list → a text description of the rule
STEP 2: Test the rule against a known-good example ("would it pass?") → yes/no; if no, rewrite the rule
STEP 3: Apply the rule to each candidate ONE AT A TIME, not all at once → a "fits/doesn't fit" verdict for each

All three steps can happen in a single conversation — just as consecutive messages.

03

Example in Action

Task: An online school (think Coursera or Udemy style) wants to auto-grade students' open-ended answers to the question "Name a way to reduce customer churn." They need a checklist of "acceptable answers" for automated grading.

Prompt:

I'm building an auto-grader for students' open-ended answers to the question:
"Name a way to reduce customer churn."

Step 1. Don't try to list every possible correct answer.
Formulate a GENERAL RULE: what markers tell you a student's answer
should be counted as correct, and what markers tell you it shouldn't.

Step 2. Test your rule against this known-correct answer:
"Introduce a loyalty program with personalized discounts for repeat customers."
Does it pass the rule? If not, rewrite the rule so it does pass.

Step 3. Now run each of these answers through the finished rule, one at a time,
and give a verdict of "accepted / rejected" with a short explanation:

1. "Improve customer support quality"
2. "Cut prices by 50%"
3. "Introduce a rewards system for long-term subscribers"
4. "Run a satisfaction survey"

Result: The model first produces a verbal rule/criterion (e.g., "an answer counts if it proposes a concrete retention mechanism, not a vague general statement"). It then checks that rule against the control example and adjusts the wording if needed. In the end, you get a separate verdict with an explanation for each of the 4 answers — instead of one big "correct answers" list generated all at once.

04

Why It Works

The model struggles with "list every possible variant" because it writes the list item by item, without seeing the others, and decides on its own when to stop — it's a bit like being asked to name every word starting with "K" without a dictionary in hand. You'll stop long before you exhaust the real list, simply because you'll run out of things to recall.

On the other hand, the model is great at evaluating one specific candidate — here it doesn't need to "recall everything," just compare a single example against a criterion. That's its strong suit, and the method leverages it: instead of forcing the model to dream up the whole list at once, we split the task into "state the criterion" (which the model nails almost perfectly) and "check one candidate against the criterion" (which it also nails).

Levers you can pull: - Add a reasoning step ("think step by step about possible options before stating the rule") — the study shows this noticeably narrows the gap when the task has a clear-cut rule. - Test the rule against 2-3 control examples instead of just one — more "known-good" test cases means a more reliable filter. - If the task is inherently "fuzzy" (no crisp rule, just a text description, like grading code against a docstring) — the method helps, but doesn't fully close the gap. In those cases, Step 2 (checking against a known example) matters even more.

05

Prompt Template

I need a {checklist / rubric / list of criteria / answer key} for grading {task}.

Step 1. Don't list every possible variant right away. Formulate a GENERAL RULE —
what markers tell you whether a candidate fits or not.

Step 2. Test this rule against a known-correct example: {known_correct_example}.
Does it pass? If not, rewrite the rule.

Step 3. Now apply this rule to each candidate one at a time and give a verdict
of "fits/doesn't fit" with an explanation:
{candidate_1}
{candidate_2}
{candidate_3}

Fill in {task} with whatever you're grading (an essay, a resume, code, quiz answers), {known_correct_example} with a known-good variant the rule absolutely must accept, and {candidate_N} with the specific items to check.

🚀 Quick start — paste into chat:

Here's a template for the "rule instead of a list" method for checking checklists and criteria.
Adapt it to my task: {your task}.
Ask me questions to fill in the fields.

[paste the template above]

The LLM will ask what your control example is and exactly which candidates need checking — because without that, Step 2 (testing the rule) and Step 3 (applying the rule) can't work.

06

Limitations

⚠️ Not a universal cure: if the correct answer can't be pinned down by a crisp criterion (for example, grading "code quality" against a general text description of the task rather than formal rules), the method reduces errors but doesn't close the gap entirely — the model can still invent extra requirements.

⚠️ Checking candidates one by one is slower than a single request: if you have hundreds of candidates, checking them "one at a time" will take many messages or one long prompt with a full list — that's the price of accuracy.

⚠️ The control example needs to be truly representative: if your "known-correct" example is an edge case, the rule might pass the test but still be full of holes on real-world candidates.

07

How It Was Studied

The team deliberately built tasks where the correct answer could be checked mechanically, without another model in the loop — otherwise you'd end up with an unreliable judge checking another unreliable judge. For example: they gave a model a list of 15 words and the rule "pick the words with a double letter" — here the answer is fully computable, with zero ambiguity.

They tested six model families (Qwen2.5 from 3B to 72B, Qwen3, Llama, Mistral, Gemma, Phi-4) across four task types: word lists with a clear-cut rule, program code with reference test suites, and dictionary synonyms. In every case, the model is far more accurate at checking a single candidate than at generating the whole list itself — and the gap doesn't close even for the largest models.

The most surprising finding: when researchers asked the model not to produce a list but simply to state the rule, accuracy jumped to near-perfect — meaning the model knows the criterion perfectly well, it just struggles to "materialize" it into a full list. That's the key practical insight: don't make the model guess the whole list at once — let it name the rule first.

08

Resources

Judging Is Not Enumerating: Silent Omissions in LLM-Authored Acceptable Sets — Wenhui Chen, Jianlin Chen, Ziyao Lin, Peiji Long, Chi Man Vong (University of Macau, South China University of Technology). Built on four controlled ground-truth constructions (algorithmic, executable code via HumanEval+/MBPP+, and lexical via WordNet).

Research digest

Key result

Discovery: an LLM catches a planted extra item in a list 6-7 times more often than its own omission — it's blind to the gaps it creates itself. The "rule instead of a list" method lets you get a complete checklist of correct answers or test cases with no silent losses. Instead of asking it to list everything — ask it to formulate a rule for checking one candidate at a time: accuracy jumps from 0.48 to 0.99, because compiling a list and evaluating a single option are different tasks for the model, even though the underlying knowledge is the same.

Principle

A model asked to name all words starting with "K" without a dictionary stops when it gets tired of recalling — not when the alphabet runs out. It writes the list one item at a time and can't see what it hasn't thought of yet. Split the task into two steps: first the rule, then checking candidates one by one — compiling a list and evaluating a single option work differently for the model, even though the facts are the same.

Why it works

A missed correct option is a hole you can't see unless you already know the full list. An extra wrong item, on the other hand, is visible and easy to cross out. On a coding task, the model correctly evaluates a finished solution with 74-90% accuracy, but when it invents its own test cases, those tests reject 58-81% of genuinely correct solutions — simply by adding requirements that weren't in the original task. Checking a single candidate doesn't require holding everything in mind at once — just comparing it to the rule, and the model handles that almost perfectly.

When to apply

Grading students' open-ended answers, essay checklists, code-review rubrics, answer keys for tests → especially when completeness of the list is critical and no correct option can be missed. Not suitable when the correct answer can't be described by a clear criterion — for example, judging "code quality" against a vague text description: the method reduces errors but doesn't fully close the gap.

Mini recipe

1. Ask for a rule, not a list: "Don't list every option. Formulate a GENERAL RULE — what features indicate a candidate qualifies" 2. Test it on a control example: give a definitely correct option and ask "Does this pass the rule?" If not — the rule is broken, rewrite it 3. Run candidates one at a time: not all together, but one by one — "qualifies / doesn't qualify" with an explanation for each

Examples

[BAD]: `List all the correct ways to reduce customer churn` [GOOD]: `Formulate a GENERAL RULE — what features make an answer count as correct. Test the rule on this example: "Implement a loyalty program with personalized discounts." Does it pass? If not — rewrite it. Now run each answer through the rule one at a time: 1) "Improve support quality" 2) "Cut prices by 50%" 3) "Introduce a bonus system"`

In plain words

The problem is that models suffer from a very specific kind of amnesia: they know facts perfectly well, but they catastrophically fumble when asked to dump all that knowledge out as a list. This is a fundamental architectural bug. When a model generates text, it predicts the next word based on what it has already written. In an enumeration task, it trips over its own feet: after writing five items, it "decides" the list looks complete and just stops, even though dozens of correct answers are still sitting somewhere in its "head." This is called a silent omission, and it breaks the whole logic of working with data.

It's like walking up to a seasoned doctor and asking: "Name literally every condition that causes side pain." They'll rattle off the three or four most common ones and stop, simply because the brain isn't wired for mindlessly reciting an encyclopedia. But if you ask them: "Does appendicitis cause side pain?", they'll instantly say "yes." In the first case, they're trying to pull a list out of thin air; in the second, they're working like a precise filter. Models behave exactly the same way: they're terrible list-makers, but brilliant fact-checkers.

Researchers proved this by comparing two approaches: generating a list versus evaluating an item. When the model was asked to compile a complete list of synonyms or criteria, it produced a pitiful fraction of what actually exists. But when the same missing items were fed to it one by one with the question "does this qualify?", it confirmed them 90% of the time. So the knowledge is there — it's the "recall everything at once" mechanism that fails. The model simply can't see what it hasn't written yet, and once it puts a period at the end, it assumes there's nothing left.

This principle is critical for any automation task — say, online education or tech support. If you have an AI draft a checklist of correct answers to grade students, it'll produce a skimpy list and start failing perfectly good students whose answers just didn't make the cut. But if you hand it a student's answer and ask, "Does this fit the subject's logic?", it'll nail it every time. The principle is universal: anywhere quality matters, we need to shift from the strategy of "give me all the options" to the strategy of "check this specific option."

Bottom line: never trust a model to compile complete lists — it will inevitably forget something and won't even notice. If you need a reliable result, gather the candidate options through some other method first, then use the model as a strict judge for each item individually. Judging is not enumerating, and if you conflate the two roles, you'll end up with a leaky product where half the correct answers get tossed in the trash simply because the AI "felt like" the list was done.

AI lab assistant

Apply this study to your task

Describe what you're working on. AI takes the method and the measured results from this paper and adapts them to your case, or writes a ready prompt built on them.

Based on Judging ≠ Enumerating: Why LLMs Miss Half the Right Answers When Asked to Make a Complete List arXiv:2608.01000

Sign in to apply this study New accounts get 50 free credits.