Proceedings

Data-Driven Invariant Learning for Probabilistic Programs (Extended Abstract)

Download BibTeX Cite

Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence. Sister Conferences Best Papers. Pages 6415-6419.

https://doi.org/10.24963/ijcai.2023/712

Abstract

The weakest pre-expectation framework from Morgan and McIver for deductive verification of probabilistic programs generalizes binary state assertions to real-valued expectations to measure expected values of expressions over probabilistic program variables. While loop-free programs can be analyzed by mechanically transforming expectations, verifying programs with loops requires finding an invariant expectation.

We view invariant expectation synthesis as a regression problem: given an input state, predict the average value of the post-expectation in the output distribution. With this perspective, we develop the first data-driven invariant synthesis method for probabilistic programs. Unlike prior work on probabilistic invariant inference, our approach learns piecewise continuous invariants without relying on template expectations. We also develop a data-driven approach to learn sub-invariants from data, which can be used to upper- or lower-bound expected values. We implement our approaches and demonstrate their effectiveness on a variety of benchmarks from the probabilistic programming literature.

  1. [Abate et al., 2021] Alessandro Abate, Mirco Giacobbe, and Dip- tarko Roy. Learning probabilistic termination proofs. In CAV, 2021.
  2. [Albarghouthi and Hsu, 2018] Aws Albarghouthi and Justin Hsu. Synthesizing coupling proofs of differential privacy. In POPL, 2018.
  3. [Baier et al., 1997] Christel Baier, Edmund M. Clarke, Vasiliki Hartonas-Garmhausen, Marta Z. Kwiatkowska, and Mark Ryan. Symbolic model checking for probabilistic processes. In ICALP, 1997.
  4. [Bao et al., 2022a] Jialu Bao, Nitesh Trivedi, Drashti Pathak, Justin Hsu, and Subhajit Roy. Data-driven invariant learning for proba- bilistic programs. In CAV, 2022.
  5. [Bao et al., 2022b] Jialu Bao, Nitesh Trivedi, Drashti Pathak, Justin Hsu, and Subhajit Roy. Data-driven invariant learning for proba- bilistic programs. In arXiv 2106.05421, 2022.
  6. [Barthe et al., 2016] Gilles Barthe, Thomas Espitau, Luis María Ferrer Fioriti, and Justin Hsu. Synthesizing probabilistic invari- ants via Doob's decomposition. In CAV, 2016.
  7. [Bartocci et al., 2020] Ezio Bartocci, Laura Kovács, and Miroslav Stankovič. Mora-automatic generation of moment-based invari- ants. In TACAS, 2020.
  8. [Carbin et al., 2013] Michael Carbin, Sasa Misailovic, and Mar- tin C. Rinard. Verifying quantitative reliability for programs that execute on unreliable hardware. In OOPSLA, 2013.
  9. [Chakarov and Sankaranarayanan, 2013] Aleksandar Chakarov and Sriram Sankaranarayanan. Probabilistic program analysis with martingales. In CAV, 2013.
  10. [Chatterjee et al., 2016a] Krishnendu Chatterjee, Hongfei Fu, and Amir Kafshdar Goharshady. Termination analysis of probabilis- tic programs through Positivstellensatz's. In CAV, 2016.
  11. [Chatterjee et al., 2016b] Krishnendu Chatterjee, Hongfei Fu, Petr Novotný, and Rouzbeh Hasheminezhad. Algorithmic analysis of qualitative and quantitative termination problems for affine prob- abilistic programs. In POPL, 2016.
  12. [Chen et al., 2015] Yu-Fang Chen, Chih-Duo Hong, Bow-Yaw Wang, and Lijun Zhang. Counterexample-guided polynomial loop invariant generation by Lagrange interpolation. In CAV, 2015.
  13. [Dehnert et al., 2017] Christian Dehnert, Sebastian Junges, Joost- Pieter Katoen, and Matthias Volk. A storm is coming: A modern probabilistic model checker. In CAV, 2017.
  14. [Dijkstra, 1975] Edsger W. Dijkstra. Guarded commands, non- determinancy and a calculus for the derivation of programs. In Language Hierarchies and Interfaces, 1975.
  15. [Ernst et al., 2007] Michael D. Ernst, Jeff H. Perkins, Philip J. Guo, Stephen McCamant, Carlos Pacheco, Matthew S. Tschantz, and Chen Xiao. The Daikon system for dynamic detection of likely invariants. Sci. Comput. Program., 2007.
  16. [Feng et al., 2017] Yijun Feng, Lijun Zhang, David N Jansen, Nai- jun Zhan, and Bican Xia. Finding polynomial loop invariants for probabilistic programs. In ATVA, 2017.
  17. [Flanagan and Leino, 2001] Cormac Flanagan and K. Rustan M. Leino. Houdini, an annotation assistant for ESC/Java. In FME, 2001.
  18. [Garg et al., 2016] Pranav Garg, Daniel Neider, P. Madhusudan, and Dan Roth. Learning invariants using decision trees and im- plication counterexamples. In POPL, 2016.
  19. [Gretz et al., 2013] Friedrich Gretz, Joost-Pieter Katoen, and Annabelle McIver. Prinsys -on a quest for probabilistic loop invariants. In QEST, 2013.
  20. [Kaminski and Katoen, 2017] Benjamin Lucien Kaminski and Joost-Pieter Katoen. A weakest pre-expectation semantics for mixed-sign expectations. In LICS, 2017.
  21. [Kaminski et al., 2016] Benjamin Lucien Kaminski, Joost-Pieter Katoen, Christoph Matheja, and Federico Olmedo. Weakest pre- condition reasoning for expected run-times of probabilistic pro- grams. In ESOP, 2016.
  22. [Kaminski, 2019] Benjamin Lucien Kaminski. Advanced weak- est precondition calculi for probabilistic programs. PhD thesis, RWTH Aachen University, Germany, 2019.
  23. [Kozen, 1981] Dexter Kozen. Semantics of probabilistic programs. Journal of Computer and System Sciences, 22(3), 1981.
  24. [Kozen, 1985] Dexter Kozen. A probabilistic PDL. Journal of Computer and System Sciences, 30(2), 1985.
  25. [Kwiatkowska et al., 2011] Marta Kwiatkowska, Gethin Norman, and David Parker. PRISM 4.0: Verification of probabilistic real- time systems. In CAV, 2011.
  26. [Lahiri and Roy, 2022] Sumit Lahiri and Subhajit Roy. Almost correct invariants: Synthesizing inductive invariants by fuzzing proofs. In ISSTA, 2022.
  27. [McIver and Morgan, 2005] Annabelle McIver and Carroll Mor- gan. Abstraction, refinement and proof for probabilistic systems. Springer Science & Business Media, 2005.
  28. [McIver et al., 2018] Annabelle McIver, Carroll Morgan, Ben- jamin Lucien Kaminski, and Joost-Pieter Katoen. A new proof rule for almost-sure termination. In POPL, 2018.
  29. [Miltner et al., 2020] Anders Miltner, Saswat Padhi, Todd Mill- stein, and David Walker. Data-driven inference of representation invariants. In PLDI, 2020.
  30. [Morgan et al., 1996] Carroll Morgan, Annabelle McIver, and Karen Seidel. Probabilistic predicate transformers. TOPLAS, 1996.
  31. [Quinlan, 1992] J. R. Quinlan. Learning with continuous classes. In AJCAI, volume 92, 1992.
  32. [Roy et al., 2021] Subhajit Roy, Justin Hsu, and Aws Albarghouthi. Learning differentially private mechanisms. In SP, 2021.
  33. [Si et al., 2018] Xujie Si, Hanjun Dai, Mukund Raghothaman, Mayur Naik, and Le Song. Learning loop invariants for program verification. In NeurIPS, 2018.
  34. [Smith et al., 2019] Calvin Smith, Justin Hsu, and Aws Albargh- outhi. Trace abstraction modulo probability. In POPL, 2019.
  35. [Yang et al., 2018] Yongxin Yang, Irene Garcia Morillo, and Timo- thy M. Hospedales. Deep neural decision trees. CoRR, 2018.

References were extracted automatically from the PDF and may contain errors.

Welcome Future Conferences AI Journal Division IJCAI Proceedings About IJCAI IJCAI Awards