## Equational Specification of Dynamic Objects (1990)

Venue: | Object-Oriented Databases: Analysis, Design & Construction (DS-4), Proc. IFIP WG 2.6 Working Conference, Windermere (UK |

Citations: | 31 - 6 self |

### BibTeX

@INPROCEEDINGS{Wieringa90equationalspecification,

author = {Roel Wieringa},

title = {Equational Specification of Dynamic Objects},

booktitle = {Object-Oriented Databases: Analysis, Design & Construction (DS-4), Proc. IFIP WG 2.6 Working Conference, Windermere (UK},

year = {1990},

pages = {415--438},

publisher = {North-Holland}

}

### OpenURL

### Abstract

An equational language to specify object-oriented conceptual models is defined. Objects are considered to be characterized by a unique object identifier and have static and dynamic structure. Examples of static structure are classification, aggregation, generalization and grouping, examples of dynamic structure are events, processes, local (intra-object) and global (inter-object) and communication. The language, called CMSL, has a declarative (algebraic) semantics, which is divided into two. The part of CMSL that can be used to specify static structures has an initial algebra semantics, in which the data elements are object versions. The part dealing with process has a larger algebra as semantics; in this paper we use an algebra of graphs modulo bisimulation equivalence. About both models can be reasoned using standard equational logic. Apart from the combination of static and dynamic features of objects in an algebraic framework, and the joint specification of this in an equational la...

### Citations

3204 |
Communication and Concurrency
- Milner
- 1989
(Show Context)
Citation Context ...utes a process composed of the events declared in its object specification. To specify processes and give a semantics to these specifications, we use the theory of process algebra developed elsewhere =-=[5, 7, 27, 28]-=-. The particular family of process algebras we use is called ACP (Algebra of Communicating Processes) developed by Bergstra & Klop [1, 3]. To use this in a CM specification, we must first select a set... |

1329 |
A calculus of communicating systems
- Milner
- 1980
(Show Context)
Citation Context ...utes a process composed of the events declared in its object specification. To specify processes and give a semantics to these specifications, we use the theory of process algebra developed elsewhere =-=[5, 7, 27, 28]-=-. The particular family of process algebras we use is called ACP (Algebra of Communicating Processes) developed by Bergstra & Klop [1, 3]. To use this in a CM specification, we must first select a set... |

217 |
Algebra of communicating processes with abstraction, Theoretical Computer Science 37
- Bergstra, Klop
- 1985
(Show Context)
Citation Context ...n a unified framework. Our approach in CMSL is more simplistic and tries to get as far as possible within the initial algebra framework, extending it where necessary with work done in process algebra =-=[5]-=-. Fiadeiro et al. [15, 14] extend this framework with the capability to specify normative behavior of objects, and to prove properties of objects in temporal logic. We ignore deontic aspects in this p... |

208 | Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations
- Goguen
- 1992
(Show Context)
Citation Context ..., and extend it with the possibility to partially order sorts and to specify sort constraints, to bring it closer to OBJ3. Like is done in OBJ, we assume an initial semantics for value specifications =-=[21]-=-, but unlike FOOPS, we also give an initial semantics for attributeand event specifications. The published version of FOOPS has no facility for the specification of life cycles, which is one of the ma... |

142 |
Mahr: Fundamentals of Algebraic Specifications 1: Equations and Initial Semantics
- Ehrig, B
- 1985
(Show Context)
Citation Context ...to interpret attributes in possible worlds, where a possible world is defined as an algebra of an object specification which contains the value algebra as reduct. Skipping the formal definitions (see =-=[13]-=- for a definition of reducts and [37, 38] for a definition of possible worlds of a CM), this means the following. Each object specification assumes some value specifications, for example of Booleans o... |

106 |
Introducing OBJ3
- Goguen, Winkler
- 1988
(Show Context)
Citation Context ...context can be found in work done by Goguen & Meseguer on the FOOPS language [19, 22], and in the work done by a number of researchers in the ISCORE project. The FOOPS language is an extension of OBJ =-=[20]-=- with the possibility to specify objects. We start from the much simpler equational language ASF developed by Bergstra, Heering and Klint [9], and extend it with the possibility to partially order sor... |

100 |
EQLOG: equality, types and generic modules for logic programming
- Goguen, Meseguer
(Show Context)
Citation Context ...ntifier sorts PERSONS attributes children : PERSON -> PERSONS avg-age : PERSONS -> EXRAT end spec HigherOrderObjects1 ExactRationals is a specification of rationals in exact notation (e.g. 3 / 4, see =-=[17, 20, 37]-=-), whose sort of interest is EXRAT. Sets is specification of sets parametrized by Items. This contains sorts ITEM and SET [37]. ITEM is bound to PERSON and SET is renamed to PERSONS.sPERSONS is a stru... |

99 |
Unifying functional, object-oriented and relational programming with logical semantics
- Goguen, Meseguer
- 1987
(Show Context)
Citation Context ...companion paper [38] discusses the formal semantics of CMSL. Other approaches to formal object specification in a database context can be found in work done by Goguen & Meseguer on the FOOPS language =-=[19, 22]-=-, and in the work done by a number of researchers in the ISCORE project. The FOOPS language is an extension of OBJ [20] with the possibility to specify objects. We start from the much simpler equation... |

62 |
H.-D.: Object-Oriented Specification of Databases: An Algebraic Approach
- Sernadas, Sernadas, et al.
- 1987
(Show Context)
Citation Context ...ur process theory should be able to distinguish these processes. For UoD's where the distinction is immaterial, just add the above axiom to the theory. OBLOG [10] uses a trace semantics of processes, =-=[30]-=-, in which deterministic and nondeterministic processes are identified. There is a large variety of models for ACP. We choose the graph model, because this is a theoretically well-understood model and... |

60 |
On the Foundations of the Universal Relation Model
- Maier, Ullman, et al.
- 1984
(Show Context)
Citation Context ...ribute name can be declared at most once. This is analogous to the universal relation scheme assumption (URSA), which says that each attribute name denotes the same class of entities in every context =-=[24, 25, 32]-=-. The difference with that assumption in relational theory is that we distinguish attributes (e.g. city) from their value ranges (e.g. STRING). This gives us two forms of the URSA. One is that every a... |

48 | Specifying Dynamic and Deontic Integrity Constraints
- Meyer, Weigand
- 1989
(Show Context)
Citation Context ...on between the CMS and the CM is that the CM is a (unique or preferred) denotational model of the CMS. This is so, regardless of the relation between the CM and the UoD (normative and/or descriptive) =-=[35]-=-. The aim of this paper is to define an equational language, called CMSL (Conceptual Model Specification Language), in which one can specify object-oriented models. The language is designed specifical... |

45 |
Algebra of communicating processes
- Bergstra, Klop
- 1986
(Show Context)
Citation Context ...utes a process composed of the events declared in its object specification. To specify processes and give a semantics to these specifications, we use the theory of process algebra developed elsewhere =-=[5, 7, 27, 28]-=-. The particular family of process algebras we use is called ACP (Algebra of Communicating Processes) developed by Bergstra & Klop [1, 3]. To use this in a CM specification, we must first select a set... |

43 |
Order-Sorted Algebra Solves the Constructor-Selector, Multiple Representation and
- Goguen, Meseguer
- 1987
(Show Context)
Citation Context ...l specification language ASF (Amsterdam Specification Formalism), developed by Bergstra, Heering, and Klint [9], extended with the possibility to partially order sorts and to specify sort constraints =-=[16, 19, 18]-=-. The sorts specified in VSL are called value sorts. In CMSL specifications, data types like naturals, integers, rationals, money, date and time, and parametrized data types like sets, bags and string... |

39 |
Algebraic Foundations for Dynamic Conceptual Models
- Wieringa
- 1990
(Show Context)
Citation Context ...e language is its facility to specify object dynamics in addition to object statics. Thus, events, event preconditions, processes and communication can be specified. This paper is a brief overview of =-=[37]-=-, where a detailed analysis of the CM structures and a comparison with other modeling approaches can be found. We concentrate on the syntax of the language and discuss the semantics only by means of e... |

34 |
Operational semantics for order-sorted algebra
- Goguen, Jouannaud, et al.
(Show Context)
Citation Context ...l specification language ASF (Amsterdam Specification Formalism), developed by Bergstra, Heering, and Klint [9], extended with the possibility to partially order sorts and to specify sort constraints =-=[16, 19, 18]-=-. The sorts specified in VSL are called value sorts. In CMSL specifications, data types like naturals, integers, rationals, money, date and time, and parametrized data types like sets, bags and string... |

29 |
H.-D.: The Basic Building Blocks of Information Systems
- Sernadas, Fiadeiro, et al.
- 1989
(Show Context)
Citation Context ...d version of FOOPS has no facility for the specification of life cycles, which is one of the major features of CMSL. Within the ISCORE project, work is done on the object specification language OBLOG =-=[10, 31]-=-, which has roughly the same capabilities as CMSL, but does not (yet) allow the specification of roles that objects may play. Role specification is briefly discussed in section 4.1 below. OBLOG is not... |

18 |
Temporal Reasoning over Deontic Specifications
- Fiadeiro, Maibaum
- 1991
(Show Context)
Citation Context .... Our approach in CMSL is more simplistic and tries to get as far as possible within the initial algebra framework, extending it where necessary with work done in process algebra [5]. Fiadeiro et al. =-=[15, 14]-=- extend this framework with the capability to specify normative behavior of objects, and to prove properties of objects in temporal logic. We ignore deontic aspects in this paper, but plan to add them... |

17 | Proof-Theoretic Semantics of ObjectOriented Specification Constructs, To be published
- Fiadeiro, Sernadas, et al.
- 1990
(Show Context)
Citation Context .... Our approach in CMSL is more simplistic and tries to get as far as possible within the initial algebra framework, extending it where necessary with work done in process algebra [5]. Fiadeiro et al. =-=[15, 14]-=- extend this framework with the capability to specify normative behavior of objects, and to prove properties of objects in temporal logic. We ignore deontic aspects in this paper, but plan to add them... |

15 |
Put and get, primitives for synchronous unreliable message passing
- Bergstra
- 1985
(Show Context)
Citation Context ...can be modeled by adding a mailbox between sender and receiver, with which sender and receiver communicate synchronously. There is no direction in the communication, but this can be added if required =-=[6]-=-. If an object may communicate with itself when it executes two parallel processes. This is called local communication. If two or more different objects (i.e. with different identifiers) participate i... |

13 |
A Specification Language for Static, Dynamic and Deontic Integrity Constraints
- Meyer, Wieringa
- 1989
(Show Context)
Citation Context ...ity to specify normative behavior of objects, and to prove properties of objects in temporal logic. We ignore deontic aspects in this paper, but plan to add them later in the context of dynamic logic =-=[26, 35]-=-. In section 2 of this paper we introduce some of the static structures specifyable in CMSL, and we give some examples of local and global integrity constraints. A very brief overview of the formal se... |

11 |
The U. R. strikes back
- Ullman
- 1982
(Show Context)
Citation Context ...ribute name can be declared at most once. This is analogous to the universal relation scheme assumption (URSA), which says that each attribute name denotes the same class of entities in every context =-=[24, 25, 32]-=-. The difference with that assumption in relational theory is that we distinguish attributes (e.g. city) from their value ranges (e.g. STRING). This gives us two forms of the URSA. One is that every a... |

10 |
Three roles of conceptual models in information systems design and use
- Wieringa
- 1989
(Show Context)
Citation Context ...tual model (CM) is a mathematical structure which is an abstract representation of the UoD. In general, there is also a normative relation between the CM and the UoD, but we ignore this in this paper =-=[34]-=-. We thus regard the relation between the CM and the UoD as analogous to the relation between an abstract physical model of reality and reality itself (e.g. between an ideal gas and a real gas). The s... |

9 |
C.: Objects, Object Types, and Object Identification
- Ehrich, Sernadas, et al.
- 1989
(Show Context)
Citation Context ...ole specification is briefly discussed in section 4.1 below. OBLOG is not a purely equational language with an algebraic semantics, but has a more general semantics based on categorical constructions =-=[11, 12]-=-. This semantics is not bound to OBLOG but is used to study general issues like object generalization and aggregation in a unified framework. Our approach in CMSL is more simplistic and tries to get a... |

7 |
A process creation mechanism in process algebra
- Bergstra
- 1990
(Show Context)
Citation Context ...enever this executes a creation event, the created object is initialized and starts running its process in parallel to the processes already running. A process creation operator for ACP is defined in =-=[8]-=-, and its application to object creation is given in [37]. Using the existence monitor, one can specify existence constraints such as (p in ext-PERSON(db)) implies (address(p) in ext-ADDRESS(db)). imp... |

3 |
Windows on the world
- Maier, Rozenshtein, et al.
- 1983
(Show Context)
Citation Context ...ribute name can be declared at most once. This is analogous to the universal relation scheme assumption (URSA), which says that each attribute name denotes the same class of entities in every context =-=[24, 25, 32]-=-. The difference with that assumption in relational theory is that we distinguish attributes (e.g. city) from their value ranges (e.g. STRING). This gives us two forms of the URSA. One is that every a... |

2 |
Global Renaming Operators
- Baeten, Bergstra
- 1988
(Show Context)
Citation Context ...alled s. The relation between s and the individual processes which are its instances can be syntactically described by the generalized state operator. This operator is introduced by Baeten & Bergstra =-=[2]-=-. In [36] we show how to apply this to the specification of dynamic objects, and [37] a detailed study of the instantiation relation between processes is made. Here, we merely give an example. The gen... |

2 |
From Data Types to Object Types, submitted
- Ehrich, Sernadas, et al.
(Show Context)
Citation Context ...ole specification is briefly discussed in section 4.1 below. OBLOG is not a purely equational language with an algebraic semantics, but has a more general semantics based on categorical constructions =-=[11, 12]-=-. This semantics is not bound to OBLOG but is used to study general issues like object generalization and aggregation in a unified framework. Our approach in CMSL is more simplistic and tries to get a... |

2 |
On Types and FOOPS, To be published
- Goguen, Wolfram
- 1990
(Show Context)
Citation Context ...companion paper [38] discusses the formal semantics of CMSL. Other approaches to formal object specification in a database context can be found in work done by Goguen & Meseguer on the FOOPS language =-=[19, 22]-=-, and in the work done by a number of researchers in the ISCORE project. The FOOPS language is an extension of OBJ [20] with the possibility to specify objects. We start from the much simpler equation... |

2 |
Algebraic Specification of Object Dynamics in Knowledge Based Domains
- Wieringa, Riet
- 1990
(Show Context)
Citation Context ...age inc-age changeaddress getspouse (1) (2) Figure 3. Figure 3 also illustrates the difference between the two processes, which is that the moment of choice is different in them. In an earlier paper, =-=[36]-=-, we showed that in conceptual models we should distinguish generic processes from individual processes. A generic process is composed from the names of events declared in the events section. The exam... |

1 |
Jackson System Development Analysed in Process Algebra
- Wieringa
- 1988
(Show Context)
Citation Context ... called The Daily Racket, who can enter submissions to a competition as often as they want, once they have subscribed to the newspaper. A hidden rule of the game is that each reader can win only once =-=[23, 33]-=-. object spec DailyRacket import PrimitiveIdentifiers, ACP identifier sorts READER specializing PRIM functions r0 : READER events win : READER -> READER submit : READER -> READER process [P1] READER =... |

1 | An Algebraic Semantics for Dynamic Objects. Extended abstract, Submitted - Wieringa - 1990 |