Formalising a Turing-Complete Choreographic Language in Coq

Luís Cruz-Filipe, Fabrizio Montesi, Marco Peressotti [2021].
In proceedings of ITP 2021, pp. 15:1-15:18.

Abstract

The theory of choreographic languages typically includes a number of complex results that are proved by structural induction. The high number of cases and the subtle details in some of them lead to long reviewing processes, and occasionally to errors being found in published proofs. In this work, we take a published proof of Turing completeness of a choreographic language and formalise it in Coq. Our development includes formalising the choreographic language, its basic properties, Kleene’s theory of partial recursive functions, the encoding of these functions as choreographies, and a proof that this encoding is correct.

With this effort, we show that theorem proving can be a very useful tool in the field of choreographic languages: besides the added degree of confidence that we get from a mechanised proof, the formalisation process led us to a significant simplification of the underlying theory. Our results offer a foundation for the future formal development of choreographic languages.

Links
doi.org
Additional notes
None
Cite (BibTeX)
Click to expand
@inproceedings{DBLP:conf/itp/Cruz-FilipeMP21,
  author       = {Lu{\'{\i}}s Cruz{-}Filipe and
                  Fabrizio Montesi and
                  Marco Peressotti},
  editor       = {Liron Cohen and
                  Cezary Kaliszyk},
  title        = {Formalising a Turing-Complete Choreographic Language in Coq},
  booktitle    = {12th International Conference on Interactive Theorem Proving, {ITP}
                  2021, June 29 to July 1, 2021, Rome, Italy (Virtual Conference)},
  series       = {LIPIcs},
  volume       = {193},
  pages        = {15:1--15:18},
  publisher    = {Schloss Dagstuhl - Leibniz-Zentrum f{\"{u}}r Informatik},
  year         = {2021},
  url          = {https://doi.org/10.4230/LIPIcs.ITP.2021.15},
  doi          = {10.4230/LIPICS.ITP.2021.15},
  timestamp    = {Thu, 14 Oct 2021 10:27:52 +0200},
  biburl       = {https://dblp.org/rec/conf/itp/Cruz-FilipeMP21.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

A PDF is available (possibly a preprint):

Download PDF