Results 1 - 10
of
116
A Formal Approach to Software Architecture
, 1997
"... As software systems become more complex, the overall system structure---or software architecture---becomes 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 ..."
Abstract
-
Cited by 258 (14 self)
- Add to MetaCart
As software systems become more complex, the overall system structure---or software architecture---becomes 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, independently-characterized 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 Computer-Aided Design of Integrated Circuits and Systems
, 1998
"... Abstract—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 e ..."
Abstract
-
Cited by 208 (52 self)
- Add to MetaCart
Abstract—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 value-tag 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 discrete-event systems. I.
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 152 (25 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 130 (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, computer-aided design, computeraided manufacturing, machine vision, database, robotics, integrated circuit design, compute ..."
Abstract
-
Cited by 107 (3 self)
- Add to MetaCart
. 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, computer-aided 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 99 (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 unit-delay 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 d-unit 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 d-unit 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 real-world concurrent systems such as nondeterminism, priorities, probabilities and time, with a particular emphasis on performance evaluation. The purpose of this tutorial ..."
Abstract
-
Cited by 82 (9 self)
- Add to MetaCart
In this tutorial we give an overview of the process algebra EMPA, a calculus devised in order to model and analyze features of real-world 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.
Forward and backward simulations for timing-based systems
- In de Bakker et al
, 1991
"... A general automaton model for timing-based systems is presented and is used as the context for developing a variety of simulation proof techniques for such systems. As a first step, a comprehensive overview of simulation techniques for simple untimed automata is given. In particular, soundness and ..."
Abstract
-
Cited by 63 (16 self)
- Add to MetaCart
A general automaton model for timing-based systems is presented and is used as the context for developing a variety of simulation proof techniques for such systems. As a first step, a comprehensive overview of simulation techniques for simple untimed automata is given. In particular, soundness and completeness results for (1) refinements, (2) forward and backward simulations, (3) forward-backward and backward-forward simulations, and (4) history and prophecy relations are given. History and prophecy relations are new and are abstractions of the history variables of Owicki and Gries and the prophecy variables of Abadi and Lamport, respectively. As a subsequent step, it is shown how most of the results for untimed automata can be carried over to the setting of timed automata. In fact, many of the results for the timed case are obtained as consequences of the analogous results for the untimed case.
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 non-trivial example: differe ..."
Abstract
-
Cited by 60 (7 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 non-trivial 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 52 (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 may-testing, 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...

