SMT solving for the validation of B and Event-B models

被引:0
作者
Joshua Schmidt
Michael Leuschel
机构
[1] Universität Düsseldorf,Institut für Informatik
来源
International Journal on Software Tools for Technology Transfer | 2022年 / 24卷
关键词
SMT solving; Z3; Constraint logic programming; ProB; B-method; Event-B;
D O I
暂无
中图分类号
学科分类号
摘要
ProB provides a constraint solver for the B-method written in Prolog and can make use of different backends based on SAT and SMT solving. One such backend translates B and Event-B operators to SMT-LIB using the Z3 solver. This translation uses quantifiers to axiomatize some operators, which are not well-handled by Z3. Several relational constraints such as the transitive closure are not supported by this translation. In this article, we substantially improve the translation to SMT-LIB by employing a more constructive rather than axiomatized style using Z3’s lambda function. Thereby, we are able both to translate more B and Event-B operators to SMT-LIB and improve the overall performance. We further extend ProB’s interface to Z3 to run different solver configurations in parallel. In addition, we present a direct implementation of SMT solving in Prolog using ProB’s constraint solver as a theory solver. We hereby aim to combine the strengths of conflict-driven clause learning for identifying contradictions with ProB’s constraint solver for finding solutions. We deem this implementation to be worthwhile since ProB’s constraint solver is tailored toward solving B and Event-B constraints, and we herewith avoid the dependency on an external SMT solver. Empirical results show that the new integration of Z3 has improved performance of constraint solving and enables to solve several constraints which cannot be solved by ProB’s constraint solver. Furthermore, the direct implementation of SMT solving in ProB shows benefits compared to ProB’s constraint solver and the integration of Z3.
引用
收藏
页码:1043 / 1077
页数:34
相关论文
共 50 条
  • [1] SMT solving for the validation of B and Event-B models
    Schmidt, Joshua
    Leuschel, Michael
    INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2022, 24 (06) : 1043 - 1077
  • [2] SMT Solvers for Validation of B and Event-B Models
    Krings, Sebastian
    Leuschel, Michael
    INTEGRATED FORMAL METHODS (IFM 2016), 2016, 9681 : 361 - 375
  • [3] Integration of SMT-solvers in B and Event-B development environments
    Deharbe, David
    SCIENCE OF COMPUTER PROGRAMMING, 2013, 78 (03) : 310 - 326
  • [4] Event-B Formalization of Event-B Contexts
    Bodeveix, Jean-Paul
    Filali, Mamoun
    RIGOROUS STATE-BASED METHODS, ABZ 2021, 2021, 12709 : 66 - 80
  • [5] Formalizing Ontologies for AI Models Validation: from OWL to Event-B
    Bah, Mohamed Ould
    Boudi, Zakaryae
    Toub, Mohamed
    Wakrime, Abderrahim Ait
    Aniba, Ghassane
    2021 IEEE 15TH INTERNATIONAL CONFERENCE ON SEMANTIC COMPUTING (ICSC 2021), 2021, : 455 - 462
  • [6] Proving the Fidelity of Simulations of Event-B Models
    Yang, Faqing
    Jacquot, Jean-Pierre
    Souquieres, Jeanine
    2014 IEEE 15TH INTERNATIONAL SYMPOSIUM ON HIGH-ASSURANCE SYSTEMS ENGINEERING (HASE), 2014, : 89 - 96
  • [7] Formal Verification of AADL Models by Event-B
    Hadad, Abeer Saeed Abdo
    Ma, Chunyan
    Ahmed, Adeeb Abdulwakeel Obadi
    IEEE ACCESS, 2020, 8 : 72814 - 72834
  • [8] Enabling analysis for Event-B
    Dobrikov, Ivaylo
    Leuschel, Michael
    SCIENCE OF COMPUTER PROGRAMMING, 2018, 158 : 81 - 99
  • [9] Refinement-based Validation of Event-B Specifications
    Mashkoor, Atif
    Yang, Faqing
    Jacquot, Jean-Pierre
    SOFTWARE AND SYSTEMS MODELING, 2017, 16 (03) : 789 - 808
  • [10] Refinement-based Validation of Event-B Specifications
    Atif Mashkoor
    Faqing Yang
    Jean-Pierre Jacquot
    Software & Systems Modeling, 2017, 16 : 789 - 808