This course covers a variety of important topics in math and computer science. Topics include: logic and proof, sets and functions, induction and recursion, elementary number theory, counting and probability, and basic theory of directed graphs.
- Understand fundamental combinatorics principles including permutations and combinations and apply them to discrete probability problems.
- Understand recursive algorithms and their applications.
- Understand symbolic logic and predicate calculus. Master methods of proof including direct proof, proof by contradiction and mathematical induction.
- Understand the fundamentals of elementary number theory including the Euclidean algorithm and number systems. Understand the notion of an algorithm.
- Understand functions, relations and directed graphs.