On Symmetry and Quantification: A New Approach to Verify Distributed Protocols

03/27/2021
by   Aman Goel, et al.
0

Proving that an unbounded distributed protocol satisfies a given safety property amounts to finding a quantified inductive invariant that implies the property for all possible instance sizes of the protocol. Existing methods for solving this problem can be described as search procedures for an invariant whose quantification prefix fits a particular template. We propose an alternative constructive approach that does not prescribe, a priori, a specific quantifier prefix. Instead, the required prefix is automatically inferred without any search by carefully analyzing the structural symmetries of the protocol. The key insight underlying this approach is that symmetry and quantification are closely related concepts that express protocol invariance under different re-arrangements of its components. We propose symmetric incremental induction, an extension of the finite-domain IC3/PDR algorithm, that automatically derives the required quantified inductive invariant by exploiting the connection between symmetry and quantification. While various attempts have been made to exploit symmetry in verification applications, to our knowledge, this is the first demonstration of a direct link between symmetry and quantification in the context of clause learning during incremental induction. We also describe a procedure to automatically find a minimal finite size, the cutoff, that yields a quantified invariant proving safety for any size. Our approach is implemented in IC3PO, a new verifier for distributed protocols that significantly outperforms the state-of-the-art, scales orders of magnitude faster, and robustly derives compact inductive invariants fully automatically.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/28/2022

Automating and Mechanizing Cutoff-based Verification of Distributed Protocols

Distributed protocols are generally parametric and can be executed on a ...
research
05/12/2022

Plain and Simple Inductive Invariant Inference for Distributed Protocols in TLA+

We present a new technique for automatically inferring inductive invaria...
research
08/19/2021

Towards an Automatic Proof of Lamport's Paxos

Lamport's celebrated Paxos consensus protocol is generally viewed as a c...
research
05/19/2019

Inferring Inductive Invariants from Phase Structures

Infinite-state systems such as distributed protocols are challenging to ...
research
11/13/2019

Decidable Inductive Invariants for Verification of Cryptographic Protocols with Unbounded Sessions

We develop a theory of decidable inductive invariants for an infinite-st...
research
02/18/2020

Structural Invariants for the Verification of Systems with Parameterized Architectures

We consider parameterized concurrent systems consisting of a finite but ...
research
12/10/2021

Inferring Invariants with Quantifier Alternations: Taming the Search Space Explosion

We present a PDR/IC3 algorithm for finding inductive invariants with qua...

Please sign up or login with your details

Forgot password? Click here to reset