This is a preview of the upcoming MPRI website. For now, the official website remains at the old location. Until further notice, please update the webpage of your course there, and not here. Here is for preview only. Comments are very welcome! Please send them to MPRI directors.
September 30 | Submission of a study plan | on the pedagogical server. |
---|---|---|
Nov. 25-Dec. 6 | First exam period | |
January 31 | Submission of an internship choice | on the pedagogical server. |
Mar. 3-Mar. 14 | Second exam period | |
August 20 | Internship report upload | on the pedagogical server. |
Early Sep. 2025 | Internship defense | in person. |
Overview
The Parisian Master of Research in Computer Science, in French Master Parisien de Recherche en Informatique (MPRI), is a research-oriented master's program in fundamental computer science, run jointly by several schools and universities. See here for the list of partner institutions. Its purpose is to train future scientists through intensive exposure to contemporary research in the foundations of computer science.
MPRI is a two-year master's program. The first year (M1) is organized independently by each partner institution. This website focuses on the second year (M2), which is common to all students.
- For prospective students see how to apply.
- For current or future students see how the year is organized.
- For teachers see rules and how to propose a new course.
- For internship supervisors see how internships work and how to propose one.
M2 MPRI course list
Courses are identified by a number, and an acronym. From September 2026 onwards, only the acronym will be used.
Usage. Click on a theme to filter by that theme, and on a column to sort by that column. Click on the acronym to go the course page.
Display: RESET Algorithms Complexity Parallel/Distributed Algo. Computer Algebra Automata/Games Verification Discrete Math/Graphs Geometry/Visual Data Semantic/Languages Logic/Proof Cryptography Quantum Bio-info Natural Language
Acronym | Number | Title | ECTS | Period | Language | Manager | ↓ Themes |
---|---|---|---|---|---|---|---|
heu | 2.24.2 | Solving Optimization Problems with Search Heuristics Résolution de problèmes d'optimisation avec heuristiques de recherche | 3 | 2 | ![]() | Carola Doerr | Algorithms |
unc | 2.24.1 | Algorithms and Uncertainty Algorithmes et incertitude | 3 | 1 | ![]() | Spyros Angelopoulos | Algorithms |
aofa | 2.15 | Analysis of Algorithms Analyse d'algorithmes | 6 | 1-2 | ![]() | Élie de Panafieu | Algorithms, Discrete Math/Graphs |
combiaa | 2.10 | Algorithmic Aspects of Combinatorics Aspects algorithmiques de la combinatoire | 6 | 1-2 | ![]() | Gilles Schaeffer | Algorithms, Discrete Math/Graphs |
paramalg | 2.11.1 | Parameterized Algorithms and Complexity Algorithmes et complexité paramétrés | 3 | 2 | ![]() | Valia Mitsou | Algorithms, Complexity, Discrete Math/Graphs |
games | 2.20.1 | Game Theory in Computer Science Techniques de théorie des jeux en informatique | 3 | 1 | ![]() | Olivier Serre | Automata/Games |
mata | 2.16 | Finite Automata Modeling Modèles de calcul et automates finis | 6 | 1-2 | ![]() ![]() | Matthieu Picantin | Automata/Games |
adverif | 2.08.2 | Cyber-physical systems and their verification Systèmes cyber-physiques et leur vérification | 6 | 1-2 | ![]() ![]() | Patricia Bouyer | Automata/Games, Verification |
vcp | 2.09.2 | Algorithmic Verification of Programs Vérification algorithmique de programmes | 3 | 2 | ![]() ![]() | Ahmed Bouajjani | Automata/Games, Verification |
wqo | 2.09.1 | Algorithmic Aspects of Well Quasi-Order Theory Aspects algorithmiques de la théorie des beaux préordres | 3 | 1 | ![]() ![]() | Jean Goubault-Larrecq | Automata/Games, Verification, Complexity |
bioprog | 2.19 | Biochemical Programming Programmation biochimique | 3 | 2 | ![]() ![]() | François Fages | Bio-info |
compalg | 2.22 | Efficient Algorithms in Computer Algebra Algorithmes efficaces en calcul formel | 6* | 1-2 | ![]() ![]() | Vincent Neiger | Computer Algebra, Algorithms, Cryptography |
sydy | 2.20.2 | Symbolic Dynamics Dynamique symbolique | 3 | 1-2 | ![]() ![]() | Valérie Berthé | Discrete Math/Graphs |
graphth | 2.29.1 | Advanced Graph Theory Théorie des graphes avancée | 3 | 1 | ![]() | Reza Naserasr | Discrete Math/Graphs, Algorithms |
gram | 2.29.2 | Theory of Practical Graph Algorithms Algorithmes efficaces de graphes : aspects théoriques | 3 | 2 | ![]() | Mauro Sozio | Discrete Math/Graphs, Algorithms |
compr | 2.33.3 | Complexity over the Reals Complexité sur les réels | 3 | 1 | ![]() ![]() | Olivier Bournez | Complexity |
probas | 2.11.2 | Randomness in Complexity Complexité randomisée | 3 | 1 | ![]() | Adrian Vladu | Complexity, Algorithms |
codes | 2.13.2 | Error-Correcting Codes and Applications to Cryptography Codes correcteurs d'erreurs et applications à la cryptographie | 3 | 1-2 | ![]() ![]() | Anne Canteaut | Cryptography |
lcrypt | 2.12.1 | Techniques in Cryptography and Cryptanalysis Techniques en cryptographie et cryptanalyse | 3 | 1-2 | ![]() ![]() | Brice Minaud | Cryptography |
cryptalg | 2.12.2 | Arithmetic Algorithms for Cryptography Algorithmes arithmétiques pour la cryptologie | 3 | 1 | ![]() | Ben Smith | Cryptography |
secure | 2.30 | Proofs of Security Protocols Preuves de protocoles de sécurité | 6* | 1-2 | ![]() ![]() | Bruno Blanchet | Cryptography, Semantic/Languages, Logic/Proof |
qd | 2.26.1 | Querying Data: Foundations and Practice Requêtes sur les données : fondements et pratique | 3 | 2 | ![]() | Leonid Libkin | Databases Logic/Proof |
cgt | 2.14.1 | Computational Geometry and Topology Géométrie et topologie algorithmiques | 3 | 1 | ![]() ![]() | Marc Glisse | Geometry/Visual Data |
geomgraph | 2.38.1 | Algorithms and Combinatorics for Geometric Graphs Algorithmique et combinatoire des graphes géométriques | 3 | 1 | ![]() ![]() | Vincent Pilaud | Geometry/Visual Data, Discrete Math/Graphs |
langlog | 2.27.1 | Computational and Logical Structures for Linguistic Modeling Structures informatiques et logiques pour la modélisation linguistique | 3 | 1 | ![]() ![]() | Benoît Crabbé | Natural Language, Logic/Proof |
prfsys | 2.07.1 | Foundations of Proof Systems Fondements des systèmes de preuves | 3 | 1 | ![]() ![]() | Benjamin Werner | Logic/Proof |
prfa | 2.07.2 | Proof Assistants Assistants de preuves | 3 | 1 | ![]() ![]() | Théo Winterhalter | Logic/Proof |
progproofs | 2.36.1 | Proofs of Programs Preuves de programmes | 3 | 2 | ![]() ![]() | Jean-Marie Madiot | Logic/Proof, Semantic/Languages, Verification |
netmod | 2.17.1 | Foundations of Network Models Fondements sur la modélisation des réseaux | 3 | 2 | ![]() ![]() | Ana Bušić | Parallel/Distributed Algo. |
disc | 2.18.1 | Distributed Algorithms for Networks Algorithmique distribuée pour les réseaux | 3 | 1-2 | ![]() | Pierre Fraigniaud | Parallel/Distributed Algo. |
podc | 2.18.2 | Shared-Memory Distributed Computing Algorithmique distribuée avec mémoire partagée | 3 | 1 | ![]() ![]() | Carole Delporte | Parallel/Distributed Algo. |
geomconc | 2.03.1 | Concurrency Concurrence | 3 | 2 | ![]() | Emmanuel Haucourt | Parallel/Distributed Algo., Semantic/Languages |
sync | 2.23.1 | Synchronous Reactive Systems Systèmes réactifs synchrones | 3 | 1 | ![]() ![]() | Marc Pouzet | Parallel/Distributed Algo., Semantic/Languages |
quantum | 2.34.1 | Quantum Information and Applications Information quantique et applications | 3 | 1 | ![]() ![]() | Sophie Laplante | Quantum |
qcc | 2.34.2 | Quantum Information and Cryptography Information quantique et cryptographie | 3 | 2 | ![]() ![]() | André Chailloux | Quantum, Cryptography |
fun | 2.04 | Functional Programming and Type Systems Programmation fonctionnelle et systèmes de types | 6 | 1-2 | ![]() ![]() | François Pottier | Semantic/Languages |
ppl | 2.40 | Probabilistic programming languages Langages de programmation probabilistes | 3 | 2 | ![]() ![]() | Christine Tasson | Semantic/Languages |
sempl | 2.02 | Models of Programming Languages: Domains, Categories, Games Modèles des langages de programmation: domaines, catégories, jeux | 6 | 1-2 | ![]() ![]() | Paul-André Melliès | Semantic/Languages |
aisav | 2.06 | Abstract Interpretation: Application to Verification and Static Analysis Interprétation abstraite : application à la vérification et à l'analyses statique | 6 | 1-2 | ![]() ![]() | Antoine Miné | Semantic/Languages, Verification |
*: Courses marked with an asterisk are breakable: students can choose to validate only the first half of the course. In that case, the course counts for 3 ECTS.
Language: means the course is in English,
means it is in French.
means the teachers will adapt to the students. (Typically, this means course materials are in English, but the language during lectures will be adapted to the audience; see the course page for more information.)
M2 calendar and schedule 2024-2025
Calendar
Lectures start on Tuesday, September 17 at 8:45.
- September 16, 2024: kickoff meeting. Slides 2024-2025.
- From September 17th, 2024 until November 22nd, 2024: first lecture period (“Period 1”).
- September 30: deadline for the submission of a study plan on the pedagogical server.
- From November 25th, 2024 until December 6th, 2024: first exam period.
- From December 9th, 2024 until February 28th, 2025: second lecture period (“Period 2”).
- January 31: deadline for the submission of an internship choice on the pedagogical server.
- From March 3rd, 2025 until March 14, 2025: second exam period.
- From mid or late March 2025: internship, for at least 4.5 months.
- August 20: deadline for the submission of an internship report on the pedagogical server.
- Early September 2025: internship defense.
Schedule
All courses take place in room 1002 or 1004 of Batiment Sophie Germain, 8 place Aurélie Nemours, 75013 Paris.
Period 1
Period 2
Organization
M2 MPRI begins with a first semester dedicated to courses, divided into two trimesters (Period 1 and Period 2). The second semester is devoted to an introductory research internship with a French or foreign laboratory.
ECTS credits
Students must validate 60 ECTS credits during M2 in order to be awarded the MPRI Master's Degree, divided into 30 ECTS of courses, and 30 ECTS for a compulsory internship.
- M2 courses: 30 ECTS.
Each M2 MPRI course is worth either 3 ECTS credits (for 24-hour courses) or 6 ECTS credits (for 48-hour courses). 6-credit courses are taught over the course of a semester at a pace of 3h/week, and represent 75 student-hours (typically 50 contact hours and 25 hours of private study). 3-credit courses are taught either 1.5 h/week during the whole semester, or else 2.5 or 3h/week during half a semester.
- M2 internship: 30 ECTS.
Award of the ECTS credits is subject to approval of a written report and of a viva voce examination by a board of examiners set up by the MPRI's Studies Committee.
- External courses.
Out of the 30 course ECTS credits necessary to obtain the MPRI degree, at least 18 must come from M2 MPRI courses. Up to 12 ECTS may be chosen among courses from other Master's programs, subject to the approval of the MPRI Studies Committee. When a course from an external Master's program is used to validate the MPRI degree in this way, the number of ECTS it is worth within MPRI is decided by the MPRI Studies Committee. Note that it may differ from its original ECTS value.
Study directors
Every student at M2 MPRI is affiliated to one of the MPRI partner institutions (see management for the list of partner institutions). Each partner institution has a dedicated MPRI study director (see contact for the list of study directors). The study director supervises students affiliated with the corresponding institution, and also serves as a point of contact for students, together with the MPRI director(s).
Pedagogical server
The pedagogical server is used to keep track of which student is registered to which course, enter grades, and indicate choices of internships. At the start of the year, students are registered on the pedagogical server by their study director, and receive an account. Students use this account to enter their choice of courses by the end of September (see the calendar), subject to the approval of the study director. Similary, students enter their choice of internship on the server by the end of January.
Grading
Student assessment for M2 courses will take the form of a written examination and/or an oral examination and/or a project. Student assessment may also include a mark obtained within the framework of continuous assessment.
Teachers enter grades on the pedagogical server. Each student can see their own grades on the server. Note that grades entered by teachers are not final. Indeed, after all grades are entered, a harmonization algorithm is run. Its purpose is to adjust grades to compensate for courses where grades may be too low or too high. Roughly speaking, the harmonization algorithm aims for a similar average for each course, but also tries to take into account differences in the average level of students between individual courses. The harmonization algorithm is run as soon as all grades are available.
The final MPRI jury typically occurs shortly after internship defenses, in early September. Final grades and attestations for validating the MPRI program are usually available by early to mid-September. Until that time, partial attestations reflecting currently available grades are available on request by contacting the MPRI director(s).
Ethics
The rules of ethics that apply to researchers also apply to students of the M2 MPRI. Plagiarism, whether during exams or during the internship, rigging results, failing to cite previous results, denigrating others, harassment, are all unacceptable. Please consult the French charter of ethics for research professionals.
See also:
- Charter of ethics at IRIF, at DI ENS, at Ecole Polytechnique; other institutions have similar charters of ethics.
- Academic honesty policy, as an illustration of what plagiarism means, by prof. Jae Woo Lee.
- Quality of life: CNAE.
Internships
Information for students
Finding an internship
Students are of encouraged to take steps towards finding an internship during the first trimester, aiming to have found an internship by January. Possible avenues for finding internships include looking at the list of internship offers (see below), or talking to teachers, many of whom may be able to offer internships. Students may also contact their MPRI study director, or any other point of contact they may have, such as tutors or the study director of their home institution. Other sources of internship are also accepted.
Important: a student's choice of internship is subject to approval by their study director. Minimal criteria include: (1) the internship should be in computer science; (2) it should contain a substantial research component; (3) it should last at least 4.5 months, between March and August; (4) students should be available to defend the internship in early September. Also note that an internship supervisor may be the main supervisor for at most one MPRI internship per year. It is advisable to have a back-up proposal in case your first choice is not approved, although this is not compulsory.
Administrative process
Students should submit a choice of internship on the pedagogical server by January 31. Students must fill in an internship agreement before beginning the internship. The relevant forms are available on request at the MPRI secretariats within the institutions where the students are enrolled (see contact). These forms will typically need to be agreed upon and signed by the student's home institution, and the institution where the internship happens. This process may take time. It may be wise to start the administrative process at least a month before the planned start date of the internship.
Students doing their internship abroad should start taking the necessary steps well in advance, because the office of internships has to request the prior approval of the French state health insurance office (CPAM).
For students enrolled at Université Paris Cité: students must return to the secretariat a copy of the internship agreement filled in, signed and stamped by the body with which they will be doing the internship. They must enclose a photocopy of their student card as well as a certificate of civil liability insurance providing cover for the whole length of the internship in case of accident WITHIN THE FRAMEWORK OF THE INTERNSHIP WITH THE COMPANY/PUBLIC BODY. The students and the body with which they will be doing the internship will each be given a copy of the internship agreement signed by both the person in charge of the MPRI course and the head of the university.
Evaluation
Internships are evaluated on the basis of an internship report, and an oral defense.
Each student report is assigned a reviewer, who is a member of the MPRI Studies Committee. This assignment is displayed in the planning (link below). The reviewer may ask for external expertise, and must fill the reviewer evaluation form.
Internship reports
Internship reports must be submitted by students on the pedagogical server by August 20. Reports or their modifications that are submitted after the deadline may or may not be considered by the committee. If they are considered, there will be a penalty on the final mark.
The report must start with a 2-page summary with the following outline: TEX file (PDF version).
Reports must be at most 20 pages, including the 2 pages of summary, in a standard format: LaTeX, article, 11pt, A4. Optionally, these 20 pages can be augmented with appendices, detailing for instance some of the proofs. Appendices have no page limit. However, the committee may or may not read the appendices. The report must therefore be understandable without them. Appendices should be clearly marked as such.
Reports may be written in French or in English. Writing quality is judged independently of the language: if you choose to write in English, it is your responsibility to ensure that the report is clear and well-written.
Here is a randomly selected example of a report that has received a good evaluation.
Internship supervisors should also fill an evaluation form by August 20, and send it to the reviewer. See the information for supervisors section below for more details. Students should remind their supervisor of this task.
Internship defenses
Oral defenses will take place in early September, in front of a jury set up by the MPRI Studies Committee. Each presentation will last 30 minutes (20 minutes of presentation + 10 minutes of questions). For the schedule and reviewer assignment information, see:
Please send your slides in PDF before 6PM the day before the defense, to: mpri
-dir@sympa.lmf.cnrs.frAlthough this practice is discouraged, you may also bring your own laptop with an HDMI connection, with the caveat that it may or may not work properly with the video projector. A backup solution with PDF slides is advisable.
Students should inform their internship supervisor of the date of their defense. Supervisors are welcome to attend. If they attend, the jury will discuss with them at the end of the ongoing series of defenses (which typically lasts between 90 and 120 minutes). They can also attend online. In that case, it is up to the student to set up the video call with them; and you should leave it open afterwards for discussions with the jury.
Defenses are public: other students are encouraged to attend. (Except in the rare case of a defense marked [NOT PUBLIC] in the planning.) For each session, the jury consists of a subset of the MPRI Studies Committee, and the supervisors (if present).
Students requiring some degree of confidentiality and/or the signature of a non-disclosure agreement should contact the Master's Director at least 2 months before the defense.
Information for internship supervisors
Role of a supervisor
- Supervisors are expected to provide a topic for the intern to work on, and to meet with them regulary. Interns should not have to find their own internship topic. The topic should involve research in computer science. Internships that are limited to implementation for example, with no substantial research aspect, may be graded poorly, or not accepted by the study director of the student (this validation happens before the start of the internship).
- Supervisors should fill a (simple) supervisor evaluation form and send it by August 20. It is not necessary to be formal or very detailed; the goal is to get the supervisor's opinion of the performance of the student. The form should be sent by email in text format, to the reviewer. The reviewer for the internship is indicated in the planning, see the link in the section just above. In doubt, it may also be sent to the MPRI director(s), see contact.
- If available, supervisors are welcome to attend internship defenses in early September, either in person or online. This is not mandatory, but appreciated. If supervisors are present (in person or online), the jury will discuss with them at the end of the current session of defenses (which may include up to 4 defenses), to ask for their opinion of the internship, and potentially ask questions.
Practical information
Internships should last at least 4.5 months, between mid-March and the end of August. Defenses will be in early September.
Administratively, internship agreements are signed directly between the supervisor's institution, and the institution where the student is affiliated. As a consequence, the administrative process depends on the student's school or university. It is typically fairly lightweight, and consists mainly of an agreement that needs be signed by both parties.
A supervisor may be the main supervisor for at most one MPRI internship per year. See the relevant rule here for more details.
If you wish to propose an internship, see the next section.
Internship offers
We provide a server where researchers from all over the world may submit an internship proposal for M2 MPRI students. Please note that these proposals are NOT MODERATED. For internships that take place in an industrial environment, make sure to discuss them ahead of time with your study director to ensure that they correspond to what is expected from an internship.
Previous years
Contact
M2 MPRI directors
Email: mpri
-dir@sympa.lmf.cnrs.fr- Jean GOUBAULT-LARRECQ, LMF, ENS Paris-Saclay.
Postal address: Bâtiment 650 Ada Lovelace - Université Paris-Saclay
Rue Raymond Castaing
91190 Gif-sur-Yvette, France - Brice MINAUD, EPI CASCADE, ENS Paris and Inria.
Postal address: École Normale Supérieure
Département d'Informatique
45 rue d'Ulm
75230 Paris Cedex 05, France - Sylvain SCHMITZ, IRIF, Université Paris-Cité.
Postal address: IRIF, casier 7014
Université Paris Cité
75205 Paris Cedex 13, France
M2 MPRI main secretariat
Thomas Béraud. Email: thomas.beraud
@univ-paris-diderot.fr Tel: 01 57 27 68 92. Mail: Université Paris Cité, UFR d'Informatique, Case 7024, Place Aurélie Nemours 75205 PARIS cedex 13.Contact Study Directors
For M2 MPRI students enrolled at University Paris Cité
Study director
Sophie LAPLANTE Email: laplante
@irif.fr. Tel: 01 57 27 94 47. Mail: Université Paris Cité, Case 7014, Place Aurélie Nemours 75205 PARIS cedex 13.Secretariat
Sylvia CROCHET Email: Sylvia.Crochet
@informatique.univ-paris-diderot.fr. Tel: 01 57 27 68 98. Mail: Université Paris Cité, UFR d'Informatique, Case 7024, Place Aurélie Nemours 75205 PARIS cedex 13.For M2 MPRI students enrolled at ENS, Université PSL
Study director
Brice MINAUD Email: brice.minaud
@ens.fr. Mail: École Normale Supérieure, Département Informatique, 45, rue d'Ulm 75230 Paris cedex 05.Secretariat
Mohamed SALIM ABOUBACAR Email: mohamed.salim.aboubacar
@ens.fr. Tel: 01 44 32 20 45. Mail: École Normale Supérieure, Département Informatique, 45, rue d'Ulm 75230 Paris cedex 05For M2 MPRI students enrolled at IP Paris at Ecole Polytechnique
Study director
Gilles SCHAEFFER. Email: schaeffe
@lix.polytechnique.fr. Tel: 01 69 33 40 35. Mail: Département d'informatique, École polytechnique, 91128 Palaiseau Cedex.Secretariat
Catherine BENSOUSSAN. Email: cb
@lix.polytechnique.fr. Tel: 01 69 33 40 33. Mail: Département d'informatique, École polytechnique, 91128 Palaiseau Cedex.For M2 MPRI students enrolled at IP Paris at Telecom Paris
Study director
Mauro SOZIO Email: sozio@enst.fr. Tel: +33 1 75 31 98 03 Mail: Télécom ParisTech Laboratoire Traitement et Communication de l'Information 9 place Marguerite Perey, 91120 Palaiseau
Secretariat
Email: N/A Tel: N/A Mail: Télécom ParisTech, 9 place Marguerite Perey, 91120 Palaiseau
For M2 MPRI students enrolled at University Paris Saclay
Study director
Jean GOUBAULT-LARRECQ. Email: goubault
@lmf.cnrs.fr. Tel: N/A. Mail: Bâtiment 650 Ada Lovelace - Université Paris-Saclay Rue Raymond Castaing 91190 Gif-sur-YvetteSecretariat
Laëtitia ROUCHES. Email: secretariat.info
@ens-paris-saclay.fr. Tel: 01 81 87 54 53. Mail: ENS Paris-Saclay, Département informatique, 4, avenue des Sciences, 91190 Gif-sur-YvetteFor UPMC Master students attending M2 MPRI as auditors
UPMC representative
Christoph DÜRR Email: Christoph.Durr
@lip6.fr. Tel: 01 44 27 87 39. Mail: BP 169, Couloir 26-00, Étage 4, Bureau 432, 4 place Jussieu, 75252 Paris cedex 05.