{"type":"ScholarlyArticle","title":"Data-Driven Invariant Learning for Probabilistic Programs (Extended Abstract)","authors":[{"name":"Jialu Bao","slug":"jialu-bao","given":"Jialu","family":"Bao","affiliation":"Cornell University , Ithaca , NY , USA"},{"name":"Nitesh Trivedi","slug":"nitesh-trivedi","given":"Nitesh","family":"Trivedi","affiliation":"Indian Institute of Technology (IIT) Kanpur , India"},{"name":"Drashti Pathak","slug":"drashti-pathak","given":"Drashti","family":"Pathak","affiliation":"Amazon , Bengaluru , India"},{"name":"Justin Hsu","slug":"justin-hsu","given":"Justin","family":"Hsu","affiliation":"Cornell University , Ithaca , NY , USA"},{"name":"Subhajit Roy","slug":"subhajit-roy","given":"Subhajit","family":"Roy","affiliation":"Indian Institute of Technology (IIT) Kanpur , India"}],"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.\r\n\r\nWe 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.","doi":"10.24963/ijcai.2023/712","url":"https://ijcai.org/proceedings/2023/712","pdf":"https://ijcai.org/proceedings/2023/0712.pdf","markdown":"https://ijcai.org/proceedings/2023/712.md","bibtex":"https://ijcai.org/proceedings/2023/bibtex/712","volume":{"slug":"2023","title":"Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence","short_title":"IJCAI 2023","url":"https://ijcai.org/proceedings/2023/","year":2023,"location":"Macao, SAR","dates":"19-25 August 2023","editors":"Edith Elkind","isbn":"978-1-956792-03-4","publisher":"International Joint Conferences on Artificial Intelligence Organization","doi_prefix":"10.24963/ijcai.2023"},"section":"Sister Conferences Best Papers","track":"Sister Conferences Best Papers","number":712,"pages":{"first":6415,"last":6419},"keywords":["Sister Conferences Best Papers: Constraint Satisfaction and Optimization","Sister Conferences Best Papers: Knowledge Representation and Reasoning","Sister Conferences Best Papers: Search","Sister Conferences Best Papers: Uncertainty in AI"],"videos":[],"references":[{"position":1,"raw":"[Abate et al., 2021] Alessandro Abate, Mirco Giacobbe, and Dip- tarko Roy. Learning probabilistic termination proofs. In CAV, 2021.","title":"Learning probabilistic termination proofs","authors":"Alessandro Abate, Mirco Giacobbe, Diptarko Roy","year":"2021","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":2,"raw":"[Albarghouthi and Hsu, 2018] Aws Albarghouthi and Justin Hsu. Synthesizing coupling proofs of differential privacy. In POPL, 2018.","title":"Aws Albarghouthi and Justin Hsu. Synthesizing coupling proofs of differential privacy","authors":"Hsu Albarghouthi","year":"2018","venue":null,"doi":null,"url":null,"internal_url":null},{"position":3,"raw":"[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.","title":"Symbolic model checking for probabilistic processes","authors":"Christel Baier, Edmund M Clarke, Vasiliki Hartonas-Garmhausen, Marta Z Kwiatkowska, Mark Ryan","year":"1997","venue":"ICALP","doi":null,"url":null,"internal_url":null},{"position":4,"raw":"[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.","title":"Data-driven invariant learning for probabilistic programs","authors":"Bao","year":"2022","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":5,"raw":"[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.","title":"Data-driven invariant learning for probabilistic programs","authors":"Bao","year":"2022","venue":null,"doi":null,"url":null,"internal_url":null},{"position":6,"raw":"[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.","title":"Synthesizing probabilistic invariants via Doob's decomposition","authors":"Gilles Barthe, Thomas Espitau, Luis María Ferrer Fioriti, Justin Hsu","year":"2016","venue":null,"doi":null,"url":null,"internal_url":null},{"position":7,"raw":"[Bartocci et al., 2020] Ezio Bartocci, Laura Kovács, and Miroslav Stankovič. Mora-automatic generation of moment-based invari- ants. In TACAS, 2020.","title":"Mora-automatic generation of moment-based invariants","authors":"Ezio Bartocci, Laura Kovács, Miroslav Stankovič","year":"2020","venue":"TACAS","doi":null,"url":null,"internal_url":null},{"position":8,"raw":"[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.","title":"Verifying quantitative reliability for programs that execute on unreliable hardware","authors":"Sasa Michael Carbin, Martin C Misailovic, Rinard","year":"2013","venue":"OOPSLA","doi":null,"url":null,"internal_url":null},{"position":9,"raw":"[Chakarov and Sankaranarayanan, 2013] Aleksandar Chakarov and Sriram Sankaranarayanan. Probabilistic program analysis with martingales. In CAV, 2013.","title":"Probabilistic program analysis with martingales","authors":"Aleksandar Chakarov, Sriram Sankaranarayanan","year":"2013","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":10,"raw":"[Chatterjee et al., 2016a] Krishnendu Chatterjee, Hongfei Fu, and Amir Kafshdar Goharshady. Termination analysis of probabilis- tic programs through Positivstellensatz's. In CAV, 2016.","title":"Termination analysis of probabilistic programs through Positivstellensatz's","authors":"Chatterjee","year":"2016","venue":null,"doi":null,"url":null,"internal_url":null},{"position":11,"raw":"[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.","title":"Algorithmic analysis of qualitative and quantitative termination problems for affine probabilistic programs","authors":"Chatterjee","year":"2016","venue":"POPL","doi":null,"url":null,"internal_url":null},{"position":12,"raw":"[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.","title":"Counterexample-guided polynomial loop invariant generation by Lagrange interpolation","authors":"Yu-Fang Chen, Chih-Duo Hong, Bow-Yaw Wang, Lijun Zhang","year":"2015","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":13,"raw":"[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.","title":"A storm is coming: A modern probabilistic model checker","authors":"Dehnert","year":"2017","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":14,"raw":"[Dijkstra, 1975] Edsger W. Dijkstra. Guarded commands, non- determinancy and a calculus for the derivation of programs. In Language Hierarchies and Interfaces, 1975.","title":"Guarded commands, nondeterminancy and a calculus for the derivation of programs","authors":"W Edsger, Dijkstra","year":"1975","venue":"Language Hierarchies and Interfaces","doi":null,"url":null,"internal_url":null},{"position":15,"raw":"[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.","title":"The Daikon system for dynamic detection of likely invariants","authors":"D Michael, Jeff H Ernst, Philip J Perkins, Stephen Guo, Carlos Mccamant, Matthew S Pacheco, Chen Tschantz, Xiao","year":"2007","venue":"Sci. Comput. Program","doi":null,"url":null,"internal_url":null},{"position":16,"raw":"[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.","title":"Finding polynomial loop invariants for probabilistic programs","authors":"Yijun Feng, Lijun Zhang, David N Jansen, Naijun Zhan, Bican Xia","year":"2017","venue":"ATVA","doi":null,"url":null,"internal_url":null},{"position":17,"raw":"[Flanagan and Leino, 2001] Cormac Flanagan and K. Rustan M. Leino. Houdini, an annotation assistant for ESC/Java. In FME, 2001.","title":"Houdini, an annotation assistant for ESC/Java","authors":"Cormac Flanagan, K Rustan, M Leino","year":"2001","venue":null,"doi":null,"url":null,"internal_url":null},{"position":18,"raw":"[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.","title":"Learning invariants using decision trees and implication counterexamples","authors":"Pranav Garg, Daniel Neider, P Madhusudan, Dan Roth","year":"2016","venue":"POPL","doi":null,"url":null,"internal_url":null},{"position":19,"raw":"[Gretz et al., 2013] Friedrich Gretz, Joost-Pieter Katoen, and Annabelle McIver. Prinsys -on a quest for probabilistic loop invariants. In QEST, 2013.","title":"Prinsys -on a quest for probabilistic loop invariants","authors":"Gretz","year":"2013","venue":"QEST","doi":null,"url":null,"internal_url":null},{"position":20,"raw":"[Kaminski and Katoen, 2017] Benjamin Lucien Kaminski and Joost-Pieter Katoen. A weakest pre-expectation semantics for mixed-sign expectations. In LICS, 2017.","title":"A weakest pre-expectation semantics for mixed-sign expectations","authors":"Lucien Benjamin, Joost-Pieter Kaminski, Katoen","year":"2017","venue":"LICS","doi":null,"url":null,"internal_url":null},{"position":21,"raw":"[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.","title":"Weakest precondition reasoning for expected run-times of probabilistic programs","authors":"Lucien Benjamin, Joost-Pieter Kaminski, Christoph Katoen, Federico Matheja, Olmedo","year":"2016","venue":"ESOP","doi":null,"url":null,"internal_url":null},{"position":22,"raw":"[Kaminski, 2019] Benjamin Lucien Kaminski. Advanced weak- est precondition calculi for probabilistic programs. PhD thesis, RWTH Aachen University, Germany, 2019.","title":"Advanced weakest precondition calculi for probabilistic programs","authors":"Lucien Benjamin, Kaminski","year":"2019","venue":null,"doi":null,"url":null,"internal_url":null},{"position":23,"raw":"[Kozen, 1981] Dexter Kozen. Semantics of probabilistic programs. Journal of Computer and System Sciences, 22(3), 1981.","title":"Semantics of probabilistic programs","authors":"Dexter Kozen, Kozen","year":"1981","venue":"Journal of Computer and System Sciences","doi":null,"url":null,"internal_url":null},{"position":24,"raw":"[Kozen, 1985] Dexter Kozen. A probabilistic PDL. Journal of Computer and System Sciences, 30(2), 1985.","title":"A probabilistic PDL","authors":"Dexter Kozen","year":"1985","venue":"Journal of Computer and System Sciences","doi":null,"url":null,"internal_url":null},{"position":25,"raw":"[Kwiatkowska et al., 2011] Marta Kwiatkowska, Gethin Norman, and David Parker. PRISM 4.0: Verification of probabilistic real- time systems. In CAV, 2011.","title":"PRISM 4.0: Verification of probabilistic realtime systems","authors":"Marta Kwiatkowska, Gethin Norman, David Parker","year":"2011","venue":"CAV","doi":null,"url":null,"internal_url":null},{"position":26,"raw":"[Lahiri and Roy, 2022] Sumit Lahiri and Subhajit Roy. Almost correct invariants: Synthesizing inductive invariants by fuzzing proofs. In ISSTA, 2022.","title":"Almost correct invariants: Synthesizing inductive invariants by fuzzing proofs","authors":"Sumit Lahiri, Subhajit Roy","year":"2022","venue":"ISSTA","doi":null,"url":null,"internal_url":null},{"position":27,"raw":"[McIver and Morgan, 2005] Annabelle McIver and Carroll Mor- gan. Abstraction, refinement and proof for probabilistic systems. Springer Science & Business Media, 2005.","title":"Abstraction, refinement and proof for probabilistic systems","authors":"Morgan Mciver","year":"2005","venue":"Annabelle McIver and Carroll Morgan","doi":null,"url":null,"internal_url":null},{"position":28,"raw":"[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.","title":"A new proof rule for almost-sure termination","authors":"Annabelle Mciver, Carroll Morgan, Benjamin, Lucien Kaminski, Joost-Pieter Katoen","year":"2018","venue":"POPL","doi":null,"url":null,"internal_url":null},{"position":29,"raw":"[Miltner et al., 2020] Anders Miltner, Saswat Padhi, Todd Mill- stein, and David Walker. Data-driven inference of representation invariants. In PLDI, 2020.","title":"Data-driven inference of representation invariants","authors":"Anders Miltner, Saswat Padhi, Todd Millstein, David Walker","year":"2020","venue":"PLDI","doi":null,"url":null,"internal_url":null},{"position":30,"raw":"[Morgan et al., 1996] Carroll Morgan, Annabelle McIver, and Karen Seidel. Probabilistic predicate transformers. TOPLAS, 1996.","title":"Probabilistic predicate transformers","authors":"Carroll Morgan, Annabelle Mciver, Karen Seidel","year":"1996","venue":"TOPLAS","doi":null,"url":null,"internal_url":null},{"position":31,"raw":"[Quinlan, 1992] J. R. Quinlan. Learning with continuous classes. In AJCAI, volume 92, 1992.","title":"Learning with continuous classes","authors":"J R Quinlan","year":"1992","venue":"AJCAI","doi":null,"url":null,"internal_url":null},{"position":32,"raw":"[Roy et al., 2021] Subhajit Roy, Justin Hsu, and Aws Albarghouthi. Learning differentially private mechanisms. In SP, 2021.","title":"Learning differentially private mechanisms","authors":"Subhajit Roy, Justin Hsu, Aws Albarghouthi","year":"2021","venue":null,"doi":null,"url":null,"internal_url":null},{"position":33,"raw":"[Si et al., 2018] Xujie Si, Hanjun Dai, Mukund Raghothaman, Mayur Naik, and Le Song. Learning loop invariants for program verification. In NeurIPS, 2018.","title":"Learning loop invariants for program verification","authors":"Si","year":"2018","venue":null,"doi":null,"url":null,"internal_url":null},{"position":34,"raw":"[Smith et al., 2019] Calvin Smith, Justin Hsu, and Aws Albargh- outhi. Trace abstraction modulo probability. In POPL, 2019.","title":"Trace abstraction modulo probability","authors":"Calvin Smith, Justin Hsu, Aws Albarghouthi","year":"2019","venue":"POPL","doi":null,"url":null,"internal_url":null},{"position":35,"raw":"[Yang et al., 2018] Yongxin Yang, Irene Garcia Morillo, and Timo- thy M. Hospedales. Deep neural decision trees. CoRR, 2018.","title":"Deep neural decision trees","authors":"Yongxin Yang, Irene Garcia Morillo, Timothy M Hospedales","year":"2018","venue":null,"doi":null,"url":null,"internal_url":null}],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}