Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
156 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
45 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Control-Flow Refinement for Complexity Analysis of Probabilistic Programs in KoAT (2402.03891v3)

Published 6 Feb 2024 in cs.LO

Abstract: Recently, we showed how to use control-flow refinement (CFR) to improve automatic complexity analysis of integer programs. While up to now CFR was limited to classical programs, in this paper we extend CFR to probabilistic programs and show its soundness for complexity analysis. To demonstrate its benefits, we implemented our new CFR technique in our complexity analysis tool KoAT.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (35)
  1. Sheshansh Agrawal, Krishnendu Chatterjee and Petr Novotný “Lexicographic Ranking Supermartingales: An Efficient Approach to Termination of Probabilistic Programs” In Proc. ACM Program. Lang. 2.POPL, 2017 DOI: 10.1145/3158122
  2. “Automatic Inference of Upper Bounds for Recurrence Relations in Cost Analysis” In Proc. SAS, LNCS 5079, 2008, pp. 221–237 DOI: 10.1007/978-3-540-69166-2˙15
  3. “Cost Analysis of Object-Oriented Bytecode Programs” In Theor. Comput. Sci. 413.1, 2012, pp. 142–159 DOI: 10.1016/j.tcs.2011.07.009
  4. “Resource Analysis driven by (Conditional) Termination Proofs” In Theory Pract. Log. Program. 19.5-6, 2019, pp. 722–739 DOI: 10.1017/S1471068419000152
  5. “Multi-Dimensional Rankings, Program Termination, and Complexity Bounds of Flowchart Programs” In Proc. SAS, LNCS 6337, 2010, pp. 117–133 DOI: 10.1007/978-3-642-15769-1˙8
  6. “A Combination Framework for Complexity” In Proc. RTA, LIPIcs 21, 2013, pp. 55–70 DOI: 10.4230/LIPIcs.RTA.2013.55
  7. Martin Avanzini, Georg Moser and Michael Schaper “A Modular Cost Analysis for Probabilistic Programs” In Proc. ACM Program. Lang. 4.OOPSLA, 2020 URL: https://doi.org/10.1145/3428240
  8. Roberto Bagnara, Patricia M. Hill and Enea Zaffanella “The Parma Polyhedra Library: Toward a Complete Set of Numerical Abstractions for the Analysis and Verification of Hardware and Software Systems” In Sci. Comput. Program. 72, 2008, pp. 3–21 DOI: 10.1016/j.scico.2007.08.001
  9. “A Calculus for Amortized Expected Runtimes” In Proc. ACM Program. Lang. 7.POPL, 2023 DOI: 10.1145/3571260
  10. “Analyzing Runtime and Size Complexity of Integer Programs” In ACM Trans. Program. Lang. Syst. 38, 2016, pp. 1–50 DOI: 10.1145/2866575
  11. Quentin Carbonneaux, Jan Hoffmann and Zhong Shao “Compositional Certified Resource Bounds” In Proc. PLDI, 2015, pp. 467–478 DOI: 10.1145/2737924.2737955
  12. Leonardo de Moura and Nikolaj Bjørner “Z3: An Efficient SMT Solver” In Proc. TACAS, LNCS 4963, 2008, pp. 337–340 DOI: 10.1007/978-3-540-78800-3˙24
  13. Jesús J. Doménech and Samir Genaim “iRankFinder” http://wst2018.webs.upv.es/wst2018proceedings.pdf In Proc. WST, 2018, pp. 83
  14. Jesús J. Doménech, John P. Gallagher and Samir Genaim “Control-Flow Refinement by Partial Evaluation, and its Application to Termination and Cost Analysis” In Theory Pract. Log. Program. 19.5-6, 2019, pp. 990–1005 DOI: 10.1017/S1471068419000310
  15. Antonio Flores-Montoya “Upper and Lower Amortized Cost Bounds of Programs Expressed as Cost Relations” In Proc. FM, LNCS 9995, 2016, pp. 254–273 DOI: 10.1007/978-3-319-48989-6˙16
  16. “Complexity Analysis for Java with AProVE” In Proc. iFM, LNCS 10510, 2017, pp. 85–101 DOI: 10.1007/978-3-319-66845-1˙6
  17. “The Termination and Complexity Competition” In Proc. TACAS, LNCS 11429, 2019, pp. 156–166 DOI: 10.1007/978-3-030-17502-3˙10
  18. “Improving Automatic Complexity Analysis of Integer Programs” In The Logic of Software. A Tasting Menu of Formal Methods, LNCS 13360, 2022, pp. 193–228 DOI: 10.1007/978-3-031-08166-8˙10
  19. Jan Hoffmann, Ankush Das and Shu-Chun Weng “Towards Automatic Resource Bound Analysis for OCaml” In Proc. POPL, 2017, pp. 359–373 DOI: 10.1145/3009837.3009842
  20. “Apron: A Library of Numerical Abstract Domains for Static Analysis” In Proc. CAV, LNCS 5643, 2009, pp. 661–667 DOI: 10.1007/978-3-642-02658-4˙52
  21. “Weakest Precondition Reasoning for Expected Runtimes of Randomized Algorithms” In J. ACM 65, 2018, pp. 1–68 DOI: 10.1145/3208102
  22. Benjamin Lucien Kaminski, Joost-Pieter Katoen and Christoph Matheja “Expected Runtime Analyis by Program Verification” In Foundations of Probabilistic Programming Cambridge University Press, 2020, pp. 185–220 DOI: 10.1017/9781108770750.007
  23. Lorenz Leutgeb, Georg Moser and Florian Zuleger “Automated Expected Amortised Cost Analysis of Probabilistic Data Structures” In Proc. CAV, LNCS 13372, 2022, pp. 70–91 DOI: 10.1007/978-3-031-13188-2˙4
  24. Nils Lommen, Fabian Meyer and Jürgen Giesl “Automatic Complexity Analysis of Integer Programs via Triangular Weakly Non-Linear Loops” In Proc. IJCAR, LNCS 13385, 2022, pp. 734–754 DOI: 10.1007/978-3-031-10769-6˙43
  25. “Targeting Completeness: Using Closed Forms for Size Bounds of Integer Programs” In Proc. FroCoS, LNCS 14279, 2023, pp. 3–22 DOI: 10.1007/978-3-031-43369-6˙1
  26. Fabian Meyer, Marcel Hark and Jürgen Giesl “Inferring Expected Runtimes of Probabilistic Integer Programs Using Expected Sizes” In Proc. TACAS, LNCS 12651, 2021, pp. 250–269 DOI: 10.1007/978-3-030-72016-2˙14
  27. Fabian Meyer, Marcel Hark and Jürgen Giesl “Inferring Expected Runtimes of Probabilistic Integer Programs Using Expected Sizes” In CoRR abs/2010.06367, 2020 DOI: 10.48550/arXiv.2010.06367
  28. “From Jinja Bytecode to Term Rewriting: A Complexity Reflecting Transformation” In Inf. Comput. 261, 2018, pp. 116–143 DOI: 10.1016/j.ic.2018.05.007
  29. Van Chan Ngo, Quentin Carbonneaux and Jan Hoffmann “Bounded Expectations: Resource Analysis for Probabilistic Programs” In Proc. PLDI, 2018, pp. 496–512 URL: https://doi.org/10.1145/3192366.3192394
  30. Lars Noschinski, Fabian Emmes and Jürgen Giesl “Analyzing Innermost Runtime Complexity of Term Rewriting by Dependency Pairs” In J. Autom. Reason. 51, 2013, pp. 27–56 DOI: 10.1007/s10817-013-9277-6
  31. Martin L. Puterman “Markov Decision Processes: Discrete Stochastic Dynamic Programming”, Wiley Series in Probability and Statistics Wiley, 1994 DOI: 10.1002/9780470316887
  32. “A Deductive Verification Infrastructure for Probabilistic Programs” In Proc. ACM Program. Lang. 7.OOPSLA, 2023, pp. 2052–2082 DOI: 10.1145/3622870
  33. Moritz Sinn, Florian Zuleger and Helmut Veith “Complexity and Resource Bound Analysis of Imperative Programs Using Difference Constraints” In J. Autom. Reason. 59.1, 2017, pp. 3–45 DOI: 10.1007/s10817-016-9402-4
  34. “TPDB (Termination Problem Data Base)” URL: https://github.com/TermCOMP/TPDB
  35. Di Wang, David M. Kahn and Jan Hoffmann “Raising Expectations: Automating Expected Cost Analysis with Types” In Proc. ACM Program. Lang. 4.ICFP, 2020 URL: https://doi.org/10.1145/3408992

Summary

We haven't generated a summary for this paper yet.