🤖 AI Summary
This work addresses the complexity and lack of modularity in proving the Endpoint Projection (EPP) theorem in choreographic programming, which arises from mismatches between global and local viewpoints. To resolve this, the paper introduces a novel choreographic semantics grounded in the local perspective of individual processes and defines an extended bisimulation-based preorder to precisely capture the propagation of choice knowledge in distributed processes. This approach yields a modular and streamlined proof of the EPP theorem, significantly enhancing the clarity and composability of the proof structure. Moreover, it deepens the foundational understanding of choreographic semantics, thereby providing a robust theoretical basis for future formal verification efforts and language design in distributed systems.
📝 Abstract
The Endpoint Projection (EPP) theorem is a cornerstone of choreographic programming. It states that every choreography can be projected to a network of processes that correctly implements it. Proving EPP is notoriously difficult, and existing proofs are complex and non-modular because of the mismatch between the global view of choreographies and the local view of processes.
In this article, we show how to reconcile this mismatch by designing a new semantics for choreographies that is built on the local view of processes, as well as a new preorder relation between choreographies and networks that extends bisimulation to deal with the propagation of knowledge of choice among distributed processes. As a result, we can give a modular proof of EPP, which is conceptually simpler than existing ones and also provides better insights on the theory of choreographic programming.