Skip to main content
QUICK REVIEW

[论文解读] Towards Refinement Strategy Planning for Event-B

Tsutomu Kobayashi, Shinichi Honiden|arXiv (Cornell University)|Oct 26, 2012
Distributed systems and fault tolerance参考文献 6被引用 3
一句话总结

本文提出了一种系统化的方法,通过分析系统元素之间的语义约束和关系,来规划Event-B中的细化策略,使非专家能够通过自动排序构件和现象的引入,构建出结构良好、复杂度可控的模型。该方法使用基于成本的排序系统,优先选择能最小化验证负担同时遵守类型和一致性约束的引入序列。

ABSTRACT

Event-B is a formal approach oriented to system modeling and analysis. It supports refinement mechanism that enables stepwise modeling and verification of a system. By using refinement, the complexity of verification can be spread and mitigated. In common development using Event-B, a specification written in a natural language is examined before modeling in order to plan the modeling and refinement strategy. After that, starting from a simple abstract model, concrete models in several different abstraction levels are constructed by gradually introducing complex structures and concepts. Although users of Event-B have to plan how to abstract the specification for the construction of each model, guidelines for such a planning have not been suggested. Specifically, some elements in a model often require that other elements are included in the model because of semantics constraints of Event-B. As such requirements introduces many elements at once, non-experts of Event-B often make refinement rough though rough refinement does not mitigate the complexity of verification well. In response to the problem, a method is proposed to plan what models are constructed in each abstraction level. The method calculates plans that mitigate the complexity well considering the semantics constraints of Event-B and the relationships between elements in a system.

研究动机与目标

  • 为解决Event-B中细化策略规划低效的问题,即非专家常创建过于粗略的细化,无法降低验证复杂度。
  • 识别并建模Event-B中控制构件(artifacts)和现象(phenomena)引入顺序的语义约束。
  • 为非专家用户提供一种系统化、自动化的支持,以构建逐步进行、一致且复杂度最小化的细化路径。
  • 形式化构件引入与所需底层现象之间的关系,确保类型一致性及证明义务的可管理性。
  • 通过减少对专家知识在细化规划中的依赖,实现Event-B更系统化和易用的使用。

提出的方法

  • 该方法将系统规格建模为自然语言陈述(即构件)及其在Event-B中的对应形式表达(作为不变式)。
  • 基于语义和类型约束,识别出表达每个构件所必需的现象(如集合、常量、变量、事件)。
  • 定义一个成本函数,根据引入每个构件所需的新现象数量来评估其复杂度,重点是最小化累积复杂度。
  • 该算法使用基于优先级的搜索,探索构件所有可能的引入顺序,并通过“CertainlyBetter”函数比较候选计划,剪枝次优序列。
  • 采用带剪枝的递归搜索,高效探索并排序引入序列,确保每一步仅保留非占优的计划。
  • 通过确保类型一致性和通过约束检查避免无效细化,隐式整合了证明义务的考量。

实验结果

研究问题

  • RQ1如何形式化Event-B中的细化策略规划,以减轻非专家用户的负担?
  • RQ2Event-B中的哪些语义约束要求特定的现象和构件引入顺序?
  • RQ3如何通过系统化规划细化步骤来最小化验证复杂度?
  • RQ4可以使用哪些标准来比较和评估不同细化序列的最优性?
  • RQ5该方法如何支持在多个抽象层次上构建一致且类型安全的模型?

主要发现

  • 所提出的方法成功生成了尊重Event-B类型和一致性约束的最优细化序列排名列表。
  • 通过确保构件仅在所有必需现象可用后才被引入,该方法有效降低了验证复杂度,防止了类型错误和证明失败。
  • 该方法使非专家用户无需深入掌握形式化方法或证明义务知识,也能构建有效的细化路径。
  • 该算法通过“CertainlyBetter”函数高效剪枝次优序列,在中等规模规格下仍保持计算可行性。
  • 在图书馆管理系统上的验证表明,某些引入顺序(如{a}, {b}, {c})显著优于其他顺序(如{b}, {a}, {c}),能更有效地降低复杂度。
  • 结果表明,每步引入的新现象数量是决定整体细化复杂度的关键因素,而最优排序可显著减轻这一负担。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。