CMSC/MATH 235 Discrete Mathematics
Spring, 2008
Professor: Robert W. McGrail.
Lectures: Monday and Wednesday from 9:00 AM to 10:20 AM in RKC 100.
Text: Computational Discrete Mathematics, by Sriram Pemmaraju and Steven Skiena. New York: Cambridge University Press. 2003. ISBN: 0-521-80686-0.
Course Policies
Software and Systems: We will employ version 6.0 of the Mathematica symbolic computing system. In particular, we will make use of the Combinatorica package. Our official platform is Mac OS X, as installed on the RKC 100 machines. An inexpensive student version of Mathematica is available for all platforms.
Homework: There will be approximately 10 homework assignments. Each assignment will be electronically submitted to me in the form of a Mathematica notebook or package attached to an email message. Mathematica notebooks present allow one to mix programming code with formatted text, graphics, and tables. The opportunities for creating fully "literate programs" is outstanding. Hence students will be expected to carefully annotate their code. That is correct: Writing matters in this course.
The last few homework assignments will constitute one related course project on some area of discrete mathematics.
Exam: Each student's journey will rely heavily upon the development of several technical skills. Hence there is a certain amount of technical knowledge that each student must acquire. My method for determining whether students are sufficiently absorbing such detail include two in-class exams, one at midterm and one at the end of the course.
Grading: The final grade will be computed according to the following breakdown.
- Homework: 30%
- Midterm Exam: 30%
- Project: 40%
Syllabus
Discrete Mathematics Topics
- Permutations and Combinations
- Computational Complexity
- Mathematical Induction
- Propositional Logic
- First-Order Logic
- Finite Algebras
- The Algebra of Permutations
- Midterm Exam, Wednesday, March 26th
- Knots and Quandles
- Partitions and Congruences
- Lattices and Order
- Graphs and their Constructions
- Graph Properties
- Final Exam, Monday, May 19th
Mathematica Programming
- Basic Run Time Environment
- Notebooks and Publishing
- Lists and Matrices
- Functions
- Conditionals
- Iteration and Recursion
- Pattern Matching and Translation
- File Input and Output
- Graphics
- Graphical User Interfaces