3.00 Credits
Introduces discrete mathematics with an emphasis on applications in computer science including logic, mathematical reasoning, proof techniques, sets, relations, functions, sequences, recursion, boolean algebra, counting, graphs, and trees. Also introduces computational complexity of algorithms. The course will stress traditional programming and mathematical approaches to these structures such as the use of recursion, elementary data structure, and proof techniques to instantiate, parse, traverse, demonstrate correctness, or use these computational objects.