169 research outputs found

    Generalised Nonblocking

    Get PDF
    This paper studies the nonblocking check used in supervisory control of discrete event systems and its limitations. Different examples with different liveness requirements are discussed. It is shown that the standard nonblocking check can be used to specify most requirements of interest, but that it lacks expressive power in a few cases. A generalised nonblocking check is proposed to overcome the weakness, and its relationship to standard nonblocking is explored. Results suggest that generalised nonblocking, while having the same useful properties with respect to synthesis and compositional verification, can provide for more concise problem representations in some cases

    On reducing the complexity of matrix clocks

    Full text link
    Matrix clocks are a generalization of the notion of vector clocks that allows the local representation of causal precedence to reach into an asynchronous distributed computation's past with depth xx, where x1x\ge 1 is an integer. Maintaining matrix clocks correctly in a system of nn nodes requires that everymessage be accompanied by O(nx)O(n^x) numbers, which reflects an exponential dependency of the complexity of matrix clocks upon the desired depth xx. We introduce a novel type of matrix clock, one that requires only nxnx numbers to be attached to each message while maintaining what for many applications may be the most significant portion of the information that the original matrix clock carries. In order to illustrate the new clock's applicability, we demonstrate its use in the monitoring of certain resource-sharing computations

    A Process Calculus for Expressing Finite Place/Transition Petri Nets

    Full text link
    We introduce the process calculus Multi-CCS, which extends conservatively CCS with an operator of strong prefixing able to model atomic sequences of actions as well as multiparty synchronization. Multi-CCS is equipped with a labeled transition system semantics, which makes use of a minimal structural congruence. Multi-CCS is also equipped with an unsafe P/T Petri net semantics by means of a novel technique. This is the first rich process calculus, including CCS as a subcalculus, which receives a semantics in terms of unsafe, labeled P/T nets. The main result of the paper is that a class of Multi-CCS processes, called finite-net processes, is able to represent all finite (reduced) P/T nets.Comment: In Proceedings EXPRESS'10, arXiv:1011.601

    Trace Spaces: an Efficient New Technique for State-Space Reduction

    Get PDF
    State-space reduction techniques, used primarily in model-checkers, all rely on the idea that some actions are independent, hence could be taken in any (respective) order while put in parallel, without changing the semantics. It is thus not necessary to consider all execution paths in the interleaving semantics of a concurrent program, but rather some equivalence classes. The purpose of this paper is to describe a new algorithm to compute such equivalence classes, and a representative per class, which is based on ideas originating in algebraic topology. We introduce a geometric semantics of concurrent languages, where programs are interpreted as directed topological spaces, and study its properties in order to devise an algorithm for computing dihomotopy classes of execution paths. In particular, our algorithm is able to compute a control-flow graph for concurrent programs, possibly containing loops, which is "as reduced as possible" in the sense that it generates traces modulo equivalence. A preliminary implementation was achieved, showing promising results towards efficient methods to analyze concurrent programs, with very promising results compared to partial-order reduction techniques

    Analysis of Petri Nets and Transition Systems

    Full text link
    This paper describes a stand-alone, no-frills tool supporting the analysis of (labelled) place/transition Petri nets and the synthesis of labelled transition systems into Petri nets. It is implemented as a collection of independent, dedicated algorithms which have been designed to operate modularly, portably, extensibly, and efficiently.Comment: In Proceedings ICE 2015, arXiv:1508.0459

    MaskD : a tool for measuring masking fault-tolerance

    Get PDF
    Fil: Putruele, Luciano. Universidad Nacional de Rı́o Cuarto. Facultad de Ciencias Exactas, Físico-Químicas y Naturales. Departamento de Computación; Argentina.Fil: Putruele, Luciano. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: Demasi, Ramiro Adrián. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina.Fil: Demasi, Ramiro Adrián. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: Castro, Pablo Francisco. Universidad Nacional de Rı́o Cuarto. Facultad de Ciencias Exactas, Físico-Químicas y Naturales. Departamento de Computación; Argentina.Fil: Castro, Pablo Francisco. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: D'Argenio, Pedro Ruben. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina.Fil: D'Argenio, Pedro Ruben. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: D'Argenio, Pedro Ruben. Saarland University. Saarland Informatics Campus; Germany.We present MaskD, an automated tool designed to measure the level of fault-tolerance provided by software components. The tool focuses on measuring masking fault-tolerance, that is, the kind of fault-tolerance that allows systems to mask faults in such a way that they cannot be observed by the users. The tool takes as input a nominal model (which serves as a specification) and its fault-tolerant implementation, described by means of a guarded-command language, and automatically computes the masking distance between them. This value can be understood as the level of fault-tolerance provided by the implementation. The tool is based on a sound and complete framework we have introduced in previous work. We present the ideas behind the tool by means of a simple example and report experiments realized on more complex case studies.This work was supported by ANPCyT PICT-2017-3894 (RAFTSys), ANPCyT PICT 2019-03134, SeCyT-UNC 33620180100354CB (ARES), and EU Grant agreement ID: 101008233 (MISSION).publishedVersionFil: Putruele, Luciano. Universidad Nacional de Rı́o Cuarto. Facultad de Ciencias Exactas, Físico-Químicas y Naturales. Departamento de Computación; Argentina.Fil: Putruele, Luciano. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: Demasi, Ramiro Adrián. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina.Fil: Demasi, Ramiro Adrián. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: Castro, Pablo Francisco. Universidad Nacional de Rı́o Cuarto. Facultad de Ciencias Exactas, Físico-Químicas y Naturales. Departamento de Computación; Argentina.Fil: Castro, Pablo Francisco. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: D'Argenio, Pedro Ruben. Universidad Nacional de Córdoba. Facultad de Matemática, Astronomía, Física y Computación; Argentina.Fil: D'Argenio, Pedro Ruben. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina.Fil: D'Argenio, Pedro Ruben. Saarland University. Saarland Informatics Campus; Germany
    corecore