CS 240: Introduction to Discrete Mathematics

Lectures:
Instructor:

Announcements:

Course Description:CS 240 gives an undergraduatelevel introduction to discrete mathematics geared towards prospective Computer Science and Electrical and Computer Engineering majors. It covers fundamental concepts of mathematics (definitions, proofs, sets, functions, and relations) and focuses on the discrete structures that are ubiquitous in digital computing: integers, bits, strings, graphs, and trees. The goal of the course is twofold:
Topics: Basic concepts of mathematics (definitions, proofs, sets, functions, and relations) with a focus on discrete structures: integers, bits, strings, trees, and graphs. Propositional logic, Boolean algebra, and predicate logic. Mathematical induction and recursion. Invariants and algorithmic correctness. Recursion, recurrences, and asymptotic growth analysis. Fundamentals of counting. Regular expressions and finite automata. Prereqs: One semester of calculus (Math 217, 221, or 275). It will be useful to have some prior programming experience (or be concurrently enrolled in an introductory programming course such as CS 200 or CS 220). 
Topics:Below is a tentative schedule of the topics and order in which they will be covered. Course content comes from the lectures and discussion sections as well as a zyBooks EText and a set of online readings (linked in the schedule below). Each topic roughly corresponds to one week. See Canvas for the most uptodate schedule. 
Last Updated: 9/11/2023 ©2023 Beck Hasti 