Certifying Choreography Compilation

Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti [2021].
In proceedings of ICTAC 2021, pp. 115-133.


Choreographic programming is a paradigm for developing concurrent and distributed systems, where programs are choreographies that define, from a global viewpoint, the computations and interactions that communicating processes should enact. Choreography compilation translates choreographies into the local definitions of process behaviours, given as terms in a process calculus.

Proving choreography compilation correct is challenging and error-prone, because it requires relating languages in different paradigms (global interactions vs local actions) and dealing with a combinatorial explosion of proof cases. We present the first certified program for choreography compilation for a nontrivial choreographic language supporting recursion.

Additional notes
Cite (BibTeX)
Click to expand
  author       = {Lu{\'{\i}}s Cruz{-}Filipe and
                  Fabrizio Montesi and
                  Marco Peressotti},
  editor       = {Antonio Cerone and
                  Peter Csaba {\"{O}}lveczky},
  title        = {Certifying Choreography Compilation},
  booktitle    = {Theoretical Aspects of Computing - {ICTAC} 2021 - 18th International
                  Colloquium, Virtual Event, Nur-Sultan, Kazakhstan, September 8-10,
                  2021, Proceedings},
  series       = {Lecture Notes in Computer Science},
  volume       = {12819},
  pages        = {115--133},
  publisher    = {Springer},
  year         = {2021},
  url          = {https://doi.org/10.1007/978-3-030-85315-0\_8},
  doi          = {10.1007/978-3-030-85315-0\_8},
  timestamp    = {Wed, 01 Sep 2021 12:53:43 +0200},
  biburl       = {https://dblp.org/rec/conf/ictac/Cruz-FilipeMP21.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}

A PDF is available (possibly a preprint):

Download PDF