Dr. Mark Lawford
Office: ITB 160; E-mail: email@example.com
Tentative Office Hours: Friday 14:30-16:30
Grad: Vera Pantelic (firstname.lastname@example.org)
Undergrad: Emery Finkelstein (email@example.com)
The role of logic in software engineering is much like the role of calculus in other fields. Logical expressions can be used to describe designs and logical analysis used to analyse design documents. This course teaches logic in much the same way that early engineering calculus courses teach calculus. Rather than exploring the fundamental assumptions and methods of logic, this course teaches how logic can be used by the software developer. The course provides basic knowledge of the terminology and notation of the field and stresses applications. Issues that would concern mathematicians and logicians get relatively little time although students will know enough about those issues that they will be able to understand discussions where they are mentioned.
The student will learn to use mathematical logic to describe properties of program states and to verify program properties. Students will be introduces to an automated theorem prover system.
Two marking schemes are provided. In order to have your assignments count in your final mark (Scheme A), you must pass (obtain > 50%) on the combination of your attendance, midterm, & final (Scheme B). Provided you pass by Scheme B, your final mark will be the max(Scheme A, Scheme B).
NOTE: In order to pass the course you must pass the combination of the midterm and final. Also, a student may miss 4 lectures without an attendance penalty. Additional missed classes incur a -% penalty.
“The Faculty of Engineering is concerned with ensuring an environment that is free of all adverse discrimination. If there is a problem that cannot be resolved by discussion among the persons concerned individuals are reminded that they should contact there Chair, the Sexual Harassment Office or the Human Rights Consultant, as soon as possible.”
“Academic dishonesty consists of misrepresentation by deception or by other fraudulent
means and can result in serious consequences, e.g. the grade of zero on an assignment, loss of
credit with a notation on the transcript (notation reads: ‘Grade of F assigned for academic
dishonesty’), and/or suspension or expulsion from the university. It is your responsibility to
understand what constitutes academic dishonesty. For information on the various kinds of
academic dishonesty please refer to the Academic Integrity Policy, specifically Appendix 3, located
The following illustrates only three forms of academic dishonesty:
Calculators are not needed for this course and their use will not be permitted during tests.
At the discretion of the instructor, a student will receive 1 to 2 “bonus marks” on their latest assignment for being the first person to point out a technical error in the lecture slides or assignment handout.