CPSC 203: Mathematical Foundations of Computer
Science
Fall 1998
Class Time: MWF, 11:00-11:50am
Location: MCEC 220
Chuck C. Liang
Office: MCEC 343
Office Phone: (860 297) 5395
Designated Office Hours: Monday-Thursday 3-4pm, or by appointment
Email: chuck.liang@mail.trincoll.edu
Teaching Assistant: Jamie Mazur
Course Description:
An introduction to the principles of logic and discrete
mathematics required in the study of computer science. Topics
covered may include propositional and predicate logic and their
relationship to general proof techniques used in computing and
correctness proofs of programs; mathematical induction applied
to recursion and recurrence relations; set theory with an
emphasis on infinite sets used in computing; counting principles
useful in analyzing graphs and trees; relations and functions
and their relationship to databases and functional programming
languages; Computer programs may be used to explore concepts
examined in the course.
Prerequisites: CPSC 115L and Math 131.
Required Textbook: ``Logic and Discrete Mathematics: A Computer
Science Perspective'' by W. K. Grassman and J-P Tremblay.
Reference Material:
- ``Discrete Mathematics'' By K. Ross and C. Wright
- ``Logic for Computer Science'' By S. Reeves and M. Clarke
Class Web Page:
http://www2.trincoll.edu/~cliang/c203/
Tentative List of Topics:
- Overview and examples of discrete math in computer science
- Propositional logic (Chap. 1)
- Syntax: symbols and connectives
- Semantics: truth tables
- Natural Deduction
- Predicate logic (Chap. 2)
- Terms, variables and quantifiers
- Basic model theory
- Axiomatizations
- Soundness and completeness; Goedel's theorem
- Induction and recursion (Chap. 3)
- Inductions on natural numbers
- Inductive definitions
- Recursive programs and induction
- Inductive proofs of correctness of programs.
- Programming with Logic (Chap. 4)
- Automated Proof search and unification
- The Prolog programming language
- Implementation of Axioms and Theories.
- Negation and Closed World Assumption.
- Sets, Relations and Functions(Chaps. 5,6)
- Basic Set Theory
- Representing sequences and functions
- Equivalence relations and partial orders
- Uncountable sets
- Introduction to Abstract Algebra
- Graphs and trees (Chap. 7)
- Definitions and properties
- Graph algorithms
- Trees
- Counting Principles (supplementary handout)
- Advanced topics (if time allow)
Exams, Assignments and Grading
There will be approximately one homework assignment per week.
There will be ~3 in-class exams and a final. The
final exam will be cumulative (the scheduled time for the final
is December 15th at noon in the regular classroom).
The grade distribution
will be roughly as follows: exams 40%, final 20%,
and homeworks 40%.
All material handed in must be in hard copy, and be well
organized and legible. Unreadable material will not be graded.
Consultation of outside material for
completion of assignments must be pre-approved.
Late assignments will not be accepted.
Attendance
Regular attendence is expected. Students are responsible for all
material, in all forms, presented during scheduled class times.
Final Note: The contents of the this syllabus may be modified
according to the progress of the course