Martin Pépin

About me


I am a post-doc at IRIF (Université de Paris) in the PPS pole. In did my PhD at LIP6 (Sorbonne Université) under the supervision of Antoine Genitrini and Frederic Peschanski. My research is focused on the combinatorial aspects of concurrency, random generation, and the semantics of probabilistic programs.

I also like to program a lot, for fun and also as a research activity. I consider it to be a real part of research to provide a clean and usable implementation of the algorithms and ideas we develop; and I dedicate a good part of my time to it.

PhD thesis

I defended my PhD thesis, entitled "Quantitative and algorithmic analysis of concurrent programs", on Wednesday, September 29th in Paris. The most up-to-date version of the manuscript is available here.



Uniform SAmplINg with BOLTZmann [tool paper]

M. Dien, M. Pépin

Submitted to ICTAC 2022 - 19th International Colloquium on Theoretical Aspects of Computing



A quantitative study of fork-join processes with non-deterministic choice: application to the statistical exploration of the state-space

A. Genitrini, M. Pépin, F. Peschanski

Theoretical Computer Science 2021, 912


Lexicographic unranking of combinations revisited

A. Genitrini, M. Pépin

Algorithms 2021, 14(3), 97


Unlabelled ordered DAGs and labelled DAGs: constructive enumeration and uniform random sampling

A. Genitrini, M. Pépin, A. Viola

LAGOS 2021 - XI Latin and American Algorithms, Graphs and Optimization Symposium


Statistical Analysis of Non-Deterministic Fork-join Processes

A. Genitrini, M. Pépin, F. Peschanski

ICTAC 2020 - 17th International Colloquium on Theoretical Aspects of Computing



Statistical Analysis of Non-Deterministic Fork-join Processes

December 2020 ICTAC'20 [slides]


A short and non-exhaustive list of softwares I have developed or contributed to as part of my research: Other non research-related projects can be found on my GitHub, the GitHub of « Les Boloss⋅es », and on the ENS gitlab.

Teaching - past years

Éléments de programmation 2 (LU1IN002)

Jan. 2021 (38h) - Written exercises

Programming class in C for first year students.

Projet STL (PSTL)

Feb. 2020

Tutoring of master students on programing projects:

  • Implementation and comparison of modern sorting algorithms.
    Their work is available on Github.
  • Development of a web inteface for a pedagogical tool helping students of the functional programming class (LU2IN019) understanding the evaluation model of the subset of OCaml taught in the class.
    Their work is available on Gitlab and a demo in running here.

Programmation fonctionnelle (LU2IN019)

Sept. 2019 (38h) - Written & practical exercises

Introduction to functional programming in OCaml for second year students.

Groupe de recherche (GRAPA)

Sept. 2019 (6h)

Tutoring of master students on a research project.

Ateliers de Recherche Encadrée (ARE CALRAIS)

Feb. 2019 (20h) - Tutoring

Introduction to the research methodology for first year students.

Fonctions et procédures de calcul (2I008)

Feb. 2019 (19h) - Practical exercises

Programming class in OCaml in the functional and imperative styles for second year students.

Algorithmique Avancée (ALGAV)

Sept. 2018 (10h) - Written exercises

Advanced algorithmic class for master students.

Analyse d'algorithmes et Génération aléatoire (AAGA)

Sept. 2018 (8h) - Practical exercises

Algorithm analysis and random generation of integers and tree-like structures.

Éléments de programmation 1 (I1001)

Sept. 2018 (19h) - Practical exercises

Introduction to programming for first year students.