0! = 1

Dr. Math FAQ || Classic Problems || Formulas || Search Dr. Math || Dr. Math Home

Why does 0! = 1 ?

Usually n factorial is defined in the following way:

n! = 1*2*3*...*n

But this definition does not give a value for 0 factorial, so a natural question is: what is the value here of 0! ?

A first way to see that 0! = 1 is by working backward. We know that:

```                1! = 1
2! = 1!*2
2! = 2
3! = 2!*3
3! = 6
4! = 3!*4
4! = 24

```
We can turn this around:
```                4! = 24
3! = 4!/4
3! = 6
2! = 3!/3
2! = 2
1! = 2!/2
1! = 1
0! = 1!/1
0! = 1

```
In this way a reasonable value for 0! can be found.

How can we fit 0! = 1 into a definition for n! ? Let's rewrite the usual definition with recurrence:

```      1! = 1
n! = n*(n-1)! for n > 1

```
Now it is simple to change the definition to include 0! :
```      0! = 1
n! = n*(n-1)! for n > 0

```
Why is it important to compute 0! ?

An important application of factorials is the computation of number combinations:

```               n!
C(n,k) = --------
k!(n-k)!

```
C(n,k) is the number of combinations you can make of k objects out of a given set of n objects. We see that C(n,0) and C(n,n) should be equal to 1, but they require that 0! be used.
```                      n!
C(n,0) = C(n,n) = ----
n!0!

```
So 0! = 1 neatly fits what we expect C(n,0) and C(n,n) to be.

Can factorials also be computed for non-integer numbers? Yes, there is a famous function, the gamma function G(z), which extends factorials to real and even complex numbers. The definition of this function, however, is not simple:

```          inf.
G(z) = INT x^(z-1) e^(-x) dx
0

```
Note that the extension of n! by G(z) is not what you might think: when n is a natural number, then G(n) = (n-1)!

The gamma function is undefined for zero and negative integers, from which we can conclude that factorials of negative integers do not exist.