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.
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.
@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 = {Wed, 21 Aug 2024 22:46:00 +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):