Skip to main content
×
×
Home

Well-founded coalgebras, revisited

  • JEAN-BAPTISTE JEANNIN (a1), DEXTER KOZEN (a1) and ALEXANDRA SILVA (a2)
Abstract

Theoretical models of recursion schemes have been well studied under the names well-founded coalgebras, recursive coalgebras, corecursive algebras and Elgot algebras. Much of this work focuses on conditions ensuring unique or canonical solutions, e.g. when the coalgebra is well founded.

If the coalgebra is not well founded, then there can be multiple solutions. The standard semantics of recursive programs gives a particular solution, typically the least fixpoint of a certain monotone map on a domain whose least element is the totally undefined function; but this solution may not be the desired one. We have recently proposed programming language constructs to allow the specification of alternative solutions and methods to compute them. We have implemented these new constructs as an extension of OCaml.

In this paper, we prove some theoretical results characterizing well-founded coalgebras, along with several examples for which this extension is useful. We also give several examples that are not well founded but still have a desired solution. In each case, the function would diverge under the standard semantics of recursion, but can be specified and computed with the programming language constructs we have proposed.

Copyright
References
Hide All
Adámek, J., Lücke, D. and Milius, S. (2007). Recursive coalgebras of finitary functors. Theoretical Informatics and Applications 41 (4) 447462.
Adámek, J., Milius, S. and Velebil, S. (2006). Elgot algebras. Logical Methods in Computer Science 2 (5:4) 131.
Capretta, V. (2007). An introduction to corecursive algebras. http://www.cs.ru.nl/~venanzio/publications/brouwer_seminar_4_12_2007.pdf.
Capretta, V., Uustalu, T. and Vene, V. (2009). Corecursive algebras: A study of general structured corecursion. In: Vinicius, M., Oliveira, M. and Woodcock, J. (eds.) Formal Methods: Foundations and Applications, 12th Brazilian Symp. Formal Methods (SBMF 2009). Lecture Notes in Computer Science 5902, Springer, Berlin, 84100.
CoCaml project. (December 2012). http://www.cs.cornell.edu/Projects/CoCaml/.
Dershowitz, N. and Jouannaud, J.-P. (1990). Rewrite systems. In: van Leeuwen, J. (ed.) Handbook of Theoretical Computer Science, Formal Models and Semantics, volume B, chapter 6, Elsevier, 243320.
Gries, D. and Schneider, F.B. (1994). A Logical Approach to Discrete Math. Springer-Verlag.
Harel, D. and Kozen, D. (1984). A programming language for the inductive sets, and applications. Information and Control 63 (1–2) 118139.
Hirschowitz, T., Leroy, X. and Wells, J.B. (2003). Compilation of extended recursion in call-by-value functional languages. In: PPDP 2003 160–171.
Jeannin, J.-B., Kozen, D. and Silva, A. (December 2012). CoCaml: Programming with coinductive types. Technical Report http://hdl.handle.net/1813/30798, Computing and Information Science, Cornell University.
Jeannin, J.-B., Kozen, D. and Silva, A. (March 2013). Language constructs for non-well-founded computation. In: Felleisen, M. and Gardner, P. (eds.) 22nd European Symposium on Programming (ESOP 2013). Lecture Notes in Computer Science 7792, Springer, Rome, Italy, 6180.
Kozen, D. (May 2011). Realization of coinductive types. In: Mislove, M. and Ouaknine, J. (eds.) Proceedings of the 27th Conf. Math. Found. Programming Semantics (MFPS XXVII), Pittsburgh, PA. Elsevier Electronic Notes in Theoretical Computer Science 148155.
Lambek, J. (1968). A fixpoint theorem for complete categories. Mathematische Zeitschrift 103 (2) 151161.
Mac Lane, S. (1971). Categories for the Working Matematician. Springer.
Osius, G. (1974). Categorical set theory: A characterization of the category of sets. Journal of Pure and Applied Algebra 4 79119.
Papadimitriou, C. (1993). Computational Complexity. Addison Wesley.
Sipser, M. (2006). Introduction to the Theory of Computation, 2nd edition, PWS Publishing.
Sperber, M. and Thiemann, P. (September 1998). ML and the address operator. In: Proceedings of the ACM SIGPLAN Workshop on ML 152–153.
Syme, D. (2006). Initializing mutually referential abstract objects: The value recursion challenge. Electronic Notes in Theoretical Computer Science, 148 (2) 325.
Taylor, P. (1999). Practical Foundations of Mathematics. Cambridge University Press.
Trancón y Widemann, B. (August 2011). Coalgebraic semantics of recursion on circular data structures. In: Cirstea, C., Seisenberger, M. and Wilkinson, T. (eds.) CALCO Young Researchers Workshop (CALCO-jnr 2011) 28–42.
Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Mathematical Structures in Computer Science
  • ISSN: 0960-1295
  • EISSN: 1469-8072
  • URL: /core/journals/mathematical-structures-in-computer-science
Please enter your name
Please enter a valid email address
Who would you like to send this to? *
×

Metrics

Full text views

Total number of HTML views: 0
Total number of PDF views: 0 *
Loading metrics...

Abstract views

Total abstract views: 0 *
Loading metrics...

* Views captured on Cambridge Core between <date>. This data will be updated every 24 hours.

Usage data cannot currently be displayed