Factorial | |
---|---|
Type | Combinatorial |
Based on | Multiplication |
Growth rate | \(f_{2}(n)\) |
The factorial is a function applied to whole numbers, defined as[1][2]
$$n! = \prod^n_{i = 1} i = n \cdot (n - 1) \cdot \ldots \cdot 4 \cdot 3 \cdot 2 \cdot 1.$$
For example, \(6! = 6 \cdot 5 \cdot 4 \cdot 3 \cdot 2 \cdot 1 = 720\). It is equal to the number of ways \(n\) distinct objects can be arranged, because there are \(n\) ways to place the first object, \(n - 1\) ways to place the second object, and so forth. The special case \(0! = 1\) has been set by definition; there is one way to arrange zero objects.
Before the notation \(n!\) was invented, \(n\) was common.
The function can be defined recursively as \(0! = 1\) and \(n! = n \cdot (n - 1)!\). The first few values of \(n!\) for \(n = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11\) are 1, 1 , 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800, and 39916800.
Properties
The sum of the reciprocals of the factorials is \(\sum^{\infty}_{i = 0} \frac{1}{i!} = \frac{1}{0!} + \frac{1}{1!} + \frac{1}{2!} + \frac{1}{3!} + \cdots = 2.71828182845904\ldots\), a mathematical constant better known as \(e\). In fact, \(e^x = 1 + x + \frac{x^2}{2!} + \frac{x^3}{3!} + \cdots\), which illustrates the important property that \(\frac{d}{dx}e^x = e^x\).
Because \(n! = \Gamma (n + 1)\) (where \(\Gamma (x)\) is the gamma function), \(n! = \int^{\infty}_0 e^{-t} \cdot t^{n} dt\). This identity gives us factorials of positive real numbers (and negative non-integer real numbers), not limited to integers:
- \(\left(\frac{1}{2}\right)! = \frac{\sqrt{\pi}}{2}\)
- \(\left(-\frac{1}{2}\right)! = \sqrt{\pi}\)
The most well-known approximation of n! is \(n!\approx \sqrt{2\pi n}(\frac{n}{e})^n\), and it's called Stirling's approximation.
In base 10, only two non-trivial numbers are equal to the sum of the factorials of their digits: \(145 = 1! + 4! + 5!\) and \(40585 = 4! + 0! + 5! + 8! + 5!\).
The number of zeroes at the end of the decimal expansion of \(n!\) is \(\sum_{k = 1} \lfloor n / 5^k\rfloor\).[3] For example, 10000! has 2000 + 400 + 80 + 16 + 3 = 2499 zeroes.
Specific numbers
One hundred factorial's decimal expansion is shown below.
- 93,326,215,443,944,152,681,699,238,856,266,700,490,715,968,264,381,621,468,592,963,895,217,599,993,229,915,608,941,463,976,156,518,286,253,697,920,827,223,758,251,185,210,916,864,000,000,000,000,000,000,000,000
In scientific notation, this is approximately 9.3326215443 × 10157. It seems to be approximately googol3/2, although it is almost 100 million times larger.
Lawrence Hollom calls 200! faxul, and Aarex Tiaokhiao has proposed the name Myriadbang for 10,000!
One thousand factorial is about 4.0238726007 × 102567.
70! is the smallest factorial which is greater than googol, while 69! still has only 99 digits.
Variation
Aalbert Torsius defines a variation on the factorial, where \(x!n = \prod^{x}_{i = 1} i!(n - 1) = 1!(n - 1) \cdot 2!(n - 1) \cdot \ldots \cdot x!(n - 1)\) and \(x!0 = x\).[4]
\(x!n\) is pronounced "nth level factorial of x." \(x!1\) is simply the ordinary factorial and \(x!2\) is Sloane and Plouffe's superfactorial \(x\$\).
The special case \(x!x\) is a function known as the Torian.
Pseudocode
// Standard factorial function function factorial(z): result := 1 for i from 1 to z: result := result * i return result // Generalized factorial, using Lanczos approximation for gamma function g := 7 coeffs := [0.99999999999980993, 676.5203681218851, -1259.1392167224028, 771.32342877765313, -176.61502916214059, 12.507343278686905, -0.13857109526572012, 9.9843695780195716e-6, 1.5056327351493116e-7] function factorialReal(z): ag := coeffs[0] for i from 1 to g + 1: ag := ag + coeffs[i] / (z + i) zg := z + g + 0.5 return sqrt(2 * pi) * zgz + 0.5 * e-zg * ag // Torsius' factorial extension function factorialTorsius(z, x): if x = 0: return z if x = 1: return factorial(z) result := 1 for i from 1 to z: result := result * factorialTorsius(i, x - 1) return result
Sources
See also
Falling and rising: Falling factorial · Rising factorial
Other mathematical variants: Alternating factorial · Hyperfactorial · q-factorial · Roman factorial · Subfactorial · Weak factorial · Primorial · Compositorial · Semiprimorial
Tetrational growth: Exponential factorial · Expostfacto function · Superfactorial by Clifford Pickover
Nested Factorials: Tetorial · Petorial · Ectorial · Zettorial · Yottorial
Array-based extensions: Hyperfactorial array notation · Nested factorial notation
Other googological variants: · Tetrofactorial · Superfactorial by Sloane and Plouffe · Torian · Factorexation · Mixed factorial · Bouncing Factorial