kernel-Nat.sqrt_one
- Kind
- kernel-term
- Status
- checked
Supports: sqrt(1) = 1
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- sqrt_one 2>/dev/null | grep -Ec '^Nat\.sqrt_one[[: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. `Nat.sqrt 1` is `Nat.sqrtAux 1 1`: the one fuel step checks `(0 + 1) * (0 + 1) <= 1`, which is `true`, so the accumulator becomes `1` and the (now exhausted) fuel returns it. Every operand is a concrete numeral, so the whole term reduces without any free variable, and the proof is `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: `sqrt_zero` and `sqrt_one` each exit 0, and `sqrt_oneXX` exits 1.