Logic and Problem Solving
Module code: CO1001
Logic provides foundations, methods, and skills to Computer Science. To give only a few examples:
- foundations: the very hardware of computers is based on Propositional Logic
- methods: logic helps in understanding (and specifying and verifying) programs
- skills: understanding crucial programming concepts such as the scope of an identifier or recursion or analysing a given problem in logical terms
In this module you will study the two most important logics, Propositional Logic and Predicate Logic, and various examples of their importance. We will then examine how a fragment of Predicate Logic gives rise to a programming language (PROLOG) in which we will implement logical solutions to a range of illustrative problems.