Skip to main content

Relationships Between Equational and Inductive Data Types

  • Chapter
  • 655 Accesses

Part of the Lecture Notes in Computer Science book series (LNPSE,volume 3393)

Abstract

This paper explores the relationship between equational algebraic specifications (using initial algebra semantics) and specifications based on simple inductive types (least fixed points of equations using just products and coproducts, e.g. N≅1+N). The main result is a proof that computable data type (one in which the corresponding algebra is computable in the sense of Mal’cev) can be specified inductively. This extends an earlier result of Bergstra and Tucker showing that any computable data type can be specified equationally.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (Canada)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (Canada)
  • 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. Bergstra, J.A., Tucker, J.V.: Algebraic specifications of computable and semicomputable data structures. TCS 50, 137–181 (1987)

    CrossRef  MATH  MathSciNet  Google Scholar 

  2. Bergstra, J.A., Tucker, J.V.: Algebraic Specifications of Computable and Semicomputable data structures. Technical Report 115, Mathematical Centre, Department of Computer Science, Amsterdam (1979)

    Google Scholar 

  3. Cockett, J.R.B., Chen, H.G., Smith, L.R.: Preliminary User Manual for CHARITY. Technical Report CS-89-82, University of Tennessee (1989)

    Google Scholar 

  4. Davis, M.: Computability and Unsolvability. McGraw-Hill, New York (1958)

    MATH  Google Scholar 

  5. 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.T. (ed.) Current Trends in Programming Methodology, IV, Data Structuring, pp. 80–149. Prentice-Hall, Englewood Cliffs (1978)

    Google Scholar 

  6. Goguen, J.A., Thatcher, J.W., Wagner, E.G., Wright, J.B.: Abstract data types as initial algebras and the correctness of data representations. In: Proc. Conference on Computer Graphics, Pattern Recognition and Data Structures (1975)

    Google Scholar 

  7. Guttag, J.V.: Abstract data types and the development of data structures. Communications of the ACM 20(6), 396–404 (1977)

    CrossRef  MATH  Google Scholar 

  8. Guttag, K.V., Horning, J.J.: The algebraic specification of data types. Acta Mathematica 10, 27–52 (1978)

    MATH  MathSciNet  Google Scholar 

  9. Hagino, T.: A categorical programming language. PhD thesis, University of Edinburgh (1988)

    Google Scholar 

  10. Kleene, S.C.: Introduction to Metamathematics. D. Van Nostrand, New York (1952)

    Google Scholar 

  11. Lehmann, D.J., Smyth, M.B.: Algebraic specification of data types: a synthetic approach. Mathematical Systems Theory 14, 97–139 (1981)

    CrossRef  MATH  MathSciNet  Google Scholar 

  12. Lehmann, D.J., Smyth, M.B.: Data types. In: 18th Annual Symposium on Foundations of Computer Science, Providence, RI, pp. 7–12. IEEE, New York (1977)

    CrossRef  Google Scholar 

  13. Mal’cev, A.I.: Constructive algebra. i. Russian Mathematical Surveys 16, 77–129 (1961)

    Google Scholar 

  14. Wagner, E.G.: All recursive types defined using products and sums can be implemented using pointers. In: Bergman, C.H., Pigozzi, D.L., Maddux, R.D. (eds.) Algebraic Logic and Universal Algebra in Computer Science. LNCS, vol. 425, pp. 111–132. Springer, Heidelberg (1990)

    CrossRef  Google Scholar 

  15. Wagner, E.G.: Categorical semantics, or extending data types to include memory. In: Kreowski, H.-J. (ed.) Recent Trends in Data Type Specification: 3rd Workshop on Theory and Applications of Abstract Data Types Selected Papers. Informatik-Fachberichte, vol. 116, pp. 1–21. Springer, Heidelberg (1984)

    Google Scholar 

  16. Wagner, E.G.: Generic types in a language for data directed design. In: Orejas, F., Ehrig, H., Jantke, K.P., Reichel, H. (eds.) Abstract Data Types 1990. LNCS, vol. 534, pp. 341–361. Springer, Heidelberg (1991)

    Google Scholar 

  17. Walters, R.F.C.: An imperative language based on distributive categories. Research Report 89–26, Department of Pure Mathematics, The University of Sydney (December 1989)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Wagner, E.G. (2005). Relationships Between Equational and Inductive Data Types. In: Kreowski, HJ., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds) Formal Methods in Software and Systems Modeling. Lecture Notes in Computer Science, vol 3393. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31847-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-31847-7_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-24936-8

  • Online ISBN: 978-3-540-31847-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics