MSci
Mathematics and Computer Science
MSci
Mathematics and Computer Science

Key Information


Duration

4-5 years

Typical Offer

See More

Campus

Brayford Pool

UCAS Code

G104

Duration

4-5 years

Typical Offer

See More

Campus

Brayford Pool

UCAS Code

G104

Academic Years

Course Overview

With digital technologies driving advances in many aspects of the modern world, there is growing demand for graduates with combined skills in mathematics and computer science across a wide range of sectors.

This Integrated Master's programme provides students with opportunities to advance their understanding in both fields, and emphasises the bridges between theory and practice.

Students are encouraged to develop a broad knowledge and skills base that is suitable for computer and IT-related posts across a range of sectors, as well as research and analytical roles.

Students are able to personalise the degree by choosing the modules that best align with their career aspirations or areas of interest. Individual and group projects during the course are designed to develop transferable skills.

This integrated Master's degree (MSci) offers students the opportunity to continue their study for an additional year at an advanced level, examining topics in greater depth and undertaking substantial, additional project work.

Course Overview

With digital technologies driving advances in many aspects of the modern world, there is growing demand for graduates with combined skills in mathematics and computer science across a wide range of sectors.

This Integrated Master's programme provides students with opportunities to advance their understanding in both fields, and emphasises the bridges between theory and practice.

Students are encouraged to develop a broad knowledge and skills base that is suitable for computer and IT-related posts across a range of sectors, as well as research and analytical roles.

Students are able to personalise the degree by choosing the modules that best align with their career aspirations or areas of interest. Individual and group projects during the course are designed to develop transferable skills.

This integrated Master's degree (MSci) offers students the opportunity to continue their study for an additional year at an advanced level, examining topics in greater depth and undertaking substantial, additional project work.

Why Choose Lincoln

Subject ranked in the top 10 in the UK for student satisfaction*

Institute of Mathematics and its Applications (IMA) accreditation

Informed by cutting-edge research

Guest speakers from around the world

Additional problem-solving tutorials

Placement Year available

*Complete University Guide 2024 (out of 69 ranking institutions).

A student working on code at their computer

How You Study

This joint honours degree aims to offer a broad education in applied and pure mathematics, coupled with the opportunity to develop the analytical and problem-solving skills associated with computer science. The programme provides students with opportunities to advance their understanding in both fields and emphasises the bridges between theory and practice.

Students have the chance to learn from, and work alongside, our team of academics. They can support and encourage them to apply imagination, creativity, and rigour, to the solution of real-world problems.

In the first year students have the chance to benefit from an additional three hours per week of problem-solving tutorials. During the first year of the programme, the School of Mathematics and Physics also runs a tutor system, providing one hour weekly tutor sessions in small groups.

The course is taught via lectures, problem-solving classes, computer based-classes and seminars.

How You Study

This joint honours degree aims to offer a broad education in applied and pure mathematics, coupled with the opportunity to develop the analytical and problem-solving skills associated with computer science. The programme provides students with opportunities to advance their understanding in both fields and emphasises the bridges between theory and practice.

Students have the chance to learn from, and work alongside, our team of academics. They can support and encourage them to apply imagination, creativity, and rigour, to the solution of real-world problems.

In the first year students have the chance to benefit from an additional three hours per week of problem-solving tutorials. During the first year of the programme, the School of Mathematics and Physics also runs a tutor system, providing one hour weekly tutor sessions in small groups.

The course is taught via lectures, problem-solving classes, computer based-classes and seminars.

Modules


† Some courses may offer optional modules. The availability of optional modules may vary from year to year and will be subject to minimum student numbers being achieved. This means that the availability of specific optional modules cannot be guaranteed. Optional module selection may also be affected by staff availability.

Advanced Artificial Intelligence 2027-28CMP9794MLevel 72027-28This module aims to cover the theoretical fundamentals and practical applications of decision-making, problem-solving and learning abilities in software agents. Search is introduced as a unifying framework for Artificial Intelligence (AI), followed by key topics including blind and informed search algorithms, planning and reasoning, both with certain and uncertain (e.g. probabilistic) knowledge. Practical exercises in AI programming will complement and apply the theoretical knowledge acquired to real-world problems.OptionalAdvanced Programming 2027-28CMP9133MLevel 72027-28This module aims to explore advanced topics using a contemporary object-oriented programming language. The objective is to prepare students for professional-level programming in scientific and commercial computing, and to support programming tasks in other modules of this award. Students can explore a range of programming topics through a series of lectures and practical workshops, and will work on producing an individual programming assignment.OptionalAlgebra 2024-25MTH1001MLevel 42024-25This module begins with refreshing and expanding some of the material from the A-levels Maths, such as the binomial theorem, division of polynomials, polynomial root-finding, and factorisations. Then the Euclidean algorithm is introduced with some of its many applications, both for integers and for polynomials. This naturally leads to a discussion of divisibility and congruences, for integers and for polynomials, with emphasis on similarities and as a step towards abstraction.CoreCalculus 2024-25MTH1002MLevel 42024-25This module focuses on the concepts of the derivative and the Riemann integral, which are indispensable in modern sciences. Two approaches are used: both intuitive-geometric, and mathematically rigorous, based on the definition of continuous limits. Important results are the Mean Value Theorem, leading to the representation of some functions as power series (the Taylor series), and the Fundamental Theorem of Calculus which establishes the relationship between differentiation and integration. Further calculus tools are explored, such as the general properties of the derivative and the Riemann integral, as well as the techniques of integration. In this module, students may deal with many "popular" functions used throughout mathematics.CoreComputer Architectures 2024-25CMP1125MLevel 42024-25This module aims to introduce the fundamentals of computer hardware underpinning the key aspects of Computer Science. This knowledge is not only essential for deeper understanding of the governing processes behind computing but also for realising how hardware interacts with software. By studying Computer Architecture, students can gain greater confidence in their study subject and future benefits when improving their programming skills. The module will study the individual components of a computer system, their function, main characteristics, performance and their mutual interaction.CoreLinear Algebra 2024-25MTH1004MLevel 42024-25This module describes vector spaces and matrices. Matrices are regarded as representations of linear mappings between vector spaces. Eigenvalues and eigenvectors are introduced, which lead to diagonalisation and reduction to other canonical forms. Special types of mappings and matrices (orthogonal, symmetric) are also introduced.CoreObject-Oriented Programming 2024-25CMP1903MLevel 42024-25This module extends the concepts and practice of simple computer programming, with attention paid to the essentials that constitute an object-oriented computer program including layout, structure, and functionality. The module aims to extend students' knowledge of computer programming and introduces them to the object-oriented paradigm and related concepts applied to algorithm and software development. There is also emphasis upon the use of version control and its role in archiving and facilitating software development.CoreProbability and Statistics 2024-25MTH1005MLevel 42024-25This module begins with an introduction of a probability space, which models the possible outcomes of a random experiment. Basic concepts such as statistical independence and conditional probability are introduced, with various practical examples used as illustrations. Random variables are introduced, and certain well-known probability distributions are explored. Further study includes discrete distributions, independence of random variables, mathematical expectation, random vectors, covariance and correlation, conditional distributions and the law of total expectation. The ideas developed for discrete distributions are applied to continuous distributions. Probability theory is a basis of mathematical statistics, which has so many important applications in science, industry, government and commerce. Students will have the opportunity to gain a basic understanding of statistics and its tools. It is important that these tools are used correctly when, for example, the full picture of a problem (population) must be inferred from collected data (random sample).CoreProgramming Fundamentals 2024-25CMP1902MLevel 42024-25This module introduces students to software constructs and the development of simple programs using a high-level programming language. Simple design concepts and standard programming practices are presented, and attention is paid to the fundamentals that constitute a complete computer program including layout, structure, and functionality. Additionally, the fundamental computing data structures allowing the representation of data in computer programs are explored and implemented.CoreApplied Programming Paradigms 2025-26CMP2811MLevel 52025-26This module aims to provide a comprehensive analysis of the general principles and practices of advanced programming with respect to software development. Notions and techniques of advanced programming are emphasised in the context of analysis, design, and implementation of software and algorithms. Great importance is placed upon the Object-Oriented paradigm and related concepts applied to algorithm and software development using the C++ programming language, however students will also be exposed to the principles and underlying theories pertaining to functional programming.CoreArtificial Intelligence 2025-26CMP2020MLevel 52025-26The module aims to provide a modern introduction to the basic concepts of symbolic artificial intelligence, set in the context of intelligent agents. The module covers the basic concepts such as statespace representations and search, heuristic and adversarial search methods, and simple optimization techniques. The module also covers knowledge representation, AI planning, and some simple, nonstatistical, machine learning methods.CoreCoding Theory 2025-26MTH2002MLevel 52025-26Transmission of data may mean sending pictures from the Mars rover, streaming live music or videos, speaking on the phone, answering someone's question “do you love me?”. Problems arise if there are chances of errors creeping in, which may be catastrophic (say, receiving “N” instead of “Y”). Coding theory provides error-correcting codes, which are designed in such a way that errors that occur can be detected and corrected (within certain limits) based on the remaining symbols. The problem is balancing reliability with cost and/or slowing the transmission. Students will have the opportunity to study various types of error-correcting codes, such as linear codes, hamming codes, perfect codes, etc., some of which are algebraic and some correspond to geometrical patterns.CoreDifferential Equations 2025-26MTH2004MLevel 52025-26Calculus techniques already provide solutions of simple first-order differential equations. Solution of second-order differential equations can sometimes be achieved by certain manipulations. Students may learn about existence and geometric interpretations of solutions, even when calculus techniques do not yield solutions in a simple form. This is a part of the existence theory of ordinary differential equations and leads to fundamental techniques of the asymptotic and qualitative study of their solutions, including the important question of stability. Fourier series and Fourier transform are introduced. This module provides an introduction to the classical second-order linear partial differential equations and techniques for their solution. The basic concepts and methods are introduced for typical partial differential equations representing the three classes: parabolic, elliptic, and hyperbolic.CoreGroup Project 2025-26MTH2005MLevel 52025-26This module aims to provide students with the experience of working as part of a team on a project. Students will have the opportunity to produce a set of deliverables relevant to their programme of study. Final deliverables will be negotiated between the group and their supervisor, the module coordinator will be responsible for ensuring that each project covers the learning outcomes of the module. Groups are expected to manage their own processes, and to hold regular meetings both with and without their supervisor. Groups will be allocated by the module coordinator and other members of staff. The process of development of the topic under study and the interaction and management of group members underpins the assessment of skills in the module.CoreIndustrial and Financial Mathematics 2025-26MTH2006MLevel 52025-26Students have the opportunity to learn how mathematics is applied to modern industrial problems, and how the mathematical apparatus finds applications in the financial sector.CoreScalable Database Systems 2025-26CMP2806MLevel 52025-26This module explores the fundamental concepts of designing, implementing, and using database technologies and students are expected to develop a conceptual view of database theory and then transform it into a practical design of a database application. Alternate design principles for implementing databases for different uses, for example in social media or gaming contexts are also considered.CoreUser Experience Design 2025-26CMP2805MLevel 52025-26This module provides students with the opportunity to develop knowledge of the processes and principles of Human-Computer Interaction (HCI) and User Experience Design (UXD) starting with a history and overview of the role HCI in furthering the field of computer science. The module will guide students through notions of usability and accessibility, user-centred design and requirements analysis, prototyping, statistical analysis, and qualitative evaluation using state of the art methods and techniques. The professional, ethical, social, and legal issues in designing and studying interactive technology will be considered throughout.CoreProject 2026-27MTH3009MLevel 62026-27This is a double module in which a student can undertake a project under supervision of a research-active member of staff. The project can be undertaken at an external collaborating establishment. Projects will be offered to students in a wide range of subjects, which will be assigned with account for students' individual preferences and programme of their studies. This module provides students with an opportunity to demonstrate their ability to work independently on an in-depth project with a computer implementation element of mathematically relevant problem. Students will normally be expected to demonstrate their ability to apply practical and analytical skills, innovation and/or creativity, and to be able to synthesise information, ideas and practices to provide a problem solution.CoreAdvanced Topics of Mathematics and Mathematics Seminar 2026-27MTH3001MLevel 62026-27The module will cover several advanced topics of modern mathematics. The choice of the topics will be governed by the current research interests of academic staff and/or visiting scientists. Students will also have the opportunity to participate in mathematics research seminars.OptionalAutonomous Mobile Robotics 2026-27CMP3103MLevel 62026-27The module aims to introduce the main concepts of Autonomous Mobile Robotics, providing an understanding of the range of processing components required to build physically embodied robotic systems, from basic control architectures to spatial navigation in real-world environments. Students will have the opportunity to be introduced to relevant theoretical concepts around robotic sensing and control in the lectures, together with a practical “hands on” approach to robot programming in the workshops.OptionalBig Data 2026-27CMP3749MLevel 62026-27The module introduces the fundamentals of data science and big data analytics, an emergent specialised area of computer science that is concerned with knowledge on ‘Big Data’ mining and visualisation, including state-of-the-art database platforms, development toolkits, and industrial and societal application scenarios. Students can be exposed to core Big Data analytics concepts and models, the current technology landscape, and topical application scenarios using a variety of simulation environments and open datasets.OptionalCyber Security 2026-27CMP3750MLevel 62026-27This module provides an understanding of the challenges in cyber security faced by society and industry. This includes an examination of the impact of threats and develops an understanding of mechanisms to reduce the risk of attack. The module examines a range of cyber threats and attack types and introduces strategies to mitigate these. It also prompts students to consider the legal, social, and ethical implications of cyber security.OptionalFluid Dynamics 2026-27MTH3002MLevel 62026-27This module gives a mathematical foundation of ideal and viscous fluid dynamics and their application to describing various flows in nature and technology. Students are taught methods of analysing and solving equations of fluid dynamics using analytic and most modern computational tools.OptionalGroup Theory 2026-27MTH3003MLevel 62026-27Symmetry, understood in most broad sense as invariants under transformations, permeates all parts of mathematics, as well as natural sciences. Groups are measures of such symmetry and therefore are used throughout mathematics. Abstract group theory studies the intrinsic structure of groups. The course begins with definitions of subgroups, normal subgroups, and group actions in various guises. Group homomorphisms are introduced and the related isomorphism theorems are proved. Sylow p-subgroups are introduced and the three Sylow theorems are proved. Throughout, symmetry groups are used as examples.OptionalImage Processing 2026-27CMP3108MLevel 62026-27Digital image processing techniques are used in a wide variety of application areas such as computer vision, robotics, remote sensing, industrial inspection, medical imaging, etc. It is the study of any algorithms that take image as an input and returns useful information as output. This module aims to provide a broad introduction to the field of image processing, culminating in a practical understanding of how to apply and combine techniques to various image-related applications. Students will have the opportunity to extract useful data from the raw image and interpret the image data — the techniques will be implemented using the mathematical programming language Matlab or OpenCV.OptionalLogic and Computation 2026-27CMP3755MLevel 62026-27This module explores Computation Theory, including logics, definitions and models of computation, proofs about programs, proofs as programs, and limits on what is computable. The module will aim to develop critical-thinking and problem conceptualisation and solving skills, as well as the formal concepts used to structure computational thinking.OptionalMachine Learning 2026-27CMP3751MLevel 62026-27The module introduces the fundamentals of machine learning and principled application of machine learning techniques to extract information and insights from data. The module covers supervised and unsupervised learning methods. The primary aim is to provide students with knowledge and applied skills in machine learning tools and techniques which can be used to solve real-world data science problems.OptionalMathematics Pedagogy 2026-27MTH3004MLevel 62026-27This module is designed to provide students with an insight into the teaching of Mathematics at secondary school level and does this by combining university lectures with an experience of a placement in a secondary school Mathematics department. The module aims to provide students with an opportunity to engage with cutting-edge maths education research and will examine how this research impacts directly on classroom practice. Students will have the opportunity to gain an insight into some of the key ideas in Mathematics pedagogy and how these are implemented in the school Mathematics lessons and will develop an understanding about the barriers to learning Mathematics that many students experience.OptionalMethods of Mathematical Physics 2026-27MTH3006MLevel 62026-27The module aims to equip students with methods to analyse and solve various mathematical equations found in physics and technology.OptionalNumerical Methods 2026-27MTH3007MLevel 62026-27The module aims to equip students with knowledge of various numerical methods for solving applied mathematics problems, their algorithms and implementation in programming languages.OptionalParallel Programming 2026-27CMP3752MLevel 62026-27Parallel Programming is an important modern paradigm in computer science, and a promising direction for keeping up with the expected exponential growth in the discipline. Executing multiple processes at the same time can tremendously increase computational throughput, not only benefiting scientific computations, but also leading to new exciting applications like real-time animated 3D graphics, video processing, and physics simulation. The relevance of parallel computing is especially prominent due to availability of modern, affordable computer hardware utilising multi-core and/or large number of massively parallel units.OptionalTensor Analysis 2026-27MTH3008MLevel 62026-27This module introduces tensors, which are abstract objects describing linear relations between vectors, scalars, and other tensors. The module aims to equip students with the knowledge of tensor manipulation, and introduces their applications in modern science.OptionalMathematics and Computer Science Masters Project 2026-27MTH9015MLevel 72026-27In this quadruple module a student undertakes a substantial project under supervision of a research-active member of staff. Projects will be offered to students in a wide range of subjects, which will be assigned with account for student's individual preferences and programme of their studies. The project can be undertaken at an external collaborating establishment. Students independently conduct a substantial research in modern mathematical/computational science working in a research group of the school, university or an external collaborating establishment.CoreAutonomous Mobile Robotics (M) 2027-28CMP9050MLevel 72027-28This module introduces the main concepts of Autonomous Mobile Robotics, providing an understanding of the range of processing components required to build physically embodied robotic systems, from basic control architectures to spatial navigation in real-world environments. Students are introduced to relevant theoretical concepts around robotic sensing and control in the lectures, together with a practical “hands on” approach to robot programming in the workshops. Working at Master's level, students can research the area in depth and produce critical reports of their findings.OptionalBig Data (M) 2027-28CMP9770MLevel 72027-28The module introduces the fundamentals of data science and big data analytics, an emergent specialised area of computer science that is concerned with knowledge on ‘Big Data’ mining and visualisation, including state-of-the-art database platforms, development toolkits, and industrial and societal application scenarios. Students can explore core Big Data analytics concepts and models, the current technology landscape, and topical application scenarios using a variety of simulation environments and open datasets.OptionalCyber Security (M) 2027-28CMP9771MLevel 72027-28This module provides an understanding of the challenges in cyber security faced by society and industry. This includes an examination of the impact of threats and develops an understanding of mechanisms to reduce the risk of attack. The module examines a range of cyber threats and attack types and introduces strategies to mitigate these. It also prompts students to consider the legal, social, and ethical implications of cyber security. As a Master's level module students are also encouraged to consider current research in the field of cyber security.OptionalFinancial Kinetics 2027-28MTH9001MLevel 72027-28This module brings together the main ideas and methods of the mathematical theory of financial markets. In addition, the methods of practical calculations of volatilities of traded assets from historical data are discussed. The influence of randomness of the interest rate and volatilities on price of options is studied.OptionalFluid Dynamics (M) 2027-28MTH9013MLevel 72027-28This module gives a mathematical foundation of ideal and viscous fluid dynamics and their application to describing various flows in nature and technology. Students are taught methods of analysing and solving equations of fluid dynamics using analytic and most modern computational tools.OptionalImage Processing (M) 2027-28CMP9055MLevel 72027-28This module aims to provide a broad introduction to the field of image processing, culminating in a practical understanding of how to apply and combine techniques to various image-related applications. Students are expected to be able to extract useful information from the raw image and interpret the image data. The techniques will be implemented using the mathematical programming language Matlab or OpenCV.OptionalMachine Learning (M) 2027-28CMP9772MLevel 72027-28The module introduces fundamentals of machine learning and principled application of machine learning techniques to extract information and insights from data. The module covers supervised and unsupervised learning methods. The primary aim is to provide students with knowledge and applied skills in machine learning tools and techniques which can be used to solve real-world data science problems.OptionalMathematics Pedagogy (M) 2027-28MTH9016MLevel 72027-28This module is designed to provide students with an insight into the teaching of Mathematics at secondary school level and does this by combining university lectures with an experience of a placement in a secondary school Mathematics department. The module aims to provide students with an opportunity to engage with cutting-edge maths education research and will examine how this research impacts directly on classroom practice. Students will have the opportunity to gain an insight into some of the key ideas in Mathematics pedagogy and how these are implemented in the school Mathematics lessons and will develop an understanding about the barriers to learning Mathematics that many students experience.OptionalMethods Of Mathematical Physics (M) 2027-28MTH9014MLevel 72027-28The module aims to equip students with methods to analyse and solve various mathematical equations found in physics and technology.OptionalParallel Programming (M) 2027-28CMP9773MLevel 72027-28Parallel Computing is an important modern paradigm in computer science. Executing multiple processes at the same time can tremendously increase the computational throughput, not only benefiting scientific computations, but also leading to new exciting applications like real-time animated 3D graphics, video processing, and physics simulation. The relevance of parallel computing is especially prominent due to availability of modern, affordable computer hardware utilising multi-core and/or large number of massively parallel units.OptionalReading Module in Mathematics 2027-28MTH9006MLevel 72027-28The reading module allows students the opportunity to acquire knowledge of a particular area of mathematics, and develop the skills needed to study mathematics in a more independent manner. The module also provides an opportunity for Master's level students to study certain subjects in mathematics which may not be covered by any regular lecture modules, thus adding to the flexibility of the scheme of studies. Subject areas for proposed reading modules will be announced to students, together with an indicative syllabus. The choice offered will depend on the range of other lecture modules available to MMath students, as well as on the availability of teaching staff with particular areas of mathematical expertise, who could be able to act as moderators. The role of the reading module moderator is to provide students with support for their reading, including the setting of mathematical problems that are to be solved. The moderator also sets the written examination paper.Optional

Modules


† Some courses may offer optional modules. The availability of optional modules may vary from year to year and will be subject to minimum student numbers being achieved. This means that the availability of specific optional modules cannot be guaranteed. Optional module selection may also be affected by staff availability.

Advanced Artificial Intelligence 2028-29CMP9794MLevel 72028-29This module aims to cover the theoretical fundamentals and practical applications of decision-making, problem-solving and learning abilities in software agents. Search is introduced as a unifying framework for Artificial Intelligence (AI), followed by key topics including blind and informed search algorithms, planning and reasoning, both with certain and uncertain (e.g. probabilistic) knowledge. Practical exercises in AI programming will complement and apply the theoretical knowledge acquired to real-world problems.OptionalAdvanced Programming 2028-29CMP9133MLevel 72028-29This module aims to explore advanced topics using a contemporary object-oriented programming language. The objective is to prepare students for professional-level programming in scientific and commercial computing, and to support programming tasks in other modules of this award. Students can explore a range of programming topics through a series of lectures and practical workshops, and will work on producing an individual programming assignment.OptionalAlgebra 2025-26MTH1001MLevel 42025-26This module begins with refreshing and expanding some of the material from the A-levels Maths, such as the binomial theorem, division of polynomials, polynomial root-finding, and factorisations. Then the Euclidean algorithm is introduced with some of its many applications, both for integers and for polynomials. This naturally leads to a discussion of divisibility and congruences, for integers and for polynomials, with emphasis on similarities and as a step towards abstraction.CoreCalculus 2025-26MTH1002MLevel 42025-26This module focuses on the concepts of the derivative and the Riemann integral, which are indispensable in modern sciences. Two approaches are used: both intuitive-geometric, and mathematically rigorous, based on the definition of continuous limits. Important results are the Mean Value Theorem, leading to the representation of some functions as power series (the Taylor series), and the Fundamental Theorem of Calculus which establishes the relationship between differentiation and integration. Further calculus tools are explored, such as the general properties of the derivative and the Riemann integral, as well as the techniques of integration. In this module, students may deal with many "popular" functions used throughout mathematics.CoreComputer Architectures 2025-26CMP1125MLevel 42025-26This module aims to introduce the fundamentals of computer hardware underpinning the key aspects of Computer Science. This knowledge is not only essential for deeper understanding of the governing processes behind computing but also for realising how hardware interacts with software. By studying Computer Architecture, students can gain greater confidence in their study subject and future benefits when improving their programming skills. The module will study the individual components of a computer system, their function, main characteristics, performance and their mutual interaction.CoreLinear Algebra 2025-26MTH1004MLevel 42025-26This module describes vector spaces and matrices. Matrices are regarded as representations of linear mappings between vector spaces. Eigenvalues and eigenvectors are introduced, which lead to diagonalisation and reduction to other canonical forms. Special types of mappings and matrices (orthogonal, symmetric) are also introduced.CoreObject-Oriented Programming 2025-26CMP1903MLevel 42025-26This module extends the concepts and practice of simple computer programming, with attention paid to the essentials that constitute an object-oriented computer program including layout, structure, and functionality. The module aims to extend students' knowledge of computer programming and introduces them to the object-oriented paradigm and related concepts applied to algorithm and software development. There is also emphasis upon the use of version control and its role in archiving and facilitating software development.CoreProbability and Statistics 2025-26MTH1005MLevel 42025-26This module begins with an introduction of a probability space, which models the possible outcomes of a random experiment. Basic concepts such as statistical independence and conditional probability are introduced, with various practical examples used as illustrations. Random variables are introduced, and certain well-known probability distributions are explored. Further study includes discrete distributions, independence of random variables, mathematical expectation, random vectors, covariance and correlation, conditional distributions and the law of total expectation. The ideas developed for discrete distributions are applied to continuous distributions. Probability theory is a basis of mathematical statistics, which has so many important applications in science, industry, government and commerce. Students will have the opportunity to gain a basic understanding of statistics and its tools. It is important that these tools are used correctly when, for example, the full picture of a problem (population) must be inferred from collected data (random sample).CoreProgramming Fundamentals 2025-26CMP1902MLevel 42025-26This module introduces students to software constructs and the development of simple programs using a high-level programming language. Simple design concepts and standard programming practices are presented, and attention is paid to the fundamentals that constitute a complete computer program including layout, structure, and functionality. Additionally, the fundamental computing data structures allowing the representation of data in computer programs are explored and implemented.CoreApplied Programming Paradigms 2026-27CMP2811MLevel 52026-27This module aims to provide a comprehensive analysis of the general principles and practices of advanced programming with respect to software development. Notions and techniques of advanced programming are emphasised in the context of analysis, design, and implementation of software and algorithms. Great importance is placed upon the Object-Oriented paradigm and related concepts applied to algorithm and software development using the C++ programming language, however students will also be exposed to the principles and underlying theories pertaining to functional programming.CoreArtificial Intelligence 2026-27CMP2020MLevel 52026-27The module aims to provide a modern introduction to the basic concepts of symbolic artificial intelligence, set in the context of intelligent agents. The module covers the basic concepts such as statespace representations and search, heuristic and adversarial search methods, and simple optimization techniques. The module also covers knowledge representation, AI planning, and some simple, nonstatistical, machine learning methods.CoreCoding Theory 2026-27MTH2002MLevel 52026-27Transmission of data may mean sending pictures from the Mars rover, streaming live music or videos, speaking on the phone, answering someone's question “do you love me?”. Problems arise if there are chances of errors creeping in, which may be catastrophic (say, receiving “N” instead of “Y”). Coding theory provides error-correcting codes, which are designed in such a way that errors that occur can be detected and corrected (within certain limits) based on the remaining symbols. The problem is balancing reliability with cost and/or slowing the transmission. Students will have the opportunity to study various types of error-correcting codes, such as linear codes, hamming codes, perfect codes, etc., some of which are algebraic and some correspond to geometrical patterns.CoreDifferential Equations 2026-27MTH2004MLevel 52026-27Calculus techniques already provide solutions of simple first-order differential equations. Solution of second-order differential equations can sometimes be achieved by certain manipulations. Students may learn about existence and geometric interpretations of solutions, even when calculus techniques do not yield solutions in a simple form. This is a part of the existence theory of ordinary differential equations and leads to fundamental techniques of the asymptotic and qualitative study of their solutions, including the important question of stability. Fourier series and Fourier transform are introduced. This module provides an introduction to the classical second-order linear partial differential equations and techniques for their solution. The basic concepts and methods are introduced for typical partial differential equations representing the three classes: parabolic, elliptic, and hyperbolic.CoreGroup Project 2026-27MTH2005MLevel 52026-27This module aims to provide students with the experience of working as part of a team on a project. Students will have the opportunity to produce a set of deliverables relevant to their programme of study. Final deliverables will be negotiated between the group and their supervisor, the module coordinator will be responsible for ensuring that each project covers the learning outcomes of the module. Groups are expected to manage their own processes, and to hold regular meetings both with and without their supervisor. Groups will be allocated by the module coordinator and other members of staff. The process of development of the topic under study and the interaction and management of group members underpins the assessment of skills in the module.CoreIndustrial and Financial Mathematics 2026-27MTH2006MLevel 52026-27Students have the opportunity to learn how mathematics is applied to modern industrial problems, and how the mathematical apparatus finds applications in the financial sector.CoreScalable Database Systems 2026-27CMP2806MLevel 52026-27This module explores the fundamental concepts of designing, implementing, and using database technologies and students are expected to develop a conceptual view of database theory and then transform it into a practical design of a database application. Alternate design principles for implementing databases for different uses, for example in social media or gaming contexts are also considered.CoreUser Experience Design 2026-27CMP2805MLevel 52026-27This module provides students with the opportunity to develop knowledge of the processes and principles of Human-Computer Interaction (HCI) and User Experience Design (UXD) starting with a history and overview of the role HCI in furthering the field of computer science. The module will guide students through notions of usability and accessibility, user-centred design and requirements analysis, prototyping, statistical analysis, and qualitative evaluation using state of the art methods and techniques. The professional, ethical, social, and legal issues in designing and studying interactive technology will be considered throughout.CoreProject 2027-28MTH3009MLevel 62027-28This is a double module in which a student can undertake a project under supervision of a research-active member of staff. The project can be undertaken at an external collaborating establishment. Projects will be offered to students in a wide range of subjects, which will be assigned with account for students' individual preferences and programme of their studies. This module provides students with an opportunity to demonstrate their ability to work independently on an in-depth project with a computer implementation element of mathematically relevant problem. Students will normally be expected to demonstrate their ability to apply practical and analytical skills, innovation and/or creativity, and to be able to synthesise information, ideas and practices to provide a problem solution.CoreAdvanced Topics of Mathematics and Mathematics Seminar 2027-28MTH3001MLevel 62027-28The module will cover several advanced topics of modern mathematics. The choice of the topics will be governed by the current research interests of academic staff and/or visiting scientists. Students will also have the opportunity to participate in mathematics research seminars.OptionalAutonomous Mobile Robotics 2027-28CMP3103MLevel 62027-28The module aims to introduce the main concepts of Autonomous Mobile Robotics, providing an understanding of the range of processing components required to build physically embodied robotic systems, from basic control architectures to spatial navigation in real-world environments. Students will have the opportunity to be introduced to relevant theoretical concepts around robotic sensing and control in the lectures, together with a practical “hands on” approach to robot programming in the workshops.OptionalBig Data 2027-28CMP3749MLevel 62027-28The module introduces the fundamentals of data science and big data analytics, an emergent specialised area of computer science that is concerned with knowledge on ‘Big Data’ mining and visualisation, including state-of-the-art database platforms, development toolkits, and industrial and societal application scenarios. Students can be exposed to core Big Data analytics concepts and models, the current technology landscape, and topical application scenarios using a variety of simulation environments and open datasets.OptionalCyber Security 2027-28CMP3750MLevel 62027-28This module provides an understanding of the challenges in cyber security faced by society and industry. This includes an examination of the impact of threats and develops an understanding of mechanisms to reduce the risk of attack. The module examines a range of cyber threats and attack types and introduces strategies to mitigate these. It also prompts students to consider the legal, social, and ethical implications of cyber security.OptionalFluid Dynamics 2027-28MTH3002MLevel 62027-28This module gives a mathematical foundation of ideal and viscous fluid dynamics and their application to describing various flows in nature and technology. Students are taught methods of analysing and solving equations of fluid dynamics using analytic and most modern computational tools.OptionalGroup Theory 2027-28MTH3003MLevel 62027-28Symmetry, understood in most broad sense as invariants under transformations, permeates all parts of mathematics, as well as natural sciences. Groups are measures of such symmetry and therefore are used throughout mathematics. Abstract group theory studies the intrinsic structure of groups. The course begins with definitions of subgroups, normal subgroups, and group actions in various guises. Group homomorphisms are introduced and the related isomorphism theorems are proved. Sylow p-subgroups are introduced and the three Sylow theorems are proved. Throughout, symmetry groups are used as examples.OptionalImage Processing 2027-28CMP3108MLevel 62027-28Digital image processing techniques are used in a wide variety of application areas such as computer vision, robotics, remote sensing, industrial inspection, medical imaging, etc. It is the study of any algorithms that take image as an input and returns useful information as output. This module aims to provide a broad introduction to the field of image processing, culminating in a practical understanding of how to apply and combine techniques to various image-related applications. Students will have the opportunity to extract useful data from the raw image and interpret the image data — the techniques will be implemented using the mathematical programming language Matlab or OpenCV.OptionalLogic and Computation 2027-28CMP3755MLevel 62027-28This module explores Computation Theory, including logics, definitions and models of computation, proofs about programs, proofs as programs, and limits on what is computable. The module will aim to develop critical-thinking and problem conceptualisation and solving skills, as well as the formal concepts used to structure computational thinking.OptionalMachine Learning 2027-28CMP3751MLevel 62027-28The module introduces the fundamentals of machine learning and principled application of machine learning techniques to extract information and insights from data. The module covers supervised and unsupervised learning methods. The primary aim is to provide students with knowledge and applied skills in machine learning tools and techniques which can be used to solve real-world data science problems.OptionalMathematics Pedagogy 2027-28MTH3004MLevel 62027-28This module is designed to provide students with an insight into the teaching of Mathematics at secondary school level and does this by combining university lectures with an experience of a placement in a secondary school Mathematics department. The module aims to provide students with an opportunity to engage with cutting-edge maths education research and will examine how this research impacts directly on classroom practice. Students will have the opportunity to gain an insight into some of the key ideas in Mathematics pedagogy and how these are implemented in the school Mathematics lessons and will develop an understanding about the barriers to learning Mathematics that many students experience.OptionalMethods of Mathematical Physics 2027-28MTH3006MLevel 62027-28The module aims to equip students with methods to analyse and solve various mathematical equations found in physics and technology.OptionalNumerical Methods 2027-28MTH3007MLevel 62027-28The module aims to equip students with knowledge of various numerical methods for solving applied mathematics problems, their algorithms and implementation in programming languages.OptionalParallel Programming 2027-28CMP3752MLevel 62027-28Parallel Programming is an important modern paradigm in computer science, and a promising direction for keeping up with the expected exponential growth in the discipline. Executing multiple processes at the same time can tremendously increase computational throughput, not only benefiting scientific computations, but also leading to new exciting applications like real-time animated 3D graphics, video processing, and physics simulation. The relevance of parallel computing is especially prominent due to availability of modern, affordable computer hardware utilising multi-core and/or large number of massively parallel units.OptionalTensor Analysis 2027-28MTH3008MLevel 62027-28This module introduces tensors, which are abstract objects describing linear relations between vectors, scalars, and other tensors. The module aims to equip students with the knowledge of tensor manipulation, and introduces their applications in modern science.OptionalMathematics and Computer Science Masters Project 2027-28MTH9015MLevel 72027-28In this quadruple module a student undertakes a substantial project under supervision of a research-active member of staff. Projects will be offered to students in a wide range of subjects, which will be assigned with account for student's individual preferences and programme of their studies. The project can be undertaken at an external collaborating establishment. Students independently conduct a substantial research in modern mathematical/computational science working in a research group of the school, university or an external collaborating establishment.CoreAutonomous Mobile Robotics (M) 2028-29CMP9050MLevel 72028-29This module introduces the main concepts of Autonomous Mobile Robotics, providing an understanding of the range of processing components required to build physically embodied robotic systems, from basic control architectures to spatial navigation in real-world environments. Students are introduced to relevant theoretical concepts around robotic sensing and control in the lectures, together with a practical “hands on” approach to robot programming in the workshops. Working at Master's level, students can research the area in depth and produce critical reports of their findings.OptionalBig Data (M) 2028-29CMP9770MLevel 72028-29The module introduces the fundamentals of data science and big data analytics, an emergent specialised area of computer science that is concerned with knowledge on ‘Big Data’ mining and visualisation, including state-of-the-art database platforms, development toolkits, and industrial and societal application scenarios. Students can explore core Big Data analytics concepts and models, the current technology landscape, and topical application scenarios using a variety of simulation environments and open datasets.OptionalCyber Security (M) 2028-29CMP9771MLevel 72028-29This module provides an understanding of the challenges in cyber security faced by society and industry. This includes an examination of the impact of threats and develops an understanding of mechanisms to reduce the risk of attack. The module examines a range of cyber threats and attack types and introduces strategies to mitigate these. It also prompts students to consider the legal, social, and ethical implications of cyber security. As a Master's level module students are also encouraged to consider current research in the field of cyber security.OptionalFinancial Kinetics 2028-29MTH9001MLevel 72028-29This module brings together the main ideas and methods of the mathematical theory of financial markets. In addition, the methods of practical calculations of volatilities of traded assets from historical data are discussed. The influence of randomness of the interest rate and volatilities on price of options is studied.OptionalFluid Dynamics (M) 2028-29MTH9013MLevel 72028-29This module gives a mathematical foundation of ideal and viscous fluid dynamics and their application to describing various flows in nature and technology. Students are taught methods of analysing and solving equations of fluid dynamics using analytic and most modern computational tools.OptionalImage Processing (M) 2028-29CMP9055MLevel 72028-29This module aims to provide a broad introduction to the field of image processing, culminating in a practical understanding of how to apply and combine techniques to various image-related applications. Students are expected to be able to extract useful information from the raw image and interpret the image data. The techniques will be implemented using the mathematical programming language Matlab or OpenCV.OptionalMachine Learning (M) 2028-29CMP9772MLevel 72028-29The module introduces fundamentals of machine learning and principled application of machine learning techniques to extract information and insights from data. The module covers supervised and unsupervised learning methods. The primary aim is to provide students with knowledge and applied skills in machine learning tools and techniques which can be used to solve real-world data science problems.OptionalMathematics Pedagogy (M) 2028-29MTH9016MLevel 72028-29This module is designed to provide students with an insight into the teaching of Mathematics at secondary school level and does this by combining university lectures with an experience of a placement in a secondary school Mathematics department. The module aims to provide students with an opportunity to engage with cutting-edge maths education research and will examine how this research impacts directly on classroom practice. Students will have the opportunity to gain an insight into some of the key ideas in Mathematics pedagogy and how these are implemented in the school Mathematics lessons and will develop an understanding about the barriers to learning Mathematics that many students experience.OptionalMethods Of Mathematical Physics (M) 2028-29MTH9014MLevel 72028-29The module aims to equip students with methods to analyse and solve various mathematical equations found in physics and technology.OptionalParallel Programming (M) 2028-29CMP9773MLevel 72028-29Parallel Computing is an important modern paradigm in computer science. Executing multiple processes at the same time can tremendously increase the computational throughput, not only benefiting scientific computations, but also leading to new exciting applications like real-time animated 3D graphics, video processing, and physics simulation. The relevance of parallel computing is especially prominent due to availability of modern, affordable computer hardware utilising multi-core and/or large number of massively parallel units.OptionalReading Module in Mathematics 2028-29MTH9006MLevel 72028-29The reading module allows students the opportunity to acquire knowledge of a particular area of mathematics, and develop the skills needed to study mathematics in a more independent manner. The module also provides an opportunity for Master's level students to study certain subjects in mathematics which may not be covered by any regular lecture modules, thus adding to the flexibility of the scheme of studies. Subject areas for proposed reading modules will be announced to students, together with an indicative syllabus. The choice offered will depend on the range of other lecture modules available to MMath students, as well as on the availability of teaching staff with particular areas of mathematical expertise, who could be able to act as moderators. The role of the reading module moderator is to provide students with support for their reading, including the setting of mathematical problems that are to be solved. The moderator also sets the written examination paper.Optional

What You Need to Know

We want you to have all the information you need to make an informed decision on where and what you want to study. In addition to the information provided on this course page, our What You Need to Know page offers explanations on key topics including programme validation/revalidation, additional costs, contact hours, and our return to face-to-face teaching.

What You Need to Know

We want you to have all the information you need to make an informed decision on where and what you want to study. In addition to the information provided on this course page, our What You Need to Know page offers explanations on key topics including programme validation/revalidation, additional costs, contact hours, and our return to face-to-face teaching.

How you are assessed

The course is assessed through a variety of means, including tests, course work, examinations, written reports, and oral presentations. The weighting given to each assessment method may vary across each academic year. The University of Lincoln aims to ensure that staff return in-course assessments to students promptly.

How you are assessed

The course is assessed through a variety of means, including tests, course work, examinations, written reports, and oral presentations. The weighting given to each assessment method may vary across each academic year. The University of Lincoln aims to ensure that staff return in-course assessments to students promptly.

Accreditation

Our BSc programme currently meets the educational requirements of the Chartered Mathematician designation. This is awarded by the Institute of Mathematics and its Applications (IMA), when it is followed by subsequent training and experience in employment to obtain equivalent competences to those specified by the Quality Assurance Agency for taught Master’s degrees. The MSci programme is accredited by the IMA.

Institute of Mathematics and its Applications Logo

Research-informed Teaching

Teaching on this course is conducted by academic members of staff who are active researchers in their fields. This research informs teaching at all levels of the programme. Staff conduct cutting-edge research in fundamental and applied mathematics and physics, ranging from pure mathematics to applied nano-science at the interface between biology, chemistry, physics, and mathematics. The School of Mathematics and Physics collaborates with top research institutions in Germany, Japan, Norway, the Netherlands, Singapore, Spain, and the USA.

Visiting Speakers

The School of Mathematics and Physics regularly welcomes guest speakers from around the world. Recent visitors to the University of Lincoln have included former vice president of the Royal Astronomical Society Professor Don Kurtz, mathematician and author Professor Marcus du Sautoy OBE, and operations research specialist Ruth Kaufman OBE.

This combined degree comprises some of the most industry-relevant and interesting modules, which are cherry-picked from the two disciplines.

Placements

Students on this course are encouraged to obtain and undertake work placements independently in the UK or overseas during their studies, providing hands-on experience in industry. These can range from a few weeks to a full year if students choose the sandwich year option. Placements may be conducted with external research institutions (which can be overseas). The option is subject to availability and selection criteria set by the industry or external institution. When undertaking optional placements, students will be required to cover their transport, accommodation, and general living costs.

What Can I Do with a Mathematics and Computer Science Degree?

Graduates may choose to use their problem-solving and analytical skills to develop careers in areas such as research, IT, science, education, consultancy, finance, business, and industry in the UK and overseas. Some may go on to undertake further study at postgraduate level. Additionally, transferable skills such as communications, problem-solving, and decision-making, which students are expected to develop throughout their studies, are valuable in many spheres of employment.

Entry Requirements 2024-25

United Kingdom

104 UCAS Tariff points from a minimum of 2 A Levels or equivalent qualifications to include 40 points in Maths.

International Baccalaureate: 30 points overall, with Higher Level Grade 5 in Maths.

Access to Higher Education Diploma: 45 Level 3 credits with a minimum of 104 UCAS Tariff points, including 40 points from 15 credits in Maths.

BTEC qualifications may be considered . Please contact our Admissions team for further information (admissions@lincoln.ac.uk).

Applicants will also need at least three GCSEs at grade 4 or above, which must include English and Maths. Equivalent Level 2 qualifications may also be considered.

The University accepts a wide range of qualifications as the basis for entry and do accept a combination of qualifications which may include A Levels, BTECs, EPQ etc.

We will also consider applicants with extensive and relevant work experience and will give special individual consideration to those who do not meet the standard entry qualifications.

International

Non UK Qualifications:

If you have studied outside of the UK, and are unsure whether your qualification meets the above requirements, please visit our country pages for information on equivalent qualifications.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/entryrequirementsandyourcountry/

EU and Overseas students will be required to demonstrate English language proficiency equivalent to IELTS 6.0 overall, with a minimum of 5.5 in each element. For information regarding other English language qualifications we accept, please visit the English Requirements page.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/englishlanguagerequirementsandsupport/englishlanguagerequirements/

If you do not meet the above IELTS requirements, you may be able to take part in one of our Pre-sessional English and Academic Study Skills courses.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/englishlanguagerequirementsandsupport/pre-sessionalenglishandacademicstudyskills/

For applicants who do not meet our standard entry requirements, our Science Foundation Year can provide an alternative route of entry onto our full degree programmes:

https://www.lincoln.ac.uk/home/course/sfysfyub/

If you would like further information about entry requirements, or would like to discuss whether the qualifications you are currently studying are acceptable, please contact the Admissions team on 01522 886097, or email admissions@lincoln.ac.uk

Contextual Offers

At Lincoln, we recognise that not everybody has had the same advice and support to help them get to higher education. Contextual offers are one of the ways we remove the barriers to higher education, ensuring that we have fair access for all students regardless of background and personal experiences. For more information, including eligibility criteria, visit our Offer Guide pages.

Entry Requirements 2025-26

United Kingdom

104 UCAS Tariff points from a minimum of 2 A Levels or equivalent qualifications to include 40 points in Maths.

BTEC: Will be considered provided 40 points are also obtained in A-level maths.

T Levels: Will be considered provided 40 points are also obtained in A-level maths.

Access to Higher Education Diploma: 45 Level 3 credits with a minimum of 104 UCAS Tariff points, including 40 points from 15 credits in Maths.

International Baccalaureate: 28 points overall to include a Higher Level Grade 5 in Maths.

GCSE's: Minimum of three at grade 4 or above, which must include English and Maths. Equivalent Level 2 qualifications may also be considered.

The University accepts a wide range of qualifications as the basis for entry and do accept a combination of qualifications which may include A Levels, BTECs, EPQ etc.

We may also consider applicants with extensive and relevant work experience and will give special individual consideration to those who do not meet the standard entry qualifications.

International

Non UK Qualifications:

If you have studied outside of the UK, and are unsure whether your qualification meets the above requirements, please visit our country pages for information on equivalent qualifications.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/entryrequirementsandyourcountry/

EU and Overseas students will be required to demonstrate English language proficiency equivalent to IELTS 6.0 overall, with a minimum of 5.5 in each element. For information regarding other English language qualifications we accept, please visit the English Requirements page.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/englishlanguagerequirementsandsupport/englishlanguagerequirements/

If you do not meet the above IELTS requirements, you may be able to take part in one of our Pre-sessional English and Academic Study Skills courses.

https://www.lincoln.ac.uk/home/studywithus/internationalstudents/englishlanguagerequirementsandsupport/pre-sessionalenglishandacademicstudyskills/

For applicants who do not meet our standard entry requirements, our Science Foundation Year can provide an alternative route of entry onto our full degree programmes:

https://www.lincoln.ac.uk/home/course/sfysfyub/

If you would like further information about entry requirements, or would like to discuss whether the qualifications you are currently studying are acceptable, please contact the Admissions team on 01522 886097, or email admissions@lincoln.ac.uk

Contextual Offers

At Lincoln, we recognise that not everybody has had the same advice and support to help them get to higher education. Contextual offers are one of the ways we remove the barriers to higher education, ensuring that we have fair access for all students regardless of background and personal experiences. For more information, including eligibility criteria, visit our Offer Guide pages.

Fees and Scholarships

Going to university is a life-changing step and it's important to understand the costs involved and the funding options available before you start. A full breakdown of the fees associated with this programme can be found on our course fees pages.

Course Fees

For eligible undergraduate students going to university for the first time, scholarships and bursaries are available to help cover costs. To help support students from outside of the UK, we are also delighted to offer a number of international scholarships which range from £1,000 up to the value of 50 per cent of tuition fees. For full details and information about eligibility, visit our scholarships and bursaries pages.

Fees and Scholarships

Going to university is a life-changing step and it's important to understand the costs involved and the funding options available before you start. A full breakdown of the fees associated with this programme can be found on our course fees pages.

Course Fees

For eligible undergraduate students going to university for the first time, scholarships and bursaries are available to help cover costs. To help support students from outside of the UK, we are also delighted to offer a number of international scholarships which range from £1,000 up to the value of 50 per cent of tuition fees. For full details and information about eligibility, visit our scholarships and bursaries pages.

Find out More by Visiting Us

The best way to find out what it is really like to live and learn at Lincoln is to visit us in person. We offer a range of opportunities across the year to help you to get a real feel for what it might be like to study here.

Book Your Place
Three students walking together on campus in the sunshine
The University intends to provide its courses as outlined in these pages, although the University may make changes in accordance with the Student Admissions Terms and Conditions.