Logics and Algorithms for Hyperproperties
Bernd Finkbeiner
TL;DR
The paper addresses how to specify and verify hyperproperties—properties that relate multiple executions—by surveying HyperLTL and its hierarchical extensions. It explains how trace quantification augments LTL to express information-flow, robustness, and knowledge-based policies, and reviews satisfiability, model checking, monitoring, and synthesis techniques, including practical algorithms and reductions (e.g., to LTL, QBF, and automata). It highlights a broad landscape where many hyperlogics remain decidable for model checking and offer useful abstractions, while also noting undecidability barriers for richer fragments and the need for scalable approaches like self-composition, strategy-based verification, bounded synthesis, and constraint-based monitoring. The work elucidates the practical impact of a unified specification framework for hyperproperties, enabling automated reasoning about security, privacy, and correctness across multiple executions. It also sketches future directions toward probabilistic, asynchronous, and infinite-state hyperproperties, signaling continued development of verification techniques for complex, real-world systems.
Abstract
System requirements related to concepts like information flow, knowledge, and robustness cannot be judged in terms of individual system executions, but rather require an analysis of the relationship between multiple executions. Such requirements belong to the class of hyperproperties, which generalize classic trace properties to properties of sets of traces. During the past decade, a range of new specification logics has been introduced with the goal of providing a unified theory for reasoning about hyperproperties. This paper gives an overview on the current landscape of logics for the specification of hyperproperties and on algorithms for satisfiability checking, model checking, monitoring, and synthesis.
