EE Department Intranet -
Close window CTRL+W

ELEC50006 Discrete Mathematics

Lecturer(s): Dr Dan Goodman


Computer engineers need to bridge the analogue/digital divide, and must be able to apply mathematical techniques from both discrete and continuous maths. This module will introduce you to aspects of discrete mathematics and abstract algorithms. It is not intended to cover all of computer science theory, but will provide you with the necessary theoretical background to allow you to work closely with computer scientists and apply applied and theoretical methods from computer science.

Learning Outcomes

Upon completion of this module, you will be able to:
1. Apply graph algorithms to efficiently explore data-structures
2. Prove algorithms are correct using inductive logic
3. Describe computability in terms of turing machines
4. Use complexity notation to analyse running time and storage requirements of a computer program.
5. Use the divide and conquer strategy for designing algorithms, and analyse their efficiency in terms of complexity notation using the Master Theorem.


- Big-O and complexity classes
- Graph algorithms
- Inductive proofs
- Dynamic programming
- Sets and numbers
- Computability
Exam Duration: N/A
Coursework contribution: 0%

Term: Autumn

Closed or Open Book (end of year exam): N/A

Coursework Requirement:
         Laboratory Experiment
         Non-assessed problem sheets

Oral Exam Required (as final assessment): no

Prerequisite module(s): None required

Course Homepage: unavailable

Book List: