Open and answer this issue on GitHub.
ready · opened 2026-10-17 · updated 2026-10-17 · 0 comments
The agent that built ADR-359 D1-D3 (767cfc1, 0.0.997, #632) gave a result summary only to free functions whose body consists solely of let, return and if. A body with any of the following gets none, even where it does not touch the result:
match;D1 says more. A function gets a summary when every exit returns a whole number the prover reads, there is no loop that changes a name it reads, there is no match, and no call on the way can come back to it.
The build is therefore stricter than the text. It proves less than the specification promises, and never anything false. The owner decided (round on #632) to keep D1’s text as it is and record the gap here rather than narrow the specification.
example(2) - 1 == 11;self’s fields reads them as parameters.NIKAIA_PROVER_COUNTS=1 counters and callgrind over lower-std (limit: ADR-359 D10’s +5 %). Check every new refutation by hand (D9).