Math topics are taught block by block, and include five major fields of mathematics.


Block 1: Problem Solving + Combinatorics 
We begin the year with an introduction to classic techniques in mathematics such as induction, proof by contradiction, and invariants. More advanced classes cover graph theory, Pólya counting, and partitions.

Problem Solving 1
This course is designed for students with minimal mathematical problem solving background. Students will learn foundational methods such as formulating a simpler question, finding a unifying pattern, or working backwards. They will hypothesize, confirm or refute conjectures and develop strategies for making progress on problems when the best approach is not clear. Particular emphasis will be placed on working through a broad selection of carefully chosen problems.

Problem Solving II
This class will be an exploration of problem solving techniques, with an emphasis on proof writing. We will practice working through the complete arc of solving a math problem, articulating our reasons for believing that our solution is correct, and transforming our intuition into a rigorous proof. The particular problems that we work with will come from a variety of mathematical subject areas, including game theory, logic, and topology.

Enumerative Combinatorics
This course digs deeper into counting techniques, with a twin emphasis on the power of algebra and the methods of combinatorial proof. Students will explore the binomial and multinomial coefficients, path-counting, recursion and induction, special sequences, generating functions, probability distributions, combinatorial identities, proof by bijection, and existence proofs. Students will discover and prove formulas for sequences describing a wide range of combinatorial objects.

Graph Algorithms
This course will begin with a brief review of basic graph theory, then focus on algorithmic aspects of the subject. Students will study spanning trees, dynamic programming, shortest paths, matchings, Eulerian circuits, and the Chinese postman problem. Further topics would include max flow/min cut, linear programming and linear optimization. Implementing algorithms via programs and applying them to various types of networks will play an important role in the course.

Topics in Algebraic Combinatorics
In this course, students will add powerful tools from algebra to their repertoire of counting techniques. We will explore the many kinds of generating functions, including ordinary power series and exponential generating functions, which we will use to derive closed forms, identities, and asymptotics for a range of classic sequences. Along the way, we will learn about combinatorial objects such as integer partitions, set partitions, and trees. The second half of the course will cover group actions and Pólya theory, a suite of methods for counting in problems with complex symmetries. In addition, each student will complete a research project examining an application of generating functions.

Block 2: Algebra + Number Systems 
Our students investigate a wide range of topics, from polynomials, inequalities, and complex numbers to matrices and symmetry groups. There's a lot more to algebra than just factoring quadratics.

Algebra 1
This course provides a solid grounding in one of the most essential and ubiquitous tools used in mathematics: algebra. Students begin by understanding the concept of variable, then learn about manipulating algebraic expressions, solving equations, using ratio/percent/proportion, graphing lines, factoring to solve quadratic equations, and analyzing inequalities. The purpose of the course is to organically motivate the need for and utility of algebra, while providing adequate training in order to use algebra proficiently.

Algebra 1 Lab
In this course, we will explore applications that rely only on skills learned in Algebra 1. We will solve geometry problems using equations of lines, fit curves to data, use piecewise-linear functions to compare insurance and cell phone plans, and use linear programming to find optimal production schedules. There will also be purely mathematical investigations, such as using visual means to divide polynomials and finding connections between Pascal’s triangle and n-dimensional cubes and simplexes. In addition we will reinforce algebra skills in areas of quadratic equations, graphing, and simplifying expressions with fractions.

Algebra 2
This course continues the study of algebra, a subject on which nearly every other branch of mathematics depends. After a brief review of introductory concepts, students will study quadratic equations and their graphs, quadratic inequalities, functions, the coordinate plane, polynomials, exponents and logarithms, complex numbers, and sequences. Together with the Algebra 1, this class provides a complete introduction to the subject which should serve students well in their subsequent coursework.

Number Systems
This course is primarily an introduction to specific number systems used throughout mathematics, and secondarily an introduction to axiom systems and the general methods of algebra. Course coverage will include sets, operations, closure, cardinality, field axioms, rational numbers, real numbers and their constructions, algebraic extensions of the rationals, complex numbers, ring axioms, extensions of the integers, Euclidean algorithm and factorization theorems, integers modulo n, the Two-Squares Theorem, finite fields, and polynomials over finite fields.

Ideals and Varieties
This course will introduce big ideas in algebraic geometry, studying how geometric objects can be described using algebraic equations. Students will study fields, affine space, algebraic varieties, ideals, and division algorithms for polynomials. The course will culminate in a study of the Hilbert Basis theorem and Groebner bases. Emphasis will be placed on computational fluency and geometric intuition. Students will also engage in an independent project on a specific area in algebraic geometry such as projective space, elliptic curves, or conics.

Block 3: Geometry + Topology 
Proof School provides students the opportunity to discover the real depth and elegance of geometry, whether Euclidean, projective, or spherical geometry. During this block we also offer electives such as topology and differential calculus.

Fundamentals of Geometry
This course introduces students to standard concepts in geometry. Topics will include parallel lines, angles, triangles, circles, parallelograms and other common shapes. Students will study metric properties of geometric objects such as length, perimeter, area, angle measure and volume. Finally, the course will cover the fundamental notions of similarity, proportion and right triangles.

Elements of Geometry
This course will present the art of proof in the context of introductory Euclidean geometry. Students will develop their skill at mathematical writing as they study the topics of angles, parallel and perpendicular lines, triangle congruence, similar triangles, parallelograms, other common quadrilaterals, circles, geometric inequalities and constructions. Emphasis will be placed on sound arguments and clearly written proofs.

Advanced Euclidean Geometry
Beginning with a careful development of the relationship between circles, arcs and angle measure, students will explore classic results in Euclidean geometry including cyclic quadrilaterals, the Simson line, concurrence, the Euler line, and the nine-point circle. Students will work collaboratively to document all class material, which will serve as a resource and reference during the course. Emphasis will be placed on discovery and rigorous mathematical writing. We will implement GeoGebra software for classroom exploration and diagram creation.

Aspects of Geometry
This course will explore many facets of geometry that lie beyond high school Euclidean geometry. The aim is to expose students to the many different aspects of geometry, in order to give them a sense of the broad scope of the field. Topics may include constructions, projective geometry, homogeneous coordinates, hyperbolic geometry, tilings, and transformations groups.

Block 4: Analysis + Statistics 
This familiar sequence of courses begins with elementary functions (trigonometric, exponential, and logarithmic), continues through calculus of one or more variables, and extends into the realm of differential equations or real analysis. We also bring our Algebra 1 class to conclusion.

Algebra 1b
This course provides a continuation of and conclusion to Algebra 1a. Students will cover topics including the Cartesian plane, linear inequalities, systems of two equations in two variables, and ratios/percent/proportion. The course will culminate with a first look at quadratic equations. The purpose of the course is to organically motivate the need for and utility of algebra, while providing adequate training in order to use algebra proficiently.

Exponentials, Logs, and Trig
This course begins with a foundation in function notation, coordinate transformations, and families of functions. Students will next obtain a solid understanding of the laws of and relationship between exponential functions and logarithmic functions. Along the way they will apply these enormously useful functions to understand a variety of natural phenomena, such as population growth and compound interest. The bulk of the course will be devoted to a comprehensive study of trigonometry, including right triangle trigonometry, the Law of Sines and Law of Cosines, the unit circle, graphs of trigonometric functions, and applications to periodic motion.

Mathematical Laboratory
There are a number of marvelous mathematical results that require a knowledge of precalculus topics before they become accessible to students. The purpose of this course is to delve into a wide variety of such topics, which rely on and in turn reinforce tools from trigonometry, exponentials, logarithms, and complex numbers. Our labs will explore the plethora of contexts in which the mathematical constant e arises in probability, the manner in which quaternions provide a means of composing rotations in three-space, and Marden's Theorem, to name a few.

Real and p-adic Numbers
This course introduces students to the concept of metric spaces and related elementary techniques of analysis, using the examples of real and p-adic numbers as completions of the rationals under different norms. The course begins with a rigorous construction of the real numbers as equivalence classes of Cauchy sequences of the rationals. We will then be able to prove such basic calculus results as the Intermediate Value Theorem and the Extreme Value Theorem, whose proofs are almost always omitted from calculus courses. Finally, we will construct and explore a different family of number systems called the p-adic numbers. Throughout the course, students will build skills in working with the epsilon-delta definitions of limits and continuity, which are fundamental to any further study of analysis. 

Block 5: Number Theory + Computer Science 
Either of these disciplines could occupy a lifetime of study; we let students go as far as they are able to in the subject of their choice while making sure that all students have a solid foundation in both. Electives in both subjects may make an occasional appearance in earlier blocks to provide additional coverage.

Intro to Number Theory
Mathematicians have long been fascinated by the unexpectedly rich theory and difficult questions that arise from the interplay between the seemingly innocent operations of addition and multiplication among integers. In this first course we will cover the classical canon of topics, including divisibility, divisibility tests for small integers, counting divisors, simple proofs involving divisors, perfect numbers, number bases, primes (including factorization and the infinitude of the primes), GCD and LCM, the Euclidean algorithm, Pythagorean triples, and irrational numbers. We will conclude with a week on modular arithmetic and congruences.

Multiplicative Number Theory
Gauss refers to his result on quadratic reciprocity as the Aureum Theorema, or the “Golden Theorem.” It is one of the most elegant results in all of number theory and serves as a pinnacle for this intermediate level course. To reach this apex, we will review modular arithmetic and linear congruences, then study Fermat's Little Theorem, Wilson's Theorem, RSA encryption, the Chinese Remainder Theorem, unique factorization of primes, primes as the sum of two squares, the Euler totient function, the Mobius function, Mobius inversion, primitive roots, and Legendre symbols, before finally reaching quadratic reciprocity.

Discrete Probability Distributions
This course begins with major concepts in probability theory including conditional probability, independence, and Bayes' Theorem. Students will learn to work with discrete random variables and their probability distributions, including common types such as uniform, binomial, geometric, and Poisson. We will find creative applications of expected value, discover concentration phenomena such as the Law of Large Numbers, and explore classic problems in probability such as gambler's ruin, the coupon-collector problem, and the German tank problem. The last part of the course will be dedicated to the study of information theory, with applications to guessing games and data compression.

Data Structures and Java
One of the essential tools for any programmer is a working knowledge of the various classical data structures, along with an understanding of which types of data are best suited for each means of organization. This course will provide a thorough introduction to the most commonly used structures, including stacks, queues, linked lists, binary trees, hash tables, heaps, and graphs, as time and the experience of the students in the class allows. In order to expose students to one of the most important and widely used coding languages currently employed, this course will be taught in Java.