BSc Mathematics and Computer Science

Dominic Breit

This programme is available in Edinburgh.

Programme Director: Dominic Breit

Programme Code: F1G1-MCS

For further information about course choices consult:

An optional course may not run if there is insufficient demand for it; some choices of courses may not be available to students in some years because of timetabling constraints.


Year 2

Semester 1 Timetable
Semester 2 Timetable

Semester 1 (Mandatory)Semester 2 (Mandatory)
F28SG Introduction to Data Structures & Algorithms F18CE Multivariable Calculus and Real Analysis B
F18CD Multivariable Calculus and Real Analysis AF18NA Numerical Analysis A
F18CF Linear AlgebraF28HS Hardware-Software Interface
F28PL Programming LanguagesF28SD Software Design

Year 3

Semester 1 Timetable
Semester 2 Timetable

Honours degree students must study 8 mandatory courses.
Ordinary degree students must study 8 mandatory courses, or transfer to the Mathematics with Computer Science degree to gain more flexibility . The choice of elective courses can be found under useful links on the right hand side.

Semester 1 (Mandatory)Semester 2 (Mandatory)
F19PB Pure Mathematics B
F19PL Abstract AlgebraF19NB Numerical Analysis B
F29AI Artificial Intelligence & Intelligent AgentsF29FB Foundations 2
F29FA Foundations 1F29OC Operating Systems & Concurrency

Year 4

  • For an overview of what is in the 4th year courses, click on the Brief Descriptions PDF.
  • Some options run subject to demand.

Semester 1 Timetable
Semester 2 Timetable

Choose two F1 courses and one F2 course in Semester 1.

Choose two courses in Semester 2.

Semester 1 (Mandatory)Semester 2 (Mandatory)
F20PB Project: Design & Implementation
F20PC Project: Testing & Presentation
 Semester 1 ( Optional choose 3)Semester 2 ( Optional choose 2)
F10AC Applied Mathematics CF10AN Mathematical Biology B
F10AM Mathematical Biology AF10MP PDEs
F10MF Functional AnalysisF10ND Numerical Analysis D
F10MM OptimisationF10PD Pure Mathematics D
F10NC Numerical Analysis CF10PG Geometry
F10PC Pure Mathematics C
F20BC Biologically Inspired Computation
F20RS Rigorous Methods for Software Engineering

Some course choice combinations may not be available to students in because of timetabling constraints.