In an earlier post, I argued that the definition of factorial (\(n!\)) is the number of ways that a number of n distinct objects can be arranged. I have recently been told that, no, the formal definition of factorial is as generally offered by sources such as Wolfram and Numberphile: The product of all integers from 1 to n. It may well be that the original reason for this product is to count the permutations of objects, but that’s beside the point.
This is a reasonable enough rebuttal, but it lead me to wonder about the history and origin of the definition. Several sources pointed directly at Christian Kramp, particularly his 1808 book Élémens d’arithmétique universelle. The site Earliest Uses of Various Mathematical Symbols also references Kramp’s later article, “Mémoire sur les facultés numériques”, which summarizes the same basic information.
In Élémens, Kramp makes at least three separate references to the factorial. The first is in the introduction, starting on page XI, where he writes (all translations mine): “To designate the product of the factors of an arithmetic progression, that is, \(a(a+r)(a+2r)….(a+nr-r)\), I use the notation \(a^{n|r}\)… I have given these the name ‘faculties’. Abrogast substituted the nicer and more French term ‘factorials’; I see the advantage of this new term, and in adopting his idea, I pay hommage to the memory of my friend.” Kramp’s original term of “faculty” is still used in some languages, such as his native German.
In chapter 15, “Permutations”, Kramp discusses what we currently call factorials. P. 218: “Given the quantities a, b, c, d, etc., which have a count of n, and which are distinct and consequently designated by distinct letters, the number of permutations is equal to the product of the factors from n down to unity, that is, \(n(n-1)(n-2)(n-3)…3.2.1\).” After giving some examples, he continues (p. 219): “We designate the product by \(n!\). The number of all possible permutations which we can make from n items is therefore \(n!\).”
In chapter 25, “Factorials”, Kramp discusses what he calls factorials. P. 347-8: “With the name ‘factorial’, I designate the products of factors making up an arithmetic progression of the first order, such as \(a(a+r)(a+2r)(a+3r)\) etc. … To write this factorial, I use the notation \(a^{n|r}\). The vertical line has to its right the difference of the factorial and to its left its power. … Using this new notation, less simple but more general, the product \(p!\) could be written \(1^{p|1}\)” (since \(p! = 1(1+1)(1+2)(1+3)…(1+n-1)\), hence \(a = 1\) and \(r = 1\)).
In modern notation, this is Kramp’s basic factorial: \[a^{n|r} = \prod_{k=1}^n \left(a + (k – 1)r\right)\]
and Kramp’s permutation count: \[n! = 1^{n|1} = \prod_{k=1}^n \left(1 + (k – 1)\right) = \prod_{k=1}^n k \]
On p. 348, he also explicitly addresses \(0!\). His notation makes it clear that \(0! = 1\) since \(a^0 = 1\) (in chapter 2, “Roots”, he points out that \(\frac{a^m}{a^m} = a^ma^{-m} = a^{m-m} = a^0 = 1\)).
There are quite a few comments that could be made about these passages. In response to the claim in “Earliest Uses…”, that the exclamation point was used in 1808 as “a convenience to the printer”, that’s inconsistent with Kramp’s use of his preferred notation alongside it. It does seem clear that the exclamation point was not in consistent use in 1808; what is unclear is whether Kramp did indeed invent it or whether he used an independently emerging convention.
Regardless, the separation of the discussion of permutations and of factorials with both symbols and several unrelated chapters suggests that, for Kramp, the topics were related but not identical. Also note that he describes his factorial in terms of an arithmetic progression starting from the smallest and going to the largest, while he describes the permutation count (which he does not explicitly name) in terms of a product from the largest to the smallest.
If Kramp had seen \(n!\) as merely a special case of the factorial, why are there these discrepancies? And if he meant to be coining the exclamation point notation in chapter 15, why does he refer to \(a^{n|r}\) as “new notation”? It’s certainly possible that he was being a bit messy and inconsistent in his specific notation. Even so, the development of the symbols — using \(n!\) in chapter 15 from the context of permutations and then \(a^{n|r}\) in chapter 25 as a “less simple, more general form” to which he devotes far more discussion — suggests a perceived precedence (at least of simplicity) in Kramp’s mind.
Let’s return to his notation. Here are the expansions of Kramp’s factorial for \(n = 1, 2, 3, 4, 5\):
\[\begin{aligned} \\ a^{1|r} &= a^1 \\ a^{2|r} &= a^2 + ra \\ a^{3|r} &= a^3 + 3ra^2 + 2r^2a \\ a^{4|r} &= a^4 + 6ra^3 + 11r^2a^2 + 6r^3a \\ a^{5|r} &= a^5 + 10ra^4+ 35r^2a^3 + 50r^3a^2 + 24r^4a \\ \end{aligned} \]
We can confirm these for \(n!\) by adding the coefficients, which sum to 1, 2, 6, 24, and 120, respectively. Each term includes \(a^n\), so it might be tempting to say that this demonstrates why \(a^{0|r} = a^0 = 1\), but the expansion for \(n = 0\) would have 0 elements in it, which would be an argument that 0! = 0 (since the sum of zero elements is zero).
This is somewhat the conflict when it comes to \(0!\): If the factorial is expressed as a product, which it’s usually formally defined as, then \(0! = 1\) since the product of all elements of the empty set is 1. However, Kramp’s definition of the factorial allows for the factorial to be expressed either as a product of sums or as a sum of products, and in the latter case, the sum of all elements of the empty set is 0.
Kramp’s own explanation itself seems dependent on \(a^{n|r} = a^n 1^{n|\frac{r}{a}}\), the proof for which he leaves to the reader (“we believe it useless to provide a demonstration”, p. 348).
Naturally, \(0! = 1\) is needed by definition to resolve various cases, and in standard mathematics does not lead to any contradictions. The most widely used continuous function extension for the factorial, that is, the Gamma function, has \(0! = \Gamma(1) = 1\). And since the formal modern definition of the factorial is \(n! = \prod_{k=1}^n k \), the product of empty sets applies.
Side note: I’m curious what pattern, if any, the coefficients of Kramp’s factorial expansions show. As mentioned above, the first element is \(a^n\). The second element is \(Cra^{n-1}\), where C is the triangle number for n-1. The last element is \((n-1)!r^{n-1}a\). What I’m not sure about is the pattern of the other coefficients.