Skip to main content

Bootstrapping Types and Cotypes in HasCASL

  • Conference paper
Book cover Algebra and Coalgebra in Computer Science (CALCO 2007)

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

Included in the following conference series:

  • 418 Accesses

Abstract

We discuss the treatment of initial datatypes and final process types in the wide-spectrum language HasCasl. In particular, we present specifications that illustrate how datatypes and process types arise as bootstrapped concepts using HasCasl’s type class mechanism, and we decribe constructions of types of finite and infinite trees that establish the conservativity of datatype and process type declarations adhering to certain reasonable formats. The latter amounts to modifying known constructions from HOL to avoid unique choice; in categorical terminology, this means that we establish that quasitoposes with an internal natural numbers object support initial algebras and final coalgebras for a range of polynomial functors, thereby partially generalizing corresponding results from topos theory.

This work forms part of the DFG-project HasCASL (KR 1191/7-2).

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Adámek, J., Herrlich, H., Strecker, G.E.: Abstract and Concrete Categories. Wiley Interscience, Chichester (1990)

    MATH  Google Scholar 

  2. Berghofer, S., Wenzel, M.: Inductive datatypes in HOL - lessons learned in formal-logic engineering. In: Bertot, Y., Dowek, G., Hirschowitz, A., Paulin, C., Théry, L. (eds.) TPHOLs 1999. LNCS, vol. 1690, pp. 19–36. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  3. Bidoit, M., Mosses, P.D. (eds.): CASL User Manual. LNCS, vol. 2900. Springer, Heidelberg (2004)

    MATH  Google Scholar 

  4. Birkedal, L., Møgelberg, R.E.: Categorical models for abadi and plotkin’s logic for parametricity. Math. Struct. Comput. Sci. 15 (2005)

    Google Scholar 

  5. Gunter, E.L.: A broader class of trees for recursive type definitions for HOL. In: Joyce, J.J., Seger, C.-J.H. (eds.) HUG 1993. LNCS, vol. 780, pp. 141–154. Springer, Heidelberg (1994)

    Google Scholar 

  6. Kiselyov, O., Lämmel, R., Schupke, K.: Strongly typed heterogeneous collections. In: Haskell Workshop, pp. 96–107. ACM Press, New York (2004)

    Chapter  Google Scholar 

  7. Lambek, J., Scott, P.J.: Introduction to Higher-Order Categorical Logic. Cambridge (1986)

    Google Scholar 

  8. Moerdijk, I., Palmgren, E.: Wellfounded trees in categories. Ann. Pure Appl. Logic 104, 189–218 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  9. Moggi, E.: Categories of partial morphisms and the λ p -calculus. In: Poigné, A., Pitt, D.H., Rydeheard, D.E., Abramsky, S. (eds.) Category Theory and Computer Programming. LNCS, vol. 240, pp. 242–251. Springer, Heidelberg (1986)

    Google Scholar 

  10. Mossakowski, T., Maeder, C., Lüttich, K.: The Heterogeneous Tool Set. In: Tools and Algorithms for the Construction and Analysis of Systems. LNCS, vol. 4424, pp. 519–522. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  11. Mossakowski, T., Schröder, L., Roggenbach, M., Reichel, H.: Algebraic-co-algebraic specification in CoCASL. J. Logic Algebraic Programming 67, 146–197 (2006)

    Article  MATH  Google Scholar 

  12. Mosses, P.D. (ed.): CASL Reference Manual. LNCS, vol. 2960. Springer, Heidelberg (2004)

    MATH  Google Scholar 

  13. Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  14. Paulson, L.C.: Mechanizing coinduction and corecursion in higher-order logic. J. Log. Comput. 7, 175–204 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  15. Phoa, W.: An introduction to fibrations, topos theory, the effective topos and modest sets. Research report ECS-LFCS-92-208, Lab. for Foundations of Computer Science, University of Edinburgh (1992)

    Google Scholar 

  16. Rosolini, G., Streicher, T.: Comparing models of higher type computation. In: Realizability Semantics and Applications. ENTCS, vol. 23 (1999)

    Google Scholar 

  17. Schröder, L.: The logic of the partial λ-calculus with equality. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 385–399. Springer, Heidelberg (2004)

    Google Scholar 

  18. Schröder, L.: The HasCASL prologue - categorical syntax and semantics of the partial λ-calculus. Theoret. Comput. Sci. 353, 1–25 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  19. Schröder, L., Mossakowski, T.: HasCASL: Towards integrated specification and development of functional programs. In: Kirchner, H., Ringeissen, C. (eds.) AMAST 2002. LNCS, vol. 2422, pp. 99–116. Springer, Heidelberg (2002)

    Google Scholar 

  20. Schröder, L., Mossakowski, T.: Monad-independent Hoare logic in HasCASL. In: Pezzé, M. (ed.) ETAPS 2003 and FASE 2003. LNCS, vol. 2621, pp. 261–277. Springer, Heidelberg (2003)

    Google Scholar 

  21. Schröder, L., Mossakowski, T.: Generic exception handling and the Java monad. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 443–459. Springer, Heidelberg (2004)

    Google Scholar 

  22. Schröder, L., Mossakowski, T.: Monad-independent dynamic logic in HasCASL. J. Logic Comput. 14, 571–619 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  23. Schröder, L., Mossakowski, T., Lüth, C.: Type class polymorphism in an institutional framework. In: Fiadeiro, J.L., Mosses, P.D., Orejas, F. (eds.) WADT 2004. LNCS, vol. 3423, pp. 234–248. Springer, Heidelberg (2005)

    Google Scholar 

  24. Schröder, L., Mossakowski, T., Maeder, C.: HasCASL – Integrated functional specification and programming. Language summary. Available under, http://www.informatik.uni-bremen.de/agbkb/forschung/formal_methods/CoFI/HasCASL

  25. Walter, D., Schröder, L., Mossakowski, T.: Parametrized exceptions. In: Fiadeiro, J.L., Harman, N., Roggenbach, M., Rutten, J. (eds.) CALCO 2005. LNCS, vol. 3629, pp. 424–438. Springer, Heidelberg (2005)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Till Mossakowski Ugo Montanari Magne Haveraaen

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Schröder, L. (2007). Bootstrapping Types and Cotypes in HasCASL . In: Mossakowski, T., Montanari, U., Haveraaen, M. (eds) Algebra and Coalgebra in Computer Science. CALCO 2007. Lecture Notes in Computer Science, vol 4624. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73859-6_30

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73859-6_30

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73857-2

  • Online ISBN: 978-3-540-73859-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics