Level 2 modules offer a specialised training constitutive of a true introduction to research; they require a good knowledge of the contents of the level 1 modules. Each level 2 full module is taught over the course of a semester, represents 75 student-hours (typically 50 contact hours and 25 hours of private study), and entitles students to 6 ECTS credits. Half modules are taught either 1.5h/week over the course of the semester or 3h/week over half the semester. Each such module represents 37.5 student-hours and entitles students to 3 ECTS credits.
At least twenty level 2 modules will be made available for the first semester exclusively. The MPRI's Executive Committee will set a list of level 2 modules each year; the modules thus selected will of course only be actually maintained if they attract a sufficient number of students. The level 2 modules will be taught preferably on the premises of the university of Paris 7. The table herebelow contains a list of titles and heads of level 2 modules as well as links to a description of each module.
Courses marked with a (S) are suspended in the academic year 2014-2015.
Module | Title | Nb. H | ECTS | Period(s) | Nb. Week | H/Week | Person(s) in charge | Teaching Language | Breakable |
2.1 | Logique linéaire et paradigmes logiques du calcul Linear logic and logical paradigms of computation | 48 | 6 | 1-2 | 16 | 3 | R. Di Cosmo | 3/4 French by default, 1/4 English | |
2.2 | Modèles des langages de programmation: domaines, catégories, jeux Models of programming languages: domains, categories, games | 48 | 6 | 1-2 | 16 | 3 | P.-A. Melliès | English upon request | |
2.3 | Concurrence Concurrency | 48 | 6 | 1-2 | 20 | 2.5 | R. Amadio | 1/4 English, 3/4 French | Yes |
2.4 | Programmation fonctionnelle et systemes de types Functional programming and type systems | 48 | 6 | 1-2 | 20 | 2.5 | D. Rémy | French by default | |
2.5.1 | Démonstration automatique Automated deduction | 24 | 3 | 2 | 8 | 3 | E. Contejean | French by default | |
2.6 | Interprétation abstraite: application à la vérification et à l'analyse statique Abstract interpretation: application to verification and static analysis | 48 | 6 | 1-2 | 16 | 3 | A. Miné | English upon request | |
2.7.1 | Fondements des systèmes de preuves Foundations of proof systems | 24 | 3 | 1-2 | 16 | 1.5 | G. Dowek | English upon request | |
2.7.2 | Assistants de preuves Proof assistants | 24 | 3 | 2 | 8 | 3 | B. Barras | French by default | |
2.8.1 | Théorie non-séquentielle des systèmes distribués Non-sequential theory of distributed systems | 24 | 3 | 1 | 10 | 2.5 | B. Bollig | 1/2 English upon request 1/2 French upon request | |
2.8.2 | Fondements des systèmes temps-réel et hybrides Foundations of real time and hybrid systems | 24 | 3 | 2 | 10 | 2.5 | E. Asarin | French by default | |
2.9.1 | Fondements mathématiques de la théorie des systèmes infinis Mathematical foundations of the theory of infinite transition systems | 24 | 3 | 1 | 8 | 3 | A. Finkel | French by default | |
2.9.2 | Vérification algorithmique des programmes Algorithmic verification of programs | 24 | 3 | 1 | 8 | 3 | A. Bouajjani | English upon request | |
2.10 | Aspects algorithmiques de la combinatoire Algorithmic aspects of combinatorics | 48 | 6 | 1-2 | 20 | 2.5 | G. Schaeffer | French | |
2.11 (S) | Complexité randomisée (long) Randomness in complexity (long) | 48 | 6 | 1-2 | 16 | 3 | F. Magniez | English | Yes |
2.11.1 | Algorithmes probabilistes Randomized algorithms | 24 | 3 | 1 | 8 | 3 | N. Schabanel | English upon request | |
2.11.2 | Complexité randomisée (court) Randomness in complexity (short) | 24 | 3 | 1 | 8 | 3 | I. Kerenidis | English | |
2.12.1 | Techniques en cryptographie et cryptoanalyse Techniques in cryptography and cryptanalysis | 24 | 3 | 1-2 | 16 | 1.5 | M. Abdalla | English | |
2.12.2 | Algorithmes arithmétiques pour la cryptologie Arithmetic algorithms for cryptology | 24 | 3 | 1-2 | 16 | 1.5 | F. Morain | 1/3 English by default 2/3 English upon request | |
2.13.1 | Systèmes polynomiaux, calcul formel et applications Polynomial systems, computer algebra and applications | 24 | 3 | 2 | 8 | 3 | J.-C. Faugère | English upon request | |
2.13.2 | Codes correcteurs d'erreurs et applications à la cryptographie Error correcting codes and applications to cryptography | 24 | 3 | 1-2 | 16 | 1.5 | A. Canteaut | French by default | |
2.14.1 | Analyse géométrique des données Computational geometry learning | 24 | 3 | 1 | 10 | 2.5 | J.-C. Boissonnat | English upon request | |
2.15 | Analyse d'algorithmes Analysis of algorithms | 48 | 6 | 1-2 | 16 | 3 | M. Soria | French | |
2.16 | Modélisation par automates finis Finite automata modelling | 48 | 6 | 1-2 | 16 | 3 | T. Colcombet | English upon request | |
2.17.1 | Fondements sur la modélisation des réseaux Foundations of network models | 24 | 3 | 2 | 10 | 2.5 | J. Mairesse | English upon request | |
2.18.1 | Algorithmique distribuée pour les réseaux Distributed algorithms on networks | 24 | 3 | 1-2 | 16 | 1.5 | P. Fraigniaud | 1/2 French by default 1/2 English | |
2.18.2 (S) | Algorithmique distribuée avec mémoire partagée Distributed algorithms on shared memory | 24 | 3 | 1 | 8 | 3 | C. Delporte | French | |
2.19 | Méthodes informatiques pour la biologie systémique et synthétique Computational methods for systems and synthetic biology | 48 | 6 | 1-2 | 16 | 3 | F. Fages | French by default | |
2.20.1 | Techniques de théorie des jeux en informatique Game theory techniques in computer science | 24 | 3 | 1 | 8 | 3 | W. Zielonka | French | |
2.20.2 | Fondations mathématiques de la théorie des automates Mathematical foundations of automata theory | 24 | 3 | 1-2 | 16 | 1.5 | J.-E. Pin | English upon request | |
2.22 (S) | Algorithmes efficaces en calcul formel Efficient algorithms in computer algebra | 48 | 6 | 1-2 | 16 | 3 | B. Salvy | French by default | Yes |
2.23.1 | Systèmes synchrones Synchronous systems | 24 | 3 | 1 | 8 | 3 | M. Pouzet | English upon request | |
2.24.1 | Optimisation Optimization | 24 | 3 | 1 | 10 | 2.5 | Ch. Durr | English | |
2.26.1 (S) | Logique, complexité descriptive et théorie des bases de données Logic, descriptive complexity and database theory | 24 | 3 | 1 | 8 | 3 | L. Segoufin | French by default | |
2.26.2 | Gestion de données sur le web Web data management | 24 | 3 | 2 | 8 | 3 | S. Abiteboul | English upon request | |
2.27.1 | Structures informatiques et logiques pour la modélisation linguistique Computational structures and logics for natural language modelling | 24 | 3 | 1 | 8 | 3 | S. Schmitz | English upon request | |
2.29.1 | Algorithmique des graphes Graph algorithms | 24 | 3 | 1-2 | 16 | 1.5 | M. Habib | French by default | |
2.30 | Protocoles cryptographiques : preuves formelles et calculatoires Cryptographic protocols: computational and symbolic proofs | 48 | 6 | 1-2 | 16 | 3 | H. Comon-Lundh | English upon request | Yes |
2.31.1 (S) | Algorithmique et complexité des problèmes de satisfaction de contraintes Constraint Satisfaction Problems: algorithms and complexity | 24 | 3 | 2 | 8 | 3 | M. Hermann | 1/2 English by default 1/2 English upon request | |
2.33.1 | Théorie des calculs Theory of computations | 24 | 3 | 1 | 8 | 3 | S. Perifel | French | |
2.34.1 | Informatique quantique et applications Quantum information and applications | 24 | 3 | 2 | 8 | 3 | S. Laplante | English upon request | |
2.35.1 (S) | Programmation par contraintes Constraint programming | 24 | 3 | 1 | 8 | 3 | S. Soliman | French by default | |
2.36.1 | Preuve de programmes Proofs of programs | 24 | 3 | 2 | 8 | 3 | C. Marché | English upon request | |
2.37.1 | Sémantique, langages et algorithmes pour la programmation multicore Semantics, languages and algorithms for multicore programming | 24 | 3 | 2 | 8 | 3 | A. Cohen | English upon request | |
2.38.1 | Algorithmique et combinatoire des graphes géométriques Algorithms and combinatorics for geometric graphs | 24 | 3 | 1 | 8 | 3 | E. Colin de Verdiere | French by default |
For a more detailed information on the teaching language of each module, as well as concerning the language of the exams, please look at the web page of the module.
MPRI provides excellent coverage of the following themes in Computer Science:
COCO = Computability and Complexity,
ALGO = Algorithms,
COCA = Combinatorics and Computer Algebra,
CCSE = Cryptography, Coding, and Security,
LSPR = Logics and Semantics of Programs,
AUDE = Automated Deduction,
AUFL = Automata and Formal Languages,
SPAV = System Programming, Analysis, and Verification.
The following table roughly summarizes the main themes covered by each level 2 module.
Module | COCO | ALGO | COCA | CCSE | LSPR | AUDE | AUFL | SPAV |
2.1 Linear logic | X | X | ||||||
2.2 Models of programming languages: domains, categories, games | X | |||||||
2.3 Concurrency | X | X | ||||||
2.4 Functional programming and type systems | X | X | ||||||
2.5.1 Automated deduction | X | |||||||
2.6 Abstract interpretation: application to verification and static analysis | X | X | ||||||
2.7.1 Foundations of proof systems | X | X | ||||||
2.7.2 Proof assistants | X | |||||||
2.8 Foundations of real time systems verification | X | X | ||||||
2.9.1 Mathematical foundations of the theory of infinite transition systems | X | X | X | |||||
2.9.2 Algorithmic verification of programs | X | X | X | |||||
2.10 Algorithmic aspects of combinatorics | X | X | ||||||
2.11.1 Randomized algorithms | X | X | ||||||
2.11.2 Randomness in complexity | X | X | ||||||
2.12.1 Techniques in cryptography and cryptanalysis | X | |||||||
2.12.2 Arithmetic algorithms for cryptology | X | |||||||
2.13.1 Polynomial systems, computer algebra and applications | X | X | ||||||
2.13.2 Error correcting codes and applications to cryptography | X | |||||||
2.14.1 Computational geometry learning | X | |||||||
2.15 Analysis of algorithms | X | X | ||||||
2.16 Finite automata modelling | X | X | ||||||
2.17.1 Foundations of network models | X | X | ||||||
2.18.1 Distributed algorithms on networks | X | X | ||||||
2.18.2 Distributed algorithms on shared memory | X | X | ||||||
2.19 Computational methods for systems and synthetic biology | X | |||||||
2.20.1 Game theory techniques in computer science | X | |||||||
2.20.2 Mathematical foundations of automata theory | X | |||||||
2.22 Efficient algorithms in computer algebra | X | X | X | |||||
2.23.1 Synchronous systems | X | X | ||||||
2.24.1 Optimization | X | |||||||
2.26.1 Logic, descriptive complexity and database theory | X | X | X | |||||
2.26.2 Web data management | X | X | X | |||||
2.27.1 Computational structures and logics for natural language modelling | X | |||||||
2.29.1 Graph algorithms | X | |||||||
2.30 Cryptographic protocols: computational and symbolic proofs | X | X | ||||||
2.31-1 Constraint satisfaction problems: algorithms and complexity | X | X | X | |||||
2.33.1 Theory of computations | X | X | ||||||
2.34.1 Quantum information and applications | X | X | ||||||
2.35.1 Constraint programming | X | X | ||||||
2.36.1 Proofs of programs | X | X | ||||||
2.37.1 Semantics, languages and algorithms for multicore programming | X | X | ||||||
2.38.1 Algorithms and combinatorics for geometric graphs | X | X | ||||||
Module | COCO | ALGO | COCA | CCSE | LSPR | AUDE | AUFL | SPAV |