8 research outputs found

    An algebraic characterization of observational equivalence

    Get PDF
    AbstractWe show that observational equivalence can be characterized by saturating homomorphisms (with respect to Hennessy-Milner logic), thus bringing together results developed independently by Castellani and by Arnold and Dicky on characterizations of transition system equivalences. We take this opportunity to compare Castellani's abstraction homomorphisms and Arnold-Dicky's saturating homomorphisms. It turns out that they are very similar notions: their difference in formulation is partly due to the fact that abstraction homomorphisms were defined on a restricted class of transition systems

    DELFIN+: An efficient deadlock detection tool for CCS processes

    Get PDF
    AbstractModel checking is a formal technique for proving the correctness of a system with respect to a desired behavior. However, deadlock detection via model checking is particularly difficult for the following two problems: (i) the state explosion problem, due to the exponential increase in the size of a finite state model as the number of system components grows; and (ii) the output interpretation problem, as often counter-examples are so long that they are hard to understand. The aim of this paper is to solve both problems by using heuristic-based search strategies. We have realized DELFIN+ (DEadLock FINder) a tool supporting efficient deadlock detection in CCS processes. We have used this tool to verify a sample of CCS processes, in order to evaluate the method on them

    An algebraic characterization of transition system equivalences

    Get PDF
    AbstractI. Castellani (1987, J. Comput. System Sci. 34, 210–235) has shown that observation equivalence of transition systems could be characterized by particular reductions: systems are equivalent if, and only if, they can be reduced to the same form. Moreover, every transition system has a minimal reduced form. We extend these results to logical equivalence, by an algebraic interpretation of temporal logics: we characterize logical equivalence of transition systems by particular reductions (saturating quasi-homomorphisms) or their power algebras of sets of states and paths and prove that every power algebra has a minimal reduced form. We then offer alternative proofs for logical characterizations of observation equivalence: in particular we apply our method to prove M. Hennessy and C. Stirling's (1984, “Lecture Notes in Comput. Sci. Vol. 176,” pp. 301–311, Springer-Verlag, New York/Berlin) result that “Future Perfect” logic characterizes observation equivalence of generalized transition systems, i.e., systems whose infinite behaviours are restricted by arbitrary fairness constraints

    A calculus of transition systems (towards universal coalgebra)

    Get PDF
    By representing transition systems as coalgebras, the three main ingredients of their theory: coalgebra, homomorphism, and bisimulation, can be seen to be in a precise correspondence to the basic notions of universal algebra: Sigma-algebra, homomorphism, and substitutive relation (or congruence). In this paper, some standard results from universal algebra (such as the three isomorphism theorems and facts on the lattices of subalgebras and congruences) are reformulated (using the afore mentioned correspondence) and proved for transition systems

    Using heuristic search for finding deadlocks in concurrent systems

    Get PDF
    AbstractModel checking is a formal technique for proving the correctness of a system with respect to a desired behavior. This is accomplished by checking whether a structure representing the system (typically a labeled transition system) satisfies a temporal logic formula describing the expected behavior. Model checking has a number of advantages over traditional approaches that are based on simulation and testing: it is completely automatic and when the verification fails it returns a counterexample that can be used to pinpoint the source of the error. Nevertheless, model checking techniques often fail because of the state explosion problem: transition systems grow exponentially with the number of components. The aim of this paper is to attack the state explosion problem that may arise when looking for deadlocks in concurrent systems described through the calculus of communicating systems. We propose to use heuristics-based techniques, namely the A* algorithm, both to guide the search without constructing the complete transition system, and to provide minimal counterexamples. We have realized a prototype tool to evaluate the methodology. Experiments we have conducted on processes of different size show the benefit from using our technique against building the whole state space, or applying some other methods

    Smart Contract Analysis Through Communication Abstractions

    Get PDF
    Smart contracts are programs that manage interactions between many users. Recently, Solidity smart contract have become a popular way to enforce financial agreements between untrusting users. However, such agreements do not eliminate trust, but rather redirects trust into the correctness of the smart contract. This means that each user must verify that a smart contract behaves correctly, regardless of how other users interact with it. Verifying a smart contract relative to all possible users is intractable due to state explosion. This thesis studies how local symmetry can be used to analyze smart contracts from a few representative users. This thesis builds on the novel notion of participation, that gives explicit semantics to user interactions. From participation, a topology is obtained for how users interact during each transaction of a smart contract. Local symmetry analysis shows that most users are interchangeable within a topology, and therefore, most users are locally symmetric. This motivates local bundle abstractions that reduce contracts with arbitrarily many users to sequential programs with a few representative users. It is shown that local bundle abstractions can be used to ameliorate state explosion in smart contract verification, and to accelerate counterexample search in bounded analysis (e.g., fuzzing and bounded model checking). We implement local bundle abstraction in SmartACE, and show order-of-magnitude improvements in time when compared to a state-of-the-art smart contract verification tool
    corecore