Bachelor of Science (BSc)

BSc Actuarial Science and Mathematics

  • Duration: 3 years
  • Year of entry: 2025
  • UCAS course code: NG31 / Institution code: M20
  • Key features:
  • Scholarships available
  • Accredited course

Full entry requirementsHow to apply

Fees and funding

Fees

Tuition fees for home students commencing their studies in September 2025 will be £9,535 per annum (subject to Parliamentary approval). Tuition fees for international students will be £34,500 per annum. For general information please see the undergraduate finance pages.

Policy on additional costs

All students should normally be able to complete their programme of study without incurring additional study costs over and above the tuition fee for that programme. Any unavoidable additional compulsory costs totalling more than 1% of the annual home undergraduate fee per annum, regardless of whether the programme in question is undergraduate or postgraduate taught, will be made clear to you at the point of application. Further information can be found in the University's Policy on additional costs incurred by students on undergraduate and postgraduate taught programmes (PDF document, 91KB).

Scholarships/sponsorships

The University of Manchester is committed to attracting and supporting the very best students. We have a focus on nurturing talent and ability and we want to make sure that you have the opportunity to study here, regardless of your financial circumstances.

For information about scholarships and bursaries please visit our undergraduate student finance pages and our Department funding pages .

Course unit details:
Giving Meaning to Programs

Course unit fact file
Unit code COMP31311
Credit rating 10
Unit level Level 3
Teaching period(s) Semester 1
Available as a free choice unit? Yes

Overview

Programming languages provide abstractions such as `functions’ which are supposed to allow us to reason about the code at a high level---without running it in our heads. However, these abstractions don’t necessarily behave in the way their names suggest.

In this unit we show that a mathematical theory of program meanings can be developed which encompasses the counter-intuitive behaviour of computations, but preserves our ability to reason abstractly. The machinery required is significant, and delicate at times, and the unit will introduce the fundamental technical tools which help us cope with these complications.

Pre/co-requisites

Unit title Unit code Requirement type Description
Foundations of Pure Mathematics B MATH10111 Pre-Requisite Compulsory
Mathematical Techniques for Computer Science COMP11120 Pre-Requisite Compulsory
Mathematical Foundations & Analysis MATH11121 Pre-Requisite Compulsory
COMP31311 pre-requisites are MATH11121 or COMP11120

COMP11120 or MATH10111
 

Aims

The unit is based on the idea that programs can be assigned a formal meaning. This allows one to reason about them rigorously in an abstract manner. Standard technical tools used in this area are also introduced.

Learning outcomes

On the successful completion of the course, students will be able to:

  • Describe and analyse the behaviour of terms in the various models of computation studied
  • Compute the denotations of programs and types
  • Prove selected results about programs using structural induction
  • Apply fundamental theoretical results about programming languages and particular techniques to reason about programs
  • Prove equivalence of programs in a suitable programming language making use of appropriate techniques and models
     

Syllabus

  • Untyped lambda calculus
  • Simply typed lambda calculus
  • Proof method: logical relations
  • Observational equivalence of programs
  • The function model of the simply typed lambda calculus
  • PCF — the core of modern functional languages
  • Denotational semantics of PCF
  • Taster of advanced topics (perhaps polymorphism or concurrency)

Teaching and learning methods

The unit is based on detailed lecture notes including numerous exercises. They go beyond the material we assess by providing rigorous arguments for all the results given, as well as the relevant mathematical background. The notes are supported by videos that explain key concepts and ideas.

The approach to learning is blended: Key ideas are explored by the learners via introductory activities in the workshops, with support from unit staff, and plenary discussions take place to confirm the learners’ understanding and to correct any misconceptions. This prepares the students for the directed reading, supported by short videos, for the week. Students are asked to carry out formative exercises and they receive feedback via solutions that are released the following week.

There are coursework exercises in the form of take home tests which assess all ILOs, but only cover the first two languages taught. Further exercises are made available to prepare students for the questions they can expect for the exam.

 

Employability skills

Analytical skills
Innovation/creativity
Problem solving

Assessment methods

Method Weight
Written exam 80%
Practical skills assessment 20%

Feedback methods

Feedback is provided in a number of ways, via the self-assessment quizzes, via solutions provided for unassessed exercises, via the weekly study sessions where students can query their understanding, and via feedback provided on the two pieces of coursework.

Study hours

Scheduled activity hours
Practical classes & workshops 22
Independent study hours
Independent study 78

Teaching staff

Staff member Role
Andrea Schalk Unit coordinator

Return to course details