Automated Verification of Object Petri Nets based on Transformation, Unfoldings and SAT Solving

  • Ismaila Abdullahi

    Student thesis: Doctoral Thesis


    Object Petri nets are a Petri net framework that follows the nets-within-nets paradigm introduced by Valk. In Object Petri nets the token of ordinary Petri nets are allowed to be Petri nets themselves. This formalism and similar formalisms that allow to interpret the tokens of an ordinary Petri net as a Petri net are suitable for modelling application systems where the mobility and interactions between cooperating agents are of importance. In
    large information system, agents are software components that are capable of performing autonomous actions in some environment in order to satisfy their design objectives. To
    this end, several agents communicate and interact in order to solve a complex problem.

    With Object Petri nets it is possible to model the mobility and dynamic interactions among agents based on their hierarchical structures: at the lower level each agent and its internal behaviour is represented by an ordinary Petri net called an object net, and
    agents can move and interact within their environment at the higher level which is also represented by an ordinary Petri net called the system net. Each place in the system net represents a location where agents can reside and mobility of agents is modelled by the movement of the object nets from one place to another. Interactions between the system net and object nets are possible via simultaneous ring of transitions.

    Generally, ordinary Petri nets offer a clear way of specifying complex systems, while at the same time retaining an intuitive and compact graphical representation. This allows for the use of well-established analysis techniques to verify their desirable properties. In contrast, object Petri nets, however, are beneficial to modelling but lack generally adopted verification techniques. The main challenge in this regard is posed by the highly expressive nature of of the underlying class of Petri nets utilised in the object Petri net. Some modifications have to be enforced in order to make verification feasible. This thesis aims at making a contribution by establishing a path to formal verification of properties of a slightly modified version of the Object Petri nets.

    Consequently, the main goal of this thesis has been the development of a technique to systematically dene the foundations for Object Petri net transformation into 1-safe equivalent ordinary Petri net in such a way that employing only affordable resources can handle important questions regarding the verification of various properties using model checking. This goal has successfully been reached in terms of the following contributions summarised below:
    ˆ Definition of a modified version of a class of Object Petri nets called elementary reference-net system, as formal representation of RENEW nets than previously studied formalisms of the nets in the RENEW tool.
    ˆ Theoretical results for transforming this class of Object Petri nets into a single low level Petri nets in such a way that application of existing techniques and tools known for low-level Petri nets can handle important questions regarding the verification of various properties using model checking (establishment of a set of transformation rules, and the computational complexity analysis for the transformation).
    ˆ Development of a software tool (ERStoPTnet) that permits the automatic execution of the above mentioned set of transformation rules described in the formalism of Petri Net Markup Language PNML to obtain an equivalent 1-safe Petri net.
    ˆ Development of a generic software tool (PrefixtoCNF) that allows the encoding of prefixes generated by a Petri net unfolder as a propositional satisfiability formula that can be given to a SAT solver for the purpose of model checking the low-level Petri nets in particular of the transformed nets and any bounded low-level Petri net in general, specifically for reachability and deadlock problems.
    ˆ Experimental results obtained by implementing ERStoPTnet and the PrefixtoCNF.
    ˆ A comparative analysis using results from our technique with an existing established technique proposed for model checking Petri net based models using prefixes of unfolding which shows the feasibility of our approach.
    Date of Award23 Jun 2018
    Original languageEnglish
    SupervisorJanusz Kulon (Supervisor) & Berndt Muller (Supervisor)

    Cite this