ML//neurosymbolic AI//verifier

A verifier is a component that takes a candidate solution and decides, by explicit criteria, whether it is acceptable, returning a pass or fail or a score, and it is what lets a system built on a generator select, reject or reward the generator's outputs. Unit tests that run a generated function, a compiler that refuses ill-typed code, a script that checks every truck in a plan is under capacity and a proof assistant that accepts only valid proofs are all verifiers; the generator proposes, the verifier disposes.


A verifier is a component that takes a candidate solution and decides, by explicit criteria, whether it is acceptable, returning a pass or fail or a score, and it is what lets a system built on a generator select, reject or reward the generator's outputs. Unit tests that run a generated function, a compiler that refuses ill-typed code, a script that checks every truck in a plan is under capacity and a proof assistant that accepts only valid proofs are all verifiers; the generator proposes, the verifier disposes.

Verifiers differ in what their verdict is worth, and that is the first thing to ask of one.

Executable tests check behaviour on the cases someone wrote. Passing them shows the program works on those inputs, which is evidence and falls short of proof: a function that passes ten tests can fail the eleventh, and a generator under pressure learns to satisfy the tests rather than the task (reward hacking).

Constraint checkers test a candidate against stated rules (capacities, deadlines, interlocks) and are exact for those rules. Their blind spot is any requirement nobody encoded.

Formal verifiers (a proof checker such as Lean, a model checker) prove a property for every input the specification covers. The guarantee is as strong as the specification, and writing that specification is usually the expensive part.

Learned verifiers (reward models, step scorers such as a PRM, a model acting as judge) score open-ended answers where no rule exists, and they can be wrong or gamed in the same ways as the model they judge.

A verifier confirms validity; it does not establish optimality.

Checking that a set of delivery routes respects every capacity takes milliseconds; showing that no shorter valid set exists can be intractable (NP-hardness). A checked answer is an acceptable one, and the best one remains an open question unless an optimizer or a bound says otherwise.

Reliable verifiers are why reasoning models improved fastest on mathematics and code, where answers can be checked, and slowest where they cannot (test-time compute, neurosymbolic AI). The word is close to verification in systems engineering, which demonstrates that a built system meets its requirements; a verifier here is an automated check inside the loop, run thousands of times per task.