INAIO Guide Stage 1 7Combinatorics and Discrete Reasoning
7.5 Enumeration and casework
List every possible outcome in a small finite problem using a table or disjoint cases, then check that none is missed or repeated.
Counting formulas are useful when a problem has a regular pattern. A short problem with several different restrictions may be easier to solve by listing the possibilities systematically. This is exhaustive enumeration: examine every relevant case exactly once. The key is a plan for the list, so that a missing or repeated case does not silently change the answer.
This is foundational to intermediate discrete reasoning. OpenStax's tables and trees show ways to list multistage outcomes; MIT's casework notes show why the cases must cover all possibilities. Review the addition and multiplication rules if a table cell itself contains several choices.
A basic idea: let one choice organise the rest
Find nonnegative integer solutions of when , , and . Choose and first; then is forced. There are only nine pairs to inspect. Because , we need . Only , , and pass. They give , so there are three solutions.
A quick tour of systematic casework
Choose an organising variable with few values, such as . Within each case, list the remaining choices in a fixed order. A table works well for two short ranges; a tree works when later choices depend on earlier ones. If the final choice is determined by previous ones, calculate it rather than branching over it again.
Check coverage: every valid outcome must appear somewhere. Check separation: no outcome may appear in two cases. These are the same conditions needed before adding case counts in Module 7.1. A small exhaustive list can also reveal a pattern, but a pattern noticed in a few cases is not by itself a proof for larger inputs.
Enumeration grows rapidly. Four binary choices give candidates; twenty give over a million. For large spaces, look for a formula, an invariant, or a more efficient algorithm. Here we stay with small finite cases that can be checked completely.
Application 1: bounded solutions
Count triples of nonnegative integers satisfying , , and .
- If , even leaves , so there is no solution.
- If , only gives : .
- If , or works: and . The cases cover without overlap, giving solutions.
Application 2: selecting compatible features
A small model may use exactly two features from . If is selected, must also be selected; and cannot be selected together. How many two-feature sets are valid?
- List the six unordered pairs once: .
- and fail the rule. fails the incompatibility rule.
- The valid sets are : three choices. Listing unordered pairs avoids counting and separately.
Resources
| Source | Title | Why read it |
|---|---|---|
| OpenStax | Tree diagrams, tables, and outcomes | Practise systematic lists and two-stage tables. |
| MIT OpenCourseWare | Lecture 3: Casework and Strong Induction | See how exhaustive cases support a complete argument. |
Finished this module? Mark it done.
Comments
Stuck on something, spotted a mistake, or found a resource that helped you? Tell us below.
Loading comments