CS 250 Discrete Structures I
Credit Hours:  4 
Course Coordinator:  Bart Massey 
Course Description:  The course introduces discrete structures and techniques for computing. Sets. Graphs and trees. Functions: properties, recursive definitions, solving recurrences. Relations: properties, equivalence, partial order. Proof techniques, inductive proof. Counting techniques and discrete probability. The course, which is the first term of the two term sequence, aims at conveying those skills in discrete mathematics that are used in the study and practice of computer science. The entire course is theoretical material (discrete mathematics). 
Prerequisites:  MTH 251 
Goals:  CS 250 is the first term of the two term sequence CS 250251. The main goal of the sequence is that students obtain those skills in discrete mathematics and logic that are used in the study and practice of computer science.
Upon the successful completion of this course students will be able to:

Textbooks:  1. Notes on Discrete Mathematics, Miguel Lerma, 2005 
References:  
Major Topics: 

Laboratory Exercises: 
CAC Category Credits  Core  Advanced 
Data Structures  
Algorithms  0.3  
Software Design  
Computer Architecture  
Programming Languages 
Oral and Written Communications:  Oral communication is in the form of class interaction. Written communication is in the form of homework assignments. 
Social and Ethical Issues:  None. 
Theoretical Content:  The entire course is theoretical material (discrete mathematics). 
Problem Analysis:  The course is devoted to problem solving techniques of discrete mathematics. The exercises and tests require problem analysis to find out which tools of discrete mathematics are needed to solve a problem. 
Solution Design:  The course is devoted to problem solving techniques of discrete mathematics. The exercises and tests require students to solve problems by applying the tools of discrete mathematics. 