### CSC 226 - Discrete Mathematics for Computer Scientists

Catalog Description:

Emphasis on counting (combinatorics), formal proofs, and applications of discrete mathematics. Topics will include (but are not limited to): permutations, combinations, probability, propositional logic, predicate calculus, proof approaches, induction, modular arithmetic, recurrence relations, asymptotic growth of functions, and introduction to graph theory. This course assumes knowledge of topics covered in high-school Algebra I and II.

Contact Hours:
• Lecture: 3 hours
Prerequisites: None
Co-requisites: None
Restrictions: None
Coordinator: Dr. Jessica Schmidt
Textbook: CSC 226: Discrete Math ZyBook

Course Outcomes:
At the conclusion of this course, students should be able to

1. Describe permutations and combinations, and explain the differences between them.

2. Identify and apply the appropriate counting approach for solving a given problem.

3. Apply common arithmetic and logic proof techniques to prove that a given argument is valid.

4. Apply modular arithmetic to prove properties of subsets of the integers.

5. Use the principle of strong mathematical induction to prove properties over the natural numbers.

6. Determine and prove the correctness of asymptotic function growth using standard notations.

7. Identify properties (e.g., trails, circuits, paths, or cycles) of a given graph.

8. Apply common algorithms (e.g., graph search algorithms, minimum spanning tree algorithms) to a given graph.

Topics:
• Sets
• Combinatorics
• Logic
• Logic Proofs
• Predicate Calculus
• Arithmetic Proofs
• Induction
• Recursion
• Big-Oh
• Binary Relations
• Graph Theory