CS 245: Logic and Computation (Fall 2021)

David R. Cheriton School of Computer Science

Course Outline

Course Outline


There are officially eight lecture sections. Since we are online, we will not make any distinction among the sections. All instructors will make posts and videos, answer questions, etc., without checking sections.

If you wish to register for the course, or to formally change sections, either use Quest or contact a computer science advisor (not a mathematics advisor). The instructors cannot help with registration issues. To contact your instructor about other matters, see below.


Tutorials will be held through our course group on Microsoft Teams. Details on how to access the tutorials will be shared with you on Piazza and LEARN.

Optional Live Sessions With An Instructor

Weekly optional live sessions with an instructor will be held on Zoom. Details on how to access the sessions will be posted on LEARN. The sessions will run from 2:00 p.m. to 3:00 p.m., on Thursdays (except October 14). The sessions will be recorded. Links to the recordings, plus any notes presented during the session, will be posted on LEARN after each session has concluded.

Office Hours

For any questions concerning the course material, please connect with us during our scheduled office hours. Times listed below are in Waterloo (Eastern) Time. Office hours will be organized by instructors and instructional apprentices using Microsoft Teams; refer to Piazza for instructions on how to connect. If the below do not suit you, then please contact an instructor directly to schedule an appointment.

name time
Armin Jamshidpey
Mondays, 9:00 – 11:00
Lila Kari
Tuesdays, 14:00 – 15:00
Collin Roberts
Tuesdays, 15:00 – 17:00, or by appointment.
Yizhou Zhang
Mondays, 14:00 – 15:00
Joe Mondays and Tuesdays, 17:00 – 18:00
Pablo Wednesdays, 9:00 – 11:00


Contact the course coordinator regarding issues with the course; including the missing of course deliverables due to illness, regradings of course deliverables, and questions about LEARN, Crowdmark, Piazza, or Teams: ddvorski@uwaterloo.ca. Do not submit requests for changes of section to the coordinator, nor the instructor — if you are not able to make the request yourself through Quest, please contact a computer science advisor.

Grading Scheme

Practice Quizzes 5%
Marked Quizzes 10%
Crowdmark Assignments 35%
Mid-Term Assessment 20%
Final Assessment 30%



All course material will be posted on the LEARN site. The instructors' notes for the course are available electronically as PDF files. These are copies of the lecture slides. Links to videos accompanying the slides are also provided. Assignments, model solutions and Tutorial notes are also provided. You will answer the quizzes on LEARN.

The course textbook is Mathematical Logic for Computer Science, 2nd Edition, by Lu Zhongwan. Students may access an electronic version of the textbook through the library: https://ocul-wtl.primo.exlibrisgroup.com/permalink/01OCUL_WTL/1jjglgg/alma9943541323505162.

Please note that this book does not cover all the material presented in the course, and is meant mainly for definitions, notation, and the sections on formal deduction. There are many books on mathematical logic available. All these may be relevant to certain parts of the course and, for those, they could be useful background reading. However, there is no book that covers the whole course. (Other sources will likely differ in their precise notation. For submissions to the course, always use the notation from our notes and/or Lu.

Mental Health

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support.

Please refer to the Course Outline for a list of available resources.

Note for students with disabilities

UW's AccessAbility Services office (AAS), located in Needles Hall, Room 1401, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the AAS at the beginning of each academic term.

Academic Integrity and Students with Disabilities

Academic Integrity and Students with Disabilities

Academic Policies

This course adheres to the UW Senate's statement of academic integrity, specifically:

Academic Integrity

In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. All members of the UW community are expected to hold to the highest standard of academic integrity in their studies, teaching, and research.

The Office of Academic Integrity's website contains detailed information on UW policy for students and faculty. This site explains why academic integrity is important and how students can avoid academic misconduct. It also identifies resources available on campus for students and faculty to help achieve academic integrity in—and out of—the classroom.


A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70-Student Petitions and Grievances, Section 4.


A student is expected to know what constitutes academic integrity, to avoid committing academic offenses, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offense, or who needs help in learning how to avoid offenses (e.g., plagiarism, cheating) or about rules for group work/collaboration should seek guidance from the course professor, academic advisor, or the Undergraduate Associate Dean. When misconduct has been found to have occurred, disciplinary penalties will be imposed under Policy 71—Student Discipline. For information on categories of offenses and types of penalties, students should refer to Policy 71—Student Discipline.

Avoiding Academic Offenses

For information on commonly misunderstood academic offenses and how to avoid them, students should refer to the Faculty of Mathematics Cheating and Student Academic Discipline Guidelines.


A student may appeal the finding and/or penalty in a decision made under Policy 70—Student Petitions and Grievances (other than regarding a petition) or Policy 71—Student Discipline if grounds for an appeal can be established. Read Policy 72—Student Appeals.