Lilac: A Modal Separation Logic for Conditional Probability
John M. Li, Amal Ahmed, Steven Holtzen

TL;DR
Lilac is a novel separation logic designed for probabilistic programs, enabling reasoning about independence, conditional probability, and continuous variables with properties similar to classical separation logic.
Contribution
The paper introduces Lilac, a new separation logic for probabilistic reasoning that models probability spaces as heap-like fragments and incorporates a modal operator for conditional probability.
Findings
Lilac supports reasoning about continuous random variables.
The logic validates complex probabilistic examples from prior work.
Formal verification of a weighted sampling algorithm demonstrates Lilac's effectiveness.
Abstract
We present Lilac, a separation logic for reasoning about probabilistic programs where separating conjunction captures probabilistic independence. Inspired by an analogy with mutable state where sampling corresponds to dynamic allocation, we show how probability spaces over a fixed, ambient sample space appear to be the natural analogue of heap fragments, and present a new combining operation on them such that probability spaces behave like heaps and measurability of random variables behaves like ownership. This combining operation forms the basis for our model of separation, and produces a logic with many pleasant properties. In particular, Lilac has a frame rule identical to the ordinary one, and naturally accommodates advanced features like continuous random variables and reasoning about quantitative properties of programs. Then we propose a new modality based on disintegration theory…
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.
Taxonomy
TopicsLogic, Reasoning, and Knowledge · Natural Language Processing Techniques · Logic, programming, and type systems
