Pascal's Identity
Statement
For any natural numbers and with :
This recurrence, together with the boundary conditions , completely determines all binomial coefficients.
Visualization
Pascal's triangle rows 0–6, with each interior entry the sum of the two above it:
Row 0: 1
Row 1: 1 1
Row 2: 1 2 1
Row 3: 1 3 3 1
Row 4: 1 4 6 4 1
Row 5: 1 5 10 10 5 1
Row 6: 1 6 15 20 15 6 1
The identity says: entry = entry + entry .
Example at row 4, column 2: .
Arrow diagram for :
3 3 <- row 3, positions 1 and 2
\ /
6 <- row 4, position 2
Proof Sketch
- Combinatorial argument. counts -element subsets of .
- Split on element . Either is in the chosen subset or not.
- Case : must choose elements from — gives choices.
- Case : must choose elements from — gives choices.
- Sum: the two cases are disjoint and exhaustive, so .
Connections
Pascal's identity is the combinatorial core behind Binomial TheoremBinomial TheoremExpanding powers of a sum via binomial coefficientsRead more → (the expansion of sums over rows of Pascal's triangle) and is the key recurrence for Stirling NumbersStirling NumbersCounting partitions of n elements into k non-empty subsetsRead more →.
Lean4 Proof
import Mathlib.Data.Nat.Choose.Basic
/-- Pascal's identity: C(n+1, k+1) = C(n, k) + C(n, k+1).
Mathlib's `Nat.choose_succ_succ` states this directly. -/
theorem pascal_identity (n k : ℕ) :
Nat.choose (n + 1) (k + 1) = Nat.choose n k + Nat.choose n (k + 1) :=
Nat.choose_succ_succ' n kReferenced by
- Vandermonde's IdentityCombinatorics
- Erdos-Ko-Rado TheoremCombinatorics
- Chu-Vandermonde IdentityCombinatorics