Целью проверки корректности является минимизация базы доверенных компьютеров .
Имея средство проверки, ни компилятор, ни доказатель теоремы не должны быть правильными. В документе говорится об этом на странице 3:
Neither the compiler nor the prover need to be correct in order to be guaranteed to
detect incorrect compiler output. This is a significant advantage since the VCGen and
the proof checker are significantly simpler than the compiler and the prover.
Проверка корректности - это всего лишь пара строк кода, и ее можно проверить вручную на правильность. В отличие от этого, автоматический проверяющий, который хорошо работает, чрезвычайно сложен и вряд ли будет корректным, хотя в случае хорошо проверенных и широко используемых проверок ошибки будут в крайних случаях, которые может быть нелегко вызвать. Взгляните на 30- килограммовый код LOC C, который составляет Lingeling , современный SAT-решатель, чтобы увидеть, насколько сложными могут быть автоматизированные средства доказательства теорем. Без проверки вы должны были бы доказать правильность этой теоремы. Это выше того, что мы можем сделать экономически в 2015 году.