kernel-Nat.land_le_right
- Kind
- kernel-term
- Status
- checked
Supports: ∀ {n m : ℕ}, n &&& m ≤ m
test "$(cargo run -q --release -p axeyum-lean-kernel --example nat_theorem_inventory -- land_le_right 2>/dev/null | grep -Ec '^Nat\.land_le_right[[:space:]]')" -ge 1 Evidence notes
`build_nat_prelude` admits `Nat.land_le_right` through the trusted `Kernel::add_declaration` gate. `nat_theorem_inventory`'s rendered type matches this fact's `formal.statement` up to variable naming. Anchored with `^Nat\.land_le_right[[:space:]]` so a sibling name cannot satisfy this row; `grep -Ec` consumes the pipe so the tested count decides the exit status. Run `--release` -- the debug build of this inventory example SIGABRTs on stack depth (unrelated to this proof). Mathlib's `&&&` (`HAnd`) for `Nat` is the SAME function as `Nat.land` -- `Init.Data.Nat.Bitwise.Lemmas`'s `Nat.and_*` family and Mathlib's own `Nat.land_*` family (already reconciled: F:ml430-nat-land-comm-7e6ad72e, F:ml430-nat-land-assoc-ad4775b8) state the identical proposition over that one function under two different pinned declaration names -- reconciling this `and_*` mirror to our `Nat.land_*` theorem is honest under the mirror-flip criterion in CLAUDE.md: Mathlib's `def` (`Nat.land`, reached via the `&&&` notation) is the same function ours proves the property about.