| Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231--263. Cambridge, 2000. |
.... condition holds: j= 0 ( M j j= for each M 2 Mod ) and 2 Sen ( ut The notion of institutions gains much of its importance by the fact that several languages for modularizing speci cations have been developed in a completely institution independent way [42, 16, 14, 22, 15, 34], one of which also has been extended to the heterogeneous case [47] Most of their constructs can be translated into the formalism of development graphs introduced below, which hence can be seen as a core formalism for structured and heterogeneous theorem proving. For the language Casl, such a ....
J. A. Goguen and W. Tracz. An implementation-oriented semantics for module composition. In G. T. Leavens and M. Sitaraman, editors, Foundations of Component-Based Systems, chapter 11, pages 231-263. Cambridge University Press, New York, NY, 2000.
....semantics. 1 Introduction Logic independent compositional operations on modules are studied in this paper. The informal notion of underlying logic of a speci cation formalism is formalized as an institution [11] enriched with inclusions [10, 5, 6, 19, 13] of signatures. Inspired by [14], the notion of speci cation module is introduced as a generalization of the standard speci cation, having both public (or visible) and private (or hidden) symbols: a speci cation module is a triple ( A) where is a subsignature of , called the visible signature, and A is a set of ....
....is much work on modularization that we cannot mention here because of space limitations. We ll only mention some papers that directly in uenced our research; the reader interested in a comprehensive understanding of advances in this area may consult the references of these papers. Goguen and Tracz [14] and Diaconescu, Goguen and Stefaneas [10] were the most inspiring works to us. The rst de nes speci cations of modules with both public and private symbols, but its setting is set theoretical and oriented towards lileanna [21] which has Ada as programming and Anna as speci cation languages; in ....
[Article contains additional citation context not shown here]
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231-263. Cambridge, 2000.
....properties for importing are known. What makes this approach important is the strong theoretical foundation, laid using algebra and equational term rewriting (Goguen et al. 1978] Meseguer and Goguen [1985] Wirsing [1990] Loeckx et al. 1996] and the slowly maturing software tools such as OBJ (Goguen et al. 2000]) ASF SDF (Bergstra et al. 1989] van Deursen et al. 1996] Maude (Clavel et al. 1996] The algebraic theory of data type specifications use signatures as interfaces. 2.1.2 Object Oriented Programming In object oriented programming, the notion of a class of objects defines a set of ....
....model. The extensive literature on abstract data types and wide spectrum algebraic specification languages provides a rich source of motivation for other concrete models of IDLs and extensions to our general framework. Examples of sources include Bergstra et al. 1990] Ehrig and Mahr [1990] Goguen and Tracz [2000], Loeckx et al. 1996] Bidoit et al. 1999] Mosses [1999] A prototype of the specification has been developed in Prolog which has been used to test the axiomatisation. A next step is to use the general model of Section 3 to design a metalanguage for the definition of IDL syntax and equip it ....
Goguen and Tracz [2000] J A Goguen and W Tracz. An Implementation-Oriented Semantics for Module Composition. In G Leavens and D M Sitaraman, editors, Foundations of Component-Based Systems. Cambridge University Press, 2000. To appear.
....about importing are known. What makes this approach important is the strong theoretical foundation, laid using algebra and equational term rewriting #Goguen et al. #1978#, Meseguer and Goguen #1985#, Wirsing #1990#, Loeckx et al. #1996##, and the slowly maturing software tools such as OBJ #Goguen et al. #2000##, ASF SDF #Bergstra et al. #1989#, van Deursen et al. #1996##, Maude #Clavel et al. #1996##. The mathematical tools 4 of algebraic speci#cation are exactly the tools needed for the present paper. Object Oriented Programming In object oriented programming, we see the emergence of the notion ....
....and inheritance. The widespread literature on abstract data types and widespectrum algebraic speci#cation languages provides a rich source of motivation for other concrete models of IDLs and extensions to our general framework. Examples include Bergstra et al. #1990#, Ehrig and Mahr #1990#, Goguen and Tracz #2000#, Loeckx et al. #1996#, Bidoit et al. #1999#, Mosses #1999#. 7.1 Interfaces in Component Based Systems There are a number of IDLs for component based systems, but the two mainstream approaches are the Common Object Request Broker Architecture #CORBA# standard #OMG #1999## and Microsoft s ....
Goguen and Tracz #2000# J A Goguen and W Tracz. An Implementation-Oriented Semantics for Module Composition. In G Leavens and D M Sitaraman, editors, Foundations of ComponentBased Systems. Cambridge University Press, 2000. To appear.
....speci cation morphisms. A similar approach can be found in [LEW96] Though this is an elaborate theory which provides some useful concepts, not all aspects of our approach are covered. For instance, we have to deal with concurrent objects communicating with each other through action calling. In [GT97] a set theoretic approach to module composition is given, using the notions of tuple sets, partial signature and institution. Two kinds of speci cation modules are distinguished, theories for describing properties of other modules and packages for specifying what has to be implemented. The ....
....types possible, but the object structures should be integrated into existing ones, e.g. it should be possible to build component of and aspect of relationships. Furthermore, these reusable modules have to be made suitable for the current context. Here, module operations as presented in [EM90, GT97, GS95] are of interest for our work. We will illustrate these ideas and our language constructs with some small examples which may be a little contrived but su cient to explain our approach. Example 3 (airline company) Suppose the airline company from example 1 should besides other things have ....
[Article contains additional citation context not shown here]
J.A. Goguen and W. Tracz. An Implementation Oriented Semantics for Module Composition. 1997.
....by specification morphisms. A similar approach can be found in [18] Though this is an elaborate theory which provides some useful concepts, not all aspects of our approach are covered. For instance, we have to deal with concurrent objects communicating with each other through action calling. In [11] a set theoretic approach to module composition is given, using the notions of tuple sets, partial signature and institution. Two kinds of specification modules are distinguished, theories for describing properties of other modules and packages for specifying what has to be implemented. The ....
....or data types possible, but the object structures should be integrated into existing ones, e.g. it should be possible to build component of and aspect of relationships. Furthermore, these reusable modules have to be made suitable for the current context. Here, module operations as presented in [7, 11, 10] are of interest for our work. We will illustrate these ideas and our language constructs with some small examples which may be a little contrived but sufficient to explain our approach. Example 3 (airline company) Suppose the airline company from example 1 should besides other things have its ....
[Article contains additional citation context not shown here]
J.A. Goguen and W. Tracz. An Implementation Oriented Semantics for Module Composition. 1997.
No context found.
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231--263. Cambridge, 2000.
.... a hierarchy differs from what is sometimes called a Dijkstra Parnas hierarchy, because lower level modules do not implement higher level (less abstract) modules, but rather, lower level modules are included in higher level modules; both kinds of hierarchy are supported in the lileanna system [85]. do restore hChString i . Warning: The commands save and restore do not work correctly in an OBJ3 system that has been constructed using Kyoto Common Lisp; however, they do work correctly in a system built using (for example) Lucid Common Lisp. Warning: The command openr (as described in ....
....errors in some older specifications. 4 Parameterized Programming Both the costs and the demands for software are enormous, and are growing rapidly. One way to diminish these effects is to maximize the reuse of software, through the systematic use of what we call parameterized programming (see [85, 47, 52, 49, 36, 37, 55, 77]) Successful software reuse depends upon the following tasks being sufficiently easy: 1. finding old parts that are close enough to what you need; 2. understanding those parts; 3. getting them to do what you need now; and 4. putting them all together correctly. Under these conditions, the ....
[Article contains additional citation context not shown here]
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems. Cambridge, 1999. To appear.
....are terms built from basic modules using these ve operations. The results of this paper are by no means limited to speci cation languages, let al..one equational languages, and indeed, a slightly more concrete version of hidden information modules have been used to greatly extend Ada generics [28, 18]. There are many good reasons to hide information in modules. First, following Parnas [23] information hiding supports data abstraction, and more generally, allows replacing one module by another having the same semantics for its visible signature, but a di erent implementation, without having ....
....the module expression compositionally (i.e. recursively) over the ve operations. For example, if M = A) then [ M ] 1 = Vth(M ) and given also M ) then [ M M ] 1 = Vth(M M ) where M M is de ned to be ( This semantics is the same as that in [18], except that signature union comes from inclusive categories rather than the extended set theory used in [18] In our second semantics, from [25] meaning is directly compositional over visible theories. As before, M ] 2 = Vth(M ) but now [ M M ] 2 = M ] 2 [ M ] 2 ) where ....
[Article contains additional citation context not shown here]
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231-263. Cambridge, 2000.
....hiding specification having the same models, but using ordinary satisfaction. Like [2] this paper applies inclusive institutions to modularization, but the notion of inclusive institution is more general, and it also considers modules with information hiding, generalizing the approach of [7] by using a much more abstract notion of signature. Let I be a fixed inclusive institution. In this paper, we let the term module refer to a triple ( Phi; Sigma ; A) where Phi is a subsignature of Sigma , and A is a set of Sigma sentences, all from I. Sigma is called the working signature, ....
....actual modules to formal parameter modules. These ideas come from parameterized programming [3] In our first semantics, the meaning of a module expression is the visible theory of the result of evaluating the module expression compositionally (i.e. recursively) over the five operations, as in [7]. For example, if M = Phi; Sigma ; A) then [ M ] 1 = Vth(M ) and given also M = Phi ; Sigma ; A ) then [ M M ] 1 = Vth( Phi [ Phi ) since M M is defined to be ( Phi [ Phi ) This definition is the same as in [7] except that union for signatures ....
[Article contains additional citation context not shown here]
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231--263. Cambridge, 2000.
....and re ning higher order modules. Our examples use the BOBJ [14] extension of the OBJ3 speci cation and functional programming language [16] to higher order parameterized programming, but the approach is not limited to speci cation and functional languages, as shown by the Lileanna [23, 15] extension of Ada. Although Lileanna modules are rst order, the same techniques can implement higher order module systems for compiled functional and imperative languages. Module bodies are translated to the compiler s intermediate language (Dianna for Ada) which is manipulated for instantiation ....
....two objects, identifying parts of one with parts of another; this gives an elegant semantics for instantiating parameterized modules. For more detail, see [12] all this actually works for any logical system, via the formalism of institutions [13] For example, the institution for Lileanna [23, 15] has Anna for speci cations and Ada programs for models. For the special case of Example 1, the construction is as follows: Given a tting morphism f : TRIV P , let E = f(Elt) Then the signature of SET[f ] is SET (Elt E) P , the result of substituting E for Elt in the signature of ....
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231-263. Cambridge, 2000.
....We believe views are key to realizing the full practical potential of modularization. Note that the results of this paper are by no means limited to speci cation languages, let al..one equational languages, and indeed, a slightly more concrete version has been used to greatly extend Ada generics [27, 17]. There are several good reasons to hide information in modules. First, as emphasized by Parnas [22] information hiding supports data abstraction, and more generally, allows replacing one module by another having the same semantics for its visible signature, but a di erent implementation, ....
....evaluating the module expression compositionally (i.e. recursively) over the ve operations. For example, if M = A) then [ M ] 1 = Vth(M ) and given also M ) then [ M M ] 1 = Vth(M M where M M is de ned to be ( This semantics is the same as that in [17], except that signature union comes from inclusive categories rather than the extended set theory used in [17] In our second semantics, from [24] meaning is directly compositional over visible theories. As before, M ] 2 = Vth(M ) but now [ M M ] 2 = M ] 2 [ M ] 2 ) where ....
[Article contains additional citation context not shown here]
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231-263. Cambridge, 2000.
....refinement is needed here. Software implementations often require behavioral satisfaction for their correctness, due to clever optimizations of space and or time, such as sharing storage among subtasks. BOBJ has a sophisticated module system based on ideas from parameterized programming [14, 31], using module expressions to describe how to put modules together to form systems, with a rich set of composition operations. Multiple inheritance is supported at the module level. We hope eventually to add higher order modules and views to BOBJ, along the lines of [27] to enhance support for ....
....with respect to locations of documents and (to some extent) of other users. ffl A good interface to the specification database is important, because users can easily get lost when there are many specifications having complex relationships, such as enrichment. The module graph concept of [31] provides one way to organize this complex information, but navigation issues have as yet been little explored. ffl It can be hard to know what other users have done, because demons automatically update the databases; some kind of What s New feature should be developed and evaluated. ffl It is ....
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems. Cambridge, 1999. To appear.
.... and Mossakowski gave a hierarchy of institutions for total, partial and order sorted logics [45] One important application of institutions is a uniform approach to modularization for specifications; in fact, this was a major motivation [5, 27, 29] among many papers on this topic, we mention [18, 33] and [56] which all add inclusion systems to institutions. Much other interesting work with institutions has been done by Tarlecki [62, 63, 64, 65, 67] Sannella and Tarlecki [58, 59, 60] Cerioli [7] Mossakowski [45] and Diaconescu [19, 14, 15] among others; 67] in particular is an important ....
....and 2. Th has pushouts that preserve inclusions if Sign has pushouts that preserve inclusions. It is often more convenient to speak of a theory extension instead of a theory inclusion. Inspired by Goguen and Tracz s implementation oriented (i.e. more concrete) semantics for modularization [33] , Rosu [56] introduced the notion of module specification as a generalization of a standard specification, having both public (or visible) and private symbols via inclusions of signatures, and then explored their properties and gave semantics for module composition over an arbitary inclusive ....
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems, pages 231--263. Cambridge, 2000.
....connection between tree automata and software engineering. Reichel s notion of behavioral theory further developed in various directions, again mainly using partial algebras, e.g. see [6,21,22] and the survey [82] In order to get the powerful module and type system of parameterized programming [54,27,29,28,31,60], it is necessary that the signatures (with their morphisms) models and axioms form what is called an institution [39] What we call half institutions are used in [22] which claims that one cannot get a full institution for the object paradigm with behavioral satisfaction. However, this is ....
Joseph Goguen and Will Tracz. An implementation-oriented semantics for module composition, 1997. Submitted for publication.
....6, which gives a universal characterisation of parallel connection, and more generally, of parallel connection with synchronisation, illustrated by a simple example. The way this approach is based on logic means that it supports the powerful generic module facilities of paramaterised programming [8, 9, 25]. These facilities include generic modules that take other modules as parameters; furthermore, these other modules may themselves be parameterized. Moreover, module expressions allow combining the functionality of two or more modules, while taking proper account of their parameterization and of ....
....synchronisation over the init method. 7 Situated Adaptive Modules The way our approach is based on logic means that it supports the powerful module interconnection facilities of paramaterised programming [8, 9] since all that is required is a logical system that forms a so called institution [12, 4, 25]. Facilities provided include generic modules that take other modules as parameters; furthermore, these other modules may themselves be parameterized. Moreover, module expressions allow combining the functionality of two or more modules, while taking proper account of their parameterization and of ....
[Article contains additional citation context not shown here]
Joseph Goguen and Will Tracz. An implementation-oriented semantics for module composition, 1995. In preparation.
....connection between tree automata and software engineering. Reichel s notion of behavioral theory further developed in various directions, again mainly using partial algebras, e.g. see [6,21,22] and the survey [81] In order to get the powerful module and type system of parameterized programming [53,27,29,28,31,59], it is necessary that the signatures (with their morphisms) models and axioms form what is called an institution [39] What we call half institutions are used in [22] which claims that one cannot get a full institution for the object paradigm with behavioral satisfaction. However, this is ....
Joseph Goguen and Will Tracz. An implementation-oriented semantics for module composition, 1997. Submitted for publication.
.... Reichel s notion of behavioral theory has been developed further in several different directions within the algebraic specification community, mainly using partial algebras, e.g. see [7, 21, 22] and the survey [81] In order to get the powerful module and type system of parameterized programming [53, 27, 29, 28, 31, 59], it is necessary that the signatures (with their morphisms) models and axioms form what is called an institution [39] What we call half institutions are used in [22] which claims that one cannot get a full institution for the object paradigm with behavioral satisfaction. However, this is ....
Joseph Goguen and Will Tracz. An implementation-oriented semantics for module composition, 1997. Submitted for publication.
....interfaces, and allow users to ignore where documents are actually located. ffl A good interface to the Spec DB is very important, because users can easily get lost when there are many specifications; module expressions and relationships like enrichment need to be recorded. The module graphs of [9] provide one way to organize this. ffl It can be hard to know what others have done, because communication daemons automatically update the database; some kind of What s New feature may help. ffl Software proofs are often messier than mathematical proofs, because of the complex behavior of ....
Joseph Goguen and William Tracz. An implementationoriented semantics for module composition, 1997. Draft manuscript.
....is still vital, especially in early stages. An online chat tool may not be enough for this purpose. ffl The Spec DB is very important, as one can easily get lost when there are many specifications; module expressions and relationships like enrichment need to be stored; the module graphs of [7] give one way to organize this. ffl It can be hard to know what others are doing, since communication daemons automatically update the database; some sort of What s New feature is needed. ffl It is important to support informal and semi formal validation, as well as fully formal proving, as ....
Joseph Goguen and Will Tracz. An implementationoriented semantics for module composition, 1997. In preparation.
....in modules having loose semantics. As in CafeOBJ, behavioral modules support the notion of coherence, as introduced by Diaconescu [1] but in a recently generalized form [17] called behavioral congruence. In the future, we expect to add higher order modules and views to BOBJ, along the lines of [15]; this will further enhance support for reuse and the ability to express software architectures. BOBJ only exists in the context of its role in the tatami system. In particular, its type checking and execution are implemented by translation into some version of OBJ (currently OBJ3, but later ....
....are refinement and composition. The former says that more detail has been provided, e.g. a way to realize a behavior once certain other behaviors are given. Composition steps tell how a given description is realized from simpler specifications. Following the parameterized programming [7, 15] paradigm, the tatami system will use module expressions for this purpose; they describe how to put modules together to form systems, using a rich set of composition operations. Another important relation is satisfaction, which says that one requirement or specification satisfies another. ....
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition, 1998. Draft manuscript in preparation.
....should be proved here. Software implementations often require behavioral satisfaction for their correctness, due to clever optimizations of space and or time, such as sharing storage among subtasks. BOBJ has a sophisticated module system that is based on ideas from parameterized programming [14, 31]; here module expressions describe how to put modules together to form systems, using a rich set of composition operations. Multiple inheritance is supported at the module level. In the future, we intend to add higher order modules and views to BOBJ, along the lines of [26] this will further ....
....transparency with respect to location of document and (to some extent) other users. ffl A good interface to the specification database is important, because users can easily get lost when there are many specifications with complex relationships, such as enrichment. The module graph concept of [31] provides one way to organize this complex information, but navigation issues have as yet been little explored. ffl It can be hard to know what others have done, because demons automatically update the database; some kind of What s New feature should be developed and evaluated. ffl It is ....
Joseph Goguen and William Tracz. An implementation-oriented semantics for module composition. In Gary Leavens and Murali Sitaraman, editors, Foundations of Component-based Systems. Kluwer, 1999. To appear.
....code by replacing ASSOCV with three views corresponding to its three instantiations in IND. The semantics of parameterized views is discussed in [5] using the notion of pushout from category theory. It would not be difficult to give a semantics using the more concrete approach introduced in [7]. The technique of the proof above could also be used to prove other properties of numbers, just by replacing ASSOCV with a view picking out the two new terms to be proved equal. This suggests an exciting extension to parameterized programming allowing IND to be parameterized by the parameterized ....
Joseph Goguen and Will Tracz. An implementation-oriented semantics for module composition, 1996. In preparation.
....time, although significant initial investment may be needed to accumulate information for the library. lileanna has a formal semantics based on category theory, following ideas developed for the Clear specification language [3, 4] more recently, a set theoretic semantics has been given [15]. These semantics are very general, and apply to languages other than Ada and Anna, and indeed, to any implementationspecification language pair that satisfies certain axioms. The properties of an interconnection of modules are related in a straightforward way to those of its components, through ....
....in the OBJ system [16] but using different techniques, because there is no attached code in a separate programming language. The mathematical semantics of module expression evaluation is given by the colimit of a diagram extracted from the module graph [4] or by a simpler set theoretic semantics [15]. lileanna provides a graphical layout editor [18] for module expressions, based on notation like that typically used by engineers, i.e. boxes and arrows. This helps users to edit existing module expressions to define new (sub)systems, or define them from scratch, as they wish. 4.1 ....
[Article contains additional citation context not shown here]
Joseph Goguen and Will Tracz. An implementation -oriented semantics for module composition. In preparation.
No context found.
J. A. Goguen and W. Tracz "An Implementation-Oriented Semantics for Module Composition", in Foundations of Component-based Systems, ed. G. Leavens and M. Sitaraman, Cambridge, 2000.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC