Methodology and Curriculum

How We Teach

Our most important guiding principle is that, on the one hand, no student is inherently incapable of succeeding in mathematics and, on the other hand, no student should be bored and unchallenged. We make it a priority to accommodate students with widely varying levels of preparation by placing students in an appropriate level class based on their motivation and personal preference. Of course, even within a particular class, students learn at different paces, and we prepare for that by incorporating problems of varying difficulty into our classes so that all students get a sense of accomplishment and improvement. We strive to make sure that no students feel intimidated either by the subject or by their classmates.

Our experience shows that an informal and friendly classroom setting helps reduce fear of mathematics while encouraging collaboration among students to solve the most difficult problems. Below is the structure of a typical class:

  1. A warm-up session where students solve logic puzzles and other problems that do not require any mathematics beyond what students already know.
  2. Short session devoted to practicing basic computational skills. Students work by themselves and receive help from the teacher. During this time students can individually discuss the computational part of their homework. Advanced students who finish their work early receive more difficult problems.
  3. A 10 minute break.
  4. A reinforcement session where students discuss challenging homework problems and solve problems using ideas and techniques that they have already developed in previous classes and homework assignments.
  5. A session devoted to the main topic of the day which can include both an in-depth discussion of standard school topics beyond what schools and textbooks cover as well as nonstandard topics and problems.

We assign students homework that includes both computational practice exercises as well as more challenging problems usually based on the main topic of a class. Although we do not give out grades, we expect that students will complete at least the practice exercises and will make a serious effort to solve as many of the remaining problems as possible. Even partial solutions or rough ideas are an important part of the learning process. Our goal is to gently nudge students to the limits of their abilities, and we would rather challenge them than give them a false sense of accomplishment. As a result, we do not expect all of our problems to be solved, and we know that the new ideas and problem solutions that students generate will be their most powerful source of encouragement.

Math Topics

Beyond the standard school topics that we cover in-depth here is a sample of some others topics that students are likely to encounter:

Grade Topics
3-5 logic puzzles, original word problems (involving constructions, weighings, lateral thinking, and spatial reasoning), basic counting principles (combinations and permutations), number bases, mathematical games
6-8 logic puzzles (involving disjunctions, conjunctions, and negations), word problems (involving unusual applications of ratios and rates), coloring and parity problems, divisibility and arithmetic with remainders, infinitude of primes, basic graph theory, invariants, pigeon hole principle, basic combinatorics
9-12 logic puzzles (more involved than in earlier grades), basic number theory (modular arithmetic, Fermat’s little theorem, applications to cryptography), proof by induction, proof by contradiction, inequalities (triangle, A.M.-G.M.), Pascal’s triangle, extreme principle, semi-invariants, straight edge and compass constructions, geometry from a dynamical view point, geometric inequalities

Standardized Tests

For a variety of legitimate reasons, including college and private school admissions and scholarships, parents and students often worry about standardized tests like the SAT. Students usually take their first practice test in high school and when faced with mediocre or poor results turn to expensive tutoring and test preparation services in an attempt to quickly raise their scores. Although a large investment of time and money can improve scores to a limited extent, the process of studying for these tests has few educational benefits. The most difficult problems on standardized tests, those that are responsible for low scores, are problems that require unconventional thinking. Our experience has shown that instead of last minute cramming in high school, students are much better served by becoming used to, and even enjoying, a regular diet of nonstandard problems from an early age. Students who become comfortable solving problems for which there is no obvious solution method that can be memorized are much better equipped to perform well on standardized tests with minimal or no special preparation. Of course, the main benefit of this long-term approach is that students receive a real problem solving education that will serve them a lifetime, not an extremely limited set of test taking skills that has little educational value.

Computer Science Component

Our computer science curriculum pursues three goals:

  • Enriching the mathematics curriculum. By implementing classic mathematical algorithms (such as finding the greatest common divisor of two numbers) in a programming language students are better able to master those fundamental algorithms. Additionally, programming allows students to explore computation-intensive areas of mathematics that are otherwise inaccessible to them.
  • Learning a practical skill. As the economy becomes more information-based and data-driven, programming is becoming increasingly more useful even to non-programmers. Without following a particular industry fad that is likely to become outdated within a few years, we wish to leave students with the knowledge and skills that allow them to learn any new technology on their own.
  • Giving students their first taste of engineering. Programming opens the door to engineering at an early age and gives students an opportunity to be creative in a new medium while sharpening their problem solving skills.

Some of the topics we cover include functions, function composition, variables, recursion, basic data structures, searching, sorting, and algorithm efficiency. In addition to core computer science curriculum topics, we leave room for fun and even artistic programming projects.