Bounded model checking (BMC) is an effective technique for hunting bugs by incrementally exploring the state space of a system. To reason about infinite traces through a finite structure and to ultimately obtain completeness, BMC incorporates loop conditions that revisit previously observed states. This paper focuses on developing loop conditions for BMC of HyperLTL- a temporal logic for hyperproperties that allows expressing important policies for security and consistency in concurrent systems, etc. Loop conditions for HyperLTL are more complicated than for LTL, as different traces may loop inconsistently in unrelated moments. Existing BMC approaches for HyperLTL only considered linear unrollings without any looping capability, which precludes both finding small infinite traces and obtaining a complete technique. We investigate loop conditions for HyperLTL BMC, where the HyperLTL formula can contain up to one quantifier alternation. We first present a general complete automata-based technique which is based on bounds of maximum unrollings. Then, we introduce alternative simulation-based algorithms that allow exploiting short loops effectively, generating SAT queries whose satisfiability guarantees the outcome of the original model checking problem. We also report empirical evaluation of the prototype implementation of our BMC techniques using Z3py.
翻译:通过渐进地探索一个系统的状态空间来解释无限的痕迹,并最终获得完整性。为了通过一个有限的结构来解释无限的痕迹,BMC纳入了对以前观察到的状态进行重新审视的环状条件。本文侧重于为超超LTL的BMC制定环状条件,这是超光速的超光速的逻辑,它是一个超光速的时空逻辑,可以表达关于同时系统的安全性和一致性的重要政策,等等。超LTL的环状条件比LTL更为复杂,因为不同的跟踪在不相干的时刻可能会不连贯地循环。超超LTLTL的现有BMC方法仅考虑线性无循环能力,从而无法找到微小的踪迹和获得完整的技术。我们调查超LTLBMC的环状条件,在那里超光速的公式可以包含一个四分数的变换。我们首先提出一个基于最大滚动的界限的一般完整的自动数据基技术。然后,我们引入其他基于模拟的算法,以便有效地利用短环,产生可视性沙特的查询,从而保证BFimfilical3号检查原模型的原样。我们的经验评估报告。