kernel-Nat.abundant_of_dvd
- Kind
- kernel-term
- Status
- checked
Supports: Abundant m -> dvd m n -> Not (Eq n zero) -> Abundant n
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- abundant_of_dvd 2>/dev/null | grep -Ec '^Nat\.abundant_of_dvd[[:space:]]')" -ge 1 Evidence notes
Destructs the `dvd` witness `q` (`n = mul m q`), derives `Lt zero q` from `Not (Eq n zero)` by contradiction (`q = 0` would force `n = 0` via `mul_zero`), then applies `Nat.sum_divisors_scale_le` (`divisor_sum_scale.rs`, `q * sumDivisors m <= sumDivisors (q*m)` for positive `q`) and multiplies the `Abundant m` hypothesis through by `q` (`Nat.mul_lt_mul_left`'s `mpr` direction) to get `Lt (mul q (mul 2 m)) (sumDivisors (mul q m))`, then reassociates `mul q (mul 2 m)` to `mul 2 n` via `mul_comm`/`mul_assoc` and rewrites `sumDivisors (mul q m)` to `sumDivisors n` via `mul_comm` (`n = mul m q = mul q m`).