Learning Outcomes:
On completion of this module students should be able to:
1. apply the rules of logic;
2. understand the basis of propositional logic and predicate logic;
3. carry out transformational proofs;
4. carry out deductive proofs, using conditional proof and indirect proof techniques;
5. understand the basis of mathematical induction;
6. carry out proofs using mathematical induction;
7. understand the basis and theory of finite state automata; and
8. develop simple finite state models.