A Demonic Outcome Logic for Randomized Nondeterminism
Abstract: Programs increasingly rely on randomization in applications such as cryptography and machine learning. Analyzing randomized programs has been a fruitful research direction, but there is a gap when programs also exploit nondeterminism (for concurrency, efficiency, or algorithmic design). In this paper, we introduce Demonic Outcome Logic for reasoning about programs that exploit both randomization and nondeterminism. The logic includes several novel features, such as reasoning about multiple executions in tandem and manipulating pre- and postconditions using familiar equational laws -- including the distributive law of probabilistic choices over nondeterministic ones. We also give rules for loops that both establish termination and quantify the distribution of final outcomes from a single premise. We illustrate the reasoning capabilities of Demonic Outcome Logic through several case studies, including the Monty Hall problem, an adversarial protocol for simulating fair coins, and a heuristic based probabilistic SAT solver.
- Alejandro Aguirre and Lars Birkedal. 2023. Step-Indexed Logical Relations for Countable Nondeterminism and Probabilistic Choice. Proc. ACM Program. Lang. 7, POPL (2023), 33–60. https://doi.org/10.1145/3571195
- Error Credits: Resourceful Reasoning about Error Bounds for Higher-Order Probabilistic Programs. Proc. ACM Program. Lang. 8, ICFP, Article 246 (Aug. 2024), 33Â pages. https://doi.org/10.1145/3674635
- Krzysztof Apt and Gordon Plotkin. 1986. Countable nondeterminism and random assignment. J. ACM 33, 4 (aug 1986), 724–767. https://doi.org/10.1145/6490.6494
- An Assertion-Based Program Logic for Probabilistic Programs. In Programming Languages and Systems. Springer International Publishing, Cham, 117–144. https://doi.org/10.1007/978-3-319-89884-1_5
- Jon Beck. 1969. Distributive laws. In Seminar on Triples and Categorical Homology Theory, B. Eckmann (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 119–140. https://doi.org/10.1007/BFb0083084
- Distribution Bisimilarity via the Power of Convex Algebras. Logical Methods in Computer Science Volume 17, Issue 3 (July 2021). https://doi.org/10.46298/lmcs-17(3:10)2021
- The Theory of Traces for Systems with Nondeterminism and Probability. In 2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS). 1–14. https://doi.org/10.1109/lics.2019.8785673
- Presenting Convex Sets of Probability Distributions by Convex Semilattices and Unique Bases. In 9th Conference on Algebra and Coalgebra in Computer Science (CALCO 2021) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 211), Fabio Gadducci and Alexandra Silva (Eds.). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany, 11:1–11:18. https://doi.org/10.4230/LIPIcs.CALCO.2021.11
- The Theory of Traces for Systems with Nondeterminism, Probability, and Termination. Logical Methods in Computer Science Volume 18, Issue 2 (June 2022). https://doi.org/10.46298/lmcs-18(2:21)2022
- Aleksandar Chakarov and Sriram Sankaranarayanan. 2013. Probabilistic Program Analysis with Martingales. In Computer Aided Verification, Natasha Sharygina and Helmut Veith (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 511–526. https://doi.org/10.1007/978-3-642-39799-8_34
- Ricardo Corin and Jerry den Hartog. 2006. A Probabilistic Hoare-style Logic for Game-Based Cryptographic Proofs. In Automata, Languages and Programming. Springer Berlin Heidelberg, Berlin, Heidelberg, 252–263.
- Thibault Dardinier and Peter Müller. 2024. Hyper Hoare Logic: (Dis-)Proving Program Hyperproperties. Proc. ACM Program. Lang. 8, PLDI, Article 207 (jun 2024), 25 pages. https://doi.org/10.1145/3656437
- Jerry den Hartog. 1998. Comparative semantics for a process language with probabilistic choice and non-determinism. Vrije Universiteit, Netherlands. Imported from DIES.
- Jerry den Hartog. 1999. Verifying Probabilistic Programs Using a Hoare like Logic. In Advances in Computing Science — ASIAN’99, P. S. Thiagarajan and Roland Yap (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 113–125.
- Jerry den Hartog. 2002. Probabilistic Extensions of Semantical Models. Ph.D. Dissertation. Vrije Universiteit Amsterdam. https://core.ac.uk/reader/15452110
- Jerry den Hartog and Erik de Vink. 1999. Mixing Up Nondeterminism and Probability: a preliminary report. Electronic Notes in Theoretical Computer Science 22 (1999), 88–110. https://doi.org/10.1016/S1571-0661(05)82521-6 PROBMIV’98, First International Workshop on Probabilistic Methods in Verification.
- Edsger W. Dijkstra. 1975. Guarded Commands, Nondeterminacy and Formal Derivation of Programs. Commun. ACM 18, 8 (Aug 1975), 453–457. https://doi.org/10.1145/360933.360975
- Edsger W. Dijkstra. 1976. A Discipline of Programming. Prentice-Hall. I–XVII, 1–217 pages.
- A Core Calculus for Equational Proofs of Cryptographic Protocols. Proc. ACM Program. Lang. 7, POPL, Article 30 (jan 2023), 27Â pages. https://doi.org/10.1145/3571223
- Uniform Sampling Through the Lovász Local Lemma. J. Acm 66, 3, Article 18 (apr 2019), 31 pages. https://doi.org/10.1145/3310131
- Probabilistic models for the guarded command language. Science of Computer Programming 28, 2 (1997), 171–192. https://doi.org/10.1016/S0167-6423(96)00019-6 Formal Specifications: Foundations, Methods, Tools and Applications.
- Charles Antony Richard Hoare. 1969. An Axiomatic Basis for Computer Programming. Commun. ACM 12, 10 (Oct. 1969), 576–580. https://doi.org/10.1145/363235.363259
- Concurrent Kleene Algebra and its Foundations. J. Log. Algebraic Methods Program. 80, 6 (2011), 266–296. https://doi.org/10.1016/J.JLAP.2011.04.005
- Bart Jacobs. 2008. Coalgebraic Trace Semantics for Combined Possibilitistic and Probabilistic Systems. Electronic Notes in Theoretical Computer Science 203, 5 (2008), 131–152. https://doi.org/10.1016/j.entcs.2008.05.023 Proceedings of the Ninth Workshop on Coalgebraic Methods in Computer Science (CMCS 2008).
- Bart Jacobs. 2021. From Multisets over Distributions to Distributions over Multisets. In Proceedings of the 36th Annual ACM/IEEE Symposium on Logic in Computer Science (Rome, Italy) (LICS ’21). Association for Computing Machinery, New York, NY, USA, Article 39, 13 pages. https://doi.org/10.1109/LICS52264.2021.9470678
- Claire Jones. 1990. Probabilistic Non-determinism. Ph.D. Dissertation. University of Edinburgh. http://hdl.handle.net/1842/413
- Claire Jones and Gordon Plotkin. 1989. A Probabilistic Powerdomain of Evaluations. In Fourth Annual Symposium on Logic in Computer Science. 186–195. https://doi.org/10.1109/lics.1989.39173
- Iris: Monoids and Invariants as an Orthogonal Basis for Concurrent Reasoning. In Proceedings of the 42nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (Mumbai, India) (POPL ’15). Association for Computing Machinery, New York, NY, USA, 637–650. https://doi.org/10.1145/2676726.2676980
- Benjamin Lucien Kaminski. 2019. Advanced weakest precondition calculi for probabilistic programs. Dissertation. RWTH Aachen University, Aachen. https://doi.org/10.18154/RWTH-2019-01829
- Klaus Keimel and Gordon Plotkin. 2017. Mixed powerdomains for probability and nondeterminism. Logical Methods in Computer Science Volume 13, Issue 1 (Jan. 2017). https://doi.org/10.23638/LMCS-13(1:2)2017
- Dexter Kozen. 1983. A Probabilistic PDL. In Proceedings of the Fifteenth Annual ACM Symposium on Theory of Computing (STOC ’83). Association for Computing Machinery, New York, NY, USA, 291–297. https://doi.org/10.1145/800061.808758
- Dexter Kozen. 1997. Kleene Algebra with Tests. ACM Trans. Program. Lang. Syst. 19, 3 (May 1997), 427–443. https://doi.org/10.1145/256167.256195
- Dexter Kozen and Alexandra Silva. 2024. Multisets and Distributions. Springer Nature Switzerland, Cham, 168–187. https://doi.org/10.1007/978-3-031-61716-4_11
- Zohar Manna and Amir Pnueli. 1974. Axiomatic Approach to Total Correctness of Programs. Acta Inf. 3, 3 (sep 1974), 243–263. https://doi.org/10.1007/BF00288637
- Annabelle McIver and Carroll Morgan. 2001. Partial correctness for probabilistic demonic programs. Theoretical Computer Science 266, 1 (2001), 513–541. https://doi.org/10.1016/S0304-3975(00)00208-5
- Annabelle McIver and Carroll Morgan. 2005. Abstraction, Refinement and Proof for Probabilistic Systems. Springer. https://doi.org/10.1007/b138392
- A New Proof Rule for Almost-Sure Termination. Proc. ACM Program. Lang. 2, POPL, Article 33 (Jan 2018), 28Â pages. https://doi.org/10.1145/3158121
- Matteo Mio and Valeria Vignudelli. 2020. Monads and Quantitative Equational Theories for Nondeterminism and Probability. In 31st International Conference on Concurrency Theory (CONCUR 2020) (Leibniz International Proceedings in Informatics (LIPIcs), Vol. 171), Igor Konnov and Laura Kovács (Eds.). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Dagstuhl, Germany, 28:1–28:18. https://doi.org/10.4230/LIPIcs.CONCUR.2020.28
- Michael Mislove. 2000. Nondeterminism and Probabilistic Choice: Obeying the Laws. In CONCUR 2000 — Concurrency Theory, Catuscia Palamidessi (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 350–365. https://doi.org/10.1007/3-540-44618-4_26
- Axioms for Probability and Nondeterminism. Electronic Notes in Theoretical Computer Science 96 (2004), 7–28. https://doi.org/10.1016/j.entcs.2004.04.019 Proceedings of the 10th International Workshop on Expressiveness in Concurrency.
- Probabilistic Predicate Transformers. ACM Trans. Program. Lang. Syst. 18, 3 (may 1996), 325–353. https://doi.org/10.1145/229542.229547
- Refinement-oriented probability for CSP. Form. Asp. Comput. 8, 6 (nov 1996), 617–647. https://doi.org/10.1007/bf01213492
- Peter W. O’Hearn. 2004. Resources, Concurrency and Local Reasoning. In CONCUR 2004 - Concurrency Theory. Springer Berlin Heidelberg, Berlin, Heidelberg, 49–67. https://doi.org/10.1016/j.tcs.2006.12.035
- Louis Parlant. 2020. Monad Composition via Preservation of Algebras. Ph.D. Dissertation. University College London. https://discovery.ucl.ac.uk/id/eprint/10112228/
- Gordon Plotkin. 1976. A Powerdomain Construction. SIAM J. Comput. 5, 3 (1976), 452–487. https://doi.org/10.1137/0205035 arXiv:https://doi.org/10.1137/0205035
- Robert Rand and Steve Zdancewic. 2015. VPHL: A Verified Partial-Correctness Logic for Probabilistic Programs. In Electronic Notes in Theoretical Computer Science, Vol. 319. 351–367. https://doi.org/10.1016/j.entcs.2015.12.021 The 31st Conference on the Mathematical Foundations of Programming Semantics (MFPS XXXI).
- Dana Scott. 1972. Continuous lattices. In Toposes, Algebraic Geometry and Logic, F. W. Lawvere (Ed.). Springer Berlin Heidelberg, Berlin, Heidelberg, 97–136. https://doi.org/10.1007/BFb0073967
- Roberto Segala. 1995. Modeling and verification of randomized distributed real-time systems. Ph.D. Dissertation. USA. https://groups.csail.mit.edu/tds/papers/Segala/phd1.pdf
- Roberto Segala and Nancy Lynch. 1994. Probabilistic simulations for probabilistic processes. In CONCUR ’94: Concurrency Theory, Bengt Jonsson and Joachim Parrow (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg, 481–496. https://doi.org/10.1007/BFb0015027
- Michael Smyth. 1978. Power domains. J. Comput. System Sci. 16, 1 (1978), 23–36. https://doi.org/10.1016/0022-0000(78)90048-X
- Harald Søndergaard and Peter Sestoft. 1992. Non-determinism in Functional Languages. Comput. J. 35, 5 (10 1992), 514–523. https://doi.org/10.1093/comjnl/35.5.514 arXiv:https://academic.oup.com/comjnl/article-pdf/35/5/514/1125580/35-5-514.pdf
- Joseph Tassarotti. 2018. Verifying Concurrent Randomized Algorithms. Ph.D. Dissertation. Carnegie Mellon University. https://csd.cmu.edu/academics/doctoral/degrees-conferred/joseph-tassarotti
- Joseph Tassarotti and Robert Harper. 2019. A Separation Logic for Concurrent Randomized Programs. Proc. ACM Program. Lang. 3, POPL, Article 64 (Jan 2019), 30Â pages. https://doi.org/10.1145/3290377
- Regina Tix. 1999. Continuous D-cones: convexity and powerdomain constructions. Ph.D. Dissertation. Darmstadt University of Technology, Germany. https://d-nb.info/957239157
- Regina Tix. 2000. Convex Power Constructions for Continuous D-Cones. Electronic Notes in Theoretical Computer Science 35 (2000), 206–229. https://doi.org/10.1016/S1571-0661(05)80746-7 Workshop on Domains IV.
- Semantic Domains for Combining Probability and Non-Determinism. Electronic Notes in Theoretical Computer Science 222 (2009), 3–99. https://doi.org/10.1016/j.entcs.2009.01.002
- Daniele Varacca. 2002. The powerdomain of indexed valuations. In Proceedings 17th Annual IEEE Symposium on Logic in Computer Science. 299–308. https://doi.org/10.1109/LICS.2002.1029838
- Daniele Varacca. 2003. Probability, Nondeterminism and Concurrency: Two Denotational Models for Probabilistic Computation. Ph.D. Dissertation. University of Aarhus. https://www.brics.dk/DS/03/14/
- Daniele Varacca and Glynn Winskel. 2006. Distributing probability over non-determinism. Mathematical Structures in Computer Science 16, 1 (2006), 87–113. https://doi.org/10.1017/S0960129505005074
- John von Neumann. 1951. Various techniques used in connection with random digits. In Monte Carlo Method, A.S. Householder, G.E. Forsythe, and H.H. Germond (Eds.). National Bureau of Standards Applied Mathematics Series, 12, Washington, D.C.: U.S. Government Printing Office, 36–38.
- Quantitative Weakest Hyper Pre: Unifying Correctness and Incorrectness Hyperproperties via Predicate Transformers. Proc. ACM Program. Lang. 8, OOPSLA2, Article 300 (oct 2024), 30Â pages. https://doi.org/10.1145/3689740
- Noam Zilberstein. 2024. A Relatively Complete Program Logic for Effectful Branching. arXiv:2401.04594Â [cs.LO]
- Outcome Logic: A Unifying Foundation for Correctness and Incorrectness Reasoning. Proc. ACM Program. Lang. 7, OOPSLA1, Article 93 (Apr 2023), 29Â pages. https://doi.org/10.1145/3586045
- Outcome Separation Logic: Local Reasoning for Correctness and Incorrectness with Computational Effects. Proc. ACM Program. Lang. 8, OOPSLA1 (Apr 2024). https://doi.org/10.1145/3649821
- Maaike Zwart. 2020. On the Non-Compositionality of Monads via Distributive Laws. Ph.D. Dissertation. University of Oxford. https://ora.ox.ac.uk/objects/uuid:b2222b14-3895-4c87-91f4-13a8d046febb
- Maaike Zwart and Dan Marsden. 2019. No-Go Theorems for Distributive Laws. In 2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS). 1–13. https://doi.org/10.1109/lics.2019.8785707
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.