Theorem proving graph grammars with attributes and negative application conditions

被引:11
作者
da Costa Cavalheiro, Simone Andre [2 ]
Foss, Luciana [2 ]
Ribeiro, Leila [1 ]
机构
[1] Fed Univ Rio Grande do Sul UFRGS, Informat Inst, Porto Alegre, RS, Brazil
[2] Fed Univ Pelotas UFPel, Technol Dev Ctr, Pelotas, RS, Brazil
关键词
Graph transformation; Theorem proving; TRANSFORMATION; VERIFICATION;
D O I
10.1016/j.tcs.2017.04.010
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Graph grammars may be used to formally describe computational systems, modeling the states as graphs and the possible state changes as rules (whose left- and right-hand sides are graphs). The behavior of the system is defined by the application of these rules to the state-graphs. From a practical point of view, the extension of rules to enable description of extra conditions that must be satisfied upon rule application is highly desirable. An example is the specification of negative application conditions, or NACs, that describe situations that prevent the application of a rule. This extension of the basic formalism enhances the expressiveness of rules, generally allowing simpler specifications. Another extension that is fundamental for practical applications is the possibility to use data types, like natural numbers, lists, etc., as attributes of graphical elements (vertices and edges). Attributed graph grammars are well-investigated and used. However, there is a lack of verification techniques for this kind of grammar mainly due to the fact that data types are typically infinite domains, and thus techniques like model checking can not be used directly (without abstraction constructions). The present work provides a theoretical foundation for theorem proving graph grammars with negative application conditions and attributes. This is achieved by generating an event-B model from a graph grammar. Event B models are composed by sets and axioms to define types, and by states and events to describe behavior. After constructing the event-B model that is semantically equivalent to a graph grammar, properties about reachable states may be proven using the various theorem provers available for event-B in the Rodin platform. This strategy allows the verification of systems with infinite-state spaces without using any kind of approximation. (C) 2017 Elsevier B.V. All rights reserved.
引用
收藏
页码:25 / 77
页数:53
相关论文
共 75 条
  • [1] Rodin: An open toolset for modelling and reasoning in Event-B
    Abrial J.-R.
    Butler M.
    Hallerstede S.
    Hoang T.S.
    Mehta F.
    Voisin L.
    [J]. International Journal on Software Tools for Technology Transfer, 2010, 12 (06) : 447 - 466
  • [2] Abrial JR, 2007, FUND INFORM, V77, P1
  • [3] [Anonymous], 1992, TEMPORAL LOGIC REACT, DOI DOI 10.1007/978-1-4612-0931-7
  • [4] [Anonymous], 2005, B BOOK ASSIGNING PRO
  • [5] [Anonymous], 2010, Modeling in Event-B: system and software engineering
  • [6] Arendt T, 2010, LECT NOTES COMPUT SC, V6394, P121
  • [7] Azab Karl, 2006, ELECT COMMUN EASST, V1
  • [8] BACK RJR, 1989, LECT NOTES COMPUT SC, V375, P115
  • [9] A framework for the verification of infinite-state graph transformation systems
    Baldan, Paolo
    Corradini, Andrea
    Koenig, Barbara
    [J]. INFORMATION AND COMPUTATION, 2008, 206 (07) : 869 - 907
  • [10] Baresi L, 2006, LECT NOTES COMPUT SC, V4178, P306