Math foundations
Combinations: Choosing a Set When Order Does Not Matter
The idea
A combination counts how many ways you can choose a subset of size k from n items when order is ignored. The committee A, B, and C is the same whether you picked A first or C first. Only membership matters.
Use combinations for feature bundles, coupon mixes, committee selection, or any problem where you ask “how many distinct groups of size k?” without ranking inside the group. Permutations answer a stricter question where position is part of the outcome.
C(n,k) counts unordered subsets of size k drawn from n items.
Example: unordered subsets with C(n,k)
Choose k items from n without caring which came first. The same team in a different meeting order is still one committee. That is the combination count.
C(n,k)
56
C(n,n − k)
56
P(n,k)
336
Grid view: one subset of 3 from 8 (order ignored)
One subset
One subset
Highlighted circles are in the subset. Rearrange them and the subset count stays the same.
Symmetry: choosing k to include equals choosing n − k to exclude
Combinations vs permutations for the same n and k
C(8,3) = 56 unordered subsets. The same 3 items in a different sequence still count as one combination. C(8,3) = 56 and C(8,5) = 56. Choosing 3 to include is the same count as choosing 5 to leave out. P(8,3) = 336 counts every ordering of the same 3 picks. C(8,3) = 56 counts the pick set once. The ratio is 6 = 3! ways to order 3 distinct items.
Building blocks
Subset view. Each combination is one k-element subset. No slot labels, no first pick vs second pick.
Symmetry. Choosing k to include is the same as choosing n − k to exclude. C(n,k) = C(n,n − k).
Link to permutations. List every ordering of a subset, then divide by k! to collapse orderings that share the same members.
The math
Combination formula
Start with all ordered picks P(n,k), then divide by k! because each subset appears k! times with different orderings.
Symmetry
Picking 3 features out of 10 is the same count as leaving 7 features out. Both sides of the choice matter equally.
Relationship to permutations
Permutations over-count when order is irrelevant. Dividing by k! removes the reorderings inside each subset.
Pascal relation (optional)
Every k-subset either includes item n or it does not. That recurrence builds Pascal's triangle and is useful for dynamic programming counts.
Where teams get stuck
Using P(n,k) for unordered bundles and inflating option counts by k!. Ignoring symmetry and double-counting complements. Treating combinations with replacement (same item twice) as plain C(n,k). Forgetting that k = 0 and k = n each give exactly one subset.
Ask whether rearranging the chosen items creates a new business outcome. If not, divide permutations by k!.
A simple application
Feature subsets in a product configurator, committee picks for a review board, or coupon bundles with fixed size all map to C(n,k). Capacity planning for “choose any 3 of 8 add-ons” is a combination count, not a ranking problem. Pair this with the permutations post when some flows need order and others do not.