Publications (co-) authored by Rance Cleaveland: 1999


G. Bhat, R. Cleaveland and G. Lüttgen.
A Practical Approach to Implementing Real-Time Semantics.
Annals of Software Engineering 7:127-155, 1999. Special issue on "Real-Time Software Engineering".
(C)1999 Baltzer Science Publishers.
Abstract:

This paper investigates implementations of process algebras which are suitable for modeling concurrent real-time systems. It suggests an approach for efficiently implementating real-time semantics using dynamic priorities. For this purpose a process algebra with dynamic priority is defined whose semantics corresponds one-to-one to traditional real-time semantics. The advantage of the dynamic-priority approach is that it drastically reduces the state-space sizes of the systems in question while preserving all properties of their functional and real-time behavior.

The utility of the technique is demonstrated by a case study which deals with the formal modeling and verification of several aspects of the widely-used SCSI-2 bus-protocol. The case study is carried out in the Concurrency Workbench of North Carolina, an automated verification tool in which the process algebra iwth dynamic priority is implemented. It turns out that the state space of the bus-protoocol is about an order of magnitude smaller than the one resulting from real-time semantics. The accuracy of the model is proved by applying model checking for verifying several mandatory properties of the bus-protocol.


R. Cleaveland and S. Smolka.
Process Algebra
In J.G. Webster, editor, Encyclopedia of Electrical Engineering. John Wiley & Sons, 1999.
(C)1999 John Wiley & Sons.
Abstract:

Process algebra represents a mathematically rigorous framework for modeling concurrent systems of interacting processes. The process-algebraic approach relies on equational and inequational reasoning as the basis for analyzing the behavior of such systems. This chapter surveys some of the key results obtained in the area within the setting of a particular process-algebraic notation, the Calculus of Communicating Systems (CCS) of Milner. In particular, the Structural Operational Semantics approach to defining operational behavior of languages is illustrated via CCS, and several operational equivalences and refinement orderings are discussed. Mechanisms are presented for deducing that systems are related by the equivalence relations and refinement orderings, and different process-algebraic modeling formalisms are briefly surveyed.


Rance Cleaveland, editor.
Tools and Algorithms for the Construction and Analysis of Systems. Volume 1579 of Lecture Notes in Computer Science, Amsterdam, March 1999.

M. Narasimha, R. Cleaveland, and P. Iyer.
Probabilistic Temporal Logics via the Modal Mu-Calculus
In W. Thomas, editor, Foundations of Software Science and Computation Structures, volume 1578 of Lecture Notes in Computer Science, pages 288-305, Amsterdam, March 1999. Springer-Verlag.
(C)1999 Springer-Verlag.
Abstract:

This paper presents a mu-calculus-based modal logic for describing properties of probabilistic labeled transition systems (PLTSs) and develops a model-checking algorithm for determining whether or not states in finite-state PLTSs satisfy formulas in the logic. The logic is based on the distinction between (probabilistic) "systems" and (nonprobabilistic) "observations": using the modal mu-calculus, one may specify sets of observations, and the semantics of our logic then enables statements to be made about the measures of such sets at various system states. The logic may be used to encode a variety of probabilistic modal and temporal logics; in addition, the model-checking problem for it may be reduced to the calculation of solutions to systems of non-linear equations.


M. Müller-Olm, B. Steffen and R. Cleaveland.
On the Evolution of Reactive Components: A Process-Algebraic Approach.
In J.-P. Finance, editor, Fundamental Approaches to Software Engineering, volume 1577 of Lecture Notes in Computer Science, pages 161-175, Amsterdam, March 1999. Springer-Verlag.
(C)1999 Springer-Verlag.
Abstract:

A common problem in library-based programming is the downward compatibility problem: will a program using an existing version of a library continue to function correctly with an upgraded version? As a step toward addressing this problem for libraries of reactive components we develop a theory that equips components with interface languages characterizing the interaction patterns user applications may engage in with the component. We then show how these languages may be used to build upgrade specifications from components and their interface languages. Intuitively, upgrade specifications explicitly describe requirements an (improved) implementation of a component must satisfy and are intended for use by library developers. Under certain reasonable assumptions about the contexts components are to be used in we show that our upgrade specifications are complete in the sense that every correct upgrade of a component is related in a precise manner to its upgrade specification. In particular, these results hold if the language being used to develop contexts is CSP or CCS.


G. Lüttgen, M. von der Beeck and R. Cleaveland.
Statecharts Via Process Algebra
In J.C.M. Baeten and S. Mauw, editors, CONCUR '99, volume 1664 of Lecture Notes in Computer Science, pages 399-414, Eindhoven, the Netherlands, August 1999. Springer-Verlag.
(C)1999 Springer-Verlag.
Abstract: Statecharts is a visual language for specifying the behavior of reactive systems. The language extends finite-state machines with concepts of hierarchy, concurrency, and priority. Despite its popularity as a design notation for embedded systems, precisely defining its semantics has proved extremely challenging. In this paper, we present a simple process algebra, called Statecharts Process Language (SPL), which is expressive enough for encoding Statecharts in a structure-preserving and semantics-preserving manner. We also establish that the behavioral equivalence bisimulation, when applied to SPL, preserves Statecharts semantics.


R. Cleaveland.
Pragmatics of Model Checking: An STTT Special Section
Software Tools for Technology Transfer 2(3): 208-218, November 1999.
(C)1999 Springer-Verlag.
Abstract: Since its discovery in the early 1980s, model checking has emerged as one of the most exciting areas in the field of formal verification of system correctness. The chief reason for this enthusiasm resides in the fact that model checkers establish {\em in a fully automated manner} whether or not a system satisfies formal requirements; users need not construct proofs. Until the early 1990s, however, the practical impact of model checking was modest, in large part because the {\em state-explosion} problem limited the applicability of the technology. Recent advances in the field have dramatically expanded the scope of model checking, however, and interest in it on the part of practitioners is growing. This special section surveys several recent approaches to attacking the state explosion that are supporting the continued advancement of model checking as a viable technology for improved system design.


X. Du, S. Smolka and R. Cleaveland.
Local Model Checking and Protocol Analysis
Software Tools for Technology Transfer 2(3): 219--241, November 1999.
(C)1999 Springer-Verlag.
Abstract: This paper describes a local model-checking algorithm for the alternation-free fragment of the modal mu-calculus that has been implemented in the Concurrency Factory and discusses its application to the analysis of a real-time communications protocol. The protocol considered is RETHER, a software-based, real-time Ethernet protocol developed at SUNY at Stony Brook. Its purpose is to provide guaranteed bandwidth and deterministic, periodic network access to multimedia applications over commodity Ethernet hardware.

Our model-checking results show that (for a particular network configuration) RETHER makes good on its bandwidth guarantees to real-time nodes without exposing non-real-time nodes to the possibility of starvation. Our data also indicate that, in many cases, the state-exploration overhead of the local model checker is significantly smaller than the total amount that would result from a global analysis of the protocol.

In the course of specifying and verifying RETHER, we also identified an alternative design of the protocol that warranted further study due to its potentially smaller run-time overhead in servicing requests for data transmission. Again, using local model checking, we showed that this alternative design also possesses the properties of interest. This observation points up one of the often-overlooked benefits of formal verification: by forcing designers to understand their designs rigorously and abstractly, these techniques often enable the designers to uncover interesting design alternatives.


R. Cleaveland, Z. Dayar, S. Smolka and S. Yuen.
Testing Preorders for Probabilistic Processes
Information and Computation 154(2):93-148, November 1999.
(C)1999 Academic Press.
Abstract: We present a testing preorder for probabilistic processes based on a quantification of the probability with which processes pass tests. The theory enjoys close connections with the classical testing theory of De Nicola and Hennessy in that whenever a process passes a test with probability 1 (respectively some non-zero probability) in our setting, then the process must (respectively may) pass the test in the classical theory. We also develop an alternative characterization of the probabilistic testing preorders that takes the form of a mapping from probabilistic traces} to the interval [0,1], where a probabilistic trace is an alternating sequence of actions and probability distributions over actions.

Finally, we give proof techniques, derived from the alternative characterizations, for establishing preorder relationships between probabilistic processes. The utility of these techniques is demonstrated by means of some simple examples.


Go to Rance Cleaveland's publication home page.

Rance Cleaveland
Last modified: Tue Feb 26 14:44:28 EST 2002