Binomial Coefficient

Get Binomial Coefficient essential facts below. View Videos or join the Binomial Coefficient discussion. Add Binomial Coefficient to your PopFlock.com topic list for future reference or share this resource on social media.
## History and notation

## Definition and interpretations

## Computing the value of binomial coefficients

### Recursive formula

### Multiplicative formula

### Factorial formula

### Generalization and connection to the binomial series

## Pascal's triangle

## Combinatorics and statistics

## Binomial coefficients as polynomials

### Binomial coefficients as a basis for the space of polynomials

### Integer-valued polynomials

### Example

## Identities involving binomial coefficients

### Sums of the binomial coefficients

#### Multisections of sums

#### Partial sums

### Identities with combinatorial proofs

^{[10]} One may show by induction that *F*(*n*) counts the number of ways that a *n* × 1 strip of squares may be covered by 2 × 1 and 1 × 1 tiles. On the other hand, if such a tiling uses exactly k of the 2 × 1 tiles, then it uses *n* - 2*k* of the 1 × 1 tiles, and so uses *n* - *k* tiles total. There are ways to order these tiles, and so summing this coefficient over all possible values of k gives the identity.
#### Sum of coefficients row

### Dixon's identity

### Continuous identities

## Generating functions

### Ordinary generating functions

### Exponential generating function

## Divisibility properties

## Bounds and asymptotic formulas

### Both n and k large

### n much larger than k

^{[14]}
### Sums of binomial coefficients

### Generalized binomial coefficients

## Generalizations

### Generalization to multinomials

### Taylor series

### Binomial coefficient with *n* = 1/2

### Products of binomial coefficients

### Partial fraction decomposition

### Newton's binomial series

### Multiset (rising) binomial coefficient

#### Generalization to negative integers *n*

### Two real or complex valued arguments

### Generalization to *q*-series

### Generalization to infinite cardinals

## In programming languages

## See also

## Notes

## References

## External links

This article uses material from the Wikipedia page available here. It is released under the Creative Commons Attribution-Share-Alike License 3.0.

Binomial Coefficient

In mathematics, the **binomial coefficients** are the positive integers that occur as coefficients in the binomial theorem. Commonly, a binomial coefficient is indexed by a pair of integers *n* >= *k* >= 0 and is written It is the coefficient of the *x*^{k} term in the polynomial expansion of the binomial power (1 + *x*)^{n}, and is given by the formula

For example, the fourth power of 1 + *x* is

and the binomial coefficient is the coefficient of the *x*^{2} term.

Arranging the numbers in successive rows for gives a triangular array called Pascal's triangle, satisfying the recurrence relation

The binomial coefficients occur in many areas of mathematics, and especially in combinatorics. The symbol is usually read as "*n* choose *k*" because there are ways to choose an (unordered) subset of *k* elements from a fixed set of *n* elements. For example, there are ways to choose 2 elements from namely and

The binomial coefficients can be generalized to for any complex number z and integer *k* ≥ 0, and many of their properties continue to hold in this more general form.

Andreas von Ettingshausen introduced the notation in 1826,^{[1]} although the numbers were known centuries earlier (see Pascal's triangle). The earliest known detailed discussion of binomial coefficients is in a tenth-century commentary, by Halayudha, on an ancient Sanskrit text, Pingala's *Chandastra*. In about 1150, the Indian mathematician Bhaskaracharya gave an exposition of binomial coefficients in his book *L?l?vat?*.^{[2]}

Alternative notations include *C*(*n*, *k*), _{n}*C*_{k}, ^{n}*C*_{k}, *C*^{k}_{n}, *C*^{n}_{k}, and *C*_{n,k} in all of which the *C* stands for *combinations* or *choices*. Many calculators use variants of the because they can represent it on a single-line display. In this form the binomial coefficients are easily compared to *k*-permutations of *n*, written as *P*(*n*, *k*), etc.

kn |
0 | 1 | 2 | 3 | 4 | ⋯ |
---|---|---|---|---|---|---|

0 | 1 | 0 | 0 | 0 | 0 | ⋯ |

1 | 1 | 1 | 0 | 0 | 0 | ⋯ |

2 | 1 | 2 | 1 | 0 | 0 | ⋯ |

3 | 1 | 3 | 3 | 1 | 0 | ⋯ |

4 | 1 | 4 | 6 | 4 | 1 | ⋯ |

⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋮ | ⋱ |

The first few binomial coefficients on a left-aligned Pascal's triangle |

For natural numbers (taken to include 0) *n* and *k*, the binomial coefficient can be defined as the coefficient of the monomial *X*^{k} in the expansion of . The same coefficient also occurs (if *k* n) in the binomial formula

(valid for any elements *x*, *y* of a commutative ring),
which explains the name "binomial coefficient".

Another occurrence of this number is in combinatorics, where it gives the number of ways, disregarding order, that *k* objects can be chosen from among *n* objects; more formally, the number of *k*-element subsets (or *k*-combinations) of an *n*-element set. This number can be seen as equal to the one of the first definition, independently of any of the formulas below to compute it: if in each of the *n* factors of the power (1 + *X*)^{n} one temporarily labels the term *X* with an index *i* (running from 1 to *n*), then each subset of *k* indices gives after expansion a contribution *X*^{k}, and the coefficient of that monomial in the result will be the number of such subsets. This shows in particular that is a natural number for any natural numbers *n* and *k*. There are many other combinatorial interpretations of binomial coefficients (counting problems for which the answer is given by a binomial coefficient expression), for instance the number of words formed of *n* bits (digits 0 or 1) whose sum is *k* is given by , while the number of ways to write where every *a*_{i} is a nonnegative integer is given by . Most of these interpretations are easily seen to be equivalent to counting *k*-combinations.

Several methods exist to compute the value of without actually expanding a binomial power or counting *k*-combinations.

One method uses the recursive, purely additive formula

- for all integers such that

with initial/boundary values

- for all integers

The formula follows from considering the set {1, 2, 3, ..., *n*} and counting separately (a) the *k*-element groupings that include a particular set element, say "*i*", in every group (since "*i*" is already chosen to fill one spot in every group, we need only choose *k* - 1 from the remaining *n* − 1) and (b) all the *k*-groupings that don't include "*i*"; this enumerates all the possible *k*-combinations of *n* elements. It also follows from tracing the contributions to *X*^{k} in (1 + *X*)^{n-1}(1 + *X*). As there is zero *X*^{n+1} or *X*^{−1} in (1 + *X*)^{n}, one might extend the definition beyond the above boundaries to include when either *k* > *n* or *k* < 0. This recursive formula then allows the construction of Pascal's triangle, surrounded by white spaces where the zeros, or the trivial coefficients, would be.

A more efficient method to compute individual binomial coefficients is given by the formula

where the numerator of the first fraction is expressed as a falling factorial power.
This formula is easiest to understand for the combinatorial interpretation of binomial coefficients.
The numerator gives the number of ways to select a sequence of *k* distinct objects, retaining the order of selection, from a set of *n* objects. The denominator counts the number of distinct sequences that define the same *k*-combination when order is disregarded.

Due to the symmetry of the binomial coefficient with regard to *k* and , calculation may be optimised by setting the upper limit of the product above to the smaller of *k* and .

Finally, though computationally unsuitable, there is the compact form, often used in proofs and derivations, which makes repeated use of the familiar factorial function:

where *n*! denotes the factorial of *n*. This formula follows from the multiplicative formula above by multiplying numerator and denominator by ; as a consequence it involves many factors common to numerator and denominator. It is less practical for explicit computation (in the case that *k* is small and *n* is large) unless common factors are first cancelled (in particular since factorial values grow very rapidly). The formula does exhibit a symmetry that is less evident from the multiplicative formula (though it is from the definitions)

which leads to a more efficient multiplicative computational routine. Using the falling factorial notation,

The multiplicative formula allows the definition of binomial coefficients to be extended^{[3]} by replacing *n* by an arbitrary number *?* (negative, real, complex) or even an element of any commutative ring in which all positive integers are invertible:

With this definition one has a generalization of the binomial formula (with one of the variables set to 1), which justifies still calling the binomial coefficients:

This formula is valid for all complex numbers *?* and *X* with |*X*| < 1. It can also be interpreted as an identity of formal power series in *X*, where it actually can serve as definition of arbitrary powers of power series with constant coefficient equal to 1; the point is that with this definition all identities hold that one expects for exponentiation, notably

If *?* is a nonnegative integer *n*, then all terms with *k* > *n* are zero, and the infinite series becomes a finite sum, thereby recovering the binomial formula. However, for other values of *?*, including negative integers and rational numbers, the series is really infinite.

Pascal's rule is the important recurrence relation

which can be used to prove by mathematical induction that is a natural number for all integer *n* >= 0 and all integer *k*, a fact that is not immediately obvious from formula (1). To the left and right of Pascal's triangle, the entries (shown as blanks) are all zero.

Pascal's rule also gives rise to Pascal's triangle:

0: 1 1: 1 1 2: 1 2 1 3: 1 3 3 1 4: 1 4 6 4 1 5: 1 5 10 10 5 1 6: 1 6 15 20 15 6 1 7: 1 7 21 35 35 21 7 1 8: 1 8 28 56 70 56 28 8 1

Row number n contains the numbers for *k* = 0, ..., *n*. It is constructed by first placing 1s in the outermost positions, and then filling each inner position with the sum of the two numbers directly above. This method allows the quick calculation of binomial coefficients without the need for fractions or multiplications. For instance, by looking at row number 5 of the triangle, one can quickly read off that

Binomial coefficients are of importance in combinatorics, because they provide ready formulas for certain frequent counting problems:

- There are ways to choose
*k*elements from a set of*n*elements. See Combination. - There are ways to choose
*k*elements from a set of*n*elements if repetitions are allowed. See Multiset. - There are strings containing
*k*ones and*n*zeros. - There are strings consisting of
*k*ones and*n*zeros such that no two ones are adjacent.^{[4]} - The Catalan numbers are
- The binomial distribution in statistics is

For any nonnegative integer *k*, the expression can be simplified and defined as a polynomial divided by *k*!:

this presents a polynomial in *t* with rational coefficients.

As such, it can be evaluated at any real or complex number *t* to define binomial coefficients with such first arguments. These "generalized binomial coefficients" appear in Newton's generalized binomial theorem.

For each *k*, the polynomial can be characterized as the unique degree *k* polynomial *p*(*t*) satisfying *p*(0) = *p*(1) = ? = *p*(*k* − 1) = 0 and *p*(*k*) = 1.

Its coefficients are expressible in terms of Stirling numbers of the first kind:

The derivative of can be calculated by logarithmic differentiation:

This can cause a problem when evaluated at integers from to , but using identities below we can compute the derivative as:

Over any field of characteristic 0 (that is, any field that contains the rational numbers), each polynomial *p*(*t*) of degree at most *d* is uniquely expressible as a linear combination of binomial coefficients. The coefficient *a*_{k} is the *k*th difference of the sequence *p*(0), *p*(1), ..., *p*(*k*). Explicitly,^{[5]}

Each polynomial is integer-valued: it has an integer value at all integer inputs . (One way to prove this is by induction on *k*, using Pascal's identity.) Therefore, any integer linear combination of binomial coefficient polynomials is integer-valued too. Conversely, (**4**) shows that any integer-valued polynomial is an integer linear combination of these binomial coefficient polynomials. More generally, for any subring *R* of a characteristic 0 field *K*, a polynomial in *K*[*t*] takes values in *R* at all integers if and only if it is an *R*-linear combination of binomial coefficient polynomials.

The integer-valued polynomial 3*t*(3*t* + 1)/2 can be rewritten as

The factorial formula facilitates relating nearby binomial coefficients. For instance, if *k* is a positive integer and *n* is arbitrary, then

and, with a little more work,

Moreover, the following may be useful:

For constant *n*, we have the following recurrence:

The formula

says the elements in the nth row of Pascal's triangle always add up to 2 raised to the nth power. This is obtained from the binomial theorem (*****) by setting *x* = 1 and *y* = 1. The formula also has a natural combinatorial interpretation: the left side sums the number of subsets of {1, ..., *n*} of sizes *k* = 0, 1, ..., *n*, giving the total number of subsets. (That is, the left side counts the power set of {1, ..., *n*}.) However, these subsets can also be generated by successively choosing or excluding each element 1, ..., *n*; the *n* independent binary choices (bit-strings) allow a total of choices. The left and right sides are two ways to count the same collection of subsets, so they are equal.

The formulas

and

follow from the binomial theorem after differentiating with respect to x (twice for the latter) and then substituting *x* = *y* = 1.

The Chu-Vandermonde identity, which holds for any complex-values *m* and *n* and any non-negative integer *k*, is

and can be found by examination of the coefficient of in the expansion of (1 + *x*)^{m}(1 + *x*)^{n-m} = (1 + *x*)^{n} using equation (**2**). When *m* = 1, equation (**7**) reduces to equation (**3**). In the special case *n* = 2*m*, *k* = *m*, using (**1**), the expansion (**7**) becomes (as seen in Pascal's triangle at right)

where the term on the right side is a central binomial coefficient.

Another form of the Chu-Vandermonde identity, which applies for any integers *j*, *k*, and *n* satisfying 0 j k n, is

The proof is similar, but uses the binomial series expansion (**2**) with negative integer exponents.
When *j* = *k*, equation (**9**) gives the hockey-stick identity

and its relative

Let *F*(*n*) denote the *n*-th Fibonacci number.
Then

This can be proved by induction using (**3**) or by Zeckendorf's representation. A combinatorial proof is given below.

For integers *s* and *t* such that series multisection gives the following identity for the sum of binomial coefficients:

For small *s*, these series have particularly nice forms; for example,^{[6]}

Although there is no closed formula for partial sums

of binomial coefficients,^{[7]} one can again use (**3**) and induction to show that for *k* = 0, ..., *n* − 1,

with special case^{[8]}

for *n* > 0. This latter result is also a special case of the result from the theory of finite differences that for any polynomial *P*(*x*) of degree less than *n*,^{[9]}

Differentiating (**2**) *k* times and setting *x* = −1 yields this for
,
when 0 k < *n*,
and the general case follows by taking linear combinations of these.

When *P*(*x*) is of degree less than or equal to *n*,

where is the coefficient of degree *n* in *P*(*x*).

More generally for (**10**),

where *m* and *d* are complex numbers. This follows immediately applying (**10**) to the polynomial instead of , and observing that still has degree less than or equal to *n*, and that its coefficient of degree *n* is *d ^{n}a_{n}*.

The series
is convergent for *k* >= 2. This formula is used in the analysis of the German tank problem. It follows from
which is proved by induction on *M*.

Many identities involving binomial coefficients can be proved by combinatorial means. For example, for nonnegative integers , the identity

(which reduces to (**6**) when *q* = 1) can be given a double counting proof, as follows. The left side counts the number of ways of selecting a subset of [*n*] = {1, 2, ..., *n*} with at least *q* elements, and marking *q* elements among those selected. The right side counts the same thing, because there are ways of choosing a set of *q* elements to mark, and to choose which of the remaining elements of [*n*] also belong to the subset.

In Pascal's identity

both sides count the number of *k*-element subsets of [*n*]: the two terms on the right side group them into those that contain element *n* and those that do not.

The identity (**8**) also has a combinatorial proof. The identity reads

Suppose you have empty squares arranged in a row and you want to mark (select) *n* of them. There are ways to do this. On the other hand, you may select your *n* squares by selecting *k* squares from among the first *n* and squares from the remaining *n* squares; any *k* from 0 to *n* will work. This gives

Now apply (**1**) to get the result.

If one denotes by *F*(*i*) the sequence of Fibonacci numbers, indexed so that *F*(0) = *F*(1) = 1, then the identity

has the following combinatorial proof.

The number of *k*-combinations for all *k*, , is the sum of the *n*th row (counting from 0) of the binomial coefficients. These combinations are enumerated by the 1 digits of the set of base 2 numbers counting from 0 to , where each digit position is an item from the set of *n*.

or, more generally,

where *a*, *b*, and *c* are non-negative integers.

Certain trigonometric integrals have values expressible in terms of binomial coefficients: For any

These can be proved by using Euler's formula to convert trigonometric functions to complex exponentials, expanding using the binomial theorem, and integrating term by term.

For a fixed *n*, the ordinary generating function of the sequence is

For a fixed *k*, the ordinary generating function of the sequence is

The bivariate generating function of the binomial coefficients is

A symmetric bivariate generating function of the binomial coefficients is

which is the same as the previous generating function after the substitution .

A symmetric exponential bivariate generating function of the binomial coefficients is:

In 1852, Kummer proved that if *m* and *n* are nonnegative integers and *p* is a prime number, then the largest power of *p* dividing equals *p*^{c}, where *c* is the number of carries when *m* and *n* are added in base *p*.
Equivalently, the exponent of a prime *p* in
equals the number of nonnegative integers *j* such that the fractional part of *k*/*p*^{j} is greater than the fractional part of *n*/*p*^{j}. It can be deduced from this that is divisible by *n*/gcd(*n*,*k*). In particular therefore it follows that *p* divides for all positive integers *r* and *s* such that *s* < *p*^{r}. However this is not true of higher powers of *p*: for example 9 does not divide .

A somewhat surprising result by David Singmaster (1974) is that any integer divides almost all binomial coefficients. More precisely, fix an integer *d* and let *f*(*N*) denote the number of binomial coefficients with *n* < *N* such that *d* divides . Then

Since the number of binomial coefficients with *n* < *N* is *N*(*N* + 1) / 2, this implies that the density of binomial coefficients divisible by *d* goes to 1.

Binomial coefficients have divisibility properties related to least common multiples of consecutive integers. For example:^{[11]}

divides .

is a multiple of .

Another fact:
An integer *n* >= 2 is prime if and only if
all the intermediate binomial coefficients

are divisible by *n*.

Proof:
When *p* is prime, *p* divides

- for all 0 <
*k*<*p*

because is a natural number and *p* divides the numerator but not the denominator.
When *n* is composite, let *p* be the smallest prime factor of *n* and let *k* = *n/p*. Then 0 < *p* < *n* and

otherwise the numerator *k*(*n* − 1)(*n* − 2)×...×(*n* − *p* + 1) has to be divisible by *n* = *k*×*p*, this can only be the case when (*n* − 1)(*n* − 2)×...×(*n* − *p* + 1) is divisible by *p*. But *n* is divisible by *p*, so *p* does not divide *n* − 1, *n* − 2, ..., *n* − *p* + 1 and because *p* is prime, we know that *p* does not divide (*n* − 1)(*n* − 2)×...×(*n* − *p* + 1) and so the numerator cannot be divisible by *n*.

The following bounds for hold for all values of *n* and *k* such that 1 k n:

- .

The first inequality follows from the fact that

and each of these terms in this product is . A similar argument can be made to show the second inequality. The final strict inequality is equivalent to , that is clear since the RHS is a term of the exponential series .

From the divisibility properties we can infer that

- ,

where both equalities can be achieved.^{[11]}

The following bounds are useful in information theory:^{[12]}

where is the binary entropy function. It can be further tightened to^{[12]}

Stirling's approximation yields the following approximation, valid when both tend to infinity:

Because the inequality forms of Stirling's formula also bound the factorials, slight variants on the above asymptotic approximation give exact bounds.

```
In particular, when is sufficiently large, one has
```

- and

and, more generally, for *m* >= 2 and *n* >= 1,^{[why?]}

If *n* is large and *k* is linear in *n*, various precise asymptotic estimates exist for the binomial coefficient . For example, if then

where *d* = *n* - 2*k*.^{[13]}

If n is large and k is *o*(*n*) (that is, if *k*/*n* -> 0), then

where again o is the little o notation.

A simple and rough upper bound for the sum of binomial coefficients can be obtained using the binomial theorem:

More precise bounds are given by

valid for all integers with .^{[15]}

The infinite product formula for the Gamma function also gives an expression for binomial coefficients

which yields the asymptotic formulas

as .

This asymptotic behaviour is contained in the approximation

as well. (Here is the *k*-th harmonic number and is the Euler-Mascheroni constant.)

Further, the asymptotic formula

hold true, whenever and for some complex number .

Binomial coefficients can be generalized to **multinomial coefficients** defined to be the number:

where

While the binomial coefficients represent the coefficients of (*x*+*y*)^{n}, the multinomial coefficients
represent the coefficients of the polynomial

The case *r* = 2 gives binomial coefficients:

The combinatorial interpretation of multinomial coefficients is distribution of *n* distinguishable elements over *r* (distinguishable) containers, each containing exactly *k _{i}* elements, where

Multinomial coefficients have many properties similar to those of binomial coefficients, for example the recurrence relation:

and symmetry:

where is a permutation of (1, 2, ..., *r*).

Using Stirling numbers of the first kind the series expansion around any arbitrarily chosen point is

The definition of the binomial coefficients can be extended to the case where is real and is integer.

In particular, the following identity holds for any non-negative integer :

This shows up when expanding into a power series using the Newton binomial series :

One can express the product of two binomial coefficients as a linear combination of binomial coefficients:

where the connection coefficients are multinomial coefficients. In terms of labelled combinatorial objects, the connection coefficients represent the number of ways to assign *m* + *n* - *k* labels to a pair of labelled combinatorial objects—of weight *m* and *n* respectively—that have had their first *k* labels identified, or glued together to get a new labelled combinatorial object of weight *m* + *n* - *k*. (That is, to separate the labels into three portions to apply to the glued part, the unglued part of the first object, and the unglued part of the second object.) In this regard, binomial coefficients are to exponential generating series what falling factorials are to ordinary generating series.

The product of all binomial coefficients in the *n*th row of the Pascal triangle is given by the formula:

The partial fraction decomposition of the reciprocal is given by

Newton's binomial series, named after Sir Isaac Newton, is a generalization of the binomial theorem to infinite series:

The identity can be obtained by showing that both sides satisfy the differential equation (1 + *z*) *f'*(*z*) = ? *f*(*z*).

The radius of convergence of this series is 1. An alternative expression is

where the identity

is applied.

Binomial coefficients count subsets of prescribed size from a given set. A related combinatorial problem is to count multisets of prescribed size with elements drawn from a given set, that is, to count the number of ways to select a certain number of elements from a given set with the possibility of selecting the same element repeatedly. The resulting numbers are called *multiset coefficients*;^{[16]} the number of ways to "multichoose" (i.e., choose with replacement) *k* items from an *n* element set is denoted .

To avoid ambiguity and confusion with *n'*s main denotation in this article,

let *f* = *n* = *r* + (*k* - 1) and *r* = *f* - (*k* - 1).

Multiset coefficients may be expressed in terms of binomial coefficients by the rule

One possible alternative characterization of this identity is as follows: We may define the falling factorial as

- ,

and the corresponding rising factorial as

- ;

so, for example,

- .

Then the binomial coefficients may be written as

- ,

while the corresponding multiset coefficient is defined by replacing the falling with the rising factorial:

- .

For any *n*,

In particular, binomial coefficients evaluated at negative integers *n* are given by signed multiset coefficients. In the special case , this reduces to

For example, if *n* = -4 and *k* = 7, then *r* = 4 and *f* = 10:

The binomial coefficient is generalized to two real or complex valued arguments using the gamma function or beta function via

This definition inherits these following additional properties from :

moreover,

The resulting function has been little-studied, apparently first being graphed in (Fowler 1996). Notably, many binomial identities fail: but for *n* positive (so negative). The behavior is quite complex, and markedly different in various octants (that is, with respect to the *x* and *y* axes and the line ), with the behavior for negative *x* having singularities at negative integer values and a checkerboard of positive and negative regions:

- in the octant it is a smoothly interpolated form of the usual binomial, with a ridge ("Pascal's ridge").
- in the octant and in the quadrant the function is close to zero.
- in the quadrant the function is alternatingly very large positive and negative on the parallelograms with vertices

- in the octant the behavior is again alternatingly very large positive and negative, but on a square grid.
- in the octant it is close to zero, except for near the singularities.

The binomial coefficient has a q-analog generalization known as the Gaussian binomial coefficient.

The definition of the binomial coefficient can be generalized to infinite cardinals by defining:

where A is some set with cardinality . One can show that the generalized binomial coefficient is well-defined, in the sense that no matter what set we choose to represent the cardinal number , will remain the same. For finite cardinals, this definition coincides with the standard definition of the binomial coefficient.

Assuming the Axiom of Choice, one can show that for any infinite cardinal .

The notation is convenient in handwriting but inconvenient for typewriters and computer terminals. Many programming languages do not offer a standard subroutine for computing the binomial coefficient, but for example both the APL programming language and the (related) J programming language use the exclamation mark: `k ! n`

. The binomial coefficient is implemented in SciPy as *scipy.special.comb*.^{[17]}

Naive implementations of the factorial formula, such as the following snippet in Python:

```
from math import factorial
def binomial_coefficient(n: int, k: int) -> int:
return factorial(n) // (factorial(k) * factorial(n - k))
```

are very slow and are useless for calculating factorials of very high numbers (in languages such as C or Java they suffer from overflow errors because of this reason). A direct implementation of the multiplicative formula works well:

```
def binomial_coefficient(n: int, k: int) -> int:
if k < 0 or k > n:
return 0
if k == 0 or k == n:
return 1
k = min(k, n - k) # Take advantage of symmetry
c = 1
for i in range(k):
c = c * (n - i) / (i + 1)
return c
```

(In Python, range(k) produces a list from 0 to k-1.)

Pascal's rule provides a recursive definition which can also be implemented in Python, although it is less efficient:

```
def binomial_coefficient(n: int, k: int) -> int:
if k < 0 or k > n:
return 0
if k > n - k: # Take advantage of symmetry
k = n - k
if k == 0 or n <= 1:
return 1
return binomial_coefficient(n - 1, k) + binomial_coefficient(n - 1, k - 1)
```

The example mentioned above can be also written in functional style. The following Scheme example uses the recursive definition

Rational arithmetic can be easily avoided using integer division

The following implementation uses all these ideas

```
(define (binomial n k)
;; Helper function to compute C(n,k) via forward recursion
(define (binomial-iter n k i prev)
(if (>= i k)
prev
(binomial-iter n k (+ i 1) (/ (* (- n i) prev) (+ i 1)))))
;; Use symmetry property C(n,k)=C(n, n-k)
(if (< k (- n k))
(binomial-iter n k 0 1)
(binomial-iter n (- n k) 0 1)))
```

When computing in a language with fixed-length integers, the multiplication by may overflow even when the result would fit. The overflow can be avoided by dividing first and fixing the result using the remainder:

Implementation in the C language:

```
#include <limits.h>
unsigned long binomial(unsigned long n, unsigned long k) {
unsigned long c = 1, i;
if (k > n-k) // take advantage of symmetry
k = n-k;
for (i = 1; i <= k; i++, n--) {
if (c/i >= ULONG_MAX/n) // return 0 on potential overflow
return 0;
c = c / i * n + c % i * n / i; // split c * n / i into (c / i * i + c % i) * n / i
}
return c;
}
```

Another way to compute the binomial coefficient when using large numbers is to recognize that

where denotes the natural logarithm of the gamma function at . It is a special function that is easily computed and is standard in some programming languages such as using *log_gamma* in Maxima, *LogGamma* in Mathematica, *gammaln* in MATLAB and Python's SciPy module, *lngamma* in PARI/GP or *lgamma* in C, R,^{[18]} and Julia. Roundoff error may cause the returned value to not be an integer.

- Binomial transform
- Delannoy number
- Eulerian number
- Hypergeometric function
- List of factorial and binomial topics
- Macaulay representation of an integer
- Motzkin number
- Multiplicities of entries in Pascal's triangle
- Narayana number
- Star of David theorem
- Sun's curious identity
- Table of Newtonian series
- Trinomial expansion

**^**Higham (1998)**^**Lilavati Section 6, Chapter 4 (see Knuth (1997)).**^**See (Graham, Knuth & Patashnik 1994), which also defines for . Alternative generalizations, such as to two real or complex valued arguments using the Gamma function assign nonzero values to for , but this causes most binomial coefficient identities to fail, and thus is not widely used by the majority of definitions. One such choice of nonzero values leads to the aesthetically pleasing "Pascal windmill" in Hilton, Holton and Pedersen,*Mathematical reflections: in a room with many mirrors*, Springer, 1997, but causes even Pascal's identity to fail (at the origin).**^**Muir, Thomas (1902). "Note on Selected Combinations".*Proceedings of the Royal Society of Edinburgh*.**^**This can be seen as a discrete analog of Taylor's theorem. It is closely related to Newton's polynomial. Alternating sums of this form may be expressed as the Nörlund-Rice integral.**^**Gradshteyn & Ryzhik (2014, pp. 3-4) .**^**Boardman, Michael (2004), "The Egg-Drop Numbers",*Mathematics Magazine*,**77**(5): 368-372, doi:10.2307/3219201, JSTOR 3219201, MR 1573776,it is well known that there is no closed form (that is, direct formula) for the partial sum of binomial coefficients

.**^**see induction developed in eq (7) p. 1389 in Aupetit, Michael (2009), "Nearly homogeneous multi-partitioning with a deterministic generator",*Neurocomputing*,**72**(7-9): 1379-1389, doi:10.1016/j.neucom.2008.12.024, ISSN 0925-2312.**^**Ruiz, Sebastian (1996). "An Algebraic Identity Leading to Wilson's Theorem".*The Mathematical Gazette*.**80**(489): 579-582. arXiv:math/0406086. doi:10.2307/3618534. JSTOR 3618534.**^**Benjamin & Quinn 2003, pp. 4-5- ^
^{a}^{b}Farhi, Bakir (2007). "Nontrivial lower bounds for the least common multiple of some finite sequence of integers".*Journal of Number Theory*.**125**(2): 393-411. arXiv:0803.0290. doi:10.1016/j.jnt.2006.10.017. - ^
^{a}^{b}Thomas M. Cover; Joy A. Thomas.*Elements of Information Theory*. Hoboken, New Jersey: Wiley. ISBN 0-471-24195-4. **^**Spencer, Joel; Florescu, Laura (2014).*Asymptopia*. Student mathematical library.**71**. AMS. p. 66. ISBN 978-1-4704-0904-3. OCLC 865574788.**^**Spencer, Joel; Florescu, Laura (2014).*Asymptopia*. Student mathematical library.**71**. AMS. p. 59. ISBN 978-1-4704-0904-3. OCLC 865574788.**^**see e.g. Ash (1990, p. 121) or Flum & Grohe (2006, p. 427).**^**Munarini, Emanuele (2011), "Riordan matrices and sums of harmonic numbers" (PDF),*Applicable Analysis and Discrete Mathematics*,**5**(2): 176-200, doi:10.2298/AADM110609014M, MR 2867317.**^**"scipy.special.comb".*SciPy Reference Guide*. 2021-02-18. Retrieved .**^**Bloomfield, Victor A. (2016).*Using R for Numerical Analysis in Science and Engineering*. CRC Press. p. 74. ISBN 978-1-4987-8662-1.

- Ash, Robert B. (1990) [1965].
*Information Theory*. Dover Publications, Inc. ISBN 0-486-66521-6. - Benjamin, Arthur T.; Quinn, Jennifer J. (2003).
*Proofs that Really Count: The Art of Combinatorial Proof*. Dolciani Mathematical Expositions.**27**. Mathematical Association of America. ISBN 978-0-88385-333-7. - Bryant, Victor (1993).
*Aspects of combinatorics*. Cambridge University Press. ISBN 0-521-41974-3. - Flum, Jörg; Grohe, Martin (2006).
*Parameterized Complexity Theory*. Springer. ISBN 978-3-540-29952-3. - Fowler, David (January 1996). "The Binomial Coefficient Function".
*The American Mathematical Monthly*. Mathematical Association of America.**103**(1): 1-17. doi:10.2307/2975209. JSTOR 2975209. - Goetgheluck, P. (1987). "Computing Binomial Coefficients".
*American Mathematical Monthly*.**94**(4): 360-365. doi:10.2307/2323099. JSTOR 2323099. - Graham, Ronald L.; Knuth, Donald E.; Patashnik, Oren (1994).
*Concrete Mathematics*(Second ed.). Addison-Wesley. pp. 153-256. ISBN 0-201-55802-5. - Gradshteyn, I. S.; Ryzhik, I. M. (2014).
*Table of Integrals, Series, and Products*(8th ed.). Academic Press. ISBN 978-0-12-384933-5. - Grinshpan, A. Z. (2010), "Weighted inequalities and negative binomials",
*Advances in Applied Mathematics*,**45**(4): 564-606, doi:10.1016/j.aam.2010.04.004 - Higham, Nicholas J. (1998).
*Handbook of writing for the mathematical sciences*. SIAM. p. 25. ISBN 0-89871-420-6. - Knuth, Donald E. (1997).
*The Art of Computer Programming, Volume 1:*Fundamental Algorithms*(Third ed.). Addison-Wesley. pp. 52-74. ISBN 0-201-89683-4.* - Singmaster, David (1974). "Notes on binomial coefficients. III. Any integer divides almost all binomial coefficients".
*Journal of the London Mathematical Society*.**8**(3): 555-560. doi:10.1112/jlms/s2-8.3.555. - Shilov, G. E. (1977).
*Linear algebra*. Dover Publications. ISBN 978-0-486-63518-7.

- "Binomial coefficients",
*Encyclopedia of Mathematics*, EMS Press, 2001 [1994] - Andrew Granville (1997). "Arithmetic Properties of Binomial Coefficients I. Binomial coefficients modulo prime powers".
*CMS Conf. Proc*.**20**: 151-162. Archived from the original on 2015-09-23. Retrieved .

*This article incorporates material from the following PlanetMath articles, which are licensed under the Creative Commons Attribution/Share-Alike License: Binomial Coefficient, Upper and lower bounds to binomial coefficient, Binomial coefficient is an integer, Generalized binomial coefficients.*

This article uses material from the Wikipedia page available here. It is released under the Creative Commons Attribution-Share-Alike License 3.0.

Popular Products

Music Scenes

Popular Artists