Choreographic programming (CP) is a programming paradigm for the correct-by-construction development of concurrent and distributed systems: programmers write the intended overall behaviour of a system from a global perspective in a choreography, which is then automatically compiled into communicating endpoint programs by a procedure known as endpoint projection (EPP). The central promise is that the projected endpoint programs, when executed together, are behaviourally equivalent to the source choreography. Fulfilling this promise becomes delicate for expressive CP languages. Existing mechanisations of CP treat only restricted fragments, while textbook and general purpose language implementations with rich features leave crucial interactions informal. In particular, general branching in knowledge of choice, general recursion, and nondeterministic choice in choreographies have not yet been integrated in a machine-checked theory. We present Mech, a new mechanisation of CP in Lean 4 that captures these features. There are two central technical challenges in our development of Mech. First, the sketched semantics from the literature does not correctly capture how nondeterministic choice interacts with concurrency. We therefore formulate new semantics that align nondeterministic choreographic executions with the behaviours of projected endpoint programs. Second, managing all these features in proofs is complex. We address this by uncovering new algebraic laws for choreographies, the operators used in their semantics, EPP, and their combinations. Using our development, we prove completeness and soundness of EPP and derive communication safety and deadlock-freedom for projected networks, yielding the most extensive mechanised theory of CP to date.


翻译:暂无翻译

0
下载
关闭预览

相关内容

这是第25届年度会议,讨论有约束计算的所有方面,包括理论、算法、环境、语言、模型、系统和应用,如决策、资源分配、调度、配置和规划。为了纪念25周年,吉恩·弗洛伊德创作了一本“虚拟卷”来庆祝这个系列会议。信息可以在这里找到。约束编程协会有本系列中以前的会议列表。CP 2019计划将包括展示关于约束技术的高质量科学论文。除了通常的技术轨道外,CP 2019年会议还将有主题轨道。每个赛道都有一个专门的小组委员会,以确保有能力的评审员将审查这些领域的人提交的论文。 官网链接:https://cp2019.a4cp.org/index.html
EMNLP2024|从知识图谱中习得大语言模型的规划能力
专知会员服务
31+阅读 · 2024年11月27日
COLING2024 | 面向编程的自然语言处理综述
专知会员服务
28+阅读 · 2024年4月23日
EMNLP2023:MMEdit——如何编辑多模态大语言模型?
专知会员服务
39+阅读 · 2023年11月5日
最新《图嵌入组合优化》综述论文,40页pdf
专知会员服务
35+阅读 · 2020年9月7日
AmpliGraph:知识图谱表示学习工具包
专知
40+阅读 · 2019年4月6日
深度学习中Attention Mechanism详细介绍:原理、分类及应用
深度学习与NLP
10+阅读 · 2019年2月18日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
论文浅尝 | 基于知识图谱子图匹配以回答自然语言问题
开放知识图谱
26+阅读 · 2018年6月26日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Arxiv
0+阅读 · 7月23日
VIP会员
最新内容
《最强大的军事网状网络》
专知会员服务
5+阅读 · 9月7日
《预测陆军征兵任务分配》110页
专知会员服务
5+阅读 · 9月7日
分层反无人机系统发展新趋势
专知会员服务
11+阅读 · 9月3日
何为协作武器?
专知会员服务
11+阅读 · 9月1日
相关VIP内容
EMNLP2024|从知识图谱中习得大语言模型的规划能力
专知会员服务
31+阅读 · 2024年11月27日
COLING2024 | 面向编程的自然语言处理综述
专知会员服务
28+阅读 · 2024年4月23日
EMNLP2023:MMEdit——如何编辑多模态大语言模型?
专知会员服务
39+阅读 · 2023年11月5日
最新《图嵌入组合优化》综述论文,40页pdf
专知会员服务
35+阅读 · 2020年9月7日
相关基金
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员