Abstract
So far, we have assumed a fixed collection of types, type operators, constants and axioms in the logic. We next consider how to extend our theories to model new domains of discourse by defining new types with associated constants and inference rules. Either we can postulate a new type by giving a collection of axioms and inference rules that determine the properties of the type, or we can construct a new type as being isomorphic to a subset of some existing type. We describe both these methods below. We use the axiomatic approach to introduce the important type of natural numbers. As another example, we show how to define lists and disjoint sums. The latter can be seen as the category-theoretic dual to Cartesian products. The constructive approach is illustrated by showing an alternative definition of natural numbers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer Science+Business Media New York
About this chapter
Cite this chapter
Back, RJ., von Wright, J. (1998). Types and Data Structures. In: Refinement Calculus. Graduate Texts in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-1-4612-1674-2_10
Download citation
DOI: https://doi.org/10.1007/978-1-4612-1674-2_10
Publisher Name: Springer, New York, NY
Print ISBN: 978-0-387-98417-9
Online ISBN: 978-1-4612-1674-2
eBook Packages: Springer Book Archive