This course introduces the mathematical structures and methods that form the foundation of computer science. The material will be motivated by applications from computer science. Students will learn: (1) speciļ¬c skills, e.g., binary and modular arithmetic, set notation, sequences, lists, trees, and graphs, etc.; (2) general knowledge, e.g., counting, proof, and analysis techniques needed to estimate the size of sets, the growth of functions, and the space-time complexity of algorithms; and (3) how to think, e.g., general problem solving techniques.

The main prerequisite for this course is a firm knowledge of high-school algebra.

Though CS 2500, *Fundamentals of Computer Science 1*,
is not a pre-requisite for this course, we will refer to topics
that are covered in that course.

Last Updated: *
*