# Inferring Inductive Invariants from Phase Structures

**Authors:** Yotam M. Y. Feldman, James R. Wilcox, Sharon Shoham, Mooly Sagiv

arXiv: 1905.07739 · 2019-05-21

## TL;DR

This paper introduces a user-guided approach to automatically infer inductive invariants for infinite-state systems, especially distributed protocols, by leveraging phase structures to improve inference success.

## Contribution

It proposes a novel method that uses phase invariants and user-specified phase structures to guide invariant inference, enhancing applicability to complex infinite-state systems.

## Key findings

- User guidance with phase structures improves inference success.
- The approach aligns with domain experts' intuitive reasoning.
- Results outperform existing invariant inference techniques.

## Abstract

Infinite-state systems such as distributed protocols are challenging to verify using interactive theorem provers or automatic verification tools. Of these techniques, deductive verification is highly expressive but requires the user to annotate the system with inductive invariants. To relieve the user from this labor-intensive and challenging task, invariant inference aims to find inductive invariants automatically. Unfortunately, when applied to infinite-state systems such as distributed protocols, existing inference techniques often diverge, which limits their applicability.   This paper proposes user-guided invariant inference based on phase invariants, which capture the different logical phases of the protocol. Users conveys their intuition by specifying a phase structure, an automaton with edges labeled by program transitions; the tool automatically infers assertions that hold in the automaton's states, resulting in a full safety proof.The additional structure from phases guides the inference procedure towards finding an invariant.   Our results show that user guidance by phase structures facilitates successful inference beyond the state of the art. We find that phase structures are pleasantly well matched to the intuitive reasoning routinely used by domain experts to understand why distributed protocols are correct, so that providing a phase structure reuses this existing intuition.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1905.07739/full.md

## Figures

8 figures with captions in the complete paper: https://tomesphere.com/paper/1905.07739/full.md

## References

61 references — full list in the complete paper: https://tomesphere.com/paper/1905.07739/full.md

---
Source: https://tomesphere.com/paper/1905.07739