Hostname: page-component-7d684dbfc8-26pbs Total loading time: 0 Render date: 2023-09-26T22:07:58.696Z Has data issue: false Feature Flags: { "corePageComponentGetUserInfoFromSharedSession": true, "coreDisableEcommerce": false, "coreDisableSocialShare": false, "coreDisableEcommerceForArticlePurchase": false, "coreDisableEcommerceForBookPurchase": false, "coreDisableEcommerceForElementPurchase": false, "coreUseNewShare": true, "useRatesEcommerce": true } hasContentIssue false

# 2 - An introduction to (co)algebra and (co)induction

Published online by Cambridge University Press:  05 November 2011

## Summary

Introduction

Algebra is a well-established part of mathematics, dealing with sets with operations satisfying certain properties, like groups, rings, vector spaces, etc. Its results are essential throughout mathematics and other sciences. Universal algebra is a part of algebra in which algebraic structures are studied at a high level of abstraction and in which general notions like homomorphism, subalgebra, congruence are studied in themselves, see e.g. [Coh81, MT92, Wec92]. A further step up the abstraction ladder is taken when one studies algebra with the notions and tools from category theory. This approach leads to a particularly concise notion of what is an algebra (for a functor or for a monad), see for example [Man74]. The conceptual world that we are about to enter owes much to this categorical view, but it also takes inspiration from universal algebra, see e.g. [Rut00].

In general terms, a program in some programming language manipulates data. During the development of computer science over the past few decades it became clear that an abstract description of these data is desirable, for example to ensure that one's program does not depend on the particular representation of the data on which it operates. Also, such abstractness facilitates correctness proofs. This desire led to the use of algebraic methods in computer science, in a branch called algebraic specification or abstract data type theory. The objects of study are data types in themselves, using notions and techniques which are familiar from algebra.

Type
Chapter
Information
Publisher: Cambridge University Press
Print publication year: 2011

## Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

## References

[Adá03] . On final coalgebras of continuous functors. Theoretical Computer Science, 294:3–29, 2003.Google Scholar
[AM75] and . Arrows, Structures and Functors. The Categorical Imperative. Academic Press, 1975.
[AM82] and . Parametrized data types do not need highly constrained parameters. Information and Control, 52:139–158, 1982.Google Scholar
[AM89] and . A final coalgebra theorem. In , , and , editors, Category Theory and Computer Science, number 389 in Lecture Notes Computer Science, pages 357–365. Springer, 1989.
[Awo06] . Category Theory. Oxford University Press, 2006.
[Bar93] . Terminal coalgebras in well-founded set theory. Theoretical Computer Science, 114(2):299–315, 1993. Corrigendum in Theoretical Computer Science124:189–192, 1994.Google Scholar
[Bar03] . Generalised coinduction. Mathematical Structures in Computer Science, 13(2):321–348, 2003.Google Scholar
[BBRS09] , , , and . Deriving syntax and axioms for quantitative regular behaviours. In International Conference on Concurrency Theory (CONCUR 2009), Lecture Notes Computer Science, Springer, 2009.
[BD94] and . Hiding and behaviour: an institutional approach. In , editor, A Classical Mind. Essays in Honour of C.A.R. Hoare, pages 75–92. Prentice Hall, 1994.
[BM96] and . Vicious Circles: On the Mathematics of Non-wellfounded Phenomena. CSLI Lecture Notes 60, Stanford, 1996.
[Bor94] . Handbook of Categorical Algebra, volume 50, 51 and 52 of Encyclopedia of Mathematics. Cambridge University Press, 1994.
[BRS09] , , and . Algebras for Kripke polynomial coalgebras. In , editor, Logic in Computer Science. IEEE, Computer Science Press, 2009.
[BV96] and . Control Flow Semantics. MIT Press, 1996.
[BW90] and . Category Theory for Computing Science. Prentice Hall, 1990.
[CHL03] , and . Generalized coiteration schemata. In , editor, Coalgebraic Methods in Computer Science, number 82(1) in Electronic Notes in Theoretical Computer Science, Elsevier, 2003.
[Coh81] . Universal Algebra, volume 6 of Mathematics and its Applications. Reidel, 1981.
[CP07] and . Modular proof systems for coalgebraic logics. Theoretical Computer Science, 388:83–108, 2007.Google Scholar
[Cro93] . Categories for Types. Cambridge Mathematical Textbooks. Cambridge University Press, 1993.
[CS95] and . Strong categorical datatypes II: A term logic for categorical programming. Theoretical Computer Science, 139:69–113, 1995.Google Scholar
[EM85] and . Fundamentals of Algebraic Specification I: Equations and Initial Semantics. Number 6 in EATCS Monographs. Springer, 1985.
[Fio96] . A coinduction principle for recursive data types based on bisimulation. Information and Computation, 127(2):186–198, 1996.Google Scholar
[GD94] and . Towards an algebraic semantics for the object paradigm. In and , editors, Recent Trends in Data Type Specification, number 785 in Lecture Notes in Computer Science, pages 1–29. Springer, 1994.
[GGM76] , , and . Observability concepts in abstract data specifications. In , editor, Mathematical Foundations of Computer Science, number 45 in Lecture Notes in Computer Science, pages 576–587. Springer, 1976.
[GM82] and . Universal realization, persistent interconnection and implementation of abstract modules. In and , editors, International Colloquium on Automata, Languages and Programming, number 140 in Lecture Notes in Computer Science, pages 263–281. Springer, 1982.
[GM93] and . Introduction to HOL: A Theorem Proing Environment for Higher Order Logic. Cambridge University Press, 1993.
[GM94] and . Proof of correctness of object representations. In , editor, A Classical Mind. Essays in Honour of C.A.R. Hoare, pages 119–142. Prentice Hall, 1994.
[GM96] and . An extended abstract of a hidden agenda. In , , and , editors, Proceedings of the Conference on Intelligent Systems: A Semiotic Perspective, pages 159–167. National Institute of Standards and Technology, 1996.
[GTW78] , , and . An initial algebra approach to the specification, correctness and implementation of abstract data types. In , editor, Current Trends in Programming Methodoloy, pages 80–149. Prentice Hall, 1978.
[Gum99] . Elements of the general theory of coalgebras. Notes of lectures given at LUATCS'99: Logic, Universal Algebra, Theoretical Computer Science, Johannesburg. Available as www.mathematik.uni-marburg.de/~gumm/Papers/Luatcs.ps, 1999.
[HJ98] and . Structural induction and coinduction in a fibrational setting. Information and Computer, 145:107–152, 1998.Google Scholar
[HJ04] and . Simulations in coalgebra. Theoretical Computer Science, 327(1–2):71–108, 2004.Google Scholar
[HJ05] and . Context-free languages via coalgebraic trace semantics. In , , , and , editors, Algebra and Coalgebra in Computer Science (CALCO'05), number 3629 in Lecture Notes in Computer Science, pages 213–231. Springer, 2005.
[HJS07] , , and . Generic trace theory. Logical Methods in Computer Science, 3(4:11), 2007.Google Scholar
[HL95] and . Final semantics for untyped λ-calculus. In and , editors, Typed Lambda Calculi and Applications, number 902 in Lecture Notes in Computer Science, pages 249–265. Springer, 1995.
[HP95] and . A unifying type-theoretic framework for objects. Journal of Functional Programming, 5(4):593–635, 1995.Google Scholar
[Jac95] . Parameters and parametrization in specification using distributive categories. Fundamental Informaticae, 24(3):209–250, 1995.Google Scholar
[Jac96a] . Inheritance and cofree constructions. In , editor, European Conference on Object-Oriented Programming, number 1098 in Lecture Notes in Computer Science, pages 210–231. Springer, 1996.
[Jac96b] . Objects and classes, co-algebraically. In , , , and , editors, Object-Orientation with Parallelism and Persistence, pages 83–103. Kluwer, 1996.
[Jac06] . A bialgebraic review of deterministic automata, regular expressions and languages. In , , and , editors, Algebra, Meaning and Computation: Essays Dedicated to Joseph A. Goguen on the Occasion of His 65th Birthday, number 4060 in Lecture Notes in Computer Science, pages 375–404. Springer, 2006.
[Jac08] . Coalgebraic trace semantics for combined possibilistic and probabilistic systems. In and , editors, Coalgebraic Methods in Computer Science, volume 203(5) of Electronic Notes in Theoretical Computer Science, pages 131–152. Elsevier, 2008.
[JNW96] , , and . Bisimulation from open maps. Information and Computation, 127(2):164–185, 1996.Google Scholar
[Kam83] . Final data types and their specification. ACM Transactions on Programming Languages and Systems, 5(1):97–123, 1983.Google Scholar
[Kli07] . Coalgebraic modal logic beyond sets. In , editor, Mathematical Foundations of Programming Semantics, number 173 in Electronic Notes in Theoretical Computer Science, Elsevier, Amsterdam, 2007.
[Kur01] . Specifying coalgebras with modal logic. Theoretical Computer Science, 260(1–2):119–138, 2001.Google Scholar
[Kur06] . Coalgebras and their logics. SIGACT News Logic Column, 37(2):57–77, 2006.Google Scholar
[Lan71] . Categories for the Working Mathematician. Springer, 1971.
[LS81] and . Algebraic specification of data types: A synthetic approach. Mathematical Systems Theory, 14:97–139, 1981.Google Scholar
[LS86] and . Introduction to Higher Order Categorical Logic. Number 7 in Cambridge Studies in Advanced Mathematics. Cambridge University Press, 1986.
[MA86] and . Algebraic Appoaches to Program Semantics. Texts and Monographs in Computer Science. Springer, 1986.
[Mal96] . Behavioural equivalence, bisimulation and minimal realisation. In , , and , editors, Recent Trends in Data Type Specification, number 1130 in Lecture Notes in Computer Science, pages 359–378. Springer, 1996.
[Man74] . Algebraic Theories. Springer, 1974.
[Mel89] . Automating recursive type definitions in higher order logic. In and , editors, Current Trends in Hardware Verification and Automated Theorem Proving, Lecture Notes in Computer Science, pages 341–386. Springer, 1989.
[Mil89] . A Calculus of Communicating Systems. Lecture Notes in Computer Science, Springer, 1989.
[MT92] and . Universal algebra. In , , and , editors, Handbook of Logic in Computer Science, volume 1, pages 189–411. Oxford University Press, 1992.
[ORR+96] , , , , and . PVS: Combining specification, proof checking, and model checking. In and , editors, Computer Aided Verification, number 1102 in Lecture Notes in Computer Science, pages 411–414. Springer, 1996.
[Par81] . Concurrency and automata on infinite sequences. In , editor, Proceedings 5th GI Conference on Theoretical Computer Science, number 104 in Lecture Notes in Computer Science, pages 15–32. Springer, 1981.
[Pau90] . Isabelle: The next 700 theorem provers. In , editor, Logic and Computer Science, pages 361–386. Academic Press, 1990. The APIC series, vol. 31.
[Pau97] . Mechanizing coinduction and corecursion in higher-order logic. Journal of Logic and Computation, 7:175–204, 1997.Google Scholar
[Pie91] . Basic Category Theory for Computer Scientists. MIT Press, 1991.
[Pit94] . A co-induction principle for recursively defined domains. Theoretical Computer Science, 124(2):195–219, 1994.Google Scholar
[Pit96] . Relational properties of domains. Information and Computing, 127(2):66–90, 1996.Google Scholar
[Plo81] . A structural approach to operational semantics. Report DAIMI FN-19, Aarhus University, 1981.
[PM93] . Inductive definitions in the system Coq. Rules and properties. In and , editors, Typed Lambda Calculi and Applications, number 664 in Lecture Notes in Computer Science, pages 328–345. Springer, 1993.
[PP02] and . The continuum as a final coalgebra. Theoretical Computer Science, 280(1–2):105–122, 2002.Google Scholar
[Rei95] . An approach to object semantics based on terminal co-algebras. Mathematical Structures in Computer Science, 5:129–152, 1995.Google Scholar
[Rou96] . Feature logics. In and , editors, Handbook of Logic and Language. Elsevier, 1996.
[RT94] and . Initial algebra and final coalgebra semantics for concurrency. In , , and , editors, A Decade of Concurrency, number 803 in Lecture Notes in Computer Science, pages 530–582. Springer, 1994.
[Rut00] . Universal coalgebra: a theory of systems. Theoretical Computer Science, 249:3–80, 2000.Google Scholar
[Rut03] . Behavioural differential equations: a coinductive calculus of streams, automata, and power series. Theoretical Computer Science, 308:1–53, 2003.Google Scholar
[SP82] and . The category theoretic solution of recursive domain equations. SIAM Journal of Computing, 11:761–783, 1982.Google Scholar
[SR07] and . Behavioural differential equations and coinduction for binary trees. In and , editors, Logic, Language, Information and Computation, 14th International Workshop, WoLLIC 2007, number 4576 in Lecture Notes in Computer Science, pages 322–336. Springer, 2007.
[TP97] and . Towards a mathematical operational semantics. In , editor, Logic in Computer Science, pages 280–291. IEEE, Computer Science Press, 1997.
[Tur96] . Functorial operational semantics and its denotational dual. PhD thesis, Free University Amsterdam, 1996.
[Wal91] . Categories and Computer Science. Carslaw Publications, Sydney, 1991. Also available as: Cambridge Computer Science Text 28, 1992.
[Wec92] . Universal Algebra for Computer Scientists. Number 25 in EATCS Monographs. Springer, Berlin, 1992.
[Wir90] . Algebraic specification. In , editor, Handbook of Theoretical Computer Science, volume B, pages 673–788. Elsevier/MIT Press, 1990.

# Save book to Kindle

Note you can select to save to either the @free.kindle.com or @kindle.com variations. ‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi. ‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.

Find out more about the Kindle Personal Document Service.

Available formats
×

# Save book to Dropbox

To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Dropbox.

Available formats
×

# Save book to Google Drive

To save content items to your account, please confirm that you agree to abide by our usage policies. If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account. Find out more about saving content to Google Drive.

Available formats
×