eng
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
Leibniz International Proceedings in Informatics
1868-8969
2016-12-10
2:1
2:1
10.4230/LIPIcs.FSTTCS.2016.2
article
Simple Invariants for Proving the Safety of Distributed Protocols (Invited Talk)
Sagiv, Mooly
Safety of a distributed protocol means that the protocol never reaches a bad state, e.g., a state where two nodes become leaders in a leader-election protocol. Proving safety is obviously undecidable since such protocols are run by an unbounded number of nodes, and their safety needs to be established for any number of nodes. I will describe a deductive approach for proving safety, based on the concept of universally quantified inductive invariants—an adaptation of the mathematical concept of induction to the domain of programs. In the deductive approach, the programmer specifies a candidate inductive invariant and the system automatically checks if it is inductive. By restricting the invariants to be universally quantified, this approach can be effectively implemented with a SAT solver.
This is a joint work with Ken McMillan (Microsoft Research), Oded Padon (Tel Aviv University), Aurojit Panda (UC Berkeley), and Sharon Shoham (Tel Aviv University) and was integrated into the IVY system. The work is inspired by Shachar Itzhaky's thesis.
https://drops.dagstuhl.de/storage/00lipics/lipics-vol065-fsttcs2016/LIPIcs.FSTTCS.2016.2/LIPIcs.FSTTCS.2016.2.pdf
Program verification
Distributed protocols
Deductive reasoning