On Hyperproperty Verification, Quantifier Alternations, and Games under Partial Information
By: Raven Beutner, Bernd Finkbeiner
Potential Business Impact:
Checks computer programs with tricky rules.
Hyperproperties generalize traditional trace properties by relating multiple execution traces rather than reasoning about individual runs in isolation. They provide a unified way to express important requirements such as information flow and robustness properties. Temporal logics like HyperLTL capture these properties by explicitly quantifying over executions of a system. However, many practically relevant hyperproperties involve quantifier alternations, a feature that poses substantial challenges for automated verification. Complete verification methods require a system complementation for each quantifier alternation, making it infeasible in practice. A cheaper (but incomplete) method interprets the verification of a HyperLTL formula as a two-player game between universal and existential quantifiers. The game-based approach is significantly cheaper, facilitates interactive proofs, and allows for easy-to-check certificates of satisfaction. It is, however, limited to $\forall^*\exists^*$ properties, leaving important properties out of reach. In this paper, we show that we can use games to verify hyperproperties with arbitrary quantifier alternations by utilizing multiplayer games under partial information. While games under partial information are, in general, undecidable, we show that our game is played under hierarchical information and thus falls in a decidable class of games. We discuss the completeness of the game and study prophecy variables in the setting of partial information.
Similar Papers
Prophecies all the Way: Game-based Model-Checking for HyperQPTL beyond $\forall^*\exists^*$
Logic in Computer Science
Makes computer security checks faster and smarter.
Reasoning about Quality in Hyperproperties
Logic in Computer Science
Makes computer security checks more realistic.
Flavors of Quantifiers in Hyperlogics
Logic in Computer Science
Checks computer programs for hidden bugs.