Results 1 - 10
of
95
A Tutorial on (Co)Algebras and (Co)Induction
- EATCS Bulletin
, 1997
"... . Algebraic structures which are generated by a collection of constructors--- like natural numbers (generated by a zero and a successor) or finite lists and trees--- are of well-established importance in computer science. Formally, they are initial algebras. Induction is used both as a definition pr ..."
Abstract
-
Cited by 213 (34 self)
- Add to MetaCart
. Algebraic structures which are generated by a collection of constructors--- like natural numbers (generated by a zero and a successor) or finite lists and trees--- are of well-established importance in computer science. Formally, they are initial algebras. Induction is used both as a definition principle, and as a proof principle for such structures. But there are also important dual "coalgebraic" structures, which do not come equipped with constructor operations but with what are sometimes called "destructor" operations (also called observers, accessors, transition maps, or mutators). Spaces of infinite data (including, for example, infinite lists, and non-well-founded sets) are generally of this kind. In general, dynamical systems with a hidden, black-box state space, to which a user only has limited access via specified (observer or mutator) operations, are coalgebras of various kinds. Such coalgebraic systems are common in computer science. And "coinduction" is the appropriate te...
Spatio-Temporal Data Types: An Approach to Modeling and Querying Moving Objects in Databases
, 1999
"... Spatio-temporal databases deal with geometries changing over time. In general, geometries cannot only change in discrete steps, but continuously, and we are talking about moving objects. If only the position in space of an object is relevant, then moving point is a basic abstraction; if also the ext ..."
Abstract
-
Cited by 130 (37 self)
- Add to MetaCart
Spatio-temporal databases deal with geometries changing over time. In general, geometries cannot only change in discrete steps, but continuously, and we are talking about moving objects. If only the position in space of an object is relevant, then moving point is a basic abstraction; if also the extent is of interest, then the moving region abstraction captures moving as well as growing or shrinking regions. We propose a new line of research where moving points and moving regions are viewed as three-dimensional (2D space + time) or higher-dimensional entities whose structure and behavior is captured by modeling them as abstract data types. Such types can be integrated as base (attribute) data types into relational, object-oriented, or other DBMS data models; they can be implemented as data blades, cartridges, etc. for extensible DBMSs. We expect these spatio-temporal data types to play a similarly fundamental role for spatio-temporal databases as spatial data types have played for sp...
Generation of Components for Software Renovation Factories from Context-free Grammars
"... We present an approach for the generation of components for a software renovation factory. These components are generated from a context-free grammar definition that recognizes the code that has to be renovated. We generate analysis and transformation components that can be instantiated with a speci ..."
Abstract
-
Cited by 73 (27 self)
- Add to MetaCart
We present an approach for the generation of components for a software renovation factory. These components are generated from a context-free grammar definition that recognizes the code that has to be renovated. We generate analysis and transformation components that can be instantiated with a specific transformation or analysis task. We apply our approach to COBOL and we discuss the construction of realistic software renovation components using our approach.
Objects and Classes, Coalgebraically
- Object-Orientation with Parallelism and Persistence
, 1995
"... The coalgebraic perspective on objects and classes in object-oriented programming is elaborated: objects consist of a (unique) identifier, a local state, and a collection of methods described as a coalgebra; classes are coalgebraic (behavioural) specifications of objects. The creation of a "new" o ..."
Abstract
-
Cited by 67 (17 self)
- Add to MetaCart
The coalgebraic perspective on objects and classes in object-oriented programming is elaborated: objects consist of a (unique) identifier, a local state, and a collection of methods described as a coalgebra; classes are coalgebraic (behavioural) specifications of objects. The creation of a "new" object of a class is described in terms of the terminal coalgebra satisfying the specification. We present a notion of "totally specified" class, which leads to particularly simple terminal coalgebras. We further describe local and global operational semantics for objects. Associated with the local operational semantics is a notion of bisimulation (for objects belonging to the same class), expressing observational indistinguishability. AMS Subject Classification (1991): 18C10, 03G30 CR Subject Classification (1991): D.1.5, D.2.1, E.1, F.1.1, F.3.0 Keywords & Phrases: object, class, (terminal) coalgebra, coalgebraic specification, bisimulation 1. Introduction Within the object-oriente...
Object Specification Logic
- Journal of Logic and Computation
, 1995
"... A logic for specifying and reasoning about object classes and their instances (aspects) is presented and illustrated. This logic is an extension of a rather standard linear temporal, many-sorted, first-order predicate logic with equality. The extensions where designed to be as simple as possible whi ..."
Abstract
-
Cited by 60 (12 self)
- Add to MetaCart
A logic for specifying and reasoning about object classes and their instances (aspects) is presented and illustrated. This logic is an extension of a rather standard linear temporal, many-sorted, first-order predicate logic with equality. The extensions where designed to be as simple as possible while supporting the envisaged locality of arguments, object specialization and object aggregation. Objects are specified through their aspects. Each aspect establishes a local vocabulary (signature). The logic works at two levels: first, we can specify and prove assertions about a given object aspect in isolation (local reasoning), eg persons, or patients, or cars; second, we can specify interaction constraints and make inferences between aspects within the same community of objects (global reasoning), eg carry the theorems of persons onto patients (specialization inheritance), or carry the theorems of persons onto the aggregations of persons and cars (incorporation inheritance). Some reflecti...
Cooperative Nets
- Proceedings of 15th International Conference on the Application and Theory of Petri Nets, Lecture Notes in Computer Science 815
, 1994
"... : The behavior of some kinds of systems features a high rate of dynamic evolution. The system running causes the introduction of new components whereas some others disappear, and links between components are dynamically set: a component sometimes interacts with given components and sometimes with o ..."
Abstract
-
Cited by 48 (0 self)
- Add to MetaCart
: The behavior of some kinds of systems features a high rate of dynamic evolution. The system running causes the introduction of new components whereas some others disappear, and links between components are dynamically set: a component sometimes interacts with given components and sometimes with others. It is uneasy to capture such evolution inside Petri nets whose structure is fixed; but it is necessary to respect the Petri net semantics and keep the possibility to apply the structural analysis technics. The paper introduces two extensions of Petri nets dealing with this problem, Communicative Nets and Cooperative Nets. They enable to model a system as a collection of nets which encapsulate their behavior, while interacting by means of message sending or a client/ server protocol; a net may instantiate another net, and the links between nets are dynamic. An algorithm is given which captures this dynamicity by building a single fixed net whose behavior is equivalent to a whole system...
A New Method for Undecidability Proofs of First Order Theories
- Journal of Symbolic Computation
, 1992
"... this paper is to define a framework for such reduction proofs. The method proposed is illustrated by proving the undecidability of the theory of a term algebra modulo the axioms of associativity and commutativity and of the theory of a partial lexicographic path ordering. 1. Introduction ..."
Abstract
-
Cited by 30 (7 self)
- Add to MetaCart
this paper is to define a framework for such reduction proofs. The method proposed is illustrated by proving the undecidability of the theory of a term algebra modulo the axioms of associativity and commutativity and of the theory of a partial lexicographic path ordering. 1. Introduction
Modeling Distributed Software Systems with Object Coordination Nets
- Proc. Int. Symposium on Software Engineering for Parallel and Distributed Systems (PDSE'98
, 1998
"... A dedicated approach for the design and development of distributed software systems is outlined. The method may be used in combination with any standard object-oriented analysis and design method as far as static aspects are concerned. Dynamic aspects like the external behavior of distributed compon ..."
Abstract
-
Cited by 28 (16 self)
- Add to MetaCart
A dedicated approach for the design and development of distributed software systems is outlined. The method may be used in combination with any standard object-oriented analysis and design method as far as static aspects are concerned. Dynamic aspects like the external behavior of distributed components, the status of services or resource handling, however, play the key role in distributed systems. The main contribution of the approach is to put its focus on these aspects right from the beginning of a design. ffl Information from static modeling is used to define the responsibilities for coordinating a system: classes coordinate their aggregates and explicit coordination objects are introduced to handle more complex relationships in order to prevent from introducing complex implicit (third-party carried) interdependencies between different parts of a system. ffl Interfaces of components extend the common signature specification by behavioral contracts consisting of pre/post-condition...

