Towards an Isabelle/HOL formalisation of core Erlang

J. Harrison
{"title":"Towards an Isabelle/HOL formalisation of core Erlang","authors":"J. Harrison","doi":"10.1145/3123569.3123576","DOIUrl":null,"url":null,"abstract":"As part of broader work to improve the safety of Erlang systems, we are attempting to detect (and prevent) messages which remain forever unreceived in process' mailboxes using a mix of static and runtime analysis. We have formalised the communicating portion of Core Erlang using Isabelle/HOL, an interactive theorem prover. We can use the Isabelle toolchain to prove properties of our model, automatically prepare documents, and generate verified executable code in a variety of functional programming languages. We formally model a communicating fragment of Core Erlang in a language we call CoErl. After defining the evaluation of expressions, we model the process-local and concurrent semantics of the language using a labelled transition system. We also introduce the notion of mailbox traces which capture communication events during process execution. This is followed by some illustrative examples of the concurrent semantics. Although our CoErl model is a solid foundation for a full formalisation of Core Erlang, it currently lacks higher-order and recursive behaviour. Isabelle/HOL has proved practical for formalising and verifying several properties of CoErl and its trace system, while ongoing and future work focuses on bringing the language to feature parity with Core Erlang and Erlang/OTP.","PeriodicalId":106017,"journal":{"name":"Proceedings of the 16th ACM SIGPLAN International Workshop on Erlang","volume":"83 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-09-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 16th ACM SIGPLAN International Workshop on Erlang","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3123569.3123576","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

As part of broader work to improve the safety of Erlang systems, we are attempting to detect (and prevent) messages which remain forever unreceived in process' mailboxes using a mix of static and runtime analysis. We have formalised the communicating portion of Core Erlang using Isabelle/HOL, an interactive theorem prover. We can use the Isabelle toolchain to prove properties of our model, automatically prepare documents, and generate verified executable code in a variety of functional programming languages. We formally model a communicating fragment of Core Erlang in a language we call CoErl. After defining the evaluation of expressions, we model the process-local and concurrent semantics of the language using a labelled transition system. We also introduce the notion of mailbox traces which capture communication events during process execution. This is followed by some illustrative examples of the concurrent semantics. Although our CoErl model is a solid foundation for a full formalisation of Core Erlang, it currently lacks higher-order and recursive behaviour. Isabelle/HOL has proved practical for formalising and verifying several properties of CoErl and its trace system, while ongoing and future work focuses on bringing the language to feature parity with Core Erlang and Erlang/OTP.
走向核心Erlang的Isabelle/HOL形式化
作为提高Erlang系统安全性的更广泛工作的一部分,我们正在尝试使用静态和运行时分析的混合方法来检测(并防止)进程邮箱中永远未接收的消息。我们已经使用Isabelle/HOL(一个交互式定理证明器)形式化了Core Erlang的通信部分。我们可以使用Isabelle工具链来证明模型的属性,自动准备文档,并用各种函数式编程语言生成经过验证的可执行代码。我们用一种叫做corel的语言正式地为Core Erlang的通信片段建模。在定义表达式的求值之后,我们使用标记转换系统对语言的过程局部和并发语义进行建模。我们还介绍了邮箱跟踪的概念,它捕获进程执行期间的通信事件。接下来是并发语义的一些说明性示例。虽然我们的corel模型是Core Erlang完整形式化的坚实基础,但它目前缺乏高阶和递归行为。Isabelle/HOL在形式化和验证corel及其跟踪系统的几个属性方面已经被证明是实用的,而正在进行和未来的工作将重点放在使该语言与Core Erlang和Erlang/OTP具有相同的功能上。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信