8,223 research outputs found
A Compiler and Runtime Environment for Execution of Coloured Petri Net Models
Reliance on software systems is ever increasing in our world. Alongside the application of concurrent software systems that embody communication, syn- chronization and resource sharing. Many problems in software engineering have strict requirements regarding concurrency and correctness. Designing correct concurrent software is challenging, and a range of formalisms and tools exists that can help the development process. Coloured Petri nets are an extension of the mathematical concept of Petri nets and a widely used language for spec- ification and modelling concurrent systems. CPN Tools is a tool for editing, simulating, and analyzing Coloured Petri nets models. A need has been iden- tified to develop new software tools to execute Coloured Petri net models to facilitate further development and increase portability. This thesis proposes a compiler and a runtime environment for Coloured Petri nets using the F# pro- gramming language and the .NET platform. The result is a CPN simulation system consisting of a compiler that can parse a .cpn file and generate code and a simulator that can use the code generated and execute the model. A state-space exploration strongly supports the functional correctness of the system.Masteroppgave i Programutvikling samarbeid med HVLPROG399MAMN-PRO
Lifted structural invariant analysis of Petri net product lines
Petri nets are commonly used to represent concurrent systems. However, they lack support
for modelling and analysing system families, like variants of controllers, different variations
of a process model, or the possible configurations of a flexible assembly line.
To facilitate modelling potentially large collections of similar systems, in this paper, we
enrich Petri nets with variability mechanisms based on product line engineering. Moreover,
we present methods for the efficient analysis of the place and transition invariants in
all defined versions of a Petri net. Efficiency is achieved by analysing the system family
as a whole, instead of analysing each possible net variant separately. For this purpose,
we lift the notion of incidence matrix to the product line level, and rely on constraint
solving techniques. We present tool support and evaluate the benefits of our techniques
on synthetic and realistic examples, achieving in some cases speed-ups of two orders of
magnitude with respect to analysing each net variant separatelyThis work has been funded by the Spanish Ministry of Science (PID2021-122270OB-I00) and the R&D
programme of Madrid (P2018/TCS-4314
Recommended from our members
Graph models for reachability analysis of concurrent programs
Reachability analysis is an attractive technique for analysis of concurrent programs because it is simple and relatively straightforward to automate, and can be used in conjunction with model-checking procedures to check for application-specific as well as general properties. Several techniques have been proposed differing mainly on the model used; some of these propose the use of flowgraph based models, some others of Petri nets.This paper addresses the question: What essential difference does it make, if any, what sort of finite-state model we extract from program texts for purposes of reachability analysis? How do they differ in expressive power, decision power, or accuracy? Since each is intended to model synchronization structure while abstracting away other features, one would expect them to be roughly equivalent.We confirm that there is no essential semantic difference between the most well known models proposed in the literature by providing algorithms for translation among these models. This implies that the choice of model rests on other factors, including convenience and efficiency.Since combinatorial explosion is the primary impediment to application of reachability analysis, a particular concern in choosing a model is facilitating divide-and-conquer analysis of large programs. Recently, much interest in finite-state verification systems has centered on algebraic theories of concurrency. Yeh and Young have exploited algebraic structure to decompose reachability analysis based on a flowgraph model. The semantic equivalence of graph and Petri net based models suggests that one ought to be able to apply a similar strategy for decomposing Petri nets. We show this is indeed possible through application of category theory
On Modelling and Analysis of Dynamic Reconfiguration of Dependable Real-Time Systems
This paper motivates the need for a formalism for the modelling and analysis
of dynamic reconfiguration of dependable real-time systems. We present
requirements that the formalism must meet, and use these to evaluate well
established formalisms and two process algebras that we have been developing,
namely, Webpi and CCSdp. A simple case study is developed to illustrate the
modelling power of these two formalisms. The paper shows how Webpi and CCSdp
represent a significant step forward in modelling adaptive and dependable
real-time systems.Comment: Presented and published at DEPEND 201
Translating UML State Machines to Coloured Petri Nets Using Acceleo: A Report
UML state machines are widely used to specify dynamic systems behaviours.
However its semantics is described informally, thus preventing the application
of model checking techniques that could guarantee the system safety. In a
former work, we proposed a formalisation of non-concurrent UML state machines
using coloured Petri nets, so as to allow for formal verification. In this
paper, we report our experience to implement this translation in an automated
manner using the model-to-text transformation tool Acceleo. Whereas Acceleo
provides interesting features that facilitated our translation process, it also
suffers from limitations uneasy to overcome.Comment: In Proceedings ESSS 2014, arXiv:1405.055
Effective representation of RT-LOTOS terms by finite time petri nets
The paper describes a transformational approach for the
specification and formal verification of concurrent and real-time systems. At upper level, one system is specified using the timed process algebra RT-LOTOS. The output of the proposed transformation is a Time Petri net (TPN). The paper particularly shows how a TPN can be automatically constructed from an RT-LOTOS specification using a compositionally defined mapping. The proof of the translation consistency is sketched in the paper and developed in [1]. The RT-LOTOS to TPN translation patterns formalized in the paper are being implemented. in a prototype tool. This enables reusing TPNs verification techniques and tools for the profit of RT-LOTOS
A bibliography on formal methods for system specification, design and validation
Literature on the specification, design, verification, testing, and evaluation of avionics systems was surveyed, providing 655 citations. Journal papers, conference papers, and technical reports are included. Manual and computer-based methods were employed. Keywords used in the online search are listed
Recommended from our members
Tools for efficient analysis of concurrent software systems
The ever increasing use of distributed computing as a method of providing added computing power and reliability has sparked interest in methods to model and analyze concurrent hardware/ software systems. Efficient automated analysis tools are needed to aid designers of such systems. The Distributed Systems Project at UCI has been developing a suite of tools (dubbed the P-NUT system) which supports efficient analysis of models of concurrent software. This paper presents the principles which guide the development of P-NUT tools and discusses the development of one of the tools: the Reachability Graph Builder (RGB). The P-NUT approach to tool development has resulted in the production of a highly efficient tool for constructing reachability graphs. The careful design of data structures and associated algorithms has significantly enlarged the class of models which can be analyzed
- …