rat-eq-zero-of-is-zero-b-1
- Kind
- kernel-term
- Status
- checked
Supports: `Rat.eq_zero_of_isZeroB` is a checked `Declaration::Theorem` with an EMPTY `Kernel::axiom_footprint` in all four preludes carrying the rationals. The `formal.statement` is the kernel's `render_lean` of the admitted type; reading it confirms the hypothesis is an equation at `Bool` between `Rat.isZeroB x0` and `Bool.true` and the conclusion an equation at `Rat` -- the two different types are the whole content of the bridge, and a paraphrase that said `x is zero` on both sides would lose it.
out=$(target/release/examples/kernel_declaration_projection --require-declaration Rat.eq_zero_of_isZeroB --require-kind theorem 2>&1) && test "$(printf "%s\n" "$out" | grep -cE 'found[[:space:]]+(rat|creal|complex|cpoint)[[:space:]]+theorem[[:space:]]+Rat\.eq_zero_of_isZeroB[[:space:]]+0$')" = 4 Evidence notes
Run 2026-09-02: prints four `found ... theorem Rat.eq_zero_of_isZeroB 0` rows (rat, creal, complex, cpoint) and exits 0. The checker COUNTS those rows and requires exactly 4, so a deletion, a rename, a demotion to a `Definition`, a nonzero axiom footprint, or the declaration failing to survive into a downstream prelude each make the count differ and the command exit 1. `scripts/new-fact.py` verified the pattern fails on mutated output before this file was written.