 Student Records
Programme & Unit Catalogues

## XX10190: Programming and discrete mathematics

2019/0 Owning Department/School: Department of Mathematical Sciences
12      [equivalent to 24 CATS credits] Notional Study Hours: 240
Certificate (FHEQ level 4)
CW 50%, EX 50%
• Coursework 1 (CW 25%)
• Coursework 2 (CW 25%)
• Examination 1 (EX 20%)
• Examination 2 (EX 30%) Supplementary Assessment:
Like-for-like reassessment (where allowed by programme regulations)
You must have A Level Mathematics grade A or equivalent in order to take this unit. Description: Aims:
To teach generic programming skills and a range of topics in discrete mathematics which are connected to computation.

Learning Outcomes:
After taking this unit, the student should be able to:
* Apply the basic principles of programming in studying problems in discrete mathematics.
* Make proper use of data structures in the applications context.
* Demonstrate understanding of a range of mathematical topics which relate to computation, such as modular arithmetic, elementary graph theory and elementary computational number theory and their applications.
* Analyse the complexity of simple algorithms
* Explain the use of some famous algorithms such as the Fast Fourier Transform.
* Use the MATLAB programming environment.

Skills:
Numeracy T/F A
Problem Solving T/F A
Information Technology T/F A

Content:
The role of computing in mathematics
Matlab programming environment: Editing, importing and exporting data, getting help, functionality, graphics and mathematical applications.
Control structures for programming: Pseudocode, selection statements, repetition statements. Elementary logic in programming.
Elementary mathematical applications: e.g. summing series.
Data types: integers, real and complex numbers. Binary representation. Arrays, user-defined data structures.
Procedures, types of variables, parameter passing, scope of functions, functions as arguments. Applications, e.g. to modular arithmetic.
Graphs, trees, sorting and searching: applications.
Complexity of algorithms, order of an algorithm, examples of algorithms with logarithmic, polynomial and exponential order. Proofs by induction.
Recursion and its relation to induction.
Mathematical applications of recursion, e.g. Pascal's triangle, Euclid's algorithm, computing fractals.
Matrices and matrix operations. Applications, e.g. Fibonacci numbers, modelling networks.
Object-oriented programming. The object oriented paradigm, defining classes in Matlab, encapsulation. Examples from graphics.
Software development. The difficulty of formal proof, and the importance of testing. "black box" versus "white box" testing. Test coverage, and its importance in Matlab.
Cryptography, RSA. Error correcting codes.
Digital signal processing and FFT. Programme availability:

#### XX10190 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-AFB05 : BSc(Hons) Statistics (Year 1)
• USMA-AAB06 : BSc(Hons) Statistics with Study year abroad (Year 1)
• USMA-AKB06 : BSc(Hons) 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)

 Notes: This unit catalogue is applicable for the 2019/20 academic year only. Students continuing their studies into 2020/21 and beyond should not assume that this unit will be available in future years in the format displayed here for 2019/20. 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. Undergraduates: Find out more about these and other important University terms and conditions here. Postgraduates: Find out more about these and other important University terms and conditions here.