Inductive Invariants That Spark Joy: Using Invariant Taxonomies to Streamline Distributed Protocol Proofs
Tony Nuda Zhang, Travis Hance, Manos Kapritsos, Tej Chajed, Bryan Parno
摘要
Proving the correctness of a distributed protocol is a challenging endeavor. Central to this task is finding an inductive invariant for the protocol. Currently, automated invariant inference algorithms require developers to describe protocols using a restricted logic. If the developer wants to prove a protocol expressed without these restrictions, they must devise an inductive invariant manually.
We propose an approach that simplifies and partially automates finding the inductive invariant of a distributed protocol, as well as proving that it really is an invariant. The key insight is to identify an invariant taxonomy that divides invariants into Regular Invariants, which have one of a few simple lowlevel structures, and Protocol Invariants, which capture the higher-level host relationships that make the protocol work.
Building on the insight of this taxonomy, we describe the Kondo methodology for proving the correctness of a distributed protocol modeled as a state machine. The developer first manually devises the Protocol Invariants by proving a synchronous version of the protocol correct. In this simpler version, sends and receives are replaced with atomic variable assignments. The Kondo tool then automatically generates the asynchronous protocol description, Regular Invariants, and proofs that the Regular Invariants are inductive on their own. Finally, Kondo combines these with the synchronous proof into a draft proof of the asynchronous protocol, which may then require a small amount of user effort to complete. Our evaluation shows that Kondo reduces developer effort for a wide variety of distributed protocols.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper3
- Basilisk: Using Provenance Invariants to Automate Proofs of Undecidable ProtocolsTony Nuda Zhang, Keshav Singh, Tej Chajed, Manos Kapritsos 等OSDI 2025 · 被引用 9 次
- AutoMan: Facilitating Verified Distributed Systems Development Through Automatic Code Generation and Manual OptimizationsZihao Zhang, Ti Zhou, Christa Jenkins, Omar Chowdhury 等SOSP 2025 · 被引用 2 次
- Specy: Learning Specifications for Distributed Systems from Event TracesMike He, Ankush Desai, Jagarapu Aishwarya, Doug Terry 等OOPSLA 2026
它引用的顶会 Paper11
- DistAI: Data-Driven Automated Invariant Learning for Distributed ProtocolsJianan Yao, Runzhou Tao, Ronghui Gu, Jason Nieh 等OSDI 2021 · 被引用 76 次
- Finding Invariants of Distributed Systems: It's a Small (Enough) World After AllTravis Hance, Marijn Heule, Ruben Martins, Bryan ParnoNSDI 2021 · 被引用 69 次
- Using Lightweight Formal Methods to Validate a Key-Value Storage Node in Amazon S3James Bornholt, Rajeev Joshi, Vytautas Astrauskas, Brendan Cully 等SOSP 2021 · 被引用 63 次
- DuoAI: Fast, Automated Inference of Inductive Invariants for Verifying Distributed ProtocolsJianan Yao, Runzhou Tao, Ronghui Gu, Jason NiehOSDI 2022 · 被引用 50 次
- First-order quantified separatorsJason R. Koenig, Oded Padon, Neil Immerman, Alex AikenPLDI 2020 · 被引用 31 次
相关 Paper
- I3DP: Neuro-Symbolic Inductive Invariant Inference for Distributed ProtocolsWeining Cao, Guangyuan Wu, Yuan Yao, Hengfeng Wei 等SOSP 2026
- Induction duality: primal-dual search for invariantsOded Padon, James R. Wilcox, Jason R. Koenig, Kenneth L. McMillan 等POPL 2022 · 被引用 14 次
- Sift: Using Refinement-guided Automation to Verify Complex Distributed SystemsHaojun Ma, Hammad Ahmad, Aman Goel, Eli Goldweber 等USENIX ATC 2022
- Inductive sequentialization of asynchronous programsBernhard Kragl, Constantin Enea, Thomas A. Henzinger, Suha Orhun Mutluergil 等PLDI 2020 · 被引用 26 次
- The Secrets Must Not Flow: Scaling Security Verification to Large CodebasesLinard Arquint, Samarth Kishor, Jason R. Koenig, Joey Dodds 等S&P 2026 · 被引用 1 次
