Raphaël Monat

Raphaël Monat


Inria & University of Lille

I am a permanent researcher (CRCN) in the SyCoMoRES team at Inria Lille. I hold a Ph.D in computer science, supervised by Antoine Miné.

The aim of my research is to improve the quality of software through the field of formal methods. I aspire to develop and apply methods to the most realistic systems possible.

I previously worked on the static analysis of Python and C programs within the ERC MOPSA project. I am also interested in the interaction between the law and the code, and I have designed with Denis Merigoux a modern compiler for the French tax code, which is being transferred to the French tax administration.

These days, I am exploring ways to facilitate the adoption of static analysis tools; static analysis of binary code following previous works of my team; and the ongoing application of formal methods to Catala, a domain-specific language for the implementation of legislative texts.

My CV is available in French and in English.

Feel free to send me an email if you are interested in working with me!


Previous Research Experiences

  • Static Type and Value Analysis by Abstract Interpretation of Python Programs with Native C Libraries.
    Under the supervision of Antoine Miné - 2018 -- 2021.

    APR team, LIP6, Sorbonne Université, Paris, France.

  • Formal verification of Static Analyses of Floating-point Programs.
    Under the supervision of Eva Darulova - February to June 2017.

    Automated Verification and Approximation team, MPI-SWS, Saarbrücken, Germany.

  • Black-box Variational Inference in Probabilistic Programming.
    Under the supervision of Hongseok Yang - May to July 2016.

    Department of Computer Science, University of Oxford, UK.

  • Abstract Interpretation of Concurrent Programs.
    Under the supervision of Antoine Miné - June & July 2015.

    ANTIQUE Team, École Normale Supérieure, Paris, France.

Recent Talks


I strongly believe that academic prototypes accompanying research papers are important to show that a proposed technique works. I care about improving these prototypes to make them usable tools accessible to others, although it takes a lot of effort.

I am proud to be one of the core contributors of the following software:


Mlang is a new compiler for M, the domain specific language used by the French Tax Administration to compute the income tax. This is joint work with Denis Merigoux.


Mopsa is a framework to write static analyses by abstract interpretation.

Community Service

Program Committee

  • SOAP 2023
  • SV-Comp 2023
  • SAS 2022

External Review Committee

  • ECOOP 2023 (rounds 1 & 2)
  • SPLASH 2023 (rounds 1 & 2)
  • SPLASH 2022 (round 2)

External Review

  • LOPSTR 2019
  • SOAP 2021
  • SAS 2021

Artifact Evaluation Committee

  • ECOOP 2023 (rounds 1 & 2)
  • SPLASH 2023 (rounds 1 & 2)
  • SPLASH 2022 (round 2)
  • PLDI 2022
  • CAV 2022
  • ECOOP 2021
  • PLDI 2021
  • POPL 2021
  • SAS 2020

Student Volunteering

  • POPL 2017

Enseignement (en français)


  • LU1IN002 : éléments de programmation (C).
  • LU2IN005 : mathématiques discrètes.
  • LU2IN019 : programmation fonctionnelle (OCaml).
  • LU2IN024 : logique.
  • MU4IN500 : algorithmique avancée.
  • MU5IN554 : spécification et validation de programmes.
  • MU5IN555 : typage et analyse statique.
  • MPRI 2.6 : abstract interpretation, slides


  • LU3IN002 : programmation orientée objet avancée (Java).


  • LU1IN001 : éléments de programmation (Python).
  • MU4IN500 : algorithmique avancée.