Legal properties involve reasoning about data values and time. Metric first-order temporal logic (MFOTL) provides a rich formalism for specifying legal properties. While MFOTL has been successfully used for verifying legal properties over operational systems via runtime monitoring, no solution exists for MFOTL-based verification in early-stage system development captured by requirements. Given a legal property and system requirements both formalized in MFOTL, the compliance of the property can be verified on the requirements via satisfiability checking. In this paper, we propose a practical, sound, and complete (within a given bound) satisfiability checking approach for MFOTL. The approach, based on satisfiability modulo theories (SMT), employs a counterexample-guided strategy to incrementally search for a satisfying solution. We implemented our approach using the Z3 SMT solver and evaluated it on five case studies spanning the healthcare, business administration, banking and aviation domains. Our results indicate that our approach can efficiently determine whether legal properties of interest are met, or generate counterexamples that lead to compliance violations.
翻译:法律属性涉及数据价值和时间的推理。衡量一阶时间逻辑(MFOTL)为具体说明法律属性提供了丰富的形式主义。虽然MFOTL成功地用于通过运行时间监测来核查操作系统的法律属性,但在根据要求进行早期系统开发的过程中,没有基于MFOTL的核查解决方案。鉴于MFOTL正式规定的法律属性和系统要求,财产的遵守情况可以通过对等性检查来核实。在本文中,我们建议对MFOTL采用实用、健全和完整的(在特定约束范围内)可比较性检查方法。基于可追溯性模调理论(SMT)的方法,采用了反比照指导战略,逐步寻找令人满意的解决方案。我们用Z3 SMT解答器实施了我们的方法,对涵盖保健、商业管理、银行和航空领域的五个案例研究进行了评估。我们的结果表明,我们的方法可以有效地确定是否满足了合法利益属性,或者产生了导致违反遵守情况的反比。