This module presents important concepts and techniques for problem–solving. The student will learn to think abstractly about a given problem, use logic/mathematical notations to represent them, and then apply the learned technique to arrive at a solution.
PROBLEM SOLVING
Statements, goals and rules. Abstraction, problem spaces, subproblems and subgoals, working backwards. Notations. Isomorphic problems, similar problems, specialisation, mathematical induction. Recursion. Designing algorithms.
PROPOSITIONAL CALCULUS
Convert statements from English to propositional calculus, reason with statements and arguments in propositional calculus, proof methods, practical applications.
PREDICATE CALCULUS
Convert statements from English to predicate calculus, reason with statements and arguments in predicate calculus, practical applications.
CORRECTNESS PROOFS FOR IMPERATIVE PROGRAMMMING LANGUAGES
Correctness proofs for sequential, conditional and iterative statements.
Module Content & Assessment | |
---|---|
Assessment Breakdown | % |
Other Assessment(s) | 40 |
Formal Examination | 60 |