Software Verification of Hyperproperties Beyond k-Safety

preprint2022arXivOpen access

Abstract

Temporal hyperproperties are system properties that relate multiple execution traces. For (finite-state) hardware, temporal hyperproperties are supported by model checking algorithms, and tools for general temporal logics like HyperLTL exist. For (infinite-state) software, the analysis of temporal hyperproperties has, so far, been limited to kk-safety properties, i.e., properties that stipulate the absence of a bad interaction between any kk traces. In this paper, we present an automated method for the verification of ∀k∃l\forall^k\exists^l-safety properties in infinite-state systems. A ∀k∃l\forall^k\exists^l-safety property stipulates that for any kk traces, there exist ll traces such that the resulting k+lk+l traces do not interact badly. This combination of universal and existential quantification enables us to express many properties beyond kk-safety, including, for example, generalized non-interference or program refinement. Our method is based on a strategy-based instantiation of existential trace quantification combined with a program reduction, both in the context of a fixed predicate abstraction. Notably, our framework allows for mutual dependence of strategy and reduction.

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.