Accessibility statement

Theory 1 - COM00013C

« Back to module search

  • Department: Computer Science
  • Module co-ordinator: Dr. Nick Pears
  • Credit value: 20 credits
  • Credit level: C
  • Academic year of delivery: 2020-21

Module summary

Mathematical Foundations of Computer Science

Module will run

Occurrence Teaching cycle
A Autumn Term 2020-21

Module aims

Students will be introduced to the key discrete mathematics concepts that are the foundation of computer science. Students will be introduced to propositional and predicate logic, set theory, combinatorics, functions and relations and graph theory. Students will be introduced to the mathematical foundations, and will be able to identify the application of these concepts in real-world examples. Students will be introduced to a variety of proof techniques that will be used throughout their degree programme.

Module learning outcomes


Define, read and apply mathematical notations for purposes of describing mathematical concepts from across discrete mathematics including: propositional and predicate logic, set theory, combinatorics, functions and relations, and graph theory.


Formulate definitions and examples of concepts across discrete mathematics


Apply a variety of techniques to identify whether logical expressions are true or false, valid or invalid or equivalent to one another.


Select appropriate techniques to prove properties about discrete mathematics concepts.


Construct counterexamples to refute claims about discrete mathematics concepts.


Select and construct appropriate proof techniques to prove a variety of different types of problems in discrete mathematics.


Describe and use the basic concepts of discrete probability to describe events.


Apply logical statements to describe real-world logical problems in relation to computer science


Identify and provide examples of real-world application of sets to computer science problems


Describe and apply a variety of concepts and techniques about functions and relations as they apply to computer science.


Formally define and illustrate by example graphs of different graph classes, their properties and special cases of: undirected, directed, cyclic, edge labelled, weighted, directed acyclic and disconnected graphs.


Model a variety of real-world problems in computer science using appropriate forms of graphs and trees,


Task Length % of module mark
Online Exam
Theory 1 (THE1)
N/A 100

Special assessment rules



Task Length % of module mark
Online Exam
Theory 1 (THE1)
N/A 100

Module feedback

Feedback is provided through work in practical sessions, and after the final assessment as per normal University guidelines.

Indicative reading

** Dean N., The Essence of Discrete Mathematics, Prentice Hall, 1997

** Haggarty R., Discrete Mathematics for Computing, Addison Wesley, 2002

** Truss J., Discrete Mathematics for Computer Scientists, Addison Wesley, 1999

** Cohen D.I.A., An Introduction to Computer Theory (2nd ed.), Wiley, 1997

** Linz P., An Introduction to Formal Languages and Automata (4th ed.), Jones and Bartless, 2006

* Rodger S.H. and Finley T.W., JFLAP: An Interactive Formal Language and Automata Package, Jones and Bartless, 2006

* Solow D., How to Read and Do Proofs, Wiley, 2005

The information on this page is indicative of the module that is currently on offer. The University is constantly exploring ways to enhance and improve its degree programmes and therefore reserves the right to make variations to the content and method of delivery of modules, and to discontinue modules, if such action is reasonably considered to be necessary by the University. Where appropriate, the University will notify and consult with affected students in advance about any changes that are required in line with the University's policy on the Approval of Modifications to Existing Taught Programmes of Study.