Module and Programme Catalogue

Search site

Find information on

2023/24 Undergraduate Module Catalogue

MATH2231 Discrete Mathematics with Computation

15 creditsClass Size: 80

Module manager: Cordelia Webb

Taught: Semester 2 (Jan to Jun) View Timetable

Year running 2023/24

Pre-requisite qualifications

(MATH1920 or MATH2920) and (MATH1005 or MATH1010 or MATH1060 or MATH1331), or equivalent.

This module is mutually exclusive with

MATH2210Introduction to Discrete Mathematics
MATH2230Discrete Mathematics

This module is not approved as a discovery module

Module summary

Discrete mathematics is the area of mathematics concerned with the study of discrete (i.e. distinct, separate, unconnected) objects. The typical problems studied in discrete mathematics involve counting the elements of a finite set (e.g. how many ways are there of choosing a 4-digit PIN number?), studying graphs (e.g. can we check that two computers in a network are connected). Correspondingly, the module will introduce key ideas from Combinatorics and Graph Theory, and their algorithmic counterparts.


Discrete mathematics is a wide and very active subject, spanning across pure and applied mathematics. It is generally concerned with objects that are finite (the ways in which we can arrange two teams of 5 players from a group of 10 people) and on finding explicit methods and algorithms to establish their properties. The module will look at two particularly important topics of discrete mathematics: combinatorics and graph theory. The first is generally concerned with counting problems, including aspects of the theory of difference equations. The second is concerned with graphs, which provides effective ways of representing finite (and sometimes even infinite) data.
This module also involves a practical implementation of the algorithmic ideas. Students should improve their programming skills begun in MATH2920, and gain confidence and facility with computational mathematics.
The module offers also good background for MATH3143 (Combinatorics) and MATH3033 (Graph Theory).

Learning outcomes
On completion of this module, students should be able to:
1) Solve counting problems involving binomials, permutations, and the inclusion-exclusion principle;
2) Formulate counting problems as linear difference equations and know some applications;
3) Solve linear difference equations and some linearizable ones;
4) Test a graph to determine whether it is connected;
5) In simple cases, determine whether or not a graph is planar;
6) Use algorithms to find shortest paths and spanning trees in a graph;
7) Prove and apply Euler's formula for planar graphs.
8) Be able to write some Python programs for the algorithms seen and some variants thereof.


1. Combinatorics: counting problems and their relevance for calculating probability; number of functions between finite sets; the binomial theorem and applications to the number of surjections and derangements; combinatiorial problems solvable by difference equations; linear difference equations; some linearizable difference equations; applications.
2. Graph Theory: graphs; adjacency matrices; handshaking lemma; subgraphs; isomorphism of graphs; connected graphs; algorithms to find a shortest path; trees; Cayley's formula; spanning trees; the matrix-tree theorem; planar graphs; Euler's formula; planarity tests.
3. Algorithmic aspects: algorithmic complexity; divide-and-conquer algorithms; data structures for graphs; Dijkstra's algorithm for shortest path in a weighted graph; Kruskal's and Prim's algorithm for minimum spanning tree in a weighted graph.

Teaching methods

Delivery typeNumberLength hoursStudent hours
Private study hours103.00
Total Contact hours47.00
Total hours (100hr per 10 credits)150.00

Private study

Studying and revising of course material.
Completing of assignments and assessments.

Opportunities for Formative Feedback

Regular problem solving assignments

Methods of assessment

Assessment typeNotes% of formal assessment
Computer ExerciseIn order to pass the module, students must pass the MATH2230 component (which is at least 40% on exam and in-course assessment combined) and score at least 40% on the Computer Exercises.30.00
In-course Assessment.10.00
Total percentage (Assessment Coursework)40.00

Students who have failed the MATH2230 component will need to resit the exam; students who have failed the computer exercises will need to resubmit these. There is no resit available for the 10% in-course assessment component of this module. If the module is failed, the mark for this component will be carried forward and added to the resit exam and/or computer exercises mark with the same weighting as listed above.

Exam typeExam duration% of formal assessment
Open Book exam2 hr 00 mins60.00
Total percentage (Assessment Exams)60.00

Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated

Reading list

The reading list is available from the Library website

Last updated: 09/02/2024


Browse Other Catalogues

Errors, omissions, failed links etc should be notified to the Catalogue Team.PROD

© Copyright Leeds 2019