Course taken in University of Waterloo 2A SE212 - Introduction SE212 - Propositional Logic SE212 - Predicate Logic SE212 - Theories, Equality, Arithmetic, Induction SE212 - Formal Specification in Z SE212 - Program Correctness