kernel-Nat.mul_lt_mul_left
- Kind
- kernel-term
- Status
- checked
Supports: `Nat.mul_lt_mul_left` is admitted as a Theorem with EXACTLY the stated shape, pinned verbatim via the kernel's own renderer: `((x0 : AxNat) -> ((x1 : AxNat) -> ((x2 : AxNat) -> ((x3 : AxNat.lt AxNat.zero x0) -> Iff (AxNat.lt (AxNat.mul x0 x1) (AxNat.mul x0 x2)) (AxNat.lt x1 x2)))))`. Built in a new file, nat_prelude/mul_order_lemmas.rs, as `mp` = `Nat.lt_of_mul_lt_mul_left` (the positivity-free cancellation lemma) plus `mpr` = a positive-monotone core built from `Nat.mul_le_mul_left` at `succ b` bridged into `Lt (mul a b) (mul a c)` via `Nat.add_le_add_left`/`Nat.le_trans`, using `mul_succ`/`add_succ`/`add_zero`'s refl-provable defining equations to bridge the two ends with no explicit rewrite.
test "$(cargo run -q --release -p axeyum-lean-kernel --example nat_theorem_inventory 2>/dev/null | awk -F'\t' '$1 == "Nat.mul_lt_mul_left" && $3 == "((x0 : AxNat) -> ((x1 : AxNat) -> ((x2 : AxNat) -> ((x3 : AxNat.lt AxNat.zero x0) -> Iff (AxNat.lt (AxNat.mul x0 x1) (AxNat.mul x0 x2)) (AxNat.lt x1 x2)))))"' | wc -l)" -ge 1