Identifier
F:nat-prime-dvd-choose
Proof route
kernel-lean
External status
proved
Axiom footprint
Empty

Recorded description

For every prime natural number p and every natural number k with 0 < k < p, p divides C(p, k).

Formal statement
theorem Nat.prime_dvd_choose : ((x0 : AxNat) -> ((x1 : AxNat) -> ((x2 : And (AxNat.le (AxNat.succ (AxNat.succ AxNat.zero)) x0) (((x2 : AxNat) -> ((x3 : AxNat.dvd x2 x0) -> Or (Eq.{1} AxNat x2 (AxNat.succ AxNat.zero)) (Eq.{1} AxNat x2 x0))))) -> ((x3 : AxNat.lt AxNat.zero x1) -> ((x4 : AxNat.lt x1 x0) -> AxNat.dvd x0 (AxNat.choose x0 x1))))))

Dependencies

The graph shows direct ledger edges. Follow a node to open its artifact page.

Direct dependencies appear to the left. The current fact is in the center. Facts that depend directly on it appear to the right. A factor divides its product Euclid's lemma: a prime dividin <= destructs into an additive w A divisor of a positive natural < on the naturals is irreflexiv [generated] kernel theorem Nat. Nat succ_add [generated] kernel theorem Nat. Current fact [generated] kernel theorem Nat.
12 direct dependencies 1 direct dependents Graph shows the first 8 on each side.

Evidence

kernel-Nat.prime_dvd_choose

Kind
kernel-term
Status
checked

Supports: For every prime natural number p and every natural number k with 0 < k < p, p divides C(p, k).

Checker command
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- prime_dvd_choose 2>/dev/null | grep -Ec '^Nat\.prime_dvd_choose[[:space:]]')" -ge 1
Evidence notes

`build_nat_prelude` admits this theorem through the trusted `Kernel::add_declaration` gate, which re-checks the proof term against the stated type, so producing this row at all is a machine-checked proof. `nat_theorem_inventory` exits non-zero for a name that does not exist, and the `grep -q` requires the admitted declaration to be printed -- both halves of the check depend on the theorem actually being present.

footprint-Nat.prime_dvd_choose

Kind
exhaustive-enumeration
Status
checked

Supports: axiom_footprint: [] -- the Nat prelude's trusted surface is empty

Checker command
cargo run -q -p axeyum-lean-kernel --example nat_axiom_inventory -- --require-axiom-free nat
Evidence notes

`nat_axiom_inventory --require-axiom-free nat` enumerates the built Nat environment and exits non-zero unless it admits no Axiom, Opaque or Quotient declaration (measured: axiom=0 opaque=0 quotient=0). A theorem cannot depend on a trusted declaration the environment does not contain, so an empty trusted surface bounds every individual theorem's footprint by [].

Provenance

{
  "date": "2026-08-25",
  "established_by": "axeyum-lean-kernel build_nat_prelude, lane rado-claim-ledger",
  "source": "one of the theorems build_nat_prelude admits; registered to close the flywheel's fact-ledger arrow for recently landed Nat theorems"
}