kernel-Nat.descFactorial_self
- Kind
- kernel-term
- Status
- checked
Supports: ∀ (n : ℕ), n.descFactorial n = n.factorial
test "$(cargo run -q -p axeyum-lean-kernel --example nat_theorem_inventory -- descFactorial_self 2>/dev/null | grep -Ec '^Nat\.descFactorial_self[[:space:]]')" -ge 1 Evidence notes
`build_nat_prelude` admits `Nat.descFactorial_self` through the trusted `Kernel::add_declaration` gate. Route: `Nat.descFactorial_eq_factorial_mul_choose : n.descFactorial k = k! * n.choose k`, instantiated at `k := n`, then `Nat.choose_self : choose n n = 1` and `mul_one` collapse `n! * choose n n` to `n!`. `nat_theorem_inventory` exits non-zero for a name that does not exist, and the `grep -c` count (tested `-ge 1`, not piped into `grep -q`) requires the admitted declaration to actually be printed.