The formula |\mathcal{P}(A)| = 2^{|A|} is one of the first cards combinatorics puts on the table. A set with 3 elements has 2^3 = 8 subsets. A set with 10 elements has 2^{10} = 1024 subsets. A set with 20 elements has more than a million subsets. But why is the count a power of two? Where does the doubling come from?
The answer is a beautiful one-line argument. Building a subset is a sequence of independent two-way choices, one per element, and the number of ways to make those choices multiplies together.
The two-choice argument
Let A = \{a_1, a_2, \dots, a_n\} — a set with n elements. You want to build a subset S \subseteq A. What are you actually choosing?
Go through the elements of A one by one. For each element a_i, you have exactly two choices:
- Put a_i into S.
- Leave a_i out of S.
That is the entire decision for element a_i. No other option exists — either a_i \in S or a_i \notin S. And the choice for a_i does not depend on what you did for a_1, \dots, a_{i-1}: each element's decision is independent.
So to specify a subset S, you make n independent binary decisions — one per element. By the multiplication principle of counting, the total number of different subsets is
That is the formula, and that is exactly why it is 2^n and not something else: two choices, n times, multiplied together.
Why multiplication and not addition: imagine you had 2 shirts and 3 pants. The number of outfits is 2 \times 3 = 6, not 2 + 3 = 5. Each pant can be combined with each shirt, independently. Subset-building is the same — each element can be "in or out" independently of what the other elements do, and independent choices multiply.
Walk through n = 3
Let's check the formula for A = \{a, b, c\}. We claim |\mathcal{P}(A)| = 2^3 = 8. Let's list the subsets and count.
Use a three-digit binary code: the i-th digit is 1 if a_i is in, 0 if out. So (1, 0, 1) means a \in S, b \notin S, c \in S, which gives S = \{a, c\}.
| Code | Subset |
|---|---|
| (0, 0, 0) | \varnothing |
| (0, 0, 1) | \{c\} |
| (0, 1, 0) | \{b\} |
| (0, 1, 1) | \{b, c\} |
| (1, 0, 0) | \{a\} |
| (1, 0, 1) | \{a, c\} |
| (1, 1, 0) | \{a, b\} |
| (1, 1, 1) | \{a, b, c\} |
Eight rows, one for each of the 2^3 = 8 binary codes of length 3. Every row is a distinct subset, and every subset appears as some row. The bijection between subsets and binary codes is what locks the count in place: there are exactly as many subsets as there are three-digit binary strings, and three-digit binary strings number 2^3.
Why the formula is exactly right, not an approximation
Two subtleties worth being explicit about:
Every subset appears exactly once. Each binary code of length n produces one subset, and different codes produce different subsets (because they disagree on the in-or-out choice for at least one element). So the count is exact, not an upper bound.
The empty set and the full set are included. When all n choices are "out," you get \varnothing. When all n choices are "in," you get A itself. Both are legitimate subsets, both count, and both are why the total is 2^n and not 2^n - 1 or 2^n - 2.
Three common variants that come up on exams:
- Number of proper subsets. A proper subset is one that is not equal to A itself. The count is 2^n - 1 — subtract the single subset A = A.
- Number of non-empty subsets. Subtract the one empty-set subset. Count: 2^n - 1.
- Number of non-empty proper subsets. Subtract both extremes. Count: 2^n - 2. (This is what NCERT means by "proper subsets" when the context makes clear both extremes are excluded.)
Check which variant the problem asks for before writing down 2^n.
The edge cases
n = 0. What if A has 0 elements? The formula gives 2^0 = 1. That matches: \mathcal{P}(\varnothing) = \{\varnothing\} is a one-element set whose only element is the empty set. See Is the Power Set of the Empty Set Also Empty? for the full walk-through.
n = 1. A singleton \{a\} has 2^1 = 2 subsets: \varnothing and \{a\}. Correct.
n = 2. A pair \{a, b\} has 2^2 = 4 subsets: \varnothing, \{a\}, \{b\}, \{a, b\}. Correct.
The formula works from n = 0 upward, without any special cases.
Connection to binomial coefficients
There is a second angle on the same count that is worth knowing for JEE.
The number of subsets of A with exactly k elements is \binom{n}{k} — the binomial coefficient, "n choose k." So the total number of subsets, summing over all possible sizes, is
This is a well-known sum — it is the total of a row of Pascal's triangle, and that total is exactly 2^n. You can prove it by expanding (1 + 1)^n with the binomial theorem:
So 2^n can be arrived at in two ways: the direct two-choice argument above, or by summing the sizes-of-subsets separately and recognising the result as a binomial row. Both give the same answer because they are both counting the same thing — the total number of subsets of an n-element set. This agreement is one of the first places combinatorics and set theory lock together.
Why the formula grows so fast
2^n grows exponentially in n — faster than any polynomial. A table to make the growth visceral:
| n | 2^n |
|---|---|
| 0 | 1 |
| 1 | 2 |
| 2 | 4 |
| 5 | 32 |
| 10 | 1024 |
| 20 | 1{,}048{,}576 |
| 30 | 1{,}073{,}741{,}824 |
| 50 | \approx 1.1 \times 10^{15} |
A 20-element set has more subsets than there are seconds in eleven days. A 50-element set has more subsets than grains of sand on most medium-sized beaches. The formula starts small and then explodes — which is exactly the kind of qualitative behaviour that makes exponents so important in combinatorics, cryptography, and probability. The related page Chessboard Rice Grains Doubling Visualisation is a dramatic visual of the same kind of growth.
The one-line summary
A set with n elements has 2^n subsets because building a subset requires n independent two-way decisions (in or out), and the number of ways to make n independent binary decisions is 2 \times 2 \times \dots \times 2 = 2^n. The formula is exact, works for all n \geq 0, and agrees with the sum of a row of Pascal's triangle.
Related: Sets — Introduction · Power Set Explorer: All 8 Subsets · Is the Power Set of the Empty Set Also Empty? · Chessboard Rice Grains Doubling