Results 11  20
of
163
Building Equational Proving Tools by Reflection in Rewriting Logic
 In Cafe: An IndustrialStrength Algebraic Formal Method
, 1998
"... This paper explains the design and use of two equational proving tools, namely an inductive theorem prover  to prove theorems about equational specifications with an initial algebra semantics  and a ChurchRosser checkerto check whether such specifications satisfy the ChurchRosser property. ..."
Abstract

Cited by 38 (19 self)
 Add to MetaCart
This paper explains the design and use of two equational proving tools, namely an inductive theorem prover  to prove theorems about equational specifications with an initial algebra semantics  and a ChurchRosser checkerto check whether such specifications satisfy the ChurchRosser property. These tools can be used to prove properties of ordersorted equational specifications in Cafe [11] and of membership equational logic specifications in Maude [7, 6]. The tools have been written entirely in Maude and are in fact executable specifications in rewriting logic of the formal inference systems that they implement.
Using Dynamic Classes and Role Classes to Model Object Migration
, 1995
"... In this paper, we argue that objectoriented models must be able to represent three kinds of taxonomic structures: static classes, dynamic classes, and role classes, that behave differently with respect to object migration. If CAR is a static subclass of V EHICLE, then a vehicle that is not a car ..."
Abstract

Cited by 38 (2 self)
 Add to MetaCart
In this paper, we argue that objectoriented models must be able to represent three kinds of taxonomic structures: static classes, dynamic classes, and role classes, that behave differently with respect to object migration. If CAR is a static subclass of V EHICLE, then a vehicle that is not a car can never migrate to the CAR subclass. On the other hand, if EMP loyee is a dynamic subclass of PERSON object class, then a PERSON that is not an employee may migrate to EMP . In both cases, an instance of the subclass is identical to an instance of the superclass. By contrast, if EMP is modeled as a role class of PERSON , then every employee differs from every person, but a PERSON instance can acquire one or more EMP instances as roles. The distinctions between the three kinds of classes are orthogonal, so that we can have, for example, dynamic subclasses of object or role classes, or role classes of dynamic or static classes. The paper is divided into two parts. In the first, infor...
Unions of NonDisjoint Theories and Combinations of Satisfiability Procedures
 THEORETICAL COMPUTER SCIENCE
, 2001
"... In this paper we outline a theoretical framework for the combination of decision procedures for constraint satisfiability. We describe a general combination method which, given a procedure that decides constraint satisfiability with respect to a constraint theory T1 and one that decides constraint s ..."
Abstract

Cited by 35 (4 self)
 Add to MetaCart
In this paper we outline a theoretical framework for the combination of decision procedures for constraint satisfiability. We describe a general combination method which, given a procedure that decides constraint satisfiability with respect to a constraint theory T1 and one that decides constraint satisfiability with respect to a constraint theory T2, produces a procedure that (semi)decides constraint satisfiability with respect to the union of T1 and T2. We provide a number of modeltheoretic conditions on the constraint language and the component constraint theories for the method to be sound and complete, with special emphasis on the case in which the signatures of the component theories are nondisjoint. We also describe some general classes of theories to which our combination results apply, and relate our approach to some of the existing combination methods in the field.
Specification Matching for Software Reuse: A Foundation
 In Proceedings of the ACM Symposium on Software Reuse
, 1995
"... Using formal specifications to represent software components facilitates the determination of reusability because they more precisely characterize the functionality of the software, and the welldefined syntax makes processing amenable to automation. We present specification matching as a method for ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
Using formal specifications to represent software components facilitates the determination of reusability because they more precisely characterize the functionality of the software, and the welldefined syntax makes processing amenable to automation. We present specification matching as a method for classification, retrieval, and modification of reusable components. A software component is specified in terms of ordersorted predicate logic. For both components and methods, we consider not only exact match, but also relaxed match and logical match for performing specification matching over a library of reusable software components. 1 Introduction Software reuse has been claimed to be a means for overcoming the software crisis [1, 2]. However, current techniques to represent and manage software component libraries are not sufficient. Information retrieval methods based on analyses of naturallanguage documentation have been proposed [3, 4] for constructing software libraries. Unfortuna...
Equational Specification of Dynamic Objects
 ObjectOriented Databases: Analysis, Design & Construction (DS4), Proc. IFIP WG 2.6 Working Conference, Windermere (UK
, 1990
"... An equational language to specify objectoriented 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 dynam ..."
Abstract

Cited by 31 (6 self)
 Add to MetaCart
An equational language to specify objectoriented 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 (intraobject) and global (interobject) 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...
Proving Correctness Of Refinement And Implementation
, 1996
"... The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract m ..."
Abstract

Cited by 29 (4 self)
 Add to MetaCart
The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract machines, and many results suggest that it is also suitable for the semantics of the object paradigm. Another extension of many sorted algebra, namely order sorted algebra, has proved useful in system specification and prototyping because of the way it handles subtypes and errors. The combination of these two algebraic approaches, hidden order sorted algebra, has also been proposed as a foundation for object paradigm, and has much promise as a foundation for Software Engineering. This paper extends recent work on hidden order sorted algebra by investigating the refinement and implementation of hidden order sorted specifications. We present definitions of refinement and implementation for suc...
Formalising Ontologies and Their Relations
 In Proceedings of DEXA’99
, 1999
"... . Ontologies allow the abstract conceptualisation of domains, but a given domain can be conceptualised through many different ontologies, which can be problematic when ontologies are used to support knowledge sharing. We present a formal account of ontologies that is intended to support knowledg ..."
Abstract

Cited by 28 (1 self)
 Add to MetaCart
. Ontologies allow the abstract conceptualisation of domains, but a given domain can be conceptualised through many different ontologies, which can be problematic when ontologies are used to support knowledge sharing. We present a formal account of ontologies that is intended to support knowledge sharing through precise characterisations of relationships such as compatibility and refinement. We take an algebraic approach, in which ontologies are presented as logical theories. This allows us to characterise relations between ontologies as relations between their classes of models. A major result is cocompleteness of specifications, which supports merging of ontologies across shared subontologies. 1 Introduction Over the last decade ontologies  best characterised as explicit specifications of a conceptualisation of a domain [17]  have become increasingly important in the design and development of knowledge based systems, and for knowledge representations generally. They...
Proof of Correctness of Object Representations
"... This paper presents an algebraic account of implementation that is applicable to the object paradigm. The key to its applicability is the notion of state: objects have local states that are observable only through their outputs. That is, objects may be viewed as abstract machines with hidden local s ..."
Abstract

Cited by 27 (14 self)
 Add to MetaCart
This paper presents an algebraic account of implementation that is applicable to the object paradigm. The key to its applicability is the notion of state: objects have local states that are observable only through their outputs. That is, objects may be viewed as abstract machines with hidden local state (as in [9]). Consequently, a correct implementation need only have the required visible behaviour. We use hidden order sorted algebra to formalise the object paradigm [4, 5, 8]. Advantages of an algebraic approach include a high level of intellectual rigour, a large body of supporting mathematics, and simple, efficient proofs using only equational logic. A wide variety of extensions to equational logic have been developed to treat various programming features, while preserving its essential simplicity. For example, order sorted equational logic uses a notion of subsort to treat computations that may raise exceptions or fail to terminate. Hidden sorted logic extends standard equational logic to capture an important distinction between immutable data types, such as booleans and integers, and mutable objects, such as program variables and database entities. The terms abstract data types and abstract object classes refer to these two kinds of entity. The former represent `visible' data values; the latter represent data stored in a hidden state. In hidden sorted equational logic, an equation of hidden sort need not be satisfied in the usual sense, but only up to observability, in that only its visible consequences need hold. Thus, hidden sorted logic allows greater freedom in implementations. The simplicity of the underlying logic is important, because we want a tractable
Roles and Dynamic Subclasses: A Modal Logic Approach
 In Proceedings of European Conference on ObjectOriented Programming
, 1994
"... In this paper, we argue that objectoriented models must be able to represent three kinds of taxonomic structures: static subclasses, dynamic subclasses and role classes. If CAR is a static subclass of V EHICLE, then a vehicle that is not a car can never migrate to the CAR subclass. If EMP loyee is ..."
Abstract

Cited by 27 (4 self)
 Add to MetaCart
In this paper, we argue that objectoriented models must be able to represent three kinds of taxonomic structures: static subclasses, dynamic subclasses and role classes. If CAR is a static subclass of V EHICLE, then a vehicle that is not a car can never migrate to the CAR subclass. If EMP loyee is a dynamic subclass of PERSON , then a PERSON that is not an employee may migrate to EMP . In both cases, an instance of the subclass is identical to an instance of the superclass. Finally, if EMP is modeled as a role class of PERSON every employee differs from every person, but a PERSON instance can acquire one or more EMP instances as roles. We outline an approach to formalizing these taxonomic structures in ordersorted dynamic logic with equality. Keywords: Theoretical foundations, formal methods, OO analysis and design February 2, 1994 Contents 1 Introduction 1 2 Methodological aspects of roleplaying and class migration 1 2.1 Object classification and identification : : : : : : : : :...
Extra Theory Morphisms for Institutions: logical semantics for multiparadigm languages
, 1996
"... We extend the ordinary concept of theory morphism in institutions to extra theory morphisms. Extra theory morphism map theories belonging to different institutions across institution morphisms. We investigate the basic mathematical properties of extra theory morphisms supporting the semantics of log ..."
Abstract

Cited by 26 (7 self)
 Add to MetaCart
We extend the ordinary concept of theory morphism in institutions to extra theory morphisms. Extra theory morphism map theories belonging to different institutions across institution morphisms. We investigate the basic mathematical properties of extra theory morphisms supporting the semantics of logical multiparadigm languages, especially structuring specifications (module systems) a la OBJClear. They include model reducts, free constructions (liberality), colimits, model amalgamation (exactness), and inclusion systems. We outline a general logical semantics for languages whose semantics satisfy certain "logical" principles by extending the institutional semantics developed within the ClearOBJ tradition. Finally, in the Appendix, we briefly illustrate it with the concrete example of CafeOBJ. Keywords Algebraic specification, Institutions, Theory morphism. AMS Classifications 68Q65, 18C10, 03G30, 08A70 2 1 Introduction Computing Motivation This work belongs to the research are...