Skip to main content

From Grammars and Automata to Algebras and Coalgebras

  • Conference paper
  • 470 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6742))

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

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Adámek, J.: Introduction to Coalgebra. Theory and Applications of Categories 14, 157–199 (2005)

    MathSciNet  MATH  Google Scholar 

  2. Adámek, J.: Final coalgebras are ideal completions of initial algebras. Journal of Logic and Computation 12, 217–242 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  3. 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)

    Google Scholar 

  4. Adámek, J., Milius, S., Moss, L.S.: Initial algebras and terminal coalgebras: a survey, draft of February 7, TU Braunschweig (2011)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. Adámek, J., Porst, H.-E.: On Tree Coalgebras and Coalgebra Presentations. Theoretical Computer Science 311, 257–283 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  7. Arbib, M.A.: Free dynamics and algebraic semantics. In: Karpinski, M. (ed.) FCT 1977. LNCS, vol. 56, pp. 212–227. Springer, Heidelberg (1977)

    Chapter  Google Scholar 

  8. Arbib, M.A., Manes, E.G.: Parametrized Data Types Do Not Need Highly Constrained Parameters. Information and Control 52, 139–158 (1982)

    Article  MathSciNet  MATH  Google Scholar 

  9. Astesiano, E., Kreowski, H.-J., Krieg-Brückner, B. (eds.): Algebraic Foundations of Systems Specification. IFIP State-of-the-Art Report. Springer, Heidelberg (1999)

    MATH  Google Scholar 

  10. Barr, M.: Coequalizers and Free Triples. Math. Zeitschrift 116, 307–322 (1970)

    Article  MathSciNet  MATH  Google Scholar 

  11. Barr, M.: Terminal coalgebras in well-founded set theory. Theoretical Computer Science 114, 299–315 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  12. van den Brand, M.G.J., Heering, J., Klint, P., Olivier, P.A.: Compiling Rewrite Systems: The ASF+SDF Compiler. ACM TOPLAS 24 (2002)

    Google Scholar 

  13. Brzozowski, J.A.: Derivatives of regular expressions. Journal ACM 11, 481–494 (1964)

    Article  MathSciNet  MATH  Google Scholar 

  14. Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification, vol. 1. Springer, Heidelberg (1985)

    Book  MATH  Google Scholar 

  15. 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)

    Google Scholar 

  16. Goguen, J., Malcolm, G.: A Hidden Agenda. Theoretical Computer Science 245, 55–101 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  17. 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)

    Google Scholar 

  18. Goguen, J.A., Thatcher, J.W., Wagner, E.G., Wright, J.B.: Initial Algebra Semantics and Continuous Algebras. J. ACM 24, 68–95 (1977)

    Article  MathSciNet  MATH  Google Scholar 

  19. Gumm, H.P., Schröder, T.: Coalgebras of bounded type. Math. Structures in Computer Science 12, 565–578 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  20. Gumm, H.P.: Universelle Coalgebra. In: Ihringer, T. (ed.) Allgemeine Algebra. Heldermann Verlag (2003)

    Google Scholar 

  21. Guttag, J., Horowitz, E., Musser, D.R.: Abstract Data Types and Software Validation. Communications of the ACM 21, 1048–1064 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  22. 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)

    Chapter  Google Scholar 

  23. 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)

    Chapter  Google Scholar 

  24. 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)

    Chapter  Google Scholar 

  25. Jacobs, B.: Introduction to Coalgebra. Radboud University, Nijmegen (2005)

    Google Scholar 

  26. 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)

    Chapter  Google Scholar 

  27. Kamin, S.: Final Data Type Specifications: A New Data Type Specification Method. ACM TOPLAS 5, 97–123 (1983)

    Article  MATH  Google Scholar 

  28. Lambek, J.: A fixpoint theorem for complete categories. Math. Zeitschrift 103, 151–161 (1968)

    Article  MathSciNet  MATH  Google Scholar 

  29. Lehmann, D.J., Smyth, M.B.: Algebraic Specification of Data Types: A Synthetic Approach. Math. Systems Theory 14, 97–139 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  30. 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)

    Google Scholar 

  31. Meseguer, J., Rosu, G.: The Rewriting Logic Semantics Project. Theoretical Computer Science 373 (2007)

    Google Scholar 

  32. van der Meulen, E.A.: Deriving incremental implementations from algebraic specifications. In: Proc. 2nd AMAST, pp. 277–286. Springer, Heidelberg (1992)

    Google Scholar 

  33. 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)

    Chapter  Google Scholar 

  34. Padawitz, P.: Swinging Types = Functions + Relations + Transition Systems. Theoretical Computer Science 243, 93–165 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  35. Padawitz, P.: Dialgebraic Specification and Modeling, slides, TU Dortmund (2011), http://fldit-www.cs.tu-dortmund.de/~peter/DialgSlides.pdf

  36. Padawitz, P.: Algebraic compilers and their implementation in Haskell, Sierra Nevada IFIP WG 1.3 Meeting (January 14-18, 2008)

    Google Scholar 

  37. 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

  38. Padawitz, P.: Expander2 as a Prover and Rewriter, http://fldit-www.cs.tu-dortmund.de/~peter/Prover.pdf

  39. Padawitz, P.: Übersetzerbau, course notes, TU Dortmund (2010), http://fldit-www.cs.tu-dortmund.de/~peter/CbauFolien.pdf

  40. Rutten, J.J.M.M.: Universal Coalgebra: A Theory of Systems. Theoretical Computer Science 249, 3–80 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  41. 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)

    Chapter  Google Scholar 

  42. Rutten, J.J.M.M.: Behavioural differential equations: a coinductive calculus of streams, automata, and power series. Theoretical Computer Science 308, 1–53 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  43. Rutten, J.J.M.M., Turi, D.: Initial Algebra and Final Coalgebra Semantics for Concurrency, Report CS-R9409, CWI, Amsterdam (1994)

    Google Scholar 

  44. 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)

    Google Scholar 

  45. 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)

    Article  MATH  Google Scholar 

  46. 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)

    Chapter  Google Scholar 

  47. Wand, M.: Final algebra semantics and data type extension. J. Comp. Syst. Sci. 19, 27–44 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  48. Wirsing, M.: Algebraic Specification. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, pp. 675–788. Elsevier, Amsterdam (1990)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics