Mathematics of Computer Science Modules



Cryptography

> Back to modules list

Lecturer or Convener:

Dr. Christine Swart

Semester:

First

Course Description:

Cryptography is the mathematics of scrambling data to keep it secret. This course is an overview of modern cryptology:  stream ciphers, block ciphers, hash functions, public key encryption and digital signatures, the factoring problem and the discrete log problem. Emphasis throughout is on how these systems are attacked.  The course is geared towards honours students in either Maths or Computer Science. There's no programming in the course, but we put a lot of emphasis on algorithms for attacking cryptosystems and how long they take.  We assume some (very basic) familiarity with groups and matrices, but we will cover all the number theory and probability theory you need in the course.

Graph Theory

> Back to modules list

Lecturer or Convener:

Dr. David Erwin

Semester:

Second

Course Description:

We shall cover a selection of topics from the following: Graphs and digraphs; degree; isomorphism; operations on graphs; distance; bipartite graphs; cut-vertices and bridges; trees; connectivity; eulerian and hamiltonian graphs; colouring; planarity; graphs and groups; graphs and matrices; matchings, factors, and decompositions; and Ramsey Theory.

Enumerative Combinatorics

> Back to modules list

Lecturer or Convener:

Dr. Margaret Archibald

Semester:

Second

Course Description:

TBasic enumerative combinatorics, generating functions, inclusion-exclusion principle, symbolic equations, linear recursions, Fibonacci numbers, Bernoulli numbers, Eulerian numbers, Catalan numbers, binary and planar trees, Lagrange inversion formula.

Last modified: 06 February 2013