Modular Verification of Differential Privacy in Probabilistic Higher-Order Separation Logic (Extended Version)
Philipp G. Haselwarter, Alejandro Aguirre, Simon Oddershede Gregersen, Kwing Hei Li, Joseph Tassarotti, Lars Birkedal

TL;DR
This paper presents a modular program logic for verifying differential privacy in complex, general-purpose programming languages, enabling formal guarantees for privacy-preserving algorithms with practical implementations.
Contribution
It introduces a new logic with first-class privacy budget reasoning, supporting modular verification of complex DP algorithms and libraries in real-world programming languages.
Findings
Verified a library of differential privacy mechanisms including Sparse Vector Technique
Developed a privacy filter inspired by OpenDP that handles randomization and higher-order functions
All results are formally verified in the Rocq Prover.
Abstract
Differential privacy is the standard method for privacy-preserving data analysis. The importance of having strong guarantees on the reliability of implementations of differentially private algorithms is widely recognized and has sparked fruitful research on formal methods. However, the design patterns and language features used in modern DP libraries as well as the classes of guarantees that the library designers wish to establish often fall outside of the scope of previous verification approaches. We introduce a program logic suitable for verifying differentially private implementations written in complex, general-purpose programming languages. Our logic has first-class support for reasoning about privacy budgets as a separation logic resource. The expressiveness of the logic and the target language allow our approach to handle common programming patterns used in the implementation…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
