This list is sorted by olympiad category, then alphabetically by name.

Each topic has one or more units which is designated by a three-letter code.

- The first letter of the code represents the difficulty. B is the easiest (problems range from sub-IMO level to IMO2), D is medium (problems span IMO range), Z is harder (problems span IMO2 - IMO3). There is some grey room in this department.
- The second letter repeats the olympiad category.
- The third letter is a version identifier (either W, X, or Y). Many topics have multiple versions so they can be repeated in different years.

This page was last updated Wed, 3 Mar 2021 11:35:35 -0500.

**Alg Manip**
[Algebra,
BAY DAY].

Problems that purely involve algebraic manipulations without some other context, e.g. solving rather arbitrary equations or systems of equations.

**Analysis**
[Algebra,
DAY ZAY].

Problems involving some real analysis. This is a pretty technical lecture and will delve into the nuances of converge issues, absolute versus conditional convergence, using calculus properly, compact sets, and so on. Featuring the art of Lagrange multipliers.

**Cyclotomic**
[Algebra,
BAY].

Roots of unity. Using e^{i \theta} = \cos(\theta) + i \sin(\theta), and connecting them to trigonometry, etc. Features a ton of problems from Math Prize for Girls. Despite the name of the unit, cyclotomic polynomials themselves don't appear very often; the idea of roots of unity is much more prevalent.

**Formulas**
[Algebra,
DAW ZAW].

Based on Yang Liu's class "Write Down Formulas" at MOP 2018. This unit consists of problems which involve manipulations of fairly involved formulas, such as combinatorial recursions or number theoretic power sums. Despite officially being algebra, there are just as many (maybe more) problems that would be classified as C or N.

**Gen Func**
[Algebra,
BAX].

Generating functions and their use in algebraic contexts (computing sums, featuring the so-called snake oil method). Of course, some combinatorial problems included as well.

**Hard Ineq**
[Algebra,
ZAW ZAY].

A unit featuring some of the hardest gems from the golden age of inequalities.

**Ineq Basic**
[Algebra,
BAW].

The basics of inequalities: AM-GM, homogenization, Cauchy/Holder.

**Ineq Func**
[Algebra,
BAW].

Techinques for inequalities of the form f(x_1) + ... + f(x_n). Jensen, Karamata, tangent line trick, and n-1 equal value principle.

**Ineq Standard**
[Algebra,
DAX].

Inequalities which can be approached using all the standard methods. This is sort of a combination of Ineq Basic and Ineq Func.

**Irreducible**
[Algebra,
DAX].

Problems about showing polynomials are irreducible; these are rare in olympiads, but give you a lot of good intuition about how Z[x] polynomials behave. Techniques that appear include working in F_p[x], looking at the magnitude of complex roots a la Rouche, and other ad-hoc tricks. More olympiad algebra than the integer polynomials unit.

**Putnam Analysis**
[Algebra,
ZAW].

An extension of the Sums unit --- rather than just swapping infinite sums, we now get to enjoy swapping infinite integrals as well.

**Real Polynom**
[Algebra,
DAW ZAW].

General polynomials unit, maintaining some distance from integer polynomials (though still overlapping slightly). Includes Vieta/Newton, multivariable polynomials, Lagrange interpolation, size arguments, differentiation.

**Sums**
[Algebra,
BAX DAX].

Practice with manipulating sums, and in particular switching the order of summation (or integration). Features generating functions and Snake Oil as well.

**Symm Polynom**
[Algebra,
BAW].

Vieta formulas, Newton sums, and the fundamental theorem of symmetric polynomials. Involves some computational problems. In my opinion, this is probably the easiest unit.

**Tricky Ineq**
[Algebra,
DAX].

Harder inequality problems that don't succumb to the standard methods: it takes some more ingenuity to figure out how to approach these.

**Arrows**
[Combinatorics,
DCW ZCW].

Some selected problems revolving around the idea that a function from a set to itself can be thought of as a directed graph with all outdegrees equal to 1. In particular, iterating such a function often involves looking at its cycle decomposition.

**C8 Summit**
[Combinatorics,
ZCW].

A challenging combinatorics unit to conclude the year, with difficult problems reviewing everything that has appeared earlier.

**Combo Null**
[Combinatorics,
ZCW].

A silly unit on using combinatorial nullstellensatz. Mostly for fun. It is actually a fairly easy (albeit technical) unit, and doesn't take long. This unit is only marked as Z-level because it is considered an advanced trick (in the sense it is more important to learn fundamentals first).

**Entry Combo**
[Combinatorics,
BCY].

A beginner combinatorics unit, meant to help get people oriented with typical proof styles for olympiad problems. Induction, recursion, invariants, and algorithms.

**Equality**
[Combinatorics,
BCW DCW ZCW].

An important unit about taking advantage of the equality case in combinatorial problems in order to solve problems. Mandatory for newcomer students.

**Expected Value**
[Combinatorics,
BCW].

Computational problems involving probability, expected value (in particular linearity of expectation), and Markov chains (processes which move from state to state).

**Extremal Graph**
[Combinatorics,
DCX ZCX].

A difficult unit on problems from extremal graph theory; finding graphs which maximize X under certain constructions. The most basic example is Turan's theorem, which maximizes the number of edges in a graph avoiding an r-clique. Global/local ideas as well as understanding of equality cases feature prominently. Most of the examples in this unit are more challenging.

**Free**
[Combinatorics,
DCW ZCX].

Problems for which you have a lot of room to make decisions; a lot of the problems in this unit are constructions, for example. You will feel like you are inventing mathematics, rather than discovering it (in contrast to the Rigid unit).

**Global**
[Combinatorics,
BCW DCW DCX].

Linearity of expectation, switching the order of summation, what's often called pigeonhole principle, counting in two ways, ... turns out they're actually all more or less the same idea.

**Global and Local**
[Combinatorics,
ZCW ZCX].

An accelerated version of both the global and local units (both done at once).

**Graph Theory**
[Combinatorics,
DCX ZCX].

Combinatorics practice with graphs.

**Grids**
[Combinatorics,
ZCY].

A fun but difficult unit on combinatorics problems involving rectangular grids.

**Hall**
[Combinatorics,
BCW DCW].

Hall's marriage lemma.

**Induct**
[Combinatorics,
BCX DCY].

Problems which really use induction and recursion is a substantial way, i.e. the main idea of the problem really is about how (or whether) to induct. Features some AIME-style recursion calculations.

**IOI**
[Combinatorics,
DCY ZCY].

Algorithmic problems which involve showing that it is possible to achieve some task (rather than finding invariants or proving impossibility). Features selected problems from the IOI, so some CS background is helpful but not necessary.

**Linear Algebra**
[Combinatorics,
DCY ZCY].

Problems using linear algebra (rather than problems about linear algebra). Most of the problems here are combinatorial in nature as a result, and there is a mix of linear algebra over R and linear algebra over F_2.

**Local**
[Combinatorics,
DCW DCX].

In contrast to the global unit, this unit is about problems starting from somewhere and perturbing it by a little bit. For example, in a greedy algorithm, if I want a set S of size at least 100 with a certain property, I can imagine starting with S empty and then grabbing things to add to S while trying to avoid bad-ness (whatever that means for the current problem). It's then enough to prove I don't get stuck at any point. Most of the problems in this unit will have a similar algorithmic feeling.

**Mystery**
[Combinatorics,
BCW].

This one's a secret. It's a bit weird, but for this unit to work I have to start by not telling you what it's about.

**Process**
[Combinatorics,
DCY ZCY].

This is about staring at a moving process (e.g. windmill) and trying to understand what is going on. (The most common thing people say here is monovariants or invariants, but that's only one example of a way you can understand a process.) In a lot of ways it's like the Rigid unit, except your data is way less concrete, and in some cases unobtainable, so you'll be applying the same intuition in a more hostile environment.

**Rigid**
[Combinatorics,
BCX DCX ZCX].

This is one of my favorite units. It's about problems which involve taking a fixed structure, and trying to figure out as much as you can about it --- the task the problem asks you to actually prove becomes unimportant, almost like an answer extraction at the end. Rigid problems often have so few degrees of freedom that a lot of what you'll be doing is writing down a lot of concrete examples, and then trying to figure out what they have in common. You will feel like you are discovering mathematics, rather than inventing it (in contrast to the Free unit).

**Russian Combo**
[Combinatorics,
DCX].

A fun unit involving combinatorics problems from Russia.

**Func Eqn**
[Functional Equations,
BFW DFW ZFW DFX ZFX].

Functional equations, I guess.

**Monster FE**
[Functional Equations,
DFW ZFW].

The functional equations that don't bore me, because the solution isn't just f(x) = x anymore! This follows up the Monsters handout on my website.

**Wrapped Func Eqn**
[Functional Equations,
DFY].

On real-valued functional equations in which all variables are "wrapped" by the function in some way.

**AIME Geo**
[Geometry,
BGX DGX].

Computational geometry problems, many taken from the tail end of the AIME. At the border of computational contests and olympiads.

**Art School**
[Geometry,
DGX].

This is a unit about building "diagram intuition": being able to take a geometry diagram (which may be good or bad) and trying to get a sense of which claims should or shouldn't be true.

**Bary**
[Geometry,
BGW DGW DGX].

Barycentric coordinates in olympiad geometry. A follow-up to Chapter 7 of EGMO.

**Classical Geo**
[Geometry,
DGX ZGX].

Formerly known as "American Geo". This is a unit on geometry problems with a highly traditional or synthetic flavor, for example USAMO 2016/3 and USAMO 2017/3. These sorts of problems have recently gained popularity on the USA olympiads and team selection tests and it is totally not my fault. A lot of these problems involve figuring out what certain points are, adding in new points that were not that already, and altogether slowly piecing together a master diagram that reveals the depth of a configuration.

**Complex Nums**
[Geometry,
BGW DGW DGX].

Complex numbers in olympiad geometry. A follow-up to Chapter 6 of EGMO.

**Config Geo**
[Geometry,
DGY ZGY].

Formerly known as "American Geo". This is a unit on geometry problems with a highly traditional or synthetic flavor, for example USAMO 2016/3 and USAMO 2017/3. These sorts of problems have recently gained popularity on the USA olympiads and team selection tests and it is totally not my fault. These particular ones tend to use common or standard configurations as a base and build on top of them, as opposed to starting afresh.

**Elem Geo**
[Geometry,
BGW DGW BGY DGY].

A unit featuring easy to medium geometry problems which can be solved using only the most basic tools: angle chasing, power of a point, homothety. It can be thought of as a follow-up to Part I of EGMO.

**Harmonic**
[Geometry,
DGW DGX].

Your friendly projective geometry unit. Harmonic bundles, poles and polars, and so on. A follow-up to Chapter 9 of EGMO.

**Homography**
[Geometry,
DGY ZGY].

A less friendly and more abstract projective geometry unit, with an emphasis on projective transformations. Most of the theorems will be stated with respect to an arbitrary conic rather than a circle.

**Hybrid Geo**
[Geometry,
DGX ZGX].

Geometry problems that involve heavy use of trig/length, featuring a lot of geometric inequalities. Also a bit of combinatorial geometry mixed in.

**Hyperbola**
[Geometry,
ZGX].

A silly (but difficult) unit on the theory of rectangular circumhyperbolas and the Poncelet point. For fun, if you really like hardcore projective geometry.

**Inversion and Spiral**
[Geometry,
ZGY].

A harder follow-up unit to chapters 8 and 10 of EGMO.

**Invert**
[Geometry,
DGW].

Inversion in olympiad geometry, following up chapter 8 of EGMO.

**Moving Points**
[Geometry,
ZGW].

A technique involving animating points and considering resulting projective maps. This lecture was contributed by Anant Mudgal.

**Spiral**
[Geometry,
DGW].

Spiral similarity and Miquel points, following up chapter 10 of EGMO.

**Super Bary**
[Geometry,
ZGX].

A more difficult version of the barycentric coordinates unit.

**Super Complex**
[Geometry,
ZGX].

A more difficult version of the complex numbers unit.

**Weird Geo**
[Geometry,
DGX ZGX].

Those weird geometry problems that involve pentagons and hexagons and whatnot (see USAMO 2011/3 for example). Careful use of complex numbers and counting degrees of freedom are important for this unit.

**Anti Problems**
[Miscellaneous,
DMW DMY].

A unit consisting entirely of troll "anti-problems" which are suitable for giving to your enemies.

**Courage**
[Miscellaneous,
DMW ZMW].

A difficult unit consisting of problems with deceptively short statements. A lot of the difficulty of these problems is setting up an entire framework to attack a simply stated problem. These setups are often more elaborate or detailed than in other problems.

**Duluth**
[Miscellaneous,
ZMY].

A short end-of-year unit containing open problems I solved at the Duluth REU.

**Dummy Unit**
[Miscellaneous,
BMW].

Not an actual unit; used internally as a canonical file for testing. If you unlock this unit, you will get a blank file. NOTHING TO SEE HERE MOVE ALONG

**Grinding**
[Miscellaneous,
ZMY DMY].

The worst olympiad problems you've ever seen. The name is a reference to the video game term in which you do the same thing over and over.

**AIME Mods**
[Number Theory,
BNW].

Computational problems in modular arithmetic, again at the border of short-answer contests and olympiads.

**Euclid Alg**
[Number Theory,
DNY].

A unit about the idea that if d divides a and b, then d divides any linear combination of a and b. This intuition underlies Bezout's lemma, the Euclidean algorithm, and the division algorithm, as well as a techinque which I privately call remainder bounding. One very good example of a problem of this feeling is SL 2016 N4 (sort of the crown example of remainder bounding).

**Expon NT**
[Number Theory,
DNW].

Expressions of the form a^n \pm 1, the bread and butter of olympiad number theory. Mods and orders, Fermat's Christmas theorem, lifting the exponent.

**Heavy NT**
[Number Theory,
DNW].

Heavy machinery in number theory: Vieta jumping, quadratic reciprocity, and some big-name theorems you may or may not have heard of.

**Int Polynom**
[Number Theory,
DNY ZNY].

A theoretical unit on the algebra and number theory of polynomials over Z, bordering into some algebraic number theory and Galois theory. Algebraic integers and irreducible polynomials feature prominently in this unit. The number theory in this unit goes deeper than that used in the Irreducible unit.

**NT Construct**
[Number Theory,
DNY ZNY].

Construction problems in number theory. In some ways it's like the free unit because you get to make some decisions, but in other ways Z has a lot of structure that you might know things about, and you'll have to balance these two intuitions.

**Orders**
[Number Theory,
BNW].

Orders modulo a prime, at the border of AIME and USA(J)MO but leaning a lot more towards the latter. Intended as an introduction into olympiad number theory.

**Prime Exponents**
[Number Theory,
BNW DNW].

The use of v_p in handling olympiad problems.

**Size in NT**
[Number Theory,
DNW].

Using size as a way to handle number theory conditions, for example taking sufficiently large primes. On the border between olympiad algebra and olympiad number theory.

**Super NT**
[Number Theory,
ZNW ZNX].

Number theory practice for experts, combining problems from Exp and Heavy NT as well as some other sources.