Composing Hidden Information Modules over Inclusive Institutions

This paper studies the composition of modules that can hide information, over a very general class of logical systems called inclusive institutions. Two semantics are given for the composition of such modules using five familiar operations, and a property called conservativity is shown necessary and sufficient for these semantics to agree. The first semantics extracts the visible properties of the result of composing both the visible and hidden parts of modules, while the second uses only the visible properties of the components; the two semantics agree when the visible consequences of hidden information are enough to determine the result of the composition. A number of “laws of software composition” are proved relating the five composition operations. Inclusive institutions simplify many of the proofs. The approach has application to module composition technology, for both programs and specifications.

[1]  Donald Sannella,et al.  Toward formal development of programs from algebraic specifications: Parameterisation revisited , 1992, Acta Informatica.

[2]  Joseph A. Goguen,et al.  Software Engineering with Obj: Algebraic Specification In Action , 2010 .

[3]  Sebastian Maneth,et al.  Efficient Memory Representation of XML Documents , 2005, DBPL.

[4]  María Victoria Cengarle,et al.  A Calculus of Higher-Order Parameterization for Algebraic Specifications , 1995, Log. J. IGPL.

[5]  Donald Sannella,et al.  Specifications in an Arbitrary Institution , 1988, Inf. Comput..

[6]  Gernot Salzer,et al.  Automated Deduction in Classical and Non-Classical Logics , 2002, Lecture Notes in Computer Science.

[7]  Virgil Emil Cc Azz Anescu,et al.  Weak Inclusion Systems; Part 2 , 2022 .

[8]  Joseph A. Goguen,et al.  Parameterized Programming , 1984, IEEE Transactions on Software Engineering.

[9]  Martin Wirsing,et al.  Recent trends in algebraic development techniques : 16th International Workshop, WADT 2002, Frauenchiemsee, Germany, September 24-27, 2002 : revised selected papers , 2003 .

[10]  Joseph A. Goguen,et al.  Types as theories , 1991 .

[11]  T. Broadbent,et al.  Module Algebra , 1970, Nature.

[12]  Michel Bidoit,et al.  Constructor-based observational logic , 2006, J. Log. Algebraic Methods Program..

[13]  Virgil Emil Cazanescu,et al.  Weak Inclusion Systems: Part Two , 2000, J. Univers. Comput. Sci..

[14]  José Meseguer,et al.  Initiality, induction, and computability , 1986 .

[15]  Joseph A. Goguen,et al.  Putting Theories Together to Make Specifications , 1977, IJCAI.

[16]  T. Borzyskowski Correctness of a logical system for structured specifications , 1997, WADT.

[17]  Donald Sannella,et al.  Extended ML: Past, Present, and Future , 1990, ADT.

[18]  Joseph A. Goguen,et al.  A hidden agenda , 2000, Theor. Comput. Sci..

[19]  Joseph A. Goguen,et al.  Principles of parameterized programming , 1989 .

[20]  Petros S. Stefaneas,et al.  Logical support for modularisation , 1993 .

[21]  Grigore Rosu,et al.  Conditional Circular Coinductive Rewriting with Case Analysis , 2002, WADT.

[22]  Grigore Rosu,et al.  Abstract Semantics for Module Composition , 2000 .

[23]  Will Tracz,et al.  An implementation-oriented semantics for module composition , 2000 .

[24]  Grigore Rosu,et al.  Inductive Behavioral Proofs by Unhiding , 2003, CMCS.

[25]  Philip A. Bernstein,et al.  A Model Theory for Generic Schema Management , 2001, DBPL.

[26]  Joseph A. Goguen,et al.  Institutions: abstract model theory for specification and programming , 1992, JACM.

[27]  S. Anderson,et al.  Secure Synthesis of Code: A Process Improvement Experiment , 1999, World Congress on Formal Methods.

[28]  Alan Bundy,et al.  Constructing Induction Rules for Deductive Synthesis Proofs , 2006, CLASE.

[29]  Hans-Jörg Kreowski,et al.  Recent Trends in Data Type Specification , 1985, Informatik-Fachberichte.

[30]  J. V. Tucker,et al.  A characterization of computable data types by means of a finite, equational specification mehod , 1980 .

[31]  Philip A. Bernstein,et al.  Applying Model Management to Classical Meta Data Problems , 2003, CIDR.

[32]  Will Tracz,et al.  LILEANNA: a parameterized programming language , 1993, [1993] Proceedings Advances in Software Reuse.

[33]  Jan A. Bergstra,et al.  Equational specifications, complete term rewriting systems, and computable and semicomputable algebras , 1995, JACM.

[34]  Grigore Rosu,et al.  Hidden Congruent Deduction , 1998, FTP.

[35]  Rolf Hennicker,et al.  Context induction: A proof principle for behavioural abstractions and algebraic implementations , 1991, Formal Aspects of Computing.

[36]  G. Fauconnier,et al.  The Way We Think , 2002 .

[37]  Grigore Rosu,et al.  Hiding More of Hidden Algebra , 1999, World Congress on Formal Methods.

[38]  Razvan Diaconescu,et al.  Extra Theory Morphisms for Institutions: Logical Semantics for Multi-Paradigm Languages , 1997, Appl. Categorical Struct..

[39]  Grigore Rosu,et al.  Institution Morphisms , 2013, Formal Aspects of Computing.

[40]  Martin Wirsing,et al.  Extraction of Structured Programs from Specification Proofs , 1999, WADT.

[41]  Rubén Prieto-Díaz,et al.  Software reusability , 1993 .

[42]  Virgil Emil Cazanescu,et al.  Weak Inclusion Systems , 1997, Math. Struct. Comput. Sci..

[43]  Razvan Diaconescu,et al.  Cafeobj Report - The Language, Proof Techniques, and Methodologies for Object-Oriented Algebraic Specification , 1998, AMAST Series in Computing.

[44]  Horst Herrlich,et al.  Category theory , 1979 .

[45]  S. Lane Categories for the Working Mathematician , 1971 .

[46]  Till Mossakowski Specifications in an Arbitrary Institution with Symbols , 1999, WADT.

[47]  Andrzej Tarlecki Moving Between Logical Systems , 1995, COMPASS/ADT.

[48]  David Lorge Parnas,et al.  Information Distribution Aspects of Design Methodology , 1971, IFIP Congress.

[49]  S. Maclane,et al.  Categories for the Working Mathematician , 1971 .