Bachelor of Science (BSc)
BSc Actuarial Science and Mathematics
- Typical A-level offer: A*AA including specific subjects
- Typical contextual A-level offer: A*AB including specific subjects
- Refugee/care-experienced offer: A*BB including specific subjects
- Typical International Baccalaureate offer: 37 points overall with 7,6,6 at HL, including specific requirements
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
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 |
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 |