Results 1  10
of
122
Simulation, verification, automated composition of web services
 In WWW
, 2002
"... Web services Webaccessible programs and devices – are a key application area for the Semantic Web. With the proliferation of Web services and the evolution towards the Semantic Web comes the opportunity to automate various Web services tasks. Our objective is to enable markup and automated reason ..."
Abstract

Cited by 280 (7 self)
 Add to MetaCart
Web services Webaccessible programs and devices – are a key application area for the Semantic Web. With the proliferation of Web services and the evolution towards the Semantic Web comes the opportunity to automate various Web services tasks. Our objective is to enable markup and automated reasoning technology to describe, simulate, compose, test, and verify compositions of Web services. We take as our starting point the DAMLS DAML+OIL ontology for describing the capabilities of Web services. We define the semantics for a relevant subset of DAMLS in terms of a firstorder logical language. With the semantics in hand, we encode our service descriptions in a Petri Net formalism and provide decision procedures for Web service simulation, verification and composition. We also provide an analysis of the complexity of these tasks under different restrictions to the DAMLS composite services we can describe. Finally, we present an implementation of our analysis techniques. This implementation takes as input a DAMLS description of a Web service, automatically generates a Petri Net and performs the desired analysis. Such a tool has broad applicability both as a back end to existing manual Web service composition tools, and as a standalone tool for Web service developers.
Maude: Specification and Programming in Rewriting Logic
, 2001
"... Maude is a highlevel language and a highperformance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and ..."
Abstract

Cited by 170 (62 self)
 Add to MetaCart
Maude is a highlevel language and a highperformance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and theories. The underlying equational logic chosen for Maude is membership equational logic, that has sorts, subsorts, operator overloading, and partiality definable by membership and equality conditions. Rewriting logic is reflective, in the sense of being able to express its own metalevel at the object level. Reflection is systematically exploited in Maude endowing the language with powerful metaprogramming capabilities, including both userdefinable module operations and declarative strategies to guide the deduction process. This paper explains and illustrates with examples the main concepts of Maude's language design, including its underlying logic, functional, system and objectoriented modules, as well as parameterized modules, theories, and views. We also explain how Maude supports reflection, metaprogramming and internal strategies. The paper outlines the principles underlying the Maude system implementation, including its semicompilation techniques. We conclude with some remarks about applications, work on a formal environment for Maude, and a mobile language extension of Maude.
Rewriting Logic as a Semantic Framework for Concurrency: a Progress Report
, 1996
"... . This paper surveys the work of many researchers on rewriting logic since it was first introduced in 1990. The main emphasis is on the use of rewriting logic as a semantic framework for concurrency. The goal in this regard is to express as faithfully as possible a very wide range of concurrency mod ..."
Abstract

Cited by 82 (22 self)
 Add to MetaCart
. This paper surveys the work of many researchers on rewriting logic since it was first introduced in 1990. The main emphasis is on the use of rewriting logic as a semantic framework for concurrency. The goal in this regard is to express as faithfully as possible a very wide range of concurrency models, each on its own terms, avoiding any encodings or translations. Bringing very different models under a common semantic framework makes easier to understand what different models have in common and how they differ, to find deep connections between them, and to reason across their different formalisms. It becomes also much easier to achieve in a rigorous way the integration and interoperation of different models and languages whose combination offers attractive advantages. The logic and model theory of rewriting logic are also summarized, a number of current research directions are surveyed, and some concluding remarks about future directions are made. Table of Contents 1 In...
The Tile Model
 PROOF, LANGUAGE AND INTERACTION: ESSAYS IN HONOUR OF ROBIN MILNER
, 1996
"... In this paper we introduce a model for a wide class of computational systems, whose behaviour can be described by certain rewriting rules. We gathered our inspiration both from the world of term rewriting, in particular from the rewriting logic framework [Mes92], and of concurrency theory: among the ..."
Abstract

Cited by 65 (24 self)
 Add to MetaCart
In this paper we introduce a model for a wide class of computational systems, whose behaviour can be described by certain rewriting rules. We gathered our inspiration both from the world of term rewriting, in particular from the rewriting logic framework [Mes92], and of concurrency theory: among the others, the structured operational semantics [Plo81], the context systems [LX90] and the structured transition systems [CM92] approaches. Our model recollects many properties of these sources: first, it provides a compositional way to describe both the states and the sequences of transitions performed by a given system, stressing their distributed nature. Second, a suitable notion of typed proof allows to take into account also those formalisms relying on the notions of synchronization and sideeffects to determine the actual behaviour of a system. Finally, an equivalence relation over sequences of transitions is defined, equipping the system under analysis with a concurrent semantics, ...
Compositional Reachability Analysis Using Process Algebra
 IN PROCEEDINGS OF THE SYMPOSIUM ON TESTING, ANALYSIS, AND VERIFICATION (TAV4
, 1991
"... State explosion is the primary obstacle to practical application of reachability analysis techniques for concurrent systems. State explosion can be substantially controlled by using process algebra to achieve compositional (divideandconquer) analysis. A prototype tool incorporating process algebra ..."
Abstract

Cited by 59 (3 self)
 Add to MetaCart
State explosion is the primary obstacle to practical application of reachability analysis techniques for concurrent systems. State explosion can be substantially controlled by using process algebra to achieve compositional (divideandconquer) analysis. A prototype tool incorporating process algebra is described. The promise and problems of the approach are illustrated by applying the tool to an example that incorporates the alternating bit protocol as a module.
Complexity Results for 1safe Nets
, 1993
"... We study the complexity of several standard problems for 1safe Petri nets and some of its subclasses. We prove that reachability, liveness, and deadlock are all PSPACEcomplete for 1safe nets. We also prove that deadlock is NPcomplete for freechoice nets and for 1safe freechoice nets. Finally, ..."
Abstract

Cited by 44 (7 self)
 Add to MetaCart
We study the complexity of several standard problems for 1safe Petri nets and some of its subclasses. We prove that reachability, liveness, and deadlock are all PSPACEcomplete for 1safe nets. We also prove that deadlock is NPcomplete for freechoice nets and for 1safe freechoice nets. Finally, we prove that for arbitrary Petri nets, deadlock is equivalent to reachability and liveness. This paper is to be presented at FST&TCS 13, Foundations of Software Technology & Theoretical Computer Science, to be held 1517 December 1993, in Bombay, India. A version of the paper with most proofs omitted is to appear in the proceedings. 1 Introduction Petri nets are one of the oldest and most studied formalisms for the investigation of concurrency [33]. Shortly after the birth of complexity theory, Jones, Landweber, and Lien studied in their classical paper [24] the complexity of several fundamental problems for Place/Transition nets (called in [24] just Petri nets). Some years later, Howell,...
Petri Nets And Step Transition Systems
 International Journal of Foundations of Computer Science
, 1992
"... Labelled transition systems are a simple yet powerful formalism for describing the operational behaviour of computing systems. They can be extended to model concurrency faithfully by permitting transitions between states to be labelled by a collection of actions, denoting a concurrent step. Petri ne ..."
Abstract

Cited by 43 (1 self)
 Add to MetaCart
Labelled transition systems are a simple yet powerful formalism for describing the operational behaviour of computing systems. They can be extended to model concurrency faithfully by permitting transitions between states to be labelled by a collection of actions, denoting a concurrent step. Petri nets (or Place/Transition nets) give rise to such step transition systems in a natural way  the marking diagram of a Petri net is the canonical transition system associated with it. In this paper, we characterize the class of PNtransition systems, which are precisely those step transition systems generated by Petri nets. We express the correspondence between PNtransition systems and Petri nets in terms of an adjunction between a category of PNtransition systems and a category of Petri nets in which the associated morphisms are behaviourpreserving in a strong and natural sense.
A Static Analysis Technique for Graph Transformation Systems
 In Proc. of CONCUR ’01
, 2001
"... In this paper we introduce a static analysis technique for graph transformation systems. We present an algorithm which, given a graph transformation system and a start graph, produces a nite structure consisting of a hypergraph decorated with transitions (Petri graph) which can be seen as an app ..."
Abstract

Cited by 42 (18 self)
 Add to MetaCart
In this paper we introduce a static analysis technique for graph transformation systems. We present an algorithm which, given a graph transformation system and a start graph, produces a nite structure consisting of a hypergraph decorated with transitions (Petri graph) which can be seen as an approximation of the Winskel style unfolding of the graph transformation system. The fact that any reachable graph has an homomorphic image in the Petri graph and the additional causal information provided by transitions allow us to prove several interesting properties of the original system. As an application of the proposed technique we show how it can be used to verify the absence of deadlocks in an innitestate Dining Philosophers system.
ZeroSafe Nets: Comparing the Collective and Individual Token Approaches
"... The main feature of zerosafe nets is a primitive notion of transition synchronization. To this aim, besides ordinary places, called stable places, zerosafe nets are equipped with zero places, which in an observable marking cannot contain any token. This yields the notion of transaction: a basic ..."
Abstract

Cited by 40 (20 self)
 Add to MetaCart
The main feature of zerosafe nets is a primitive notion of transition synchronization. To this aim, besides ordinary places, called stable places, zerosafe nets are equipped with zero places, which in an observable marking cannot contain any token. This yields the notion of transaction: a basic atomic computation, which may use zero tokens as triggers, but defines an evolution between observable markings only. The abstract counterpart of a generic zerosafe net B consists of an ordinary P/T net whose places are the stable places of B, and whose transitions represent the transactions of B. The two nets offer both the refined and the abstract model of the same system, where the former can be much smaller than the latter, because of the transition synchronization mechanism. Depending on the chosen approach  collective vs individual token philosophy  two notions of transaction may be defined, each leading to different operational and abstract models. Their comparison is fully dis...