Abstract
Parametricity is one of the most effective ways to achieve compositionality and reuse in software development. Parametric specifications have been thoroughly analyzed in the algebraic setting and are by now a standard part of most software development toolkits. However, an effort towards classifying, specifying and refining algorithmic theories, rather than mere datatypes, quickly leads beyond the realm of algebra, and often to full first order theories. We extend the standard semantics of parametric specifications to this more general setting.
The familiar semantic characterization of parametricity in the algebraic case is expressed in terms of the free functor, i.e. using the initial models. In the general case, initial models may not exist, and the free functor is not available. Various syntactic, semantic, and abstract definitions of parametricity have been offered, but their exact relationships are often unclear. Using the methods of categorical model theory, we establish the equivalence of two well known, yet so far unrelated, definitions of parametricity, one syntactic, one semantic. Besides providing support for both underlying views, and a way for aligning the systems based on each of them, the offered general analysis and its formalism open several avenues for future research and applications.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
J. Adámek and J. Rosický, Locally Presentable and Accessible Categories. LMS Lect. Note Series 189 (Cambridge Univ. Press 1994)
J. Adámek, P.T. Johnstone, J.A. Makowsky and J. Rosický, Finitary sketches, J. Symbolic Logic 62(1997) 699–707
M. Barr and C. Wells, Category Theory for Computing Science. (Prentice Hall 1990)
R. Burstall and J. Goguen, The semantics of Clear, a specification languge. In: D. Bjorner, ed., Proceedings, 1979 Copenhagen Winter School on Abstract Software Specification. Lecture Notes in Computer Science 86 (Springer 1980)
Th. Dimitrakos, Formal Support for Specification Design and Implementation. Thesis (Univ. of London 1998)
H. Ehrig and M. Groβe-Rhode, Functorial theory of parametrized specifications in generalized specification framework, Theoret. Comput. Sci. 135(1994) 221–266
H. Ehrig and H.J. Kreowski, Parameter passing commutes with implementation of parametrized data types. In [23] 197–211
H. Ehrig and B. Mahr, Fundamentals of Algebraic Specification 2. Module Specifications and Constraints. EATCS Monographs in Theor. Comp. Sci., vol. 21 (Springer 1990)
H. Ganzinger, Parametric specifications: parameter passing and implementations with respect to observability. ACM Trans. on Prog. Lang. and Syst. 5(1983) 318–354
P. Gabriel and F. Ulmer, Lokal Präsentierbare Kategorien. Lecture Notes in Mathematics 221 (Springer 1971)
J. Goguen and R.M. Burstall, CAT, a system for the structured elaboration of correct programs from structured specifications. Tech. report CSL-118 (SRI 1980)
J. Goguen, Parametrized programming. Trans. on Software Engineering 10-5 (1984) 528–543
J. Goguen, Principles of parametrized programming. In: Software Reusability. Vol I: Concepts and Models. (Addison-Wesley 1989) 159–225
J. Goguen and J. Meseguer, Universal realization, persistent interconnection and implementation in abstract modules. In [23] 265–281
J. Goguen, J. Meseguer and D. Plaisted, Programming with parametrized abstract objects in OBJ. In: D. Ferrari et al., eds., Theory and Practice of Software Technology (North-Holland 1983) 163–193
F.W. Lawvere, Functorial Semantics of Algebraic Theories. Thesis (Columbia Univ. 1963)
M. Löwe and U. Wolter, Parametric algebraic specifications with Gentzen formulas — from quasi-freeness to free functor semantics. Math. Structures Comput. Sci. 5(1995) 69–111
S. Mac Lane, Categories for the Working Mathematician. Graduate Texts in Mathematics 5 (Springer 1971)
M. Makkai, Stone duality for first order logic. Advances in Math. 65(1987)
M. Makkai and R. Paré, Accessible Categories: The Foundations of Categorical Model Theory. Contemporary Mathematics 104 (AMS 1989)
M. Makkai and G. Reyes, First Order Categorical Logic. Lecture Notes in Mathematics 611 (Springer 1977)
E. Manes, Algebraic Theories. (Springer 1976)
M. Nielsen and E.M. Schmidt, eds., Proceedings of Ninth ICALP. Lecture Notes in Computer Science 140 (Springer 1982)
D. Sanella and M. Wirsing, Implementation of parametrized specifications. In [23] 473–488
Y.V. Srinivas, Refinement of parametrized algebraic specifications. In: R. Bird and L. Meertens, eds., Algorithmic Languages and Calculi. (Chapman & Hall 1997) 164–186
C. Strachey, Fundamental concepts in programming languages, unpublished lecture notes, 1967
J.W. Thatcher, E.G. Wagner and J.B. Wright, Data type specification: parametrization and the power of specification techniques. ACM Trans. of Prog. Lang. and Syst. 4(1982) 711–732 (earlier version: Proc. of 10th SIGACT Symp. on Theory of Computing (1978) 119-132)
R. Waldinger, L. Blaine, D. Espinosa, L.-M. Gilham, A. Goldberg, C. Green, R. Jüllig, J. Liu, J. McDonald, D.R. Smith, Y.V. Srinivas, T.C. Wang and S. Westfold, Specware™ Language Manual (Kestrel Institute 1998) — available upon request from keep@@kestrel.edu
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pavlović, D. (1999). Semantics of First Order Parametric Specifications. In: Wing, J.M., Woodcock, J., Davies, J. (eds) FM’99 — Formal Methods. FM 1999. Lecture Notes in Computer Science, vol 1708. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48119-2_11
Download citation
DOI: https://doi.org/10.1007/3-540-48119-2_11
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66587-8
Online ISBN: 978-3-540-48119-5
eBook Packages: Springer Book Archive