Proceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation 2018
DOI: 10.1145/3192366.3192414
|View full text |Cite
|
Sign up to set email alerts
|

Modularity for decidability of deductive verification with applications to distributed systems

Abstract: Proof automation can substantially increase productivity in formal verification of complex systems. However, unpredictablility of automated provers in handling quantified formulas presents a major hurdle to usability of these tools. We propose to solve this problem not by improving the provers, but by using a modular proof methodology that allows us to produce decidable verification conditions. Decidability greatly improves predictability of proof automation, resulting in a more practical verification approach… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
27
0

Year Published

2019
2019
2020
2020

Publication Types

Select...
5
2
1

Relationship

3
5

Authors

Journals

citations
Cited by 41 publications
(27 citation statements)
references
References 29 publications
0
27
0
Order By: Relevance
“…We have used Goolong to develop four challenging case studies: the classic two-phase commit protocol, the Raft leader election protocol, single-decree Paxos protocol and a Multi-Paxos based distributed key-value store that employs our protocol rounds. In our tests, the key-value store outperformed other verified stores [Drăgoi et al 2016;Taube et al 2018a] while staying within 3x of an unverified state-of-the-art implementation [Moraru et al 2013]. Goolong Library To be able to extract IceT programs from programs written in Go, we wrote a library that exposes IceT language primitives (e.g., sequential iteration, symmetric processes, send and recvTO etc) in Go.…”
Section: Discussionmentioning
confidence: 93%
See 2 more Smart Citations
“…We have used Goolong to develop four challenging case studies: the classic two-phase commit protocol, the Raft leader election protocol, single-decree Paxos protocol and a Multi-Paxos based distributed key-value store that employs our protocol rounds. In our tests, the key-value store outperformed other verified stores [Drăgoi et al 2016;Taube et al 2018a] while staying within 3x of an unverified state-of-the-art implementation [Moraru et al 2013]. Goolong Library To be able to extract IceT programs from programs written in Go, we wrote a library that exposes IceT language primitives (e.g., sequential iteration, symmetric processes, send and recvTO etc) in Go.…”
Section: Discussionmentioning
confidence: 93%
“…For this, we run it on three separate Amazon EC2 t2.micro instances in the same availability zone using a client executing a series of PUT or GET queries. Table Table 2 show the throughput compared to Psync [Drăgoi et al 2016], Ivy [Taube et al 2018b], and IronFleet [Hawblitzel et al 2015a]. While we were able to run Psync, we were unable to run Ivy and IronKV and instead we provide their published results as a (albeit not directly comparable) reference.…”
Section: Q3: Verification Timementioning
confidence: 99%
See 1 more Smart Citation
“…Outside the realm of process calculi, various works tackle the problem of protocol-aware verification, e.g., [40,71,74]. We share similar goals, although we adopt a different theory and design, leading to different tradeoffs: crucially, the works above develop new languages, or build upon a powerful dependently-typed host language (Coq) with interactive proofs, to support rich representations of protocol state.…”
Section: Conclusion and Related Workmentioning
confidence: 99%
“…Ivy [Padon et al 2016] initially supported debugging infinite-state systems using bounded verification, and verifying their safety by gradually building inductive invariants. Their decidable decomposition notion [Taube et al 2018] (i.e., systems, models and proofs must be built modularly to enable the use of different decidable logics) allowed Ivy to automatically verify the correctness of implementations of crash-fault tolerant systems such as Raft and Paxos (as opposed to models in [Padon et al 2017]). Ivy also supports liveness by reducing it to safety .…”
Section: Toolsmentioning
confidence: 99%