kernel-Nat.clog_zero_left
- Kind
- kernel-term
- Status
- checked
Supports: For every n, clog_0(n) = 0.
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- clog_zero_left 2>/dev/null | grep -Ec '^Nat\.clog_zero_left[[:space:]]')" -ge 1 Evidence notes
`build_nat_prelude` admits this theorem through the trusted `Kernel::add_declaration` gate, which re-checks the proof term against the stated type, so producing this row at all is a machine-checked proof. The guard's OUTER cut here is `Nat.ble 2 b` -- the opposite nesting from `log.rs`, chosen because this lemma fixes `b = 0` and varies `n`: `ble (succ (succ zero)) zero` reduces to `Bool.false` regardless of `n`, so the whole term collapses to `0` in every fuel case with a single rewrite. The induction on `n` exposes the fuel's constructor and nothing more -- the induction hypothesis is never used, and both minor premises are `Eq.refl`. `nat_theorem_inventory` exits non-zero for a name that does not exist, and `grep -Ec` consumes the pipe and the count is tested, so the exit status depends on what the run found. Controls run 2026-08-28: the real name exits 0 and `clog_zero_leftXX` exits 1.