1,428 research outputs found
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
Process windows
We describe a method for formally representing the behaviour of complex processes by process windows. Each window covers a part of the system behaviour, i.e. a part of the underlying transition system, and is easier to understand and analyse than the complete transition system. Process windows can overlap and have shared states and transitions so that the complete system behaviour is the union of window behaviours. We demonstrate the advantage of such representations when dealing with complex system behaviours, and discuss potential applications in circuit design and process mining. As a motivational example we consider the problem of covering transition systems by marked graphs, or more generally choicefree Petri nets. The obtained windows correspond to choice-free behavioural scenarios of the system, wherein one window can take over, or wake up, after another window has become inactive. The corresponding wake-up conditions and wake-up markings can be derived automatically.Peer ReviewedPostprint (author's final draft
Software development for analysis of stochastic petri nets using transfer functions
This thesis research is an implementation of a closed-form analytical technique for study, evaluation and analysis of Stochastic Petri Nets (SPN). The technique is based on a theorem that an isomorphism exists between an SPN and a Markov Chain. The procedure comprises five main steps: reachability graph generation of the underlying Petri net, transformation of the reachability graph to a state machine Petri net, calculation of transfer functions, computation of equivalent transfer functions via Mason\u27s rule, and computation of performance parameters of the SPN model from the equivalent transfer functions and their derivatives. The software is developed in UNIX using C and applied to various SPN models. Future research includes implementation of Mason\u27s rule for complex cases and symbolic derivation of equivalent transfer functions
Desynchronization: Synthesis of asynchronous circuits from synchronous specifications
Asynchronous implementation techniques, which measure logic delays at run time and activate registers accordingly, are inherently more robust than their synchronous counterparts, which estimate worst-case delays at design time, and constrain the clock cycle accordingly. De-synchronization is a new paradigm to automate the design of asynchronous circuits from synchronous specifications, thus permitting widespread adoption of asynchronicity, without requiring special design skills or tools. In this paper, we first of all study different protocols for de-synchronization and formally prove their correctness, using techniques originally developed for distributed deployment of synchronous language specifications. We also provide a taxonomy of existing protocols for asynchronous latch controllers, covering in particular the four-phase handshake protocols devised in the literature for micro-pipelines. We then propose a new controller which exhibits provably maximal concurrency, and analyze the performance of desynchronized circuits with respect to the original synchronous optimized implementation. We finally prove the feasibility and effectiveness of our approach, by showing its application to a set of real designs, including a complete implementation of the DLX microprocessor architectur
Recommended from our members
Hybrid analysis techniques for software fault detection
Since the question "Does program P obey specification S" is undecidable in general, every practical software validation technique must compromise accuracy in some way. Testing techniques admit the possibility that a fault will go undetected, as the price for quitting after a finite number of test cases. Formal verification admits the possibility that a proof will not be found for a valid assertion, as the price for quitting after a finite amount of proof effort. No technique so dominates others that a wise validation strategy consists of applying that technique alone; rather, effective validation requires applying several techniques
Model-driven development of data intensive applications over cloud resources
The proliferation of sensors over the last years has generated large amounts
of raw data, forming data streams that need to be processed. In many cases,
cloud resources are used for such processing, exploiting their flexibility, but
these sensor streaming applications often need to support operational and
control actions that have real-time and low-latency requirements that go beyond
the cost effective and flexible solutions supported by existing cloud
frameworks, such as Apache Kafka, Apache Spark Streaming, or Map-Reduce
Streams. In this paper, we describe a model-driven and stepwise refinement
methodological approach for streaming applications executed over clouds. The
central role is assigned to a set of Petri Net models for specifying functional
and non-functional requirements. They support model reuse, and a way to combine
formal analysis, simulation, and approximate computation of minimal and maximal
boundaries of non-functional requirements when the problem is either
mathematically or computationally intractable. We show how our proposal can
assist developers in their design and implementation decisions from a
performance perspective. Our methodology allows to conduct performance
analysis: The methodology is intended for all the engineering process stages,
and we can (i) analyse how it can be mapped onto cloud resources, and (ii)
obtain key performance indicators, including throughput or economic cost, so
that developers are assisted in their development tasks and in their decision
taking. In order to illustrate our approach, we make use of the pipelined
wavefront array.Comment: Preprin
Petri net based development of globally-asynchronous locally-synchronous distributed embedded systems
Dissertação para obtenção do Grau de Doutor em Engenharia Electrotécnica e de ComputadoresA model-based development approach (MBDA) for Globally-Asynchronous Locally-
Synchronous (GALS) Distributed Embedded Systems (DESs) is proposed. This approach
relies on the GALS-DESs specification through (low- or high-level) Petri net classes, which
ensure that the created models are GALS, locally deterministic, distributable, networkindependent,
and platform-independent and support their simulation, verification, and
implementation (using simulation, model-checking, and code generation tools). The use
of network- and platform-independent models enable the use of heterogeneous communication
networks to support the distributed components interaction and enable the use
of heterogeneous platforms to support the components and the communication nodes
implementation. To enable the proposed MBDA, Petri nets are extended with a set of the
concepts, most notably time-domains and asynchronous-channels. Algorithms to support
the verification of GALS-DES models and their decomposition into implementable
sub-models are also proposed. A tool chain framework (IOPT-tools) was extended with
this work proposals, supporting their validation and the GALS-DESs development.Fundação para a Ciência e a Tecnologia - grant ref. SFRH/BD/62171/200
Recent advances in petri nets and concurrency
CEUR Workshop Proceeding
Recursion Aware Modeling and Discovery For Hierarchical Software Event Log Analysis (Extended)
This extended paper presents 1) a novel hierarchy and recursion extension to
the process tree model; and 2) the first, recursion aware process model
discovery technique that leverages hierarchical information in event logs,
typically available for software systems. This technique allows us to analyze
the operational processes of software systems under real-life conditions at
multiple levels of granularity. The work can be positioned in-between reverse
engineering and process mining. An implementation of the proposed approach is
available as a ProM plugin. Experimental results based on real-life (software)
event logs demonstrate the feasibility and usefulness of the approach and show
the huge potential to speed up discovery by exploiting the available hierarchy.Comment: Extended version (14 pages total) of the paper Recursion Aware
Modeling and Discovery For Hierarchical Software Event Log Analysis. This
Technical Report version includes the guarantee proofs for the proposed
discovery algorithm
- …