Department of Mathematics and Statistics
Faculty of Arts
Course Outline (Winter 2000)
AS/SC/AK/ MATH 1090 3.0   Introduction to Logic for Computer Science
Professor George Tourlakis Classes: TR 10:00-11:30 SC 302
[See also Lecture Schedule]
Course Description: (See also the departmental course outline

The syntax and semantics of propositional and predicate logic. Some basic and important  "metatheorems" that employ induction on numbers, terms, formulas, and proofs will be also considered. The emphasis will be, however, on the "theory" (i.e., becoming proficient in proof-writing) rather than "metatheory" (i.e., talking about the theory).

We will consider topics ("applications") from program specification and verification, set theory and induction (using the formal logical language of the first part of the course), as time permits

By taking this course, students will master the syntax and manipulations of propositional and predicate logic, as well their informal semantics. The proper understanding of propositional logic is fundamental to the most basic levels of computer programming, while the ability to correctly use variables, scope and quantifiers is crucial in the use of loops, subroutines, and modules, and in software design. Logic is used in many diverse areas of computer science including digital design, program verification, databases, artificial intelligence, algorithm analysis, and software specification. We will not follow a classical treatment of logic. Instead we will use an "equational" treatment. This equational approach will also be the basis for the topics in discrete mathematics treated in MATH 2090. 
      See the first paragraph in the description of MATH 2090 (in the MATH/STATS minicalendar) for further comment about the importance of formal logic for good programming. 

Prerequisite: One OAC in mathematics or equivalent, or AK/MATH 1710 6.0.
Exclusions: AS/SC/MATH 1120 3.0, AS/SC/AK/MATH 1190 3.0. This course is not open to any student who has taken or is taking any 3000- or higher-level MATH course.

Course work and evaluation: There will be several homework assignments worth 40% of the final grade.

The homework will be each individual's own work. While consultations with the instructor, tutor, and amongst students, are part of the learning process and are encouraged, at the end of all this consultation each student will produce an individual report rather than a copy (full or partial) of somebody else's report.

There will also be one mid-term (in-class) test worth 15% <== Date/Time: February 22, 2000; 10:00-11:30am.
and a final exam (in-class) worth 45%.

Text: David Gries and F.B. Schneider, A logical approach to Discrete Math. Springer, latest edition.

Syllabus: From Gries and Schneider, Chapters 2, 3, 4, (possibly 6.1 and/or 6.2), 8 and 9. Chapters 8 and 9 will be supplemented and amended by my technical report "A Basic, etc. ... ". Chapters 3 and 4 will be supplemented and amended by class notes and also by material that I will put on the course web-page.

Coordinator: Fall: S. Watson  Winter: G. Tourlakis