Abstract
This paper provides an overview of an approach to coalgebraic modelling and refinement of state-based software components, summing up some basic results and introducing a discussion on the interplay between behavioural and classical data refinement. The approach builds on coalgebra theory as a suitable tool to capture observational semantics and to base an abstract characterisation of possible behaviour models for components (from partiality to different degrees of non-determinism).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abrial, J.R.: The B Book: Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)
Aczel, P., Mendler, N.: A final coalgebra theorem. In: Dybjer, P., Pitts, A.M., Pitt, D.H., Poigné, A., Rydeheard, D.E. (eds.) Category Theory and Computer Science. LNCS, vol. 389, pp. 357–365. Springer, Heidelberg (1989)
Arbab, F.: Abstract behaviour types: a foundation model for components and their composition. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 33–70. Springer, Heidelberg (2003)
Backhouse, R.C., Hoogendijk, P.F.: Elements of a relational theory of datatypes. In: Möller, B., Schuman, S., Partsch, H. (eds.) Formal Program Development. LNCS, vol. 755, pp. 7–42. Springer, Heidelberg (1993)
Backhouse, R.C., Jansson, P., Jeuring, J., Meertens, L.: Generic programming: An introduction. In: Swierstra, S.D., Oliveira, J.N. (eds.) AFP 1998. LNCS, vol. 1608, pp. 28–115. Springer, Heidelberg (1999)
Barbosa, L.S.: Components as processes: An exercise in coalgebraic modeling. In: Smith, S.F., Talcott, C.L. (eds.) FMOODS 2000 - Formal Methods for Open Object-Oriented Distributed Systems, pp. 397–417. Kluwer Academic Publishers, Dordrecht (2000)
Barbosa, L.S.: Towards a Calculus of State-based Software Components. Journal of Universal Computer Science 9(8), 891–909 (2003)
Barbosa, L.S., Oliveira, J.N.: State-based components made generic. In: Peter Gumm, H. (ed.) CMCS 2003. Elect. Notes in Theor. Comp. Sci, vol. 82(1). Elsevier, Amsterdam (2003)
Barbosa, L.S., Sun, M., Aichernig, B.K., Rodrigues, N.: On the semantics of componentware: a coalgebraic perspective. In: He, J., Liu, Z. (eds.) Mathematical Frameworks for Component Software: Models for Analysis and Synthesis. Series on Component-Based Development. World Scientific, Singapore (2005)
Barbosa, M.A., Barbosa, L.S.: Specifying software connectors. In: Liu, Z., Araki, K. (eds.) ICTAC 2004. LNCS, vol. 3407, pp. 52–67. Springer, Heidelberg (2005)
Benabou, J.: Introduction to bicategories. Springer Lect. Notes Maths. (47), 1–77 (1967)
van Benthem, J.: Modal Correspondence Theory. Ph.D. thesis, University of Amsterdam (1976)
Bergner, K., Rausch, A., Sihling, M., Vilbig, A., Broy, M.: A Formal Model for Componentware. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of Component-Based Systems, pp. 189–210. Cambridge University Press, Cambridge (2000)
Bird, R.: Functional Programming Using Haskell. Series in Computer Science. Prentice-Hall International, Englewood Cliffs (1998)
Bird, R., Moor, O.: The Algebra of Programming. Series in Computer Science. Prentice-Hall International, Englewood Cliffs (1997)
Broy, M.: Semantics of finite and infinite networks of communicating agents. Distributed Computing (2) (1987)
Gelernter, D., Carrier, N.: Coordination languages and their significance. Communication of the ACM 2(35), 97–107 (1992)
Hoare, C.A.R.: Proof of correctness of data representations. Acta Informatica 1, 271–281 (1972)
Hoogendijk, P.F.: A generic theory of datatypes. Ph.D. thesis, Department of Computing Science, Eindhoven University of Technology (1996)
Jacobs, B.: Objects and classes, co-algebraically. In: Lengauer, C., Freitag, B., Jones, C.B., Schek, H.-J. (eds.) Object-Orientation with Parallelism and Persistence, pp. 83–103. Kluwer Academic Publishers, Dordrecht (1996)
Jacobs, B., Hughes, J.: Simulations in coalgebra. In: Peter Gumm, H. (ed.) CMCS 2003, Warsaw. Elect. Notes in Theor. Comp. Sci, vol. 82(1) (April 2003)
Jacobs, B.: Exercises in coalgebraic specification. In: Blackhouse, R., Crole, R.L., Gibbons, J. (eds.) Algebraic and Coalgebraic Methods in the Mathematics of Program Construction. LNCS, vol. 2297, pp. 237–280. Springer, Heidelberg (2002)
Jones, C.B.: Systematic Software Development Using Vdm. Series in Computer Science. Prentice-Hall International, Englewood Cliffs (1986)
Katis, P., Sabadini, N., Walters, R.F.C.: Bicategories of processes. Journal of Pure and Applied Algebra 115(2), 141–178 (1997)
Katis, P., Sabadini, N., Walters, R.F.C.: On the algebra of systems with feedback and boundary. Rendiconti del Circolo Matematico di Palermo II(63), 123–156 (2000)
Kock, A.: Strong functors and monoidal monads. Archiv für Mathematik 23, 113–120 (1972)
Mealy, G.H.: A method for synthesizing sequential circuits. Bell Systems Techn. Jour. 34(5), 1045–1079 (1955)
Meijer, E., Fokkinga, M., Paterson, R.: Functional programming with bananas, lenses, envelopes and barbed wire. In: Hughes, J. (ed.) FPCA 1991. LNCS, vol. 523, pp. 124–144. Springer, Heidelberg (1991)
Meng, S., Barbosa, L.S.: On refinement of generic software components. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 506–520. Springer, Heidelberg (2004); Best Student Co-authored paper Award
Meng, S., Barbosa, L.S.: Components as coalgebras: The refinement dimension. Theor. Comp. Sci. (2005) (accepted for publication)
Milner, R.: Communication and Concurrency. Series in Computer Science. Prentice-Hall International, Englewood Cliffs (1989)
Nierstrasz, O., Achermann, F.: A calculus for modeling software components. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 339–360. Springer, Heidelberg (2003)
Oaks, S., Wong, H.: Jini in a Nutshell. O’Reilly and Associates, Sebastopol (2000)
Oliveira, J.N.: A reification calculus for model-oriented software specification. Formal Aspects of Computing 2(1), 1–23 (1990)
Oliveira, J.N.: Software reification using the Sets calculus. In: Proc. of the BCS FACS 5th Refinement Workshop, Theory and Practice of Formal Software Development, London, UK, January 8-10, pp. 140–171. Springer, Heidelberg (1992)
Oliveira, J.N., Rodrigues, C.J.: Transposing relations: From maybe functions to hash tables. In: Kozen, D. (ed.) MPC 2004. LNCS, vol. 3125, pp. 334–356. Springer, Heidelberg (2004)
Papadopoulos, G., Arbab, F.: Coordination models and languages. In: Advances in Computers — The Engineering of Large Systems, vol. 46, pp. 329–400 (1998)
Park, D.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) GI-TCS 1981. LNCS, vol. 104, pp. 561–572. Springer, Heidelberg (1981)
Poll, E.: A coalgebraic semantics of subtyping. Theorectical Informatica and Apllications 35(1), 61–82 (2001)
Reichel, H.: An approach to object semantics based on terminal co-algebras. Math. Struct. in Comp. Sci. 5, 129–152 (1995)
de Roever, W.-P., Engelhardt, K.: Data Refinement: Model-Oriented Proof Methods and their Comparison, vol. 47. Cambridge University Press, Cambridge (1998)
Rutten, J.: Universal coalgebra: A theory of systems. Theor. Comp. Sci., 249(1), 3–80 (Revised version of CWI Techn. Rep. CS-R9652 (2000)
Schneider, J.-G., Nierstrasz, O.: Components, scripts, glue. In: Barroca, L., Hall, J., Hall, P. (eds.) Software Architectures - Advances and Applications, pp. 13–25. Springer, Heidelberg (1999)
Segerberg, K.: An essay in classical modal logic. Filosofiska Studier (13) (1971)
Spivey, J.M.: The Z Notation: A Reference Manual, 2nd edn. Series in Computer Science. Prentice Hall International, Englewood Cliffs (1992)
Szyperski, C.: Component Software, Beyond Object-Oriented Programming. Addison-Wesley, Reading (1998)
The RAISE Language Group. In: The RAISE Specification Language. Prentice Hall International, Englewood Cliffs (1992)
Turi, D., Rutten, J.: On the foundations of final coalgebra semantics: non-well-founded sets, partial orders, metric spaces. Math. Struct. in Comp. Sci. 8(5), 481–540 (1998)
Wadler, P., Weihe, K.: Component-based programming under different paradigms. Technical report, Dagstuhl Seminar 99081 (February 1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barbosa, L.S. (2005). A Perspective on Component Refinement. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, WP. (eds) Formal Methods for Components and Objects. FMCO 2004. Lecture Notes in Computer Science, vol 3657. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11561163_2
Download citation
DOI: https://doi.org/10.1007/11561163_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-29131-2
Online ISBN: 978-3-540-31939-9
eBook Packages: Computer ScienceComputer Science (R0)