kernel-Nat.min_fac_eq_self_of_prime
- Kind
- kernel-term
- Status
- checked
Supports: Nat.min_fac_eq_self_of_prime is admitted by the trusted kernel gate with the type recorded in formal.statement.
test "$(cargo run -q --release -p axeyum-lean-kernel --example nat_theorem_inventory -- min_fac_eq_self_of_prime 2>/dev/null | grep -Fc 'Nat.min_fac_eq_self_of_prime 4 ((x0 : AxNat) -> ((x1 : And (AxNat.le (AxNat.succ (AxNat.succ AxNat.zero)) x0) (((x1 : AxNat) -> ((x2 : AxNat.dvd x1 x0) -> Or (Eq.{1} AxNat x1 (AxNat.succ AxNat.zero)) (Eq.{1} AxNat x1 x0))))) -> Eq.{1} AxNat (AxNat.minFac x0) x0))')" -ge 1 Evidence notes
No new induction: `Nat.min_fac_dvd` gives `minFac n | n` (its `2 <= n` premise is primality's left conjunct), primality's right conjunct turns that into `minFac n = 1 \/ minFac n = n`, and `Or.resolve_left` discharges the left disjunct by transporting `Nat.min_fac_two_le` along `minFac n = 1` into `Le 2 1`, refuted by `Nat.not_succ_le_self`.