Results 1  10
of
180
A Formal Approach to Software Architecture
, 1997
"... As software systems become more complex, the overall system structureor software architecturebecomes a central design problem. A system's architecture provides a model of the system that suppresses implementation detail, allowing the architect to concentrate on the analyses and decisions ..."
Abstract

Cited by 367 (19 self)
 Add to MetaCart
As software systems become more complex, the overall system structureor software architecturebecomes a central design problem. A system's architecture provides a model of the system that suppresses implementation detail, allowing the architect to concentrate on the analyses and decisions that are most crucial to structuring the system to satisfy its requirements. Unfortunately, current representations of software architecture are informal and ad hoc. While architectural concepts are often embodied in infrastructure to support specific architectural styles and in the initial conceptualization of a system configuration, the lack of an explicit, independentlycharacterized architecture or architectural style significantly limits the benefits of software architectural design in current practice. In this dissertation, I show that an Architecture Description Language based on a formal, abstract model of system behavior can provide a practical means of describing and analyzing softwar...
A Framework for Comparing Models of Computation
 IEEE TRANSACTIONS ON COMPUTERAIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS
, 1998
"... We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are exactly o ..."
Abstract

Cited by 322 (67 self)
 Add to MetaCart
(Show Context)
We give a denotational framework (a “meta model”) within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are exactly one or exactly zero behaviors. Compositions of processes are processes with behaviors in the intersection of the behaviors of the component processes. The interaction between processes is through signals, which are collections of events. Each event is a valuetag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous processes have only synchronous signals as behaviors. Strict causality (in timed tag systems) and continuity (in untimed tag systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, Petri nets, and discreteevent systems.
Termination in Timed Process Algebra
 Formal Aspects of Computing
, 2000
"... We investigate different forms of termination in timed process algebras. The integrated framework of discrete and dense time, relative and absolute time process algebras is extended with forms of successful and unsuccessful termination. The different algebras are interrelated by embeddings and conse ..."
Abstract

Cited by 172 (26 self)
 Add to MetaCart
We investigate different forms of termination in timed process algebras. The integrated framework of discrete and dense time, relative and absolute time process algebras is extended with forms of successful and unsuccessful termination. The different algebras are interrelated by embeddings and conservative extensions.
An overview and synthesis on timed process algebras
, 1991
"... We present anoverview and synthesis of existing results about process algebras for the speci cation and analysis of timed systems. The motivation is double: present anoverview of some relevant and representative approaches and suggest a unifying framework for them. time, we propose a general model f ..."
Abstract

Cited by 169 (4 self)
 Add to MetaCart
We present anoverview and synthesis of existing results about process algebras for the speci cation and analysis of timed systems. The motivation is double: present anoverview of some relevant and representative approaches and suggest a unifying framework for them. time, we propose a general model for them: transition systems whose labels are either elements ofavocabulary of actions or elements of a time domain. Many properties of this model are studied concerning their impact on description capabilities and on realisability issues. An overview of the language features of the process algebras considered is presented, by focusing on constructs used to express time constraints. The presentation is organised as an exercise of building a timed process algebra from a standard process algebra for untimed systems. The overview is completed by a discussion about description capabilities according to semantic and pragmatic criteria. 1
Algorithms for the Satisfiability (SAT) Problem: A Survey
 DIMACS Series in Discrete Mathematics and Theoretical Computer Science
, 1996
"... . The satisfiability (SAT) problem is a core problem in mathematical logic and computing theory. In practice, SAT is fundamental in solving many problems in automated reasoning, computeraided design, computeraided manufacturing, machine vision, database, robotics, integrated circuit design, compute ..."
Abstract

Cited by 145 (3 self)
 Add to MetaCart
(Show Context)
. The satisfiability (SAT) problem is a core problem in mathematical logic and computing theory. In practice, SAT is fundamental in solving many problems in automated reasoning, computeraided design, computeraided manufacturing, machine vision, database, robotics, integrated circuit design, computer architecture design, and computer network design. Traditional methods treat SAT as a discrete, constrained decision problem. In recent years, many optimization methods, parallel algorithms, and practical techniques have been developed for solving SAT. In this survey, we present a general framework (an algorithm space) that integrates existing SAT algorithms into a unified perspective. We describe sequential and parallel SAT algorithms including variable splitting, resolution, local search, global optimization, mathematical programming, and practical SAT algorithms. We give performance evaluation of some existing SAT algorithms. Finally, we provide a set of practical applications of the sat...
The Algebra of Timed Processes ATP: Theory and Application
 INFORMATION AND COMPUTATION
, 1994
"... We study a process algebra ATP for the description and analysis of systems of timed processes. An important feature of the algebra is that its vocabulary of actions contains a distinguished element . An occurrence of is a time event representing progress of time. The algebra has, apart from standar ..."
Abstract

Cited by 127 (4 self)
 Add to MetaCart
We study a process algebra ATP for the description and analysis of systems of timed processes. An important feature of the algebra is that its vocabulary of actions contains a distinguished element . An occurrence of is a time event representing progress of time. The algebra has, apart from standard operators of process algebras like CCS or ACP, a primitive binary unitdelay operator. For two arguments, processes P and Q, this operator gives a process which behaves as P if started before the occurrence of a time action and as Q otherwise. From this operator we define dunit delay operators that can model delay constructs of languages, like timeouts or watchdogs. The use of such operators is illustrated by examples. ATP is provided with a complete axiomatisation with respect to strong bisimulation semantics. It is shown that the algebras obtained by adding the various dunit delay operators to ATP are conservative extensions of it.
A tutorial on EMPA: A theory of concurrent processes with nondeterminism, priorities, probabilities and time
 Theoretical Computer Science
, 1998
"... In this tutorial we give an overview of the process algebra EMPA, a calculus devised in order to model and analyze features of realworld concurrent systems such as nondeterminism, priorities, probabilities and time, with a particular emphasis on performance evaluation. The purpose of this tutorial ..."
Abstract

Cited by 117 (11 self)
 Add to MetaCart
(Show Context)
In this tutorial we give an overview of the process algebra EMPA, a calculus devised in order to model and analyze features of realworld concurrent systems such as nondeterminism, priorities, probabilities and time, with a particular emphasis on performance evaluation. The purpose of this tutorial is to explain the design choices behind the development of EMPA and how the four features above interact, and to show that a reasonable trade off between the expressive power of the calculus and the complexity of its underlying theory has been achieved.
A brief history of process algebra
 THEOR. COMPUT. SCI
, 2004
"... 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 giv ..."
Abstract

Cited by 84 (1 self)
 Add to MetaCart
(Show Context)
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.
An Efficiency Preorder for Processes
"... A simple efficiency preorder for CCS processes is introduced, in which p ! q means that q is at least as fast as p, or more generally, p uses at least as much resources as q. It is shown to be preserved by all CCS contexts except summation and it is used to analyse a nontrivial example: differe ..."
Abstract

Cited by 82 (12 self)
 Add to MetaCart
A simple efficiency preorder for CCS processes is introduced, in which p ! q means that q is at least as fast as p, or more generally, p uses at least as much resources as q. It is shown to be preserved by all CCS contexts except summation and it is used to analyse a nontrivial example: different implementations of a bounded buffer. Finally a sound and complete proof system for finite processes is given. This paper appeared earlier in [1] and [2]. This version of the paper has been revised, corrected and extended to include more operators, more examples and some additional remarks and observations by the first author. Hence all errors are entirely his responsiblity. Most of this work was done while the first author was at the University of Sussex and supported by SERC grant GR/D 97368 of the Science and Engineering Research Council of Great Britain. y The second author would like to acknowledge the support of ESPIRIT II. 1 Introduction A large number of behavioural equivale...
An Operational Semantics for Timed CSP
, 1995
"... An operational semantics is defined for the language of timed CSP, in terms of two relations: an evolution relation, which describes when a process becomes another simply by allowing time to pass; and a timed transition relation, which describes when a process may become another by performing an act ..."
Abstract

Cited by 66 (6 self)
 Add to MetaCart
An operational semantics is defined for the language of timed CSP, in terms of two relations: an evolution relation, which describes when a process becomes another simply by allowing time to pass; and a timed transition relation, which describes when a process may become another by performing an action at a particular time. It is shown how the timed behaviours used as the basis for the denotational models of the language may be extracted from the operational semantics. Finally, the failures model for timed CSP is shown to be equivalent to maytesting, and thus to trace congruence. 1 Introduction An operational semantics for a computer programming language defines the meaning of programs written in that language in terms of how a machine is intended to execute them step by step. It therefore offers a direct intuition of how program constructs are intended to behave, in contrast with denotational approaches, which often abstract away from such considerations, and with algebraic approach...