CME 305/MS&E 316: Discrete Mathematics and AlgorithmsInstructor: Aaron SidfordWinter 2018 Time: Tuesdays and Thursdays, 10:30 AM  11:50 AM Room: Education Building, Room 128 Here is the course syllabus. OverviewThis class will introduce the theoretical foundations of discrete mathematics and algorithms. Emphasis will be on providing mathematical tools for combinatorial optimization, i.e. how to efficiently optimize over large structured finite sets. The course will provide a rigorous understanding of both discrete mathematical structures, e.g. graphs, matroids, submodular functions, set systems, etc., as well algorithmic paradigms for optimizing over them, e.g. greedy methods, linear programming, randomized methods, etc. The class constitutes a fastpaced proofbased introduction to the broad area of designing and analyzing algorithms for combinatorial problems. By course completion you should have a solid foundation to enable future theoretical research and practical work on discrete problems.Textbooks and Schedule
Required textbook:
Midterm: Thursday, 02/15/2018 in class Lecture Notes and Recommended ReadingNote that these notes are not intended to be any substitute for the material covered during lectures. Further, homework assignments will be exclusively on Canvas.
Practice Exams and Problem SessionsThis will be filled in closer to exam time.Previous yearsPlease note that the material given in previous years deviates somewhat from this class. If you are looking for additional problems for selfstudy, it is still worth looking at these however.Winter 2017: Class website Winter 2016: Class website Winter 2015: Class website Winter 2014: Class website 
