Results 1  10
of
71
A brief history of process algebra
 Theor. Comput. Sci
, 2004
"... Abstract. This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The a ..."
Abstract

Cited by 72 (1 self)
 Add to MetaCart
(Show Context)
Abstract. This note addresses the history of process algebra as an area of research in concurrency theory, the theory of parallel and distributed systems in computer science. Origins are traced back to the early seventies of the twentieth century, and developments since that time are sketched. The author gives his personal views on these matters. He also considers the present situation, and states some challenges for the future.
Process Algebra for Performance Evaluation
, 2000
"... This paper surveys the theoretical developments in the field of stochastic process algebras, process algebras where action occurrences may be subject to a delay that is determined by a random variable. A huge class of resourcesharing systems  like largescale computers, clientserver architectur ..."
Abstract

Cited by 70 (13 self)
 Add to MetaCart
This paper surveys the theoretical developments in the field of stochastic process algebras, process algebras where action occurrences may be subject to a delay that is determined by a random variable. A huge class of resourcesharing systems  like largescale computers, clientserver architectures, networks  can accurately be described using such stochastic specification formalisms.
The Formal Specification Language mCRL2
 In Proceedings of the Dagstuhl Seminar
, 2007
"... Abstract. We introduce mCRL2, a specification language that can be used to specify and analyse the behaviour of distributed systems. This language is the successor of the µCRL specification language. The mCRL2 language extends a timed basic process algebra with the possibility to define and use abst ..."
Abstract

Cited by 47 (9 self)
 Add to MetaCart
(Show Context)
Abstract. We introduce mCRL2, a specification language that can be used to specify and analyse the behaviour of distributed systems. This language is the successor of the µCRL specification language. The mCRL2 language extends a timed basic process algebra with the possibility to define and use abstract data types. The mCRL2 data language features predefined and higherorder data types. The process algebraic part of mCRL2 allows a faithful translation of coloured Petri nets and component based systems: we have introduced multiactions and we have separated communication and parallelism.
µCRL: A toolset for analysing algebraic specifications
 Proc. 13th Conference on Computer Aided Verification, LNCS 2102
, 2001
"... µCRL [13] is a language for specifying and verifying distributed systems in an algebraic fashion. It targets the specification of system behaviour in a processalgebraic style and of data elements in the form of abstract data types. The µCRL toolset [21] (see ..."
Abstract

Cited by 39 (18 self)
 Add to MetaCart
µCRL [13] is a language for specifying and verifying distributed systems in an algebraic fashion. It targets the specification of system behaviour in a processalgebraic style and of data elements in the form of abstract data types. The µCRL toolset [21] (see
Parameterised Boolean Equation Systems
 In Theoretical Computer Science
, 2004
"... Boolean equation system are a useful tool for verifying formulas from modal mucalculus on transition systems (see [18] for an excellent treatment). We are interested in an extension of boolean equation systems with data. This allows to formulate and prove a substantially wider range of properties ..."
Abstract

Cited by 19 (8 self)
 Add to MetaCart
(Show Context)
Boolean equation system are a useful tool for verifying formulas from modal mucalculus on transition systems (see [18] for an excellent treatment). We are interested in an extension of boolean equation systems with data. This allows to formulate and prove a substantially wider range of properties on much larger and even infinite state systems. In previous works [11, 15] it has been outlined how to transform a modal formula and a process, both containing data, to a socalled parameterised boolean equation system, or equation system for short. In this article we focus on techniques to solve such equation systems.
Computer Assisted Manipulation of Algebraic Process Specifications
, 2001
"... Specifications of system behaviour tend to become large. Analysis of such specifications requires automated tools. Most attention hitherto has been invested in fully automatic tools. We however believe that in many cases human intervention is required and we therefore propose a number of computer to ..."
Abstract

Cited by 17 (3 self)
 Add to MetaCart
Specifications of system behaviour tend to become large. Analysis of such specifications requires automated tools. Most attention hitherto has been invested in fully automatic tools. We however believe that in many cases human intervention is required and we therefore propose a number of computer tools to transform process specifications. The concrete manipulation tools that we describe can eliminate constants, redundant sum variables and parameters, and allow to split variables ranging over complex datatypes. These tools can transform specifications with large finite state spaces to variants with state spaces being a fraction of their original size, and transform specifications with infinite state spaces to those with finite state spaces. 2000 Mathematics Subject Classification: 68M14, 68Q60, 68Q85 Keywords and Phrases: Automated Reasoning, Distributed systems, Linear Process Equations, Model Checking, Verification Note: Research carried out in SEN2, with financial support of the "Systems Validation Center". 1.
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 16 (3 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
A framework for automatically checking anonymity with mcrl
 In Proceedings TGC’06, LNCS
, 2007
"... Abstract. We present a powerful and flexible method for automatically checking anonymity in a possibilistic generalpurpose process algebraic verification toolset. We propose new definitions of a choice anonymity degree and a player anonymity degree, to quantify the precision with which an intruder ..."
Abstract

Cited by 15 (8 self)
 Add to MetaCart
(Show Context)
Abstract. We present a powerful and flexible method for automatically checking anonymity in a possibilistic generalpurpose process algebraic verification toolset. We propose new definitions of a choice anonymity degree and a player anonymity degree, to quantify the precision with which an intruder is able to single out the true originator of a given event or to associate the right event to a given protocol participant. We show how these measures of anonymity can be automatically calculated from a protocol specification in µCRL, by using a combination of dedicated tools and existing stateoftheart µCRLtools. To illustrate the flexibility of our method we test the Dining Cryptographers problem and the FOO 92 voting protocol. Our definitions of anonymity provide an accurate picture of the different ways that anonymity can break down, due for instance to coallitions of inside intruders. Our calculations can be performed on a cluster of machines, allowing us to check protocols for large numbers of participants. 1
Modelchecking processes with data
 In Science of Computer Programming
, 2005
"... We propose a procedure for automatically verifying properties (expressed in an extension of the modal µcalculus) over processes with data, specified in µCRL. We first briefly review existing work, such as the theory of µCRL and we discuss the logic, called first order modal µcalculus in more detai ..."
Abstract

Cited by 13 (5 self)
 Add to MetaCart
(Show Context)
We propose a procedure for automatically verifying properties (expressed in an extension of the modal µcalculus) over processes with data, specified in µCRL. We first briefly review existing work, such as the theory of µCRL and we discuss the logic, called first order modal µcalculus in more detail. Then, we introduce the formalism of first order boolean equation systems and focus on several lemmata that are at the basis of the soundness of our decision procedure. We discuss our findings on three nontrivial applications for a prototype implementation of this procedure. The results show that our prototype can deal with quite complex and interesting properties and systems, showing the efficacy of the approach.