2025/26 Undergraduate Module Catalogue

COMP2870 Theoretical Foundations of Computer Science II

40 Credits Class Size: 350

Module manager: Professor Kristina Vušković
Email: K.Vuskovic@leeds.ac.uk

Taught: Semesters 1 & 2 (Sep to Jun) View Timetable

Year running 2025/26

Pre-requisites

COMP1850 Programming
COMP1860 Building our Digital World: Computer Systems & Architecture
COMP1870 Theoretical Foundations of Computer Science I

Co-requisites

COMP2850 Software Engineering
COMP2860 Beyond the Core: Advanced Hardware, Operating Systems and Pa

This module is not approved as a discovery module

Module summary

Computer Science, at its foundation, is a mathematical and engineering discipline. This module builds on the foundation of the mathematical and theoretical concepts in Computer Science to develop the ideas further into more complex application domains. This module equips students with a set of core knowledge and skills enabling students to view real world problems as mathematical problems and supports them to apply rigorous mathematical approaches to solve them.

Objectives

To develop an appreciation and familiarity of mathematical concepts and their application in computer science in addition to equipping students with the appropriate problem-solving techniques and transferable skills to tackle real world problems.

Learning outcomes

On successful completion of this module a student will have demonstrated the ability to:

1. select and use appropriate proof techniques to prove the correctness of mathematical statements and interpret the consequence in the context of Computer Science. (C1, M1)
2. communicate effectively complex topics at the foundation of Computer Science to technical and non-technical audiences, selecting appropriate methods of communication. (C17, M17)
3. select and apply appropriate computational and analytical techniques to model and solve unseen complex real-world problems, discussing any limitation. (C3, M3)
4. select, interpret and critically evaluate sources of information to solve complex real-world problems. (C4, M4)
5. identify and analyse ethical concerns when applying techniques to model real world problems and make reasoned decisions informed by ethical frameworks and codes of conduct. (C8, M8)
6. effectively use appropriate computing machinery and technologies to investigate complex real-world problems, identifying limitation where they occur. (C12, M12, C13, M13)
7. reflect on their level of mastery of subject knowledge and skills and plan for personal development. (C18, M18)

Skills Learning Outcomes

a. Technical
b. Communication
c. Teamwork
d. Time management
e. Problem solving
f. Active learning
g. Reflection
h. Critical thinking
i. Academic writing
j. Ethics

Syllabus

- Data structures
- Balanced trees, Disctionaries
- Algorithms
- Sorting algorithms
- String algorithms
- Complexity
- Little-o and Little-Omega notations
- Analysis – best, average and worst case
- Empirical and relative measurements
- Complexity classes
- Tractability and intractability (P, NP, NP-complete)
- Reductions
- Algorithm design paradigms
- Decrease-and-conquer
- Divide-and-conquer
- Greedy
- Transform-and-conquer
- Dynamic programming
- Space vs time trade offs
- Approximation
- Heuristics
- Branch-and-bound
- Formal language & Finite automata
- Model of computation
- Language classes
- Chomsky hierarchy
- Decidability
- Computability
- Probability
- Expectation
- Variance
- Law of large numbers
- Central limit theorem
- Application in Computer Science
- Statistics
- Basic definitions and concepts
- Univariate data
- Data transformation
- Linear algebra
- Solving systems of equations
- Eigenvectors and eigenvalues
- Application in Computer Science
- Calculus
- Multivariate calculus
- Ordinary differential equations
- Applications in Computer Science

Methods of assessment
The assessment details for this module will be provided at the start of the academic year

Teaching Methods

Delivery type Number Length hours Student hours
Lecture 43 2 86
Practical 2 2 4
Practical 11 1 11
Seminar 33 1 33
Private study hours 266
Total Contact hours 134
Total hours (100hr per 10 credits) 400

Opportunities for Formative Feedback

Students will have an opportunity for continuous feedback on all components of the portfolio via tutorials, personal tutorials and via additional support activities. Students will have regular portfolio checkpoints to ensure students are progressing towards the assessment objectives.

Reading List

The reading list is available from the Library website

Last updated: 30/04/2025

Errors, omissions, failed links etc should be notified to the Catalogue Team