CSC331 Discrete Structures and Logic

Lead Faculty: Dr. Ronald Uhlig

Course Description

(Cross-listed and equivalent to MTH 325) A theoretical foundation for computer science. Introduction to topics such as sets, propositional logic, Boolean algebra, counting techniques, recursive equations and solution techniques, graph algorithms with application to trees. Introduction to mathematical proofs. Students may not receive credit for both CSC 331 and MTH 325.

Learning Outcomes

  • Understand and apply the ideas and symbols of mathematical logic.
  • Infer truth values for compound statements using truth tables.
  • Prove mathematical results by induction.
  • Formulate recursive definitions, and analyze them.
  • Analyze algorithms for correctness and performance.
  • Calculate the cardinality of possible outcomes using the fundamental principles of counting, permutations, combinations, and partitions.
  • Use graph theory to model real world problems.
  • Describe common graph algorithms and analyze their time complexity.