kernel-Nat.lt_xor_cases
- Kind
- kernel-term
- Status
- checked
Supports: ∀ {a b c : ℕ}, a < b ^^^ c → a ^^^ c < b ∨ a ^^^ b < c
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- lt_xor_cases 2>/dev/null | grep -Ec '^Nat\.lt_xor_cases[[:space:]]')" -ge 1 Evidence notes
`build_nat_prelude` admits `Nat.lt_xor_cases` (`nat_prelude/xor_trichotomy.rs`, `declare_lt_xor_cases`) through the trusted `Kernel::add_declaration` gate, on the first real kernel-check attempt (only Rust-level compile errors needed fixing first). This is the last of the four pieces `docs/plan/status/260-nat-lt-xor-cases.md` named (`testBit_xor`, `exists_most_significant_bit`, `lt_of_testBit`, `xor_assoc`/`xor_xor_cancel_left`/`_right`/`xor_ne_zero_iff` -- see `depends_on`), composed via the auxiliary theorem `Nat.xor_trichotomy` (same file) following Mathlib's own proof route (`Mathlib/Data/Nat/Bitwise.lean`, pinned commit `c5ea00351c28e24afc9f0f84379aa41082b1188f`, read directly). `nat_theorem_inventory` exits non-zero for a name that does not exist, and the anchored `grep -Ec` count (tested `-ge 1`, never piped into `grep -q`) requires the admitted declaration to actually be printed with the exact rendered name.