论文标题

用于验证具有参数化体系结构的系统的结构不变性

Structural Invariants for the Verification of Systems with Parameterized Architectures

论文作者

Bozga, Marius, Esparza, Javier, Iosif, Radu, Sifakis, Joseph, Welzel, Christoph

论文摘要

我们考虑由有限但未知数量的组件组成的参数化并发系统,通过复制一组有限状态自动机,获得。组件通过执行参与者同时更新其状态的原子互动来通信。我们引入了一种交互逻辑,以指定相互作用的类型(例如\ rendez-vous,广播)和系统的拓扑(例如\ \ pipeline,ring)。逻辑可以很容易地嵌入有限的许多继任者的遗传二阶逻辑中,因此是可决定的。 证明这种参数化系统的安全性,例如死锁自由或相互排斥,需要推断一个归纳不变的不变性,该归纳不变包含所有系统实例中所有可触及的状态,也不是不安全的状态。我们提出了一种直接从描述相互作用的公式中自动合成归纳不变的方法,而无需昂贵的固定点迭代。我们从实验上证明,这种不变的足够强,可以验证许多系统的安全性能,包括教科书示例(用餐哲学家,同步方案),经典的互斥算法,高速缓存协调方案和自稳定算法,用于任意组件的数量。

We consider parameterized concurrent systems consisting of a finite but unknown number of components, obtained by replicating a given set of finite state automata. Components communicate by executing atomic interactions whose participants update their states simultaneously. We introduce an interaction logic to specify both the type of interactions (e.g.\ rendez-vous, broadcast) and the topology of the system (e.g.\ pipeline, ring). The logic can be easily embedded in monadic second order logic of finitely many successors, and is therefore decidable. Proving safety properties of such a parameterized system, like deadlock freedom or mutual exclusion, requires to infer an inductive invariant that contains all reachable states of all system instances, and no unsafe state. We present a method to automatically synthesize inductive invariants directly from the formula describing the interactions, without costly fixed point iterations. We experimentally prove that this invariant is strong enough to verify safety properties of a large number of systems including textbook examples (dining philosophers, synchronization schemes), classical mutual exclusion algorithms, cache-coherence protocols and self-stabilization algorithms, for an arbitrary number of components.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源