Counting Principles is one of the highest-leverage, lowest-rote-memory topics in IB Mathematics Analysis & Approaches HL. The formulas are short — factorials, $^nP_r$, $^nC_r$ and Pascal's identity — but the questions reward students who can choose between three or four valid approaches under exam pressure: direct counting, complementary counting, the block method, or residue classes. Almost all marks are lost not on arithmetic but on misreading the question (order matters or not?), forgetting the leading-zero rule, or failing to divide by $k!$ for unlabelled groups.
This cheatsheet condenses every rule, trigger pattern, trick and trap from SL 1.9 and AHL 1.10–1.11 into one revision page.
§1 — Quick Reference: Core Counting Formulas SL 1.9, AHL 1.10–1.11
| Formula | Notation | Use when… |
|---|---|---|
| $n_1 \times n_2 \times \cdots \times n_k$ | FCP | Sequential independent choices |
| $n! = n(n-1) \cdots 2 \cdot 1$ | Factorial | Arrange $n$ distinct objects in a line |
| $\dfrac{n!}{(n-r)!}$ | ${}^nP_r$ | Select and arrange $r$ from $n$ (roles) |
| $\dfrac{n!}{r!(n-r)!}$ | ${}^nC_r = \binom{n}{r}$ | Choose $r$ from $n$ (no roles) |
| $\binom{n}{r} + \binom{n}{r-1} = \binom{n+1}{r}$ | Pascal's identity | Inductive step in proofs |
| $\dfrac{n!}{(r!)^k \cdot k!}$ | Equal unlabelled groups | Divide into $k$ groups of $r$, no labels |
Key values: $0! = 1$, $1! = 1$, $2! = 2$, $3! = 6$, $4! = 24$, $5! = 120$, $6! = 720$, $7! = 5040$, $8! = 40320$.
Symmetry: $\binom{n}{r} = \binom{n}{n-r}$. Boundaries: $\binom{n}{0} = 1$, $\binom{n}{1} = n$, $\binom{n}{n} = 1$.
§2 — FCP: Independent vs Dependent Slots SL 1.9, AHL 1.10
Pattern: "How many codes / numbers / sequences…" with or without repetition.
The trick: Count the choices at each stage and multiply. If digits/objects are reusable: $n^k$. If no repetition: $n(n-1)(n-2)\cdots$
- With repetition (3 digits from $\{1,2,3,4,5\}$): $5 \times 5 \times 5 = 125 = 5^3$.
- Without repetition (same): $5 \times 4 \times 3 = 60 = {}^5P_3$.
§3 — Permutations: Order Matters AHL 1.10
Pattern: "Assign roles", "fill ranked positions", "arrange in a line", "how many $r$-digit PINs".
The trick: Use ${}^nP_r = \dfrac{n!}{(n-r)!}$. Ask: "Does swapping two chosen items give a different outcome?" If yes, it's a permutation. If no, it's a combination.
- Elect chair, VP, secretary from 10: ${}^{10}P_3 = 720$.
- First, second, third in a race of 8: ${}^8P_3 = 8 \times 7 \times 6 = 336$.
§4 — Block Method: "Must Be Adjacent" AHL 1.10
Pattern: "Group $X$ must sit/stand together", "must be adjacent", "immediately after".
The trick: Glue the $r$ objects into one super-object. Arrange $(n - r + 1)$ objects. Multiply by $r!$ for internal arrangements. If order within the block is fixed (e.g. "A immediately after B"), do not multiply by $r!$.
- 3 girls together in a 9-person line: $7! \times 3! = 5040 \times 6 = 30240$.
- Jack immediately after Andrea (8 runners): $7! = 5040$ (block is fixed-order, no $r!$ multiplier).
§5 — Complementary: "Must NOT Be Adjacent" AHL 1.10
Pattern: "Must not be together", "not in the same group", "at least one seat apart".
The trick: Almost always fastest: Total (no restriction) $-$ Bad (they ARE together). Use the block method to count the bad cases.
- 3 friends not all together (row of 12): ${}^{12}P_3 - 3! \times 10 = 1320 - 60 = 1260$.
§6 — At Least / At Most AHL 1.10
Pattern: "At least $k$…", "at most $k$…", "select at least two girls".
The trick:
- At least 1: use complementary — Total $-$ (none).
- At least $k \geq 2$: list valid cases and sum.
- At most $k$: list valid cases or use complementary — Total $-$ (more than $k$).
Example: Select 5 from 6 boys + 3 girls, at least 2 girls:
$\binom{3}{2}\binom{6}{3} + \binom{3}{3}\binom{6}{2} = 60 + 15 = 75$.
Complementary check: $\binom{9}{5} - \binom{3}{1}\binom{6}{4} - \binom{6}{5} = 126 - 45 - 6 = 75$. ✓
§7 — Grid / Table Adjacency AHL 1.10
Pattern: Seating in an $r \times c$ grid, desk arrangement, with forbidden adjacent pairs.
The trick: Count adjacent pairs first, before any calculation:
$$r(c-1) + c(r-1) = 2rc - r - c \;\text{ total adjacent pairs in an }r \times c\text{ grid.}$$
Then: Bad $=$ (adjacent pairs) $\times$ (orderings of forbidden pair) $\times$ (arrangements of rest).
Example: $3\times 2$ grid: $3(1) + 2(2) = 7$ adjacent pairs. 5 sheep, 1 per pen, A and B not adjacent: Bad $= 7 \times 2 \times 4! = 336$. Valid $= 6! - 336 = 720 - 336 = 384$.
§8 — Equal Unlabelled Groups AHL 1.10
Pattern: "Divide $n$ people into $k$ equal teams", "split into equal groups with no names/labels".
The trick: Divide by $k!$ to remove overcounting from the $k!$ orderings of identical groups:
$$\dfrac{\binom{n}{r}\binom{n-r}{r}\cdots}{k!} = \dfrac{n!}{(r!)^k \cdot k!}$$
Example: 15 students, 3 unlabelled teams of 5: $\dfrac{\binom{15}{5}\binom{10}{5}\binom{5}{5}}{3!} = \dfrac{3003 \times 252 \times 1}{6} = 126\,126$.
If teams are labelled (Red/Blue/Green): $6 \times 126\,126 = 756\,756$.
§9 — Counting Equations: Find $n$ AHL 1.10
Pattern: "Find $n$ such that the number of arrangements is halved / doubled / equals $X$", "every student plays every other student… find class size".
The trick: Express both counts as polynomials in $n$. Form an equation, expand factorials, solve the polynomial. Always check domain restrictions (e.g. group sizes must be $\geq 0$) and reject extraneous roots.
- Two students refuse same group; count halved. $2 \cdot {}^{n-2}C_2 = \tfrac{1}{2} {}^n C_3$ gives $n^2 - 13n + 36 = 0$, so $n = 4$ or $n = 9$. Group 2 needs $\geq 3$, so reject $n = 4$. $n = 9$.
- Every pair plays twice, 513 total games, one player left early after 7 games: $(n-1)(n-2) + 7 = 513 \Rightarrow n = 24$.
§10 — Divisibility via Residue Classes AHL 1.10
Pattern: "Sum divisible by $d$", "product/sum with a specific remainder".
The trick: Classify all numbers by residue mod $d$. For $d = 3$: three groups R0, R1, R2. Sum $\equiv 0$ iff residues are all-same or one-of-each.
Example: From $\{1, \ldots, 30\}$ (10 each of R0, R1, R2), choose 3 with sum $\equiv 0 \pmod 3$:
All same: $3 \times \binom{10}{3} = 360$. One of each: $10^3 = 1000$. Total: 1360.
§11 — Proof by Induction with Combinations AHL 1.10–1.11
Pattern: "Prove $\displaystyle\sum_{r=1}^{n} {}^r C_k = {}^{n+1} C_{k+1}$" or similar combinatorial sum by induction.
The 4-step script (never deviate):
- Base case ($n = 1$): evaluate both sides numerically. "It works" without values $\Rightarrow$ R0.
- Assume true for $n = k$: write the $k$-statement explicitly. "Let $n = k$" $\Rightarrow$ M0.
- Inductive step: write LHS for $n = k + 1$, substitute the assumption, apply Pascal's identity.
- Conclusion: "Since true for $n = 1$, and true for $n = k$ implies true for $n = k + 1$, by PMI true for all $n \in \mathbb{Z}^+$." This sentence earns a dedicated R1 — never skip it.
Example: Prove $\displaystyle\sum_{r=1}^{n} {}^r C_1 = {}^{n+1} C_2$. Inductive step: ${}^{k+1}C_2 + {}^{k+1}C_1 = {}^{k+2}C_2$ by Pascal. Done.
§12 — GDC Use on Paper 2 AHL 1.10
Counting questions are largely Paper 1 (no GDC) but some appear on Paper 2. The GDC is useful for:
| Task | TI-84 / Nspire syntax |
|---|---|
| $\binom{n}{r}$ | MATH → PRB → nCr: type n nCr r |
| ${}^nP_r$ | MATH → PRB → nPr: type n nPr r |
| $n!$ | MATH → PRB → !: type n! |
| Solve polynomial | solve(n^2 - 13n + 36 = 0, n) or table of values |
| Verify large factorials | Store intermediately; avoid overflow |
solve may give non-integer or negative roots — always verify $n \in \mathbb{Z}^+$ and check the domain.§13 — Exam Attack Plan SL 1.9, AHL 1.10–1.11
| If the question says… | Reach for… |
|---|---|
| "$k$-digit integer from $\{0, \ldots, 9\}$" | FCP; first digit: 9 choices |
| "Distinct digits in increasing order" | $\binom{n}{k}$ — one arrangement per set |
| "Assign roles / ranked positions" | ${}^nP_r$ |
| "Must be adjacent / together" | Block method $\times r!$ |
| "Immediately after / before" | Block (fixed order, no $r!$) |
| "Must not be adjacent" | Total $-$ block method |
| "Anywhere after / before" | Symmetry: $n! / 2$ |
| "At least 1 [condition]" | Total $-$ none |
| "At least $k \geq 2$" | Sum of cases |
| Grid / table seating problem | Count $r(c-1) + c(r-1)$ pairs first |
| "Divide into equal unlabelled teams" | $\div\, k!$ for identical groups |
| "Find $n$; count is halved/doubled" | Algebra of combinations |
| "Sum divisible by $d$" | Residue classes mod $d$ |
| "Prove $\sum \binom{r}{k} = \binom{n}{m}$" | Induction + Pascal; conclude formally |
Worked Example — IB-Style Committee Selection
Question (HL Paper 1 style — 7 marks)
A committee of 6 students is to be chosen from a class of 7 boys and 5 girls.
- How many committees have exactly 2 girls?
- How many committees have at least 2 girls?
- If two specific boys, Alex and Brian, refuse to serve together, how many committees with exactly 3 boys and 3 girls are now possible?
Solution
- Exactly 2 girls: choose 2 girls from 5 and 4 boys from 7. $\binom{5}{2} \cdot \binom{7}{4} = 10 \cdot 35 = 350$. (M1)(A1)
- At least 2 girls: list cases — 2G+4B, 3G+3B, 4G+2B, 5G+1B.
$\binom{5}{2}\binom{7}{4} + \binom{5}{3}\binom{7}{3} + \binom{5}{4}\binom{7}{2} + \binom{5}{5}\binom{7}{1}$
$= 350 + 350 + 105 + 7 = 812$. (M1)(A1) - 3B + 3G with Alex and Brian not both serving: Total 3B+3G unrestricted $= \binom{7}{3}\binom{5}{3} = 35 \cdot 10 = 350$. (M1)
- Bad cases (Alex AND Brian both in): pick the third boy from the remaining 5, and 3 girls from 5: $\binom{5}{1}\binom{5}{3} = 5 \cdot 10 = 50$. (A1)
- Valid $= 350 - 50 = 300$. (A1)
Examiner's note: Part (c) tests complementary counting under a constraint. The most common error is to compute "Alex in OR Brian in" instead of "both in" — these are different. Always identify the exact bad event before subtracting from the total.