Author:
Frenkel Hadar,Grumberg Orna,Păsăreanu Corina S.,Sheinvald Sarai
Abstract
AbstractWe present Assume-Guarantee-Repair (AGR)—a novel framework which verifies that a program satisfies a set of properties and also repairs the program in case the verification fails. We consider communicating programs—these are simple C-like programs, extended with synchronous actions over communication channels. Our method, which consists of a learning-based approach to assume–guarantee reasoning, performs verification and repair simultaneously: in every iteration, AGR either makes another step towards proving that the (current) system satisfies the required properties, or alters the system in a way that brings it closer to satisfying the properties. To handle infinite-state systems we build finite abstractions, for which we check the satisfaction of complex properties that contain first-order constraints, using both syntactic and semantic-aware methods. We implemented AGR and evaluated it on various communication protocols. Our experiments present compact proofs of correctness and quick repairs.
Funder
Helmholtz-Zentrum für Informationssicherheit – CISPA gGmbH
Publisher
Springer Science and Business Media LLC
Subject
Information Systems,Software
Cited by
2 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Inferring Symbolic Automata;Logical Methods in Computer Science;2023-04-20
2. Tools and algorithms for the construction and analysis of systems: a special issue for TACAS 2020;International Journal on Software Tools for Technology Transfer;2022-09-23