Interactive Safety Verification of Distributed Protocols by Inductive Proof Decomposition

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Schultz, William, Ashton, Edward, Howard, Heidi, Tripakis, Stavros
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866908981280112640
author Schultz, William
Ashton, Edward
Howard, Heidi
Tripakis, Stavros
author_facet Schultz, William
Ashton, Edward
Howard, Heidi
Tripakis, Stavros
contents Many techniques for the automated verification of distributed protocols have been developed over the past several years, but their performance is still unpredictable and their failure modes can be opaque for industrial scale verification tasks. Thus, in practice, large-scale verification efforts typically require some amount of human guidance. In this paper, we present inductive proof decomposition, a new methodology for interactive safety verification that provides a compositional, interactive approach to inductive invariant development. Our approach guides the human-aided development of inductive invariants via a novel structure, an inductive proof graph, which is built incrementally by a human verifier, working backwards from a target safety property. A user is guided by induction counterexamples that are localized to specific nodes of this graph, and nodes of this proof graph are further decomposed based on logical actions that appear in a protocol's transition relation. Our decomposition also enables a localized variable slicing technique that hides irrelevant protocol state at each sub-component of an inductive proof, allowing a user to focus on fine-grained sub-problems rather than a large, monolithic inductive invariant. We present our technique and experience applying it to develop inductive safety proofs of several complex distributed protocols, including the Raft consensus protocol, which is beyond the capabilities of modern automated verification tools. We also demonstrate how the developed proof graphs provide additional insight into the structure of a protocol proof and its correctness.
format Preprint
id arxiv_https___arxiv_org_abs_2404_18048
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Interactive Safety Verification of Distributed Protocols by Inductive Proof Decomposition
Schultz, William
Ashton, Edward
Howard, Heidi
Tripakis, Stavros
Distributed, Parallel, and Cluster Computing
Logic in Computer Science
Many techniques for the automated verification of distributed protocols have been developed over the past several years, but their performance is still unpredictable and their failure modes can be opaque for industrial scale verification tasks. Thus, in practice, large-scale verification efforts typically require some amount of human guidance. In this paper, we present inductive proof decomposition, a new methodology for interactive safety verification that provides a compositional, interactive approach to inductive invariant development. Our approach guides the human-aided development of inductive invariants via a novel structure, an inductive proof graph, which is built incrementally by a human verifier, working backwards from a target safety property. A user is guided by induction counterexamples that are localized to specific nodes of this graph, and nodes of this proof graph are further decomposed based on logical actions that appear in a protocol's transition relation. Our decomposition also enables a localized variable slicing technique that hides irrelevant protocol state at each sub-component of an inductive proof, allowing a user to focus on fine-grained sub-problems rather than a large, monolithic inductive invariant. We present our technique and experience applying it to develop inductive safety proofs of several complex distributed protocols, including the Raft consensus protocol, which is beyond the capabilities of modern automated verification tools. We also demonstrate how the developed proof graphs provide additional insight into the structure of a protocol proof and its correctness.
title Interactive Safety Verification of Distributed Protocols by Inductive Proof Decomposition
topic Distributed, Parallel, and Cluster Computing
Logic in Computer Science
url https://arxiv.org/abs/2404.18048