Abstract
The increasing application of notions and results from category theory, especially from algebra and coalgebra, has revealed that any formal software or hardware model is constructor- or destructor-based, a white-box or a black-box model. A highly-structured system may involve both constructor- and destructor-based components. The two model classes and the respective ways of developing them and reasoning about them are dual to each other. Roughly said, algebras generalize the modeling with context-free grammars, word languages and structural induction, while coalgebras generalize the modeling with automata, Kripke structures, streams, process trees and all other state- or object-oriented formalisms. We summarize the basic concepts of co/algebra and illustrate them at a couple of signatures including those used in language or compiler construction like regular expressions or acceptors.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Adámek, J.: Introduction to Coalgebra. Theory and Applications of Categories 14, 157–199 (2005)
Adámek, J.: Final coalgebras are ideal completions of initial algebras. Journal of Logic and Computation 12, 217–242 (2002)
Aczel, P., Adámek, J., Velebil, J.: A Coalgebraic View of Infinite Trees and Iteration. In: Proc. Coalgebraic Methods in Computer Science. ENTCS, vol. 44, pp. 1–26. Elsevier, Amsterdam (2001)
Adámek, J., Milius, S., Moss, L.S.: Initial algebras and terminal coalgebras: a survey, draft of February 7, TU Braunschweig (2011)
Adámek, J., Porst, H.-E.: From varieties of algebras to covarieties of coalgebras. In: Proc. Coalgebraic Methods in Computer Science. ENTCS, vol. 44, pp. 27–46. Elsevier, Amsterdam (2001)
Adámek, J., Porst, H.-E.: On Tree Coalgebras and Coalgebra Presentations. Theoretical Computer Science 311, 257–283 (2004)
Arbib, M.A.: Free dynamics and algebraic semantics. In: Karpinski, M. (ed.) FCT 1977. LNCS, vol. 56, pp. 212–227. Springer, Heidelberg (1977)
Arbib, M.A., Manes, E.G.: Parametrized Data Types Do Not Need Highly Constrained Parameters. Information and Control 52, 139–158 (1982)
Astesiano, E., Kreowski, H.-J., Krieg-Brückner, B. (eds.): Algebraic Foundations of Systems Specification. IFIP State-of-the-Art Report. Springer, Heidelberg (1999)
Barr, M.: Coequalizers and Free Triples. Math. Zeitschrift 116, 307–322 (1970)
Barr, M.: Terminal coalgebras in well-founded set theory. Theoretical Computer Science 114, 299–315 (1993)
van den Brand, M.G.J., Heering, J., Klint, P., Olivier, P.A.: Compiling Rewrite Systems: The ASF+SDF Compiler. ACM TOPLAS 24 (2002)
Brzozowski, J.A.: Derivatives of regular expressions. Journal ACM 11, 481–494 (1964)
Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification, vol. 1. Springer, Heidelberg (1985)
Gibbons, J., Hutton, G., Altenkirch, T.: When is a function a fold or an unfold? In: Proc. Coalgebraic Methods in Computer Science. ENTCS, vol. 44, pp. 146–159. Elsevier, Amsterdam (2001)
Goguen, J., Malcolm, G.: A Hidden Agenda. Theoretical Computer Science 245, 55–101 (2000)
Goguen, J.A., Thatcher, J.W., Wagner, E.G.: An Initial Algebra Approach to the Specification, Correctness and Implementation of Abstract Data Types. In: Yeh, R. (ed.) Current Trends in Programming Methodology, vol. 4, pp. 80–149. Prentice-Hall, Englewood Cliffs (1978)
Goguen, J.A., Thatcher, J.W., Wagner, E.G., Wright, J.B.: Initial Algebra Semantics and Continuous Algebras. J. ACM 24, 68–95 (1977)
Gumm, H.P., Schröder, T.: Coalgebras of bounded type. Math. Structures in Computer Science 12, 565–578 (2002)
Gumm, H.P.: Universelle Coalgebra. In: Ihringer, T. (ed.) Allgemeine Algebra. Heldermann Verlag (2003)
Guttag, J., Horowitz, E., Musser, D.R.: Abstract Data Types and Software Validation. Communications of the ACM 21, 1048–1064 (1978)
Hinze, R.: Adjoint Folds and Unfolds. In: Bolduc, C., Desharnais, J., Ktari, B. (eds.) MPC 2010. LNCS, vol. 6120, pp. 195–228. Springer, Heidelberg (2010)
Hinze, R.: Reasoning about Codata. In: Horváth, Z., Plasmeijer, R., Zsók, V. (eds.) CEFP 2009. LNCS, vol. 6299, pp. 42–93. Springer, Heidelberg (2010)
Jacobs, B.: Invariants, Bisimulations and the Correctness of Coalgebraic Refinements. In: Johnson, M. (ed.) AMAST 1997. LNCS, vol. 1349, pp. 276–291. Springer, Heidelberg (1997)
Jacobs, B.: Introduction to Coalgebra. Radboud University, Nijmegen (2005)
Jacobs, B.: A Bialgebraic Review of Deterministic Automata, Regular Expressions and Languages. In: Futatsugi, K., Jouannaud, J.-P., Bevilacqua, V. (eds.) Algebra, Meaning, and Computation. LNCS, vol. 4060, pp. 375–404. Springer, Heidelberg (2006)
Kamin, S.: Final Data Type Specifications: A New Data Type Specification Method. ACM TOPLAS 5, 97–123 (1983)
Lambek, J.: A fixpoint theorem for complete categories. Math. Zeitschrift 103, 151–161 (1968)
Lehmann, D.J., Smyth, M.B.: Algebraic Specification of Data Types: A Synthetic Approach. Math. Systems Theory 14, 97–139 (1981)
Meseguer, J., Goguen, J.A.: Initiality, Induction and Computability. In: Nivat, M., Reynolds, J. (eds.) Algebraic Methods in Semantics, pp. 459–541. Cambridge University Press, Cambridge (1985)
Meseguer, J., Rosu, G.: The Rewriting Logic Semantics Project. Theoretical Computer Science 373 (2007)
van der Meulen, E.A.: Deriving incremental implementations from algebraic specifications. In: Proc. 2nd AMAST, pp. 277–286. Springer, Heidelberg (1992)
Padawitz, P.: Proof in Flat Specifications. In: Astesiano, E., Kreowski, H.-J., Krieg-Brückner, B. (eds.) Algebraic Foundations of Systems Specification. IFIP State-of-the-Art Report, pp. 321–384. Springer, Heidelberg (1999)
Padawitz, P.: Swinging Types = Functions + Relations + Transition Systems. Theoretical Computer Science 243, 93–165 (2000)
Padawitz, P.: Dialgebraic Specification and Modeling, slides, TU Dortmund (2011), http://fldit-www.cs.tu-dortmund.de/~peter/DialgSlides.pdf
Padawitz, P.: Algebraic compilers and their implementation in Haskell, Sierra Nevada IFIP WG 1.3 Meeting (January 14-18, 2008)
Padawitz, P.: Algebraic Model Checking. In: Drewes, F., Habel, A., Hoffmann, B., Plump, D. (eds.) Manipulation of Graphs, Algebras and Pictures. Electronic Communications of the EASST, vol. 26 (2010), extended slides http://fldit-www.cs.tu-dortmund.de/~peter/CTL.pdf
Padawitz, P.: Expander2 as a Prover and Rewriter, http://fldit-www.cs.tu-dortmund.de/~peter/Prover.pdf
Padawitz, P.: Übersetzerbau, course notes, TU Dortmund (2010), http://fldit-www.cs.tu-dortmund.de/~peter/CbauFolien.pdf
Rutten, J.J.M.M.: Universal Coalgebra: A Theory of Systems. Theoretical Computer Science 249, 3–80 (2000)
Rutten, J.J.M.M.: Automata and coinduction (an exercise in coalgebra). In: Sangiorgi, D., de Simone, R. (eds.) CONCUR 1998. LNCS, vol. 1466, pp. 194–218. Springer, Heidelberg (1998)
Rutten, J.J.M.M.: Behavioural differential equations: a coinductive calculus of streams, automata, and power series. Theoretical Computer Science 308, 1–53 (2003)
Rutten, J.J.M.M., Turi, D.: Initial Algebra and Final Coalgebra Semantics for Concurrency, Report CS-R9409, CWI, Amsterdam (1994)
Sen, K., Rosu, G.: Generating Optimal Monitors for Extended Regular Expressions. In: Proc. Runtime Verification 2003. ENTCS, vol. 89, pp. 226–245. Elsevier, Amsterdam (2003)
Thatcher, J.W., Wagner, E.G., Wright, J.B.: More on Advice on Structuring Compilers and Proving Them Correct. Theoretical Computer Science 15, 223–249 (1981)
Visser, E.: Program Transformation with Stratego/XT: Rules, Strategies, Tools, and Systems. In: Lengauer, C., Batory, D., Blum, A., Vetta, A. (eds.) Domain-Specific Program Generation. LNCS, vol. 3016, pp. 216–238. Springer, Heidelberg (2004)
Wand, M.: Final algebra semantics and data type extension. J. Comp. Syst. Sci. 19, 27–44 (1979)
Wirsing, M.: Algebraic Specification. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, pp. 675–788. Elsevier, Amsterdam (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Padawitz, P. (2011). From Grammars and Automata to Algebras and Coalgebras. In: Winkler, F. (eds) Algebraic Informatics. CAI 2011. Lecture Notes in Computer Science, vol 6742. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21493-6_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-21493-6_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21492-9
Online ISBN: 978-3-642-21493-6
eBook Packages: Computer ScienceComputer Science (R0)