A function has 32 boolean parameters.
How many test cases do you need to exhaustively verify its behavior?
The answer is 2³² — 4,294,967,296. Four billion, two hundred ninety-four million test cases. At one test per microsecond, that is 71 minutes of pure execution time. Before assertions. Before test framework overhead. Before any I/O.
No real test suite does this. No real test suite can. This is not a gap in practice — it is a mathematical fact about the nature of boolean space. With n boolean inputs, there are 2ⁿ possible combinations. The space doubles with each additional variable.
This is where truth tables meet computational reality. A truth table is the specification of a boolean function. It lists every input combination and the required output. For small n, it is finite and buildable. For large n, it is infinite in practice. The tension between specification completeness and computational feasibility is one of the central problems of software verification.
The 32-parameter function is not hypothetical. Legacy codebases are full of functions with a dozen flag parameters, each of which is a boolean. The combination space is untestable. The bugs hide in the corners.