🤖 AI Summary
Existing program logics cannot fully characterize the output distribution of probabilistic concurrent programs, and no distribution-level formal verification methodology exists for such programs.
Method: We propose the first distributional verification logic supporting programs combining probabilistic and concurrent features, systematically integrating independence, conditional distributions, and invariants into Outcome Logic, and introducing the first probabilistic concurrent separation principle. By unifying probabilistic separation logic, concurrent separation logic, and Outcome Logic, we design distribution-aware assertions, randomized resource models, and context-compositional proof rules to enable modular, compositional distributional verification.
Results: Our logic is the first to precisely model independent execution, conditional dependencies, and concurrency invariants at the distribution level. It supports fully automated formal verification of representative probabilistic concurrent programs, thereby filling a fundamental theoretical gap in distributional verification of concurrent probabilistic programs.
📝 Abstract
Although randomization has long been used in concurrent programs, formal methods for reasoning about this mixture of effects have lagged behind. In particular, no existing program logics can express specifications about the distributions of outcomes resulting from programs that are both probabilistic and concurrent. To address this, we introduce Probabilistic Concurrent Outcome Logic, which incorporates ideas from concurrent and probabilistic separation logics into Outcome Logic to introduce new compositional reasoning principles.