Type Systems for Distributed Programs: Components and Sessions

Ornela Dardha
{"title":"Type Systems for Distributed Programs: Components and Sessions","authors":"Ornela Dardha","doi":"10.2991/978-94-6239-204-5","DOIUrl":null,"url":null,"abstract":"Modern software systems, in particular distributed ones, are everywhere around us and are at the basis of our everyday activities. Hence, guaranteeing their correctness, consistency and safety is of paramount importance. Their complexity makes the verification of such properties a very challenging task. It is natural to expect that these systems are reliable and above all usable. i) In order to be reliable, compositional models of software systems need to account for consistent dynamic reconfiguration, i.e., changing at runtime the communication patterns of a program. ii) In order to be useful, compositional models of software systems need to account for interaction, which can be seen as communication patterns among components which collaborate together to achieve a common task. The aim of the Ph.D. was to develop powerful techniques based on formal methods for the verification of correctness, consistency and safety properties related to dynamic reconfiguration and communication in complex distributed systems. In particular, static analysis techniques based on types and type systems appeared to be an adequate methodology, considering their success in guaranteeing not only basic safety properties, but also more sophisticated ones like, deadlock or livelock freedom in a concurrent setting. The main contributions of this dissertation are twofold. i) On the components side: we design types and a type system for a concurrent object-oriented calculus to statically ensure consistency of dynamic reconfigurations related to modifications of communication patterns in a program during execution time. ii) On the communication side: we study advanced safety properties related to communication in complex distributed systems like deadlock-freedom, livelock-freedom and progress. Most importantly, we exploit an encoding of types and terms of a typical distributed language, session π-calculus, into the standard typed π-calculus, in order to understand the expressive power of concurrent calculi with structured communication primitives and how they stand with respect to the standard typed concurrent calculi, namely (variants) of typed π-calculus. Then, we show how to derive in the session π-calculus basic properties, like type safety or complex ones, like progress, by encoding.","PeriodicalId":248639,"journal":{"name":"Atlantis Studies in Computing","volume":"13 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"17","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Atlantis Studies in Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.2991/978-94-6239-204-5","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 17

Abstract

Modern software systems, in particular distributed ones, are everywhere around us and are at the basis of our everyday activities. Hence, guaranteeing their correctness, consistency and safety is of paramount importance. Their complexity makes the verification of such properties a very challenging task. It is natural to expect that these systems are reliable and above all usable. i) In order to be reliable, compositional models of software systems need to account for consistent dynamic reconfiguration, i.e., changing at runtime the communication patterns of a program. ii) In order to be useful, compositional models of software systems need to account for interaction, which can be seen as communication patterns among components which collaborate together to achieve a common task. The aim of the Ph.D. was to develop powerful techniques based on formal methods for the verification of correctness, consistency and safety properties related to dynamic reconfiguration and communication in complex distributed systems. In particular, static analysis techniques based on types and type systems appeared to be an adequate methodology, considering their success in guaranteeing not only basic safety properties, but also more sophisticated ones like, deadlock or livelock freedom in a concurrent setting. The main contributions of this dissertation are twofold. i) On the components side: we design types and a type system for a concurrent object-oriented calculus to statically ensure consistency of dynamic reconfigurations related to modifications of communication patterns in a program during execution time. ii) On the communication side: we study advanced safety properties related to communication in complex distributed systems like deadlock-freedom, livelock-freedom and progress. Most importantly, we exploit an encoding of types and terms of a typical distributed language, session π-calculus, into the standard typed π-calculus, in order to understand the expressive power of concurrent calculi with structured communication primitives and how they stand with respect to the standard typed concurrent calculi, namely (variants) of typed π-calculus. Then, we show how to derive in the session π-calculus basic properties, like type safety or complex ones, like progress, by encoding.
分布式程序的类型系统:组件和会话
现代软件系统,特别是分布式软件系统,无处不在,是我们日常活动的基础。因此,保证它们的正确性、一致性和安全性是至关重要的。它们的复杂性使得验证这些属性成为一项非常具有挑战性的任务。人们很自然地期望这些系统是可靠的,最重要的是可用的。i)为了可靠,软件系统的组合模型需要考虑一致的动态重新配置,即,在运行时更改程序的通信模式。ii)为了有用,软件系统的组合模型需要考虑交互,它可以被看作是组件之间的通信模式,这些组件一起协作以实现共同的任务。博士学位的目标是开发基于形式化方法的强大技术,用于验证复杂分布式系统中与动态重构和通信相关的正确性、一致性和安全性。特别是,基于类型和类型系统的静态分析技术似乎是一种适当的方法,考虑到它们不仅成功地保证了基本的安全属性,而且还保证了更复杂的安全属性,如并发设置中的死锁或活锁自由。本文的主要贡献有两个方面。i)在组件方面:我们为并发的面向对象演算设计了类型和类型系统,以静态地确保与执行期间程序中通信模式修改相关的动态重新配置的一致性。ii)在通信方面:我们研究了复杂分布式系统中与通信相关的高级安全特性,如死锁自由、活锁自由和进度。最重要的是,我们将典型的分布式语言会话π-演算的类型和项编码转化为标准类型π-演算,以了解具有结构化通信原语的并发演算的表达能力,以及它们与标准类型并发演算(即类型π-演算的变体)的区别。然后,我们展示了如何在会话π微积分中通过编码推导出类型安全之类的基本性质或进度之类的复杂性质。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术文献互助群
群 号:604180095
Book学术官方微信