| | |
Summary: Representing Nested Inductive Types
using W-types
Michael Abbott1, Thorsten Altenkirch2, and Neil Ghani1
1 Department of Mathematics and Computer Science, University of Leicester
michael@araneidae.co.uk, ng13@mcs.le.ac.uk
2 School of Computer Science and Information Technology, Nottingham University
txa@cs.nott.ac.uk
Abstract. We show that strictly positive inductive types, constructed from
polynomial functors, constant exponentiation and arbitrarily nested inductive
types exist in any Martin-L¨of category (extensive locally cartesian closed
category with W-types) by exploiting our work on container types. This
generalises a result by Dybjer (1997) who showed that non-nested strictly positive
inductive types can be represented using W-types. We also provide a detailed
analysis of the categorical infrastructure needed to establish the result.
1 Introduction
Inductive types play a central role in programming and constructive reasoning. From an
intuitionistic point of view we can understand strictly positive inductive types (SPITs)
as well-founded trees, which may be infinitely branching. The language of SPITs is
built from polynomial types and exponentials, enriched by a constructor µ for inductive
types. In this language we can conveniently construct familiar types such as the natural
|