HyperLTL is a temporal logic that can express hyperproperties, i.e., properties that relate multiple execution traces of a system. Such properties are becoming increasingly important and naturally occur, e.g., in information-flow control, robustness, mutation testing, path planning, and causality checking. Thus far, complete model checking tools for HyperLTL have been limited to alternation-free formulas, i.e., formulas that use only universal or only existential trace quantification. Properties involving quantifier alternations could only be handled in an incomplete way, i.e., the verification might fail even though the property holds. In this paper, we present AutoHyper, an explicit-state automata-based model checker that supports full HyperLTL and is complete for properties with arbitrary quantifier alternations. We show that language inclusion checks can be integrated into HyperLTL verification, which allows AutoHyper to benefit from a range of existing inclusion-checking tools. We evaluate AutoHyper on a broad set of benchmarks drawn from different areas in the literature and compare it with existing (incomplete) methods for HyperLTL verification.
翻译:HyperLTL是一个时间逻辑,可以表达超异性,即与系统多重执行痕迹有关的属性。这些属性正变得越来越重要,并且自然发生,例如在信息流控制、稳健性、突变测试、路径规划和因果关系检查等方面。迄今为止,HyperLTL的完整模型检查工具已限于无换式公式,即仅使用通用或仅使用生存跟踪量化的公式。涉及量化变换的属性只能以不完整的方式处理,也就是说,即使属性持有,核查也可能失败。在本文件中,我们介绍AutoHyper,一个支持全超大LTL的、以明确状态自动成型的模型检查器,对特性来说是完整的,并带有任意的量化变换。我们表明,语言包容性检查可以纳入超LTL核查,这使AutHyper能够从现有的一系列包容性校准工具中获益。我们根据从文献的不同领域绘制的一套广泛基准对AutHyper进行了评估,并将它与现有(不完整)超LT核查方法进行比较。