Finding $forallexists$ Hyperbugs using Symbolic Execution

📅 2025-01-14
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
Verifying hyperproperties with alternating $forallexists$ quantifiers—such as refinement and generalized noninterference—remains notoriously difficult for existing verification and testing tools, which lack support for trace quantification and cannot handle such higher-order logical structures. Method: This paper introduces the first symbolic execution framework supporting trace quantification for $forallexists$-alternating hyperproperties. It integrates constraint solving, trace relation modeling, and a dedicated $forallexists$ quantified reasoning engine to enable automated detection of hyperdefects. Contribution/Results: We implement a prototype system and demonstrate, on multiple challenging benchmarks, the first fully automatic discovery of $forallexists$ hyperproperty violations. Our approach significantly advances dynamic verification capabilities for higher-order security and reliability properties, establishing a novel paradigm for hyperproperty testing.

Technology Category

Application Category

📝 Abstract
Many important hyperproperties, such as refinement and generalized non-interference, fall into the class of $forallexists$ hyperproperties and require, for each execution trace of a system, the existence of another trace relating to the first one in a certain way. The alternation of quantifiers renders $forallexists$ hyperproperties extremely difficult to verify, or even just to test. Indeed, contrary to trace properties, where it suffices to find a single counterexample trace, refuting a $forallexists$ hyperproperty requires not only to find a trace, but also a proof that no second trace satisfies the specified relation with the first trace. As a consequence, automated testing of $forallexists$ hyperproperties falls out of the scope of existing automated testing tools. In this paper, we present a fully automated approach to detect violations of $forallexists$ hyperproperties in software systems. Our approach extends bug-finding techniques based on symbolic execution with support for trace quantification. We provide a prototype implementation of our approach, and demonstrate its effectiveness on a set of challenging examples.
Problem

Research questions and friction points this paper is trying to address.

Hyperproperties
Software Verification
Quantifier Alternation
Innovation

Methods, ideas, or system contributions that make the work stand out.

Automated Detection
Hyperproperties
Symbolic Execution