Master in the Mathematical Foundations of Computer Science (MFoCS)

Contact
Prof.dr. Mai Gehrke, IMAPP
Prof.dr. Herman Geuvers, ICIS
Faculty of Science
Radboud University Nijmegen
Netherlands

Advice In case you are interested in doing this master program, please get in touch with Professor Gehrke or Professor Geuvers, also to discuss your choice of courses. (Not all courses will be given every year.)

Introduction

Throughout the centuries there has been a fruitful and mutually inspiring interaction between physics and mathematics. A similarly fruitful and exciting interaction has existed right from the start between computer science and mathematics. This ranges from the use of mathematics to model the foundations and explore the potentials and limits of computer science to the use of computers to help solve mathematical problems with a discrete component. This Research Master Program places itself squarely on this exciting and quickly developing interdisciplinary edge of deep theoretical developments.

In this Research Master Program, mathematicians working in areas pertinent to (theoretical) computer science, like algebra and logic, and theoretical computer scientists, working in areas as formal methods and theorem proving, join forces to establish a master program in the Mathematical Foundations of Computer Science, (MFoCS). The emphasis of the Master is on a combination of a genuine theoretical and up-to-date foundation in the pertinent mathematical subjects combined with an equally genuine and up-to-date training in key aspects of theoretical computer science. For this reason, the mathematics courses in this curriculum concentrate on Algebra, General Topology, Logic, Number Theory, and Combinatorics. The computer science courses concentrate on Formal Methods, Type Theory and Theorem Proving.

For this master program we solicit students with a bachelor in mathematics or computer science that have a strong mathematical background and theoretical interests. We will select students based on their motivation and their background.

Curriculum

It is intended that students of this master program obtain a broad knowledge and understanding over a wide range of material in mathematics and theoretical computer science, bringing them in contact with the research frontier of the field. Consequently, the curriculum consists of both lectures (with exercise classes) and of research projects, which are organized in a Research Seminar and a large Master Thesis project. There are 6 fixed courses for all students and the rest can be chosen from a list of elective courses.
Semester 1 Semester 2
3 x 6 ec fixed 18 3 x 6 ec fixed 18
6 ec Elective 6 6 ec Elective 6
6 ec Kaleidoscope* 6 6 ec Research Seminar ** 6
TOTAL 30 TOTAL 30
Semester 3 Semester 4
3 ec Philosophy 3 Master Thesis 25
2 x 6 ec Elective 12 6 ec Elective 6
Master Thesis 15
TOTAL 30 TOTAL 31
* Kaleidoscope does not have a fixed content, but consists of selected topics of semantics of programming languages, basic complexity theory and rings and fields. This course will provide a crash course of some of the basic knowledge that we assume the students to be familiar when starting this master. It can also be used to fill up knowledge that is missing.
** In the Research Seminar, the various teachers of this Master will give a short introduction to their research and present some research projects that the students can select one from for a small project.

List of Courses

Here is the list of courses and teachers, with indication in which semester they are given (1 or 2). For the actual schedule, please go to the Radboud University schedule page, select Programmes of Study. For the computer science master courses select Informatica Master alle cursussen under Select Programme of Study; for the mathematics master courses select Master Mathematics under Select Programme of Study.

Fixed Courses

Type Theory and Proof Assistants IMC010 1 Geuvers Wiedijk
Category Theory WM033C (not in 2010-2011) 1 Jacobs
Lattice Theory WB050C (not in 2010-2011) 1 Gehrke
Semantics and Domain Theory IMC011 2 Geuvers McKinna
Universal algebra WB058B 2 Gehrke
Computer Algebra WM069B (not in 2010-2011) 2 Bosma
The courses Category Theory , Lattice Theory and Computer Algebra are not given in 2010-2011. The first two can be completed via self study in case one desires. Please get in touch with the teacher for that. Alternatively they can be replaced by elective courses (see below), e.g. one can choose Automatic Sequences, Proof Assistants and Model Theory in stead of them.

Elective Courses

Here is a list of elective courses. All courses are 6ec unless indicated otherwise. The C/M denotes whether it is more a Computer Science or more a Mathematics course, or it can be seen as both. NB. Some of the elective courses may require specific advance knowledge.
Courses given in the fall semester of 2010-2011
Automatic Sequences WM080A Bosma CM
Advanced Programming I00032 Plasmeijer Koopman C
Information Theory WM079B Maassen CM
Commutative Algebra WM026B 8ec Berson M
Model Theory WM036C 8ec Veldman M
Representation Theory (Mastermath 8ec) Lenstra Cuypers M
Parallel Algorithms (Mastermath 8ec) Bisseling CM
Number Theory and Cryptography (Mastermath 6ec) Lange CM
Courses given in the spring semester of 2010-2011
Proof Assistants I00139 Wiedijk C
Analysis of Embedded Systems I00154 Vaandrager C
Automated Reasoning IMC009 Zantema C
Compiler Construction IMC004 Plasmeijer Achten Smetsers C
Intuitionistic Mathematics WM037A Veldman M
Complexity Theory (Mastermath 8ec) Pietrzak, Terwijn CM
Proof Theory (Mastermath 8ec) Iemhoff, van Oosten CM
Set Theory (Mastermath 8ec) Hart, Lowe M
Other courses, to be given later, on demand or as self study
Axiomatic Set theory WM038B (was given in 2009-2010, 8ec) Veldman M
Duality Theory Gehrke M
Graph Theory Bosma CM
Algorithmic Number Theory Bosma CM
Recursion Theory Veldman CM
Algebraic Topology Clauwens M
Term Rewriting Systems Zantema CM
Advanced Lambda Calculus Barendregt CM
Coalgebras Rutten CM
Apart from the courses mentioned above, students can follow other Master courses, also at other universities, or at Mastermath, including courses offered by Diamant. Please discuss this with Gehrke or Geuvers. It should be noted that most of the Mastermath courses are 8 ec, so choosing one (or two) Mastermath courses implies that you are doing more ecs in total.
There's also the possibility of going abroad in the 3rd semester, for example there are possibilities to follow courses with the Radboud University's partners in the IRUN network, notably the Theoretical Computer Science group at the Faculty of Mathematics and Computer Science of the Jagiellonian University in Krakow, Poland.

Grants

See the university's International Masters page for general information about doing a master at the Radboud University.

Students from an EEA country may apply for either a student grant within the Dutch student grants and loans system or a tuition fee allowance: Read more.... Students from the Netherlands can use their normal studiefinanciering from IB, as this Master curriculum officially falls under both the master of computer science and the master of mathematics of the Radboud University Nijmegen, which are CROHO-accredited.

The Radboud University has special scholarships for non-EEA students, like the Radboud Scholarship Programme. The university provides a special information page on scholarships and grants.

Students who need financial support may be interested to know that the Dutch government, runs special schemes to help students finance their education.

Planning

We will start the master in year 2009-2010, that is we start from September 1 2009.