MATH 1090 3.00 FW Introduction to Logic for Computer Science Calendar copy: The syntax and semantics of propositional and predicate logic. Applications to program specification and verification. Optional topics include set theory and induction using the formal logical language of the first part of the course. Prerequisite: SC/MATH 1190 3.00 or SC/MATH 1019 3.00. Note: This course may not be taken for degree credit by any student who has passed SC/MATH 4290 3.00. Learning Outcomes: - Correctly use propositional semantics, including truth tables, to establish that an arbitrary propositional formula is a tautology, or a tautological consequence of certain formulas, or a contradiction. - Correctly use propositional & predicate logic semantics toward demonstrating that certain statements (fomulas) are not theorems. - Apply axioms and rules of inference in formulating proofs- in both propositional and predicate logic - Identify and apply different styles of mathematical proofs (Hilbert, Equational, Resolution) - Differentiate between truth table techniques and proof techniques, and be able to deduce one from the other (soundness and completeness) - Apply theorems to add and remove universal or existential quantifiers in proofs - Differentiate and apply a variety of Leibniz-like rules of inference