Proceedings of the 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation 2021
DOI: 10.1145/3453483.3454041
|View full text |Cite
|
Sign up to set email alerts
|

Zooid: a DSL for certified multiparty computation: from mechanised metatheory to certified multiparty processes

Abstract: We design and implement Zooid, a domain specific language for certified multiparty communication, embedded in Coq and implemented atop our mechanisation framework of asynchronous multiparty session types (the first of its kind). Zooid provides a fully mechanised metatheory for the semantics of global and local types, and a fully verified end-point process language that faithfully reflects the typelevel behaviours and thus inherits the global types properties such as deadlock freedom, protocol compliance, and l… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
6
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
4
2
1

Relationship

0
7

Authors

Journals

citations
Cited by 12 publications
(6 citation statements)
references
References 51 publications
0
6
0
Order By: Relevance
“…Other mechanizations (in Coq) of session types have been presented by Castro-Perez et al [CFGY21] and by Cruz-Felipe et al [CMP21]. In both cases, types are represented as an inductive datatype and the usual recursion operator, but Castro-Perez et al [CFGY21] also provide a representation based on coinductive trees that they prove to be trace-equivalent to the recursive one and that is similar to our own (Section 7). Cruz-Felipe et al [CMP21] restrict labels to a two-value set.…”
Section: Postulate V : Setmentioning
confidence: 66%
“…Other mechanizations (in Coq) of session types have been presented by Castro-Perez et al [CFGY21] and by Cruz-Felipe et al [CMP21]. In both cases, types are represented as an inductive datatype and the usual recursion operator, but Castro-Perez et al [CFGY21] also provide a representation based on coinductive trees that they prove to be trace-equivalent to the recursive one and that is similar to our own (Section 7). Cruz-Felipe et al [CMP21] restrict labels to a two-value set.…”
Section: Postulate V : Setmentioning
confidence: 66%
“…If two branching terms have overlapping branches, then we try to merge them as exemplified by rule merge_Branching_SSSS. 6 As we remarked, merging (seen as a partial function) can be undefined, for example End and p+l; End cannot be merged. This gives rise to the notion of projectability anticipated in Section 1: a choreography C is projectable on a process p in the context of a set of procedure definitions D if bproj is defined for those parameters.…”
Section: Xx:9mentioning
confidence: 99%
“…This is generalised by projectable_C D C ps, which states that C is projectable for all processes in the list ps. For a choreographic program P to be projectable, written projectable_P P, we 6 Due to space constraints, the names of these rules have been abbreviated in Figure 4. require that Main P be projectable for all processes in CCP_pn P and that all procedures be projectable for the processes that they use.…”
Section: Xx:9mentioning
confidence: 99%
“…Neither deadlock freedom nor leak freedom is proved. Their framework is used by Castro-Perez et al [2021] to mechanize a DSL for multiparty communication in Coq based on asynchronous multiparty session types. They prove deadlock freedom w.r.t.…”
Section: Related Workmentioning
confidence: 99%
“…Despite the active developments in the mechanization of the meta-theory of binary session types [Thiemann 2019;Rouvoet et al 2020;Hinrichsen et al 2021b;Tassarotti et al 2017;Goto et al 2016;Ciccone and Padovani 2020;Castro-Perez et al 2020;Gay and Vasconcelos 2010], a mechanized proof of deadlock freedom for binary session types with dynamic thread and channel creation and a dynamically changing communication topology (due to higher-order channels) is still outstanding because of the intricacies of reasoning about graphs in a mechanized setting. While the semantics of global and local types of multiparty session types has recently been mechanized [Castro-Perez et al 2021], and thus global properties such as deadlock freedom shown to hold, the result is confined to a single session without dynamic thread and channel creation and without higher-order channels.…”
Section: Introductionmentioning
confidence: 99%