🤖 AI Summary
This paper addresses threshold verification for probabilistic programs. We propose a structured abstraction and refinement framework: first, modeling probabilistic control-flow automata as Markov decision processes (MDPs) to explicitly separate probabilistic semantics from computational semantics; second, introducing, for the first time, a “structural” perspective to characterize the mapping between probabilistic programs and MDPs—thereby decoupling probabilistic abstraction from semantic refinement and enabling direct transfer of non-probabilistic verification techniques to probabilistic systems. The framework integrates structural abstraction, trace abstraction, and counterexample-guided abstraction refinement (CEGAR). Evaluated on multiple benchmark suites, our approach significantly outperforms state-of-the-art tools in both verification speed and flexibility, particularly excelling on probabilistic programs with complex control structures.
📝 Abstract
In this paper, we present structural abstraction refinement, a novel framework for verifying the threshold problem of probabilistic programs. Our approach represents the structure of a Probabilistic Control-Flow Automaton (PCFA) as a Markov Decision Process (MDP) by abstracting away statement semantics. The maximum reachability of the MDP naturally provides a proper upper bound of the violation probability, termed the structural upper bound. This introduces a fresh ``structural'' characterization of the relationship between PCFA and MDP, contrasting with the traditional ``semantical'' view, where the MDP reflects semantics. The method uniquely features a clean separation of concerns between probability and computational semantics that the abstraction focuses solely on probabilistic computation and the refinement handles only the semantics aspect, where the latter allows non-random program verification techniques to be employed without modification.
Building upon this feature, we propose a general counterexample-guided abstraction refinement (CEGAR) framework, capable of leveraging established non-probabilistic techniques for probabilistic verification. We explore its instantiations using trace abstraction. Our method was evaluated on a diverse set of examples against state-of-the-art tools, and the experimental results highlight its versatility and ability to handle more flexible structures swiftly.