A Theory of Slicing for Probabilistic Control-Flow Graphs
Torben Amtoft, Anindya Banerjee

TL;DR
This paper develops a formal theory for slicing probabilistic programs represented as control-flow graphs, enabling precise analysis and reduction of such programs while ensuring semantic correctness.
Contribution
It introduces a novel probabilistic slicing framework with syntactic conditions and algorithms, extending classical program analysis techniques to probabilistic settings.
Findings
Syntactic conditions for probabilistic slicing are established.
Any slice satisfying these conditions is proven semantically correct.
An algorithm for computing the least slice is provided.
Abstract
We present a theory for slicing probabilistic imperative programs -- containing random assignments, and ``observe'' statements (for conditioning) -- represented as probabilistic control-flow graphs (pCFGs) whose nodes modify probability distributions. We show that such a representation allows direct adaptation of standard machinery such as data and control dependence, postdominators, relevant variables, etc to the probabilistic setting. We separate the specification of slicing from its implementation: first we develop syntactic conditions that a slice must satisfy; next we prove that any such slice is semantically correct; finally we give an algorithm to compute the least slice. To generate smaller slices, we may in addition take advantage of knowledge that certain loops will terminate (almost) always. A key feature of our syntactic conditions is that they involve two disjoint…
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
TopicsSoftware Testing and Debugging Techniques · Software Engineering Research · Software Reliability and Analysis Research
