Results 11  20
of
66
Formalizing Process Algebraic Verifications in the Calculus of Constructions
"... This paper reports on the first steps towards the formal verification of correctness proofs of reallife protocols in process algebra. We show that proofs can be verified, and partly constructed, by a general purpose proof checker. The process algebra we use is µCRL, ACP augmented with data, wh ..."
Abstract

Cited by 18 (7 self)
 Add to MetaCart
This paper reports on the first steps towards the formal verification of correctness proofs of reallife protocols in process algebra. We show that proofs can be verified, and partly constructed, by a general purpose proof checker. The process algebra we use is µCRL, ACP augmented with data, which is small enough to make the verification feasible, and at the same time expressive enough for the specification of reallife protocols. The proof checker we use is Coq, which is based on the Calculus of Constructions, an extension of simply typed lambda calculus. The focus is on the translation of the proof theory of µCRL and µCRLspecifications to Coq. As a case study, we verified the Alternating Bit Protocol.
An Elementary Bisimulation Decision Procedure for Arbitrary ContextFree Processes
, 1994
"... We present an elementary algorithm for deciding bisimulation equivalence between arbitrary contextfree processes. This improves on the state of the art algorithm of Christensen, Huttel and Stirling consisting of two semidecision procedures running in parallel, which prohibits any complexity est ..."
Abstract

Cited by 16 (2 self)
 Add to MetaCart
We present an elementary algorithm for deciding bisimulation equivalence between arbitrary contextfree processes. This improves on the state of the art algorithm of Christensen, Huttel and Stirling consisting of two semidecision procedures running in parallel, which prohibits any complexity estimation. The point of our algorithm is the effective construction of a finite relation characterizing all bisimulation equivalence classes, whose mere existence was exploited for the above mentioned decidability result.
Generalised Coinduction
, 2001
"... We introduce the lambdacoiteration schema for a distributive law lambda of a functor T over a functor F. Under certain conditions it can be shown to uniquely characterise functions into the carrier of a final Fcoalgebra, generalising the basic coiteration schema as given by finality. The duals of ..."
Abstract

Cited by 16 (3 self)
 Add to MetaCart
We introduce the lambdacoiteration schema for a distributive law lambda of a functor T over a functor F. Under certain conditions it can be shown to uniquely characterise functions into the carrier of a final Fcoalgebra, generalising the basic coiteration schema as given by finality. The duals of primitive recursion and courseofvalue iteration, which are known extensions of coiteration, arise as instances of our framework. One can furthermore obtain schemata justifying recursive specifications that involve operators such as addition of power series, regular operators on languages, or parallel and sequential composition of processes. Next...
Reversing algebraic process calculi
 in: FOSSACS’06, LNCS 3921 (2006
, 2006
"... Abstract. Reversible computation has a growing number of promising application areas such as the modelling of biochemical systems, program debugging and testing, and even programming languages for quantum computing. We formulate a procedure for converting operators of standard algebraic process calc ..."
Abstract

Cited by 14 (3 self)
 Add to MetaCart
Abstract. Reversible computation has a growing number of promising application areas such as the modelling of biochemical systems, program debugging and testing, and even programming languages for quantum computing. We formulate a procedure for converting operators of standard algebraic process calculi such as CCS, ACP and CSP into reversible operators, while preserving their operational semantics. 1
Inheritance of Behavior
 Journal of Logic and Algebraic Programming
, 1999
"... One of the key issues of objectoriented modeling and design is inheritance. It allows for the definition of subclasses that inherit features of some superclass. Inheritance is well defined for static properties of classes such as attributes and methods. However, there is no general agreement on the ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
One of the key issues of objectoriented modeling and design is inheritance. It allows for the definition of subclasses that inherit features of some superclass. Inheritance is well defined for static properties of classes such as attributes and methods. However, there is no general agreement on the meaning of inheritance when considering the dynamic behavior of objects, captured by their life cycles. This paper studies inheritance of behavior both in a simple processalgebraic setting and in a Petrinet framework. Process algebra is chosen, because it concentrates on behavior, while abstracting from the internal states of processes. The result of the algebraic study is a clear conceptual understanding of inheritance of behavior. It can be expressed in terms of blocking and hiding method calls. The results in the algebraic framework inspire the development of the concept of inheritance of behavior in the Petrinet framework. The Petrinet formalism allows for a graphical representation...
An Algebraic Theory of Process Efficiency
 In LICS ’96
, 1996
"... This paper presents a testingbased semantic theory for reasoning about the efficiency of concurrent systems as measured in terms of the amount of their internal activity. The semantic preorders are given an algebraic characterization, and their optimality is established by means of a full abstractn ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
This paper presents a testingbased semantic theory for reasoning about the efficiency of concurrent systems as measured in terms of the amount of their internal activity. The semantic preorders are given an algebraic characterization, and their optimality is established by means of a full abstractness result. They are also shown to subsume existing bisimulationbased efficiency preorders. An example is provided to illustrate the utility of this approach. 1. Introduction Process algebras [12, 10, 3] have attracted substantial attention over the past decade and a half as frameworks for system verification. A hallmark of these theories is the development of behavioral equivalences and preorders that relate systems on the basis of their extensional behavior. In these frameworks, specifications are usually given as "highlevel " systems; to prove a system meets such a specification, one shows that they are related appropriately by such a behavioral relation. When the behavioral relation is...
Inductive Definability and the Situation Calculus
 In Transaction and Change in Logic Databases
, 1998
"... . We explore the situation calculus within the framework of inductive definability. A consequence of this view of the situation calculus is to establish direct connections with different variants of the  calculus [Park, 1970; Hitchcock and Park, 1973; Pratt, 1981; Kozen, 1983; Emerson and Clark ..."
Abstract

Cited by 12 (1 self)
 Add to MetaCart
. We explore the situation calculus within the framework of inductive definability. A consequence of this view of the situation calculus is to establish direct connections with different variants of the  calculus [Park, 1970; Hitchcock and Park, 1973; Pratt, 1981; Kozen, 1983; Emerson and Clarke, 1980], structural operational semantics of concurrent processes [Plotkin, 1981], and logic programming [Apt, 1990]. First we show that the induction principle on situations [Reiter, 1993] is implied by an inductive definition of the set of situations. Then we consider the frame problem from the point of view of inductive definability and by defining fluents inductively we obtain essentially the same form of successor state axioms as [Reiter, 1991]. Our approach allows extending this result to the case where ramification constraints are present. Finally we demonstrate a method of applying inductive definitions for computing fixed point properties of GOLOG programs. 1 Introduction...
Fundamentals of Control Flow in Workflows
 Acta Informatica
, 2002
"... Although workflow management emerged as a research area well over a decade ago, little consensus has been reached as to what should be essential ingredients of a workflow specification language. As a result, the market is flooded with workflow management systems, based on different paradigms and ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
Although workflow management emerged as a research area well over a decade ago, little consensus has been reached as to what should be essential ingredients of a workflow specification language. As a result, the market is flooded with workflow management systems, based on different paradigms and using a large variety of concepts. The goal of this paper is to establish a formal foundation for controlflow aspects of workflow specification languages, that assists in understanding fundamental properties of such languages, in particular their expressive power. Workflow languages can be fully characterized in terms of the evaluation strategy they use, the concepts they support, and the syntactic restrictions they impose. A number of results pertaining to this classification will be proven. This should not only aid those developing workflow specifications in practice, but also those developing new workflow engines.
Model checking a cache coherence protocol for a Java DSM implementation
 In Proceedings FMPPTA’03
, 2003
"... Jackal is a finegrained distributed shared memory implementation of the Java programming language. It aims to implement Java’s memory model and allows multithreaded Java programs to run unmodified on a distributed memory system. It employs a multiplewriter cache coherence protocol. In this paper, ..."
Abstract

Cited by 10 (0 self)
 Add to MetaCart
Jackal is a finegrained distributed shared memory implementation of the Java programming language. It aims to implement Java’s memory model and allows multithreaded Java programs to run unmodified on a distributed memory system. It employs a multiplewriter cache coherence protocol. In this paper, we report on our analysis of this protocol. We present its formal specification in µCRL, and discuss the abstractions that were made to avoid state explosion. Requirements were formulated and model checked with respect to several configurations. Our analysis revealed two errors in the implementation. Key words: formal specification, model checking, cache coherence protocols, Java memory model, µCRL