Title
An Empirical Study on the Correctness of Formally Verified Distributed Systems.
Abstract
Recent advances in formal verification techniques enabled the implementation of distributed systems with machine-checked proofs. While results are encouraging, the importance of distributed systems warrants a large scale evaluation of the results and verification practices. This paper thoroughly analyzes three state-of-the-art, formally verified implementations of distributed systems: Iron-Fleet, Verdi, and Chapar. Through code review and testing, we found a total of 16 bugs, many of which produce serious consequences, including crashing servers, returning incorrect results to clients, and invalidating verification guarantees. These bugs were caused by violations of a wide-range of assumptions on which the verified components relied. Our results revealed that these assumptions referred to a small fraction of the trusted computing base, mostly at the interface of verified and unverified components. Based on our observations, we have built a testing toolkit called PK, which focuses on testing these parts and is able to automate the detection of 13 (out of 16) bugs.
Year
DOI
Venue
2017
10.1145/3064176.3064183
EuroSys
Field
DocType
Citations 
Programming language,Computer science,Concurrency,Server,Correctness,Real-time computing,Mathematical proof,Trusted computing base,Mutual exclusion,Code review,Formal verification,Distributed computing
Conference
12
PageRank 
References 
Authors
0.60
37
4
Name
Order
Citations
PageRank
Pedro Fonseca1834.23
Kaiyuan Zhang2223.17
Xi Wang354029.04
Arvind Krishnamurthy44540312.24