Step-by-step derivation
S001 · implies
Before
N includes0;F(0)=1;F(j)=j·F(j−1)
After
exact integer products,not floating values or a permutation proof
Conditions: none
Use empty product1 and integer factor multiplication,retaining large values exactly.This finite recurrence audit is not a general proof of permutation counting.
Step identifiers and dependencies
Rule: exact_factorial_protocol · Uses: G001
S002 · implies
Before
actual factorial:start at F(0)
After
F(0)=1
Conditions: none
The product of zero factors is1,not0;this is the successor recurrence's base.
Step identifiers and dependencies
Rule: factorial_empty_product_base · Uses: G001, S001
S003 · calculation
Before
actual factorial through factor1 := mul(1, 1)
After
actual factorial through factor1 = 1
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · calculation
Before
actual factorial through factor2 := mul(1, 2)
After
actual factorial through factor2 = 2
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S003
S005 · calculation
Before
actual factorial through factor3 := mul(2, 3)
After
actual factorial through factor3 = 6
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · calculation
Before
actual factorial through factor4 := mul(6, 4)
After
actual factorial through factor4 = 24
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S005
S007 · calculation
Before
actual factorial through factor5 := mul(24, 5)
After
actual factorial through factor5 = 120
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · calculation
Before
actual factorial through factor6 := mul(120, 6)
After
actual factorial through factor6 = 720
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · calculation
Before
actual factorial through factor7 := mul(720, 7)
After
actual factorial through factor7 = 5040
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · calculation
Before
actual factorial through factor8 := mul(5040, 8)
After
actual factorial through factor8 = 40320
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · calculation
Before
actual factorial through factor9 := mul(40320, 9)
After
actual factorial through factor9 = 362880
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · calculation
Before
actual factorial through factor10 := mul(362880, 10)
After
actual factorial through factor10 = 3628800
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
actual factorial through factor11 := mul(3628800, 11)
After
actual factorial through factor11 = 39916800
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
actual factorial through factor12 := mul(39916800, 12)
After
actual factorial through factor12 = 479001600
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · calculation
Before
actual factorial through factor13 := mul(479001600, 13)
After
actual factorial through factor13 = 6227020800
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · calculation
Before
actual factorial through factor14 := mul(6227020800, 14)
After
actual factorial through factor14 = 87178291200
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
actual factorial through factor15 := mul(87178291200, 15)
After
actual factorial through factor15 = 1307674368000
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · calculation
Before
actual factorial through factor16 := mul(1307674368000, 16)
After
actual factorial through factor16 = 20922789888000
Conditions: none
Multiply the preceding factorial by the new positive integer factor,retaining every exact intermediate.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S017
S019 · calculation
Before
single-factor-omitted product := div(20922789888000, 15)
After
single-factor-omitted product = 1394852659200
Conditions: none
The nonzero k occurs exactly once in the1,...,n factor list;removing that factor gives n!/k.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · calculation
Before
restore omitted factor := mul(15, 1394852659200)
After
restore omitted factor = 20922789888000
Conditions: none
Multiply the same k back to audit the complete product.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · calculation
Before
restored product minus factorial := sub(20922789888000, 20922789888000)
After
restored product minus factorial = 0
Conditions: none
Restored product minus the true factorial must be0.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · implies
Before
removed factor k=15;full n!=20922789888000
After
omitted product=1394852659200;restoration residual=0
Conditions: none
Omit the designated factor once,not every factor divisible by k;check by exact positive-integer division and reverse multiplication.
Step identifiers and dependencies
Rule: single_factor_removal_reverse_audit · Uses: G001, S021