- Academic Registry
Programme & Unit Catalogues

MA10276: Programming, foundations and connections

[Page last updated: 03 August 2022]

Academic Year: 2022/23
Owning Department/School: Department of Mathematical Sciences
Credits: 12 [equivalent to 24 CATS credits]
Notional Study Hours: 240
Level: Certificate (FHEQ level 4)
Academic Year
Assessment Summary: CW 100%
Assessment Detail:
  • Coursework 1 (CW 25%)
  • Coursework 2 (CW 25%)
  • Coursework 3 (CW 25%)
  • Coursework 4 (CW 25%)
Supplementary Assessment:
Like-for-like reassessment (where allowed by programme regulations)
Requisites: Students must have a grade A in A-level Mathematics or equivalent in order to take this unit.
While taking this module you must take MA10207 AND take MA10209
Learning Outcomes: After taking the programming part of this unit, students should be able to:
* Write pseudo-code and implement algorithms in Python;
* Apply modern programming paradigms to mathematical problems;
* Demonstrate understanding of principles of software design;
* Analyse the complexity of algorithms;
* Manipulate and analyse data;

After taking the foundations and connections part of this unit, students should be able to:
* Read and manipulate logical statements about mathematical objects;
* Determine the validity of mathematical arguments;
* Formulate and write simple mathematical proofs using construction, contradiction, induction;
* Evaluate and improve upon the clarity of written mathematical arguments;
* Work independently, through planned and effective reading and practice;
* Work in a group, through effective discussion and collaboration;
* Discuss the breadth of modern mathematical research;
* Discuss the importance of mathematics in work and society;
* Present mathematics verbally;
* Formulate constructive feedback for others, and act on feedback received.

Aims: The unit is split into two parts: Programming; and Foundations and Connections.

Aims for Programming: To teach Python-based programming and sustainable software engineering for mathematics; design and analyse algorithms.

Aims for Foundations and Connections: To improve the ability of the students to read and write mathematics well; to enable them to develop effective study skills for individual and group working; to introduce students to the beauty, the ubiquity and the importance of university-level mathematics.

Skills: Written and Spoken Communication (T/F A), Reasoning (T/F A), Numeracy (T/F A), Problem Solving (T/F A), Information Technology (T/F A)

Content: Programming:
1. Fundamentals of Python programming
A. Introduction to programming:
* Programming paradigms;
* From Specification through algorithms to implementation.
B. Building elements:
* Variables and scope
* Basic data types
* Arrays and strings
C. Control structures:
* Conditionals
* Loops
* Functions and subroutines
* Iteration and recursion
2. Object oriented programming
* Advanced data types
* Encapsulation and interfaces
* Inheritance and abstract classes
3. Understanding and analysing algorithms
A. Common design patterns such as
* recursion, divide-and-conquer and dynamic programming
B. Complexity analysis
* Complexity of common algorithms
* Big-O notation
* Master-Theorem for divide-and-conquer algorithms
4. Sustainable software engineering
* Program design and modularisation
* Testing and systematic debugging
* Version Control
5. Working with data
* data types for mathematical objects
* libraries for manipulating and visualising data

Foundations and Connections:
* Study skills for mathematicians.
* Thinking logically.
* Introduction to definitions, theorems and proofs.
* Techniques of proof, including construction, contradiction, induction.
* Mathematical research at the University of Bath.
* Applications of degree-level mathematics in industry and society.
* Mathematics outreach and advocacy.

Programme availability:

MA10276 is Compulsory on the following programmes:

Department of Mathematical Sciences
  • USMA-AFB15 : BSc(Hons) Mathematical Sciences (Year 1)
  • USMA-AAB16 : BSc(Hons) Mathematical Sciences with Study year abroad (Year 1)
  • USMA-AKB16 : BSc(Hons) Mathematical Sciences with Year long work placement (Year 1)
  • USMA-AFB13 : BSc(Hons) Mathematics (Year 1)
  • USMA-AAB14 : BSc(Hons) Mathematics with Study year abroad (Year 1)
  • USMA-AKB14 : BSc(Hons) Mathematics with Year long work placement (Year 1)
  • USMA-AFB01 : BSc(Hons) Mathematics and Statistics (Year 1)
  • USMA-AAB02 : BSc(Hons) Mathematics and Statistics with Study year abroad (Year 1)
  • USMA-AKB02 : BSc(Hons) Mathematics and Statistics with Year long work placement (Year 1)
  • USMA-AFM14 : MMath(Hons) Mathematics (Year 1)
  • USMA-AAM15 : MMath(Hons) Mathematics with Study year abroad (Year 1)
  • USMA-AKM15 : MMath(Hons) Mathematics with Year long work placement (Year 1)


  • This unit catalogue is applicable for the 2022/23 academic year only. Students continuing their studies into 2023/24 and beyond should not assume that this unit will be available in future years in the format displayed here for 2022/23.
  • Programmes and units are subject to change in accordance with normal University procedures.
  • Availability of units will be subject to constraints such as staff availability, minimum and maximum group sizes, and timetabling factors as well as a student's ability to meet any pre-requisite rules.
  • Find out more about these and other important University terms and conditions here.