How to use (3 steps)
- Choose Partition or Composition, then select the constraint you need.
- Enter n (and k/m/a/b when required), then pick count, table, enumeration, or sample.
- Export CSV/TSV or copy a shareable URL for your lesson or notes.
Inputs
Table
Examples
Key formulas and notes
- Partition counts use dynamic programming: p(n, m) = p(n, m-1) + p(n-m, m).
- Compositions count is 2^(n-1) for n >= 1, and k parts use C(n-1, k-1).
- Distinct parts and odd parts have the same count (Euler's identity).
- Enumeration is limited for speed; use samples for larger n.
FAQ
What is the difference between partitions and compositions?
Partitions ignore order (3+1 equals 1+3), while compositions treat different orders as distinct.
What does p(n) mean?
p(n) is the number of integer partitions of n, also called the partition number.
How do I count partitions into exactly k parts?
Select p(n, k) and enter k to count partitions with exactly k parts.
How do distinct partitions work?
Distinct partitions require every part size to be unique. The count equals the odd-part count.
What is a Ferrers (Young) diagram?
It draws each part as a row of dots or squares, making the partition shape visible.
Why is composition count 2^(n-1)?
There are n-1 gaps between ones, and each gap either has a divider or not.
Why is enumeration limited for large n?
The number of partitions grows quickly, so enumeration is capped to keep the page fast.
Can I compute values modulo m?
Yes. Switch to modulo mode and enter m to compute results mod m.