Computer Science and Mathematics (3 Years) [BSc]

Combinatorics and Graph Theory

Unit code: MATH39001
Credit Rating: 10
Unit level: Level 3
Teaching period(s): Semester 1
Offered by School of Mathematics
Available as a free choice unit?: N




To introduce the students to graphs, their properties and their applications as models of networks.

To introduce the students to generating functions and their applications.


A graph consists of a set of vertices with a set of edges connecting some pairs vertices. Depending on the context, the edges may represent a mathematical relation, two people knowing each other or roads connecting towns, etc. The graph theory part of the course deals with networks, structure of graphs, and extremal problems involving graphs.

The combinatorial half of this course is concerned with enumeration, that is, given a family of problems P(n), n a natural number, find a(n), the number of solutions of P(n) for each such n. The basic device is the generating function, a function F(t) that can be found directly from a description of the problem and for which there exists an expansion in the form F(t) = sum {a(n)gn(t); n a natural number}. Generating functions are also used to prove a family of counting formulae to prove combinatorial identities and obtain asymptotic formulae for a(n).

Learning outcomes

On successful completion of the course students will be:

  • able to formulate problems in terms of graphs, solve graph theoretic problems and apply algorithms taught in the course;
  • able to use generating functions to solve a variety of combinatorial problems.

Assessment methods

  • Other - 20%
  • Written exam - 80%

Assessment Further Information

  • Coursework: in-class test in week 5, weighting 20%
  • End of semester examination: two hours, weighting 80%


Graph Theory

  • Introduction. [1 lecture]
  • Electrical networks. [2]
  • Flows in graphs, Max-flow min-cut theorem. [3]
  • Matching problems. [3]
  • Extremal problems. [3]


  • Examples using ordinary power series and exponential generating functions, general properties of such functions. [3]
  • Dirichlet Series as generating functions. [1]
  • A general family of problems described in terms of "cards, decks and hands" with solution methods using generating functions. [3]
  • Generating function proofs of the sieve formula and of various combinatorial identities. Certifying combinatorial identities. [2]
  • Some analytical methods and asymptotic results. [2]

Recommended reading

  • B Bollobas, Graph theory, An introductory course (Graduate Texts in Mathematics 63), Springer, 1979.
  • B Bollobas, Modern graph theory, (Graduate Texts in Mathematics 184), Springer, 1998.
  • D Jungnickel, Graphs, Networks and Algorithms (Algorithms & Computation in Mathematics 5), Springer, 1998.
  • H S Wilf, generatingfunctionology, A K Peters, 3rd ed., 2006.

Feedback methods

Feedback tutorials will provide an opportunity for students' work to be discussed and provide feedback on their understanding.  Coursework or in-class tests (where applicable) also provide an opportunity for students to receive feedback.  Students can also get feedback on their understanding directly from the lecturer, for example during the lecturer's office hour.

Study hours

  • Lectures - 22 hours
  • Tutorials - 11 hours
  • Independent study hours - 67 hours

Teaching staff

Gabor Megyesi - Unit coordinator

▲ Up to the top