28 research outputs found

    Approaching the Coverability Problem Continuously

    Get PDF
    The coverability problem for Petri nets plays a central role in the verification of concurrent shared-memory programs. However, its high EXPSPACE-complete complexity poses a challenge when encountered in real-world instances. In this paper, we develop a new approach to this problem which is primarily based on applying forward coverability in continuous Petri nets as a pruning criterion inside a backward coverability framework. A cornerstone of our approach is the efficient encoding of a recently developed polynomial-time algorithm for reachability in continuous Petri nets into SMT. We demonstrate the effectiveness of our approach on standard benchmarks from the literature, which shows that our approach decides significantly more instances than any existing tool and is in addition often much faster, in particular on large instances.Comment: 18 pages, 4 figure

    The Logical View on Continuous Petri Nets

    Get PDF
    International audienceContinuous Petri nets are a relaxation of classical discrete Petri nets in which transitions can be fired a fractional number of times, and consequently places may contain a fractional number of tokens. Such continuous Petri nets are an appealing object to study since they over approximate the set of reachable configurations of their discrete counterparts, and their reachability problem is known to be decidable in polynomial time. The starting point of this paper is to show that the reachability relation for continuous Petri nets is definable by a sentence of linear size in the existential theory of the rationals with addition and order. Using this characterization, we obtain decidability and complexity results for a number of classical decision problems for continuous Petri nets. In particular, we settle the open problem about the precise complexity of reachability set inclusion. Finally, we show how continuous Petri nets can be incorporated inside the classical backward coverability algorithm for discrete Petri nets as a pruning heuristic in order to tackle the symbolic state explosion problem. The cornerstone of the approach we present is that our logical characterization enables us to leverage the power of modern SMT-solvers in order to yield a highly performant and robust decision procedure for coverability in Petri nets. We demonstrate the applicability of our approach on a set of standard benchmarks from the literature

    Third Workshop on Modelling of Objects, Components, and Agents

    Get PDF
    This booklet contains the proceedings of the Third International Workshop on Modelling of Objects, Components, and Agents (MOCA'04), October 11-13, 2004. The workshop is organised by the CPN group at the Department of Computer Science, University of Aarhus, Denmark and the "Theoretical Foundations of Computer Science" group at the University of Hamburg. The home page of the workshop is: http://www.daimi.au.dk/CPnets/workshop0

    PETRI NETS AND TIMED PETRI NETS BASIC CONCEPTS AND PROPERTIES

    Get PDF
    Petri nets are formal models of systems which exhibit concurrent activities. Communication networks, multiprocessor systems, manufacturing systems and distributed databases are simple examples of such systems. As formal models, Petri nets are bipartite directed graphs, in which the two types of vertices represent, in a very general sense, conditions and events. An event can occur only when all conditions associated with it (represented by arcs directed to the event) are satisfied. An occurrence of an event usually satisfies some other conditions, indicated by arcs directed from the event. So, an occurrence of one event causes some other event to occur, and so on. In order to study performance aspects of systems modeled by Petri nets, the durations of modeled activities must also be taken into account. This can be done in different ways, resulting in different types of temporal nets. In timed Petri nets, occurrence times are associated with events, and the events occur in real-time (as opposed to instantaneous occurrences in other models). For timed nets with constant or exponentially distributed occurrence times, the state graph of a net is a Markov chain, in which the stationary probabilities of states can be determined by known methods. These stationary probabilities can be used for the derivation of many performance characteristics of the model. Analysis of net models based on exhaustive generation of all possible states is called reachability analysis; it provides detailed characterization of model's behavior, but often requires analysis of huge state spaces (the number of states can increase exponentially with some model parameters which is known as "state explosion"). Structural analysis determines the properties of net models on the basis of connections among model elements; structural analysis is usually much simpler than reachability analysis, but can be applied only to models satisfying certain properties. If neither reachability nor structural analysis is feasible, discrete event simulation of timed nets can be used to study the properties of net models. This report introduces basic concepts of Petri nets and timed Petri nets, discusses some of their properties, and presents several straightforward applications. It also includes a comprehensive list of references

    Fluidization of Petri nets to improve the analysis of Discrete Event Systems

    Get PDF
    Las Redes de Petri (RdP) son un formalismo ampliamente aceptado para el modelado y an谩lisis de Sistemas de Eventos Discretos (SED). Por ejemplo sistemas de manufactura, de log铆stica, de tr谩fico, redes inform谩ticas, servicios web, redes de comunicaci贸n, procesos bioqu铆micos, etc. Como otros formalismos, las redes de Petri sufren del problema de la 驴explosi贸n de estados驴, en el cual el n煤mero de estados crece explosivamente respecto de la carga del sistema, haciendo intratables algunas t茅cnicas de an谩lisis basadas en la enumeraci贸n de estados. La fluidificaci贸n de las redes de Petri trata de superar este problema, pasando de las RdP discretas (en las que los disparos de las transiciones y los marcados de los lugares son cantidades enteras no negativas) a las RdP continuas (en las que los disparos de las transiciones, y por lo tanto los marcados se definen en los reales). Las RdP continuas disponen de t茅cnicas de an谩lisis m谩s eficientes que las discretas. Sin embargo, como toda relajaci贸n, la fluidificaci贸n supone el detrimento de la fidelidad, dando lugar a la p茅rdida de propiedades cualitativas o cuantitativas de la red de Petri original. El objetivo principal de esta tesis es mejorar el proceso de fluidificaci贸n de las RdP, obteniendo un formalismo continuo (o al menos parcialmente) que evite el problema de la explosi贸n de estados, mientras aproxime adecuadamente la RdP discreta. Adem谩s, esta tesis considera no solo el proceso de fluidificaci贸n sino tambi茅n el formalismo de las RdP continuas en s铆 mismo, estudiando la complejidad computacional de comprobar algunas propiedades. En primer lugar, se establecen las diferencias que aparecen entre las RdP discretas y continuas, y se proponen algunas transformaciones sobre la red discreta que mejorar谩n la red continua resultante. En segundo lugar, se examina el proceso de fluidificaci贸n de las RdP aut贸nomas (i.e., sin ninguna interpretaci贸n temporal), y se establecen ciertas condiciones bajo las cuales la RdP continua preserva determinadas propiedades cualitativas de la RdP discreta: limitaci贸n, ausencia de bloqueos, vivacidad, etc. En tercer lugar, se contribuye al estudio de la decidibilidad y la complejidad computacional de algunas propiedades comunes de la RdP continua aut贸noma. En cuarto lugar, se considera el proceso de fluidificaci贸n de las RdP temporizadas. Se proponen algunas t茅cnicas para preservar ciertas propiedades cuantitativas de las RdP discretas estoc谩sticas por las RdP continuas temporizadas. Por 煤ltimo, se propone un nuevo formalismo, en el cual el disparo de las transiciones se adapta a la carga del sistema, combinando disparos discretos y continuos, dando lugar a las Redes de Petri h铆bridas adaptativas. Las RdP h铆bridas adaptativas suponen un marco conceptual para la fluidificaci贸n parcial o total de las Redes de Petri, que engloba a las redes de Petri discretas, continuas e h铆bridas. En general, permite preservar propiedades de la RdP original, evitando el problema de la explosi贸n de estados

    From Epidemic to Pandemic Modelling

    Get PDF
    We present a methodology for systematically extending epidemic models to multilevel and multiscale spatio-temporal pandemic ones. Our approach builds on the use of coloured stochastic and continuous Petri nets facilitating the sound component-based extension of basic SIR models to include population stratification and also spatio-geographic information and travel connections, represented as graphs, resulting in robust stratified pandemic metapopulation models. This method is inherently easy to use, producing scalable and reusable models with a high degree of clarity and accessibility which can be read either in a deterministic or stochastic paradigm. Our method is supported by a publicly available platform PetriNuts; it enables the visual construction and editing of models; deterministic, stochastic and hybrid simulation as well as structural and behavioural analysis. All the models are available as supplementary material, ensuring reproducibility.Comment: 79 pages (with Appendix), 23 figures, 7 table

    Contributions to the deadlock problem in multithreaded software applications observed as Resource Allocation Systems

    Get PDF
    Desde el punto de vista de la competencia por recursos compartidos sucesivamente reutilizables, se dice que un sistema concurrente compuesto por procesos secuenciales est谩 en situaci贸n de bloqueo si existe en 茅l un conjunto de procesos que est谩n indefinidamente esperando la liberaci贸n de ciertos recursos retenidos por miembros del mismo conjunto de procesos. En sistemas razonablemente complejos o distribuidos, establecer una pol铆tica de asignaci贸n de recursos que sea libre de bloqueos puede ser un problema muy dif铆cil de resolver de forma eficiente. En este sentido, los modelos formales, y particularmente las redes de Petri, se han ido afianzando como herramientas fruct铆feras que permiten abstraer el problema de asignaci贸n de recursos en este tipo de sistemas, con el fin de abordarlo anal铆ticamente y proveer m茅todos eficientes para la correcta construcci贸n o correcci贸n de estos sistemas. En particular, la teor铆a estructural de redes de Petri se postula como un potente aliado para lidiar con el problema de la explosi贸n de estados inherente a aqu茅llos. En este f茅rtil contexto han florecido una serie de trabajos que defienden una propuesta metodol贸gica de dise帽o orientada al estudio estructural y la correspondiente correcci贸n f铆sica del problema de asignaci贸n de recursos en familias de sistemas muy significativas en determinados contextos de aplicaci贸n, como el de los Sistemas de Fabricaci贸n Flexible. Las clases de modelos de redes de Petri resultantes asumen ciertas restricciones, con significado f铆sico en el contexto de aplicaci贸n para el que est谩n destinadas, que alivian en buena medida la complejidad del problema. En la presente tesis, se intenta acercar ese tipo de aproximaci贸n metodol贸gica al dise帽o de aplicaciones software multihilo libres de bloqueos. A tal efecto, se pone de manifiesto c贸mo aquellas restricciones procedentes del mundo de los Sistemas de Fabricaci贸n Flexible se muestran demasiado severas para aprehender la versatilidad inherente a los sistemas software en lo que respecta a la interacci贸n de los procesos con los recursos compartidos. En particular, se han de resaltar dos necesidades de modelado fundamentales que obstaculizan la mera adopci贸n de antiguas aproximaciones surgidas bajo el prisma de otros dominios: (1) la necesidad de soportar el anidamiento de bucles no desplegables en el interior de los procesos, y (2) la posible compartici贸n de recursos no disponibles en el arranque del sistema pero que son creados o declarados por un proceso en ejecuci贸n. A resultas, se identifica una serie de requerimientos b谩sicos para la definici贸n de un tipo de modelos orientado al estudio de sistemas software multihilo y se presenta una clase de redes de Petri, llamada PC2R, que cumple dicha lista de requerimientos, manteni茅ndose a su vez respetuosa con la filosof铆a de dise帽o de anteriores subclases enfocadas a otros contextos de aplicaci贸n. Junto con la revisi贸n e integraci贸n de anteriores resultados en el nuevo marco conceptual, se aborda el estudio de propiedades inherentes a los sistemas resultantes y su relaci贸n profunda con otros tipos de modelos, la confecci贸n de resultados y algoritmos eficientes para el an谩lisis estructural de vivacidad en la nueva clase, as铆 como la revisi贸n y propuesta de m茅todos de resoluci贸n de los problemas de bloqueo adaptadas a las particularidades f铆sicas del dominio de aplicaci贸n. Asimismo, se estudia la complejidad computacional de ciertas vertientes relacionadas con el problema de asignaci贸n de recursos en el nuevo contexto, as铆 como la traslaci贸n de los resultados anteriormente mencionados sobre el dominio de la ingenier铆a de software multihilo, donde la nueva clase de redes permite afrontar problemas inabordables considerando el marco te贸rico y las herramientas suministradas para subclases anteriormente explotadas
    corecore