kernel-Nat.log_one_right
- Kind
- kernel-term
- Status
- checked
Supports: For every base b, log_b(1) = 0.
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- log_one_right 2>/dev/null | grep -Ec '^Nat\.log_one_right[[: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. A THREE-way case analysis on `b`, because the two cuts fail for different reasons: `b = 0` and `b = 1` fail `2 <= b`, while `b = succ (succ k)` passes it and then fails `b <= 1` (`ble (succ (succ k)) (succ zero)` reduces to `ble (succ k) zero`, i.e. `Bool.false`). All three branches are `Eq.refl`; no rewriting is used anywhere. `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 four real names exit 0 and `log_zero_rightXX` exits 1.