Dorian Lesbre

FR
Photo
Dorian Lesbre
PhD. Student in Computer Science
Former student of ENS Ulm

About me

I'm a PhD student at the BINSEC Team, working from NanoINNOV at CEA Paris-Saclay. My PhD subject is centered around SSA translation by abstract interpretation. I work under the supervision of Matthieu Lemerre.

My research interests focus on verification and low-level systems: formal methods, abstract interpretation, type systems, Coq, operating systems, compilers, hardware, functionnal programming and more. Besides computer science, I also enjoy mathematics and physics.

My hobbies include outdoor sports such as rock climbing, sailing, hiking and skiing. I also enjoy reading, especially sci-fi and detective stories. You can also find me playing board games and video games

Publications

Compiling with Abstract Interpretation
Dorian Lesbre and Matthieu Lemerre
Accepted at PLDI 2024, not yet published
Abstract
Rewriting and static analyses are mutually beneficial techniques: program transformations change the inten- sional aspects of the program, and can thus improve analysis precision, while some efficient transformations are enabled by specific knowledge of some program invariants. Despite the strong interaction between these techniques, they are usually considered distinct. In this paper, we demonstrate that we can turn abstract interpreters into compilers, using a simple free algebra over the standard signature of abstract domains. Functor domains correspond to compiler passes, for which soundness is translated to a proof of forward simulation, and completeness to backward simulation. We achieve translation to SSA using an abstract do- main with a non-standard SSA signature. Incorporating such an SSA translation to an abstract interpreter improves its precision; in particular we show that an SSA-based non-relational domain is always more precise than a standard non-relational domain for similar time and memory complexity. Moreover, such a domain allows recovering from precision losses that occur when analyzing low-level machine code instead of source code. These results help implement analyses or compilation passes where symbolic and semantic methods simultaneously refine each other, and improves precision when compared to doing the passes in sequence.

Miscellaneous links

Software

  • KeePassXC is a password manager. It allows you to use very secure passwords without fear of forgetting them.
  • Obsidian is an note-taking app that is both simple (based on markdown files) and very customizable thanks to a large plugin ecosystem.
  • Typst is a interesting alternative to LaTeX which fixes a good chunk of what I find frustrating with TeX.
  • Godbolt website that can compile small programs and show generated assembly. I find the ability to show assembly diff between two similar programs very helpful. It allows to quickly see how small changes affect the generated code.
  • Syncthing is a great, privacy respecting file synchronisation tool.
  • Sioyek is a PDF reader well suited to reading scientific papers.
  • Connected papers website displaying links between scientific publications as a graph. Very handy for bibliographic exploration.

Webcomics

  • XKCD a webcomic about physics, science and other stuff
  • Garfield a webcomic about an adorable fat orange cat

Video games

  • Kerbal Space Program a game for space and physics fans! It allows you to design and launch your own rockets.
  • Outer Wilds an exploration game set in a miniature solar system, this gem will take you on a memorable journey.
  • Return of the Obra Dinn short detective game which trusts players to find well hidden clues and make complex deductions
  • Factorio behind some unattractive graphics, factorio hides a very engaging and satisfying game about optimisation and logistics