Course Content
Year 1
Computer Science
- Theory 2: Formal Languages and Automata
- Software 1: Foundations of Programming for Computer Science
- Software 2: Object Oriented Data Structures and Algorithms
- Data 1: Introduction to Data Science
Mathematics
- Calculus
- Algebra
Year 2
Computer Science
- Theory 3: Computational Complexity
- Software 3: Functional Programming with Applications
- Data 2: Data Analysis and Management
- Intelligent Systems 1: Search and Representation
Option modules
- Systems and Devices 1: Introduction to Computing Systems
- Intelligent Systems 2: Machine Learning and Optimisation
Mathematics
- Pure Mathematics
- Linear Algebra
- Vector Calculus
Year 3
- Placement
Year 4
Project
- Computer Science individual project. or
- Mathematics individual project
- Computer Science
Option modules
- Introduction to Cryptography
- Intelligent Systems 3: Probabilistic and Deep Learning
- Real-time Systems
- Model-Driven Engineering (available as an elective)
- Constraint Programming (available as an elective)
- Information and Network Security
- High-integrity Systems Engineering
- Quantum Computation
- Assurance and Proof
- Evolutionary and Adaptive Computing
- Computer Vision and Graphics
- Computing by Graph Transformation
Mathematics
- Algebraic Number Theory
- Cryptography
- Differential Geometry
- Dynamical Systems
- Galois Theory
- Groups and Actions
- Number Theory
- Numerical Analysis
- Topology