论文标题
从Event-B模型生成分布式程序
Generating Distributed Programs from Event-B Models
论文作者
论文摘要
分布式算法在检查符合其规格时面临着挑战。 可以扩展验证技术以处理分布式算法的安全性验证。在本文中,我们提出了一种将正式模型(Event-B)逐步构建方法和转换为程序(DESTALGO)相结合的方法,以解决已验证的分布式程序的设计。我们定义事件-B建模语言的子集LB(本地事件-B),仅限于将分布式程序的经典操作作为内部或本地计算,发送消息和接收消息的事件。我们将LB语言的各个元素转换为远方程序。一般方法包括从问题的陈述到程序开始,然后逐步产生在初始LB模型的几个完善步骤后获得的LB模型。 LB模型的推导未在当前论文中描述,并且在其他作品中已经解决。 通过一个简单的示例说明了LB模型为远端程序的转换。 改进过程和转换的健全性使人们可以生成正确的分布式程序。
Distributed algorithms offer challenges in checking that they meet their specifications. Verification techniques can be extended to deal with the verification of safety properties of distributed algorithms. In this paper, we present an approach for combining correct-by-construction approaches and transformations of formal models (Event-B) into programs (DistAlgo) to address the design of verified distributed programs. We define a subset LB (Local Event-B) of the Event-B modelling language restricted to events modelling the classical actions of distributed programs as internal or local computations, sending messages and receiving messages. We define then transformations of the various elements of the LB language into DistAlgo programs. The general methodology consists in starting from a statement of the problem to program and then progressively producing an LB model obtained after several refinement steps of the initial LB model. The derivation of the LB model is not described in the current paper and has already been addressed in other works. The transformation of LB models into DistAlgo programs is illustrated through a simple example. The refinement process and the soundness of the transformation allow one to produce correct-by-construction distributed programs.