A propositional proof system specifies efficiently checkable certificates for logical tautologies. In the functional formulation, it is a polynomial-time computable surjection from finite binary strings onto the encoded tautologies: the input is a proof and the output is the formula proved. Soundness means no false formula is output; completeness means every logical tautology has some proof.
For example, a truth table can certify by checking its two assignments. The same method for variables may require rows, so efficient verification in the proof's length does not imply short proofs in the formula's length. Proof complexity asks which formulas require long certificates in particular systems. Searching for a proof and checking a supplied proof are different computational tasks.[ref]
Robert A. Reckhow 2026-11-05
Robert A. Reckhow coauthored the 1979 paper establishing a general computational framework for propositional proof systems with Stephen Cook. Their formulation represents a proof system by a polynomial-time computable surjection onto the logical tautologies, separating verification cost from the length of the shortest proof.[ref]
The paper compares systems using efficient translations of proofs. If proofs in one system can be converted to proofs in another by a polynomial-time procedure, the translated proofs can grow only polynomially in length. Such a comparison is stronger than observing that both systems eventually prove the same formulas: completeness alone places no useful bound on the cost of converting evidence. This gives proof complexity a way to compare proof formats as computational representations.[ref]