## Computer Science

## AP COMPUTER SCIENCE A

This course, based on numerous problem solving exercises, labs, and case studies, is meant to prepare students for the AP Computer Science A exam, meeting all of the curricular requirements defined by the College Board for this course. Students will learn to understand and apply the main principles of object-oriented software design and programming using Java and various Java libraries. They will learn the fundamentals of algorithms and data structures, including search and sorting methods. Students also take the time to discuss ethical and social issues related to the use of computers in everyday life.

**Note: This course meets the standards and is authorized by the College Board as an "AP" course. Students who complete all 3 terms of the course can receive a course transcript noting its successful completion.**

## DISCRETE MATH

Students will learn the fundamental mathematical concepts relevant to computer science. Topics in graph theory, logic, and set theory will be the foundation for the course, but results in combinatorics and number theory will also be discussed. The course will be primarily math based, but the focus will be real world applications to computer science. Advanced topics such as information theory, automata theory, fuzzy logic, or computability may be studied at the teacher’s discretion.

## PYTHON PROGRAMMING

Students will learn the concepts of programming, data structure, various programming methodologies, and structures of computer programs. The Python programming language is introduced, along with some other popular languages. Concepts such as the software development life cycle and other modern software engineering concepts and are also introduced. Topics covered include data types, variables, classes, statements, input/output, operators, control flows (conditional statements, loops, switches), files, and functional vs. object oriented programming.

## INTRODUCTION TO ALGORITHMS

Students will learn the basics needed to understand and implement algorithms, which is the fundamental thinking process and methodology for learning computer science. This is a fundamental requirement for the USA Computing Olympiad. It builds the foundation for studying and excel in the AP computer science courses. Standard measures of efficiency (for example time and space complexity) will be introduced, and popular algorithms for sorting and searching will be explored in greater detail. Algorithms will be presented in pseudo-code, and implementations in Python and other popular languages will be covered. More specialized algorithms, such as primality testing, string matching, shortest path, or RSA-encryption will be covered based on teacher specialization.

## SPECIAL TOPICS IN ALGORITHMS

Students will learn more advanced methods in algorithms and see how these algorithms apply in computer science as well as in everyday life. Algorithmic thinking is a fundamental requirement for the USA Computing Olympiad. It builds the foundation for studying and excel in the AP computer science courses. Algorithms will be presented in pseudo-code, and implementations in Python or other popular languages will be covered. Topics will include algorithms on graphs, dynamic programming, greedy algorithms, and algorithms in number theory. Other topics may be covered based on teacher specialization. This course is a natural continuation from Introduction to Algorithms, but it is not necessary to have taken Introduction to Algorithms before taking this course.

## Mathematics

## INTRODUCTION TO GEOMETRY

This is an introductory level course for students who have not taken a geometry class in school and want to learn the geometry concepts necessary for competitions such as AMC8 and MathCounts. Content includes the fundamental concepts and theorems covering points, lines, angles, area, etc. Student will study various geometric shapes such as triangles, quadrilaterals, and circles and learn their basic properties. This course will prepare students for more advanced classes such as Math Challenge I-A and I-B.

## ALGEBRA READINESS: PREP FOR MIDDLE SCHOOL MATH PLACEMENT TEST

In the Algebra Readiness course, students in 5th, 6th and 7th grade will learn how to master problem solving techniques in order to place into advanced math classes while in middle school. This will allow them to save at least one to two years of math requirements that will help them to get into higher level math courses earlier (such as Calculus AB or BC) by the time they enter into high school. Students will benefit from taking both the Winter Term and Spring Term courses leading up to the time when they will need to take the Algebra Readiness math placement test in school.

## PRECALCULUS

This course is designed for high school students with a strong interest in accelerating their mathematical studies and preparing to take an AP Calculus AB or BC course next year. Students enrolled in this course will gain exposure to many precalculus concepts including linear and quadratic functions, trigonometry, exponents, and logarithms. Additionally, students will acquire problem solving skills that can be applied to their any current or future math courses. This course can be taken concurrently with Algebra 2 if the student wants to take Calculus a year early in high school. Terms may be taken separately, but the full year (Fall, Winter, Spring) will provide a complete set of precalculus material. The summer term will cover introductory calculus to help students get a head start on the next school year.

## MATH CHALLENGE I-A

This is an introductory level course for 6-8 grade students who have no experience in in-depth problem solving nor math competitions. Students learn skills to apply the concepts they learn in school math classes into problem solving. Content includes pre-algebra, beginning algebra, fundamental geometry, basic number theory concepts and counting and probability. Students develop skills in creative thinking, logical reasoning, analytical and problem solving skills. Students are exposed to beginning contests such as AMC 8, MathCounts and Math Olympiads for Elementary and Middle School MOEMS.

## MATH CHALLENGE I-B

Students learn math skills at a deeper level with topics in Beginning Algebra, Fundamental Geometry, Basic Number Theory concepts and Counting strategies, as well as Logic and Probabilities. The students not only learn practical skills of challenging problem solving that are supplemental to their school curricula, but also develop skills in creative thinking, logical reasoning, oral and written presentation, and team work. This course helps 6th to 8th graders to participate in the American Mathematics Competition (AMC) 8, MathCounts and Math Olympiads for Elementary and Middle School MOEMS. Through the effective guidance and direction by our experienced teachers, students develop strong problem solving skills that make them perform well in those Contests.

## MATH CHALLENGE I-C

This four part course is designed to bridge the gap between the AMC 8 and the AMC 10 and prepare students for high school math competitions including the AMC 10/12, ARML, and ZIML. The four term course covers topics and introductory problem solving in algebra, geometry, and finite math. Algebraic topics include linear equations, systems of equations and inequalities, exponents and radicals, factoring polynomials, and solving quadratic equations. Geometric topics include angles in triangles, quadrilaterals, and polygons, congruent and similar polygons, calculating area, and algebraic geometry. Topics in finite math include logic, introductory number theory, and an introduction to probability and statistics. These topics serve as the fundamental knowledge needed for a more advanced problem solving course such as Math Challenge II-A.

**Note:** This course is a blended learning class, with pre-recorded videos and weekly live question and answer sessions to review homework.

## MATH CHALLENGE II-A

This course is for students who are preparing for the AMC 10 contest. Students are required to have fundamental knowledge in Algebra I, Geometry, Basic Number Theory and Counting and Probability up to the 10th grade level. Topics include polynomials, inequalities, special algebraic techniques, triangles and polygons, collinearity and concurrency, vectors and coordinates, numbers and divisibility, modular arithmetic, advanced counting strategies, binomial coefficients, sequence and series, and various other topics and problem solving techniques involved in math contests such as the AMC 10, advanced MathCounts, ARML, and ZIML.

## MATH CHALLENGE II-B

In Math Challenge II-B, students learn and practice in areas such as algebra and geometry at the high school level, as well as advanced number theory and combinatorics. Topics include polynomials, inequalities, special algebraic techniques, trigonometry, triangles and polygons, collinearity and concurrency, vectors and coordinates, numbers and divisibility, modular arithmetic, residue classes, advanced counting strategies, binomial coefficients, pigeonhole principle, sequence and series, and various other topics and problem solving techniques involved in math contests such as the American Mathematics Competition (AMC) 10, 12 and ARML, and also the beginning AIME.

## MATH CHALLENGE III

This course is for students who are qualified to participate in the AIME contest, or at the equivalent level of experiences. The topics includes everything covered in MC-II with more depth, and the focus is more on various problem solving strategies, including pairing, change of variables, some advanced techniques in number theory and combinatorics, advanced probability theory and techniques, solid geometry, geometrical transformations, etc. Through the effective guidance and direction by our experienced teachers, students develop strong problem solving skills that make them perform well in contests such as AIME and ARML.

## MATH CHALLENGE IV

This course is for experienced students who can solve at least a few problems in the AIME contest and qualify or almost qualify for USAMO. In this course, the students learn more in-depth math concepts and problem-solving strategies that involve more rigorous mathematical writing and a broad range of topics. Students are trained to comfortably solve the AIME problems to qualify for USA(J)MO, also to comfortably write mathematical proofs for problems at the USA(J)MO level, aiming to win USA(J)MO and get into the prestigious MOSP. The topics include everything covered in MC-III with more depth, and additional topics such as quadratic residue, diophantine equations, recurrence, proving inequalities, mathematical induction, functional equations, generating functions, inversion, projective geometry, and rigorous proof-writing practices. Through the effective guidance and direction by our experienced teachers, students develop strong problem solving skills that make them perform well in AIME and USA(J)MO.

This is a multi-year class. Students may continue to enroll in MC-IV for up to 3 years and all the major math olympiad sub-topics shall be covered. Since the size of this class is small, the topics are customized according to the knowledge level of the enrolled students.

## Physics

## PHYSICS FUNDAMENTALS: INTRO TO PHYSICS

This is an introductory Physics course that explains the concepts in Physics for middle school and high school students who have yet to take a high school Physics course. It builds the foundation for students to advance to the problem solving for the Physics Olympiad, Physics Bowl, SAT II and AP Physics at a more advanced level. There are four 10-week sessions planned for one school year including: Mechanics in the Summer, Thermodynamics in the Fall, Electricity & Magnetism in the Winter and Modern Physics in the Spring. The course consists of class lectures with student-to-teacher interaction, an online homework system and general test preparation and problem solving (online text book materials included). Recommended to enroll in this course prior or concurrent with the Physics Challenge II course.

## PHYSICS CHALLENGE II: AP PHYSICS & PHYSICS OLYMPIAD

This year-long AP course provides a solid and thorough review for students to prepare for both the Advanced Placement (AP) Physics C exams in Mechanics and Electricity & Magnetism and both of the F=ma and Semi-Final exams for the USA Physics Olympiad (USAPhO). The syllabus covers four 10-week sessions planned for one school year including: Mechanics in the Summer, Thermodynamics in the Fall, Electricity & Magnetism in the Winter and Modern Physics in the Spring.

To give an example of what kind of content will be covered in two of the classes: The Mechanics section will include a discussion of kinematics; Newton’s laws of motion; work, energy and power; systems of particles and linear momentum; circular motion and rotation and oscillations and gravitation. The section on Electricity & Magnetism includes a discussion of electrostatics, conductors, capacitors and dielectrics; electric circuits, magnetic fields and electromagnetism.

All of the course content will focus on areas that will be tested in the AP Physics exams. There will be a partial lab component along with a full discussion of the scientific method and the real-world nature of analyzing experimental data. The course consists of class lectures with engaging student-to-teacher participation, an online homework system, as well as physics and general test preparation and problem solving in order to ace the AP Physics and Physics Olympiad exams with material that can be useful for the SAT II: Physics test, the Physics Bowl and other science bowls (online text book materials included).

## Other Courses

## COMPUTER SCIENCE FUNDAMENTALS

Students will learn a brief history of Computer Science, and the evolution of software development environment and programming languages. Students will be exposed to the lower level languages to understand how a machine worked under limited hardware resources. Students will be exposed to the latest professional software development technologies as well.

## PROGRAMMING CONCEPTS

Students will learn the concepts of programming, data structure, various programming methodologies, structures of computer programs. The Java programming language is introduced, along with some other popular languages. Software development life cycle Modern software engineering concepts and are introduced. Topics covered: data types, variables, classes, statements, input/output, operators, control flows (conditional statements, loops, switches), files, object oriented programming.

## RESEARCH WORKSHOP FOR PROJECT BASED RESEARCH & SCIENCE FAIR

Students learn Scientific Research Method, and use it as a guideline to conduct a systematic research on an interested field and narrow down to a specific project under the guidance of the adviser. Students will then develop the problems to solve, survey the latest research status in the field, design his/her own experiments, determine the procedure and materials to use, carry out the experiments, collect relevant data and analyze the data to identify the pattern in order to reach the result. During the scheduled live sessions, the instructor will facilitate the methods and teach the theoretical knowledge needed to conduct research in depth, and facilitate the brainstorming for solving problems at the particular stage. Two or more hours a week self study and research efforts are expected outside of the live sessions. Students are expected to produce a presentable project submitted to science and engineering fairs or other science competitions.