6.1 Introduction

Like the general inductive types we discussed in http://planetmath.org/node/87578Chapter 5, higher inductive types are a general schema for defining new types generated by some constructors. But unlike ordinary inductive types, in defining a higher inductive type we may have β€œconstructors” which generate not only points of that type, but also paths and higher paths in that type. For instance, we can consider the higher inductive type π•Š1 generated by

  • β€’

    A point π–»π–Ίπ—Œπ–Ύ:π•Š1, and

  • β€’

    A path π—…π—ˆπ—ˆπ—‰:π–»π–Ίπ—Œπ–Ύ=π•Š1π–»π–Ίπ—Œπ–Ύ.

This should be regarded as entirely analogous to the definition of, for instance, 𝟐, as being generated by

  • β€’

    A point 0𝟐:𝟐 and

  • β€’

    A point 1𝟐:𝟐,

or the definition of β„• as generated by

  • β€’

    A point 0:β„• and

  • β€’

    A function π—Œπ—Žπ–Όπ–Ό:β„•β†’β„•.

When we think of types as higher groupoidsPlanetmathPlanetmathPlanetmathPlanetmathPlanetmathPlanetmath, the more general notion of β€œgeneration” is very natural: since a higher groupoid is a β€œmulti-sorted object” with paths and higher paths as well as points, we should allow β€œgeneratorsPlanetmathPlanetmathPlanetmathPlanetmathPlanetmath” in all dimensionsMathworldPlanetmath.

We will refer to the ordinary sort of constructors (such as π–»π–Ίπ—Œπ–Ύ) as point constructors or ordinary constructors, and to the others (such as π—…π—ˆπ—ˆπ—‰) as path constructors or higher constructors. Each path constructor must specify the starting and ending point of the path, which we call its source and target; for π—…π—ˆπ—ˆπ—‰, both source and target are π–»π–Ίπ—Œπ–Ύ.

Note that a path constructor such as π—…π—ˆπ—ˆπ—‰ generates a new inhabitant of an identity type, which is not (at least, not a priori) equal to any previously existing such inhabitant. In particular, π—…π—ˆπ—ˆπ—‰ is not a priori equal to π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ (although proving that they are definitely unequal takes a little thought; see Lemma 6.4.1 (http://planetmath.org/64circlesandspheres#Thmprelem1)). This is what distinguishes π•Š1 from the ordinary inductive type 𝟏.

There are some important points to be made regarding this generalizationPlanetmathPlanetmath.

First of all, the word β€œgeneration” should be taken seriously, in the same sense that a group can be freely generated by some set. In particular, because a higher groupoid comes with operationsMathworldPlanetmath on paths and higher paths, when such an object is β€œgenerated” by certain constructors, the operations create more paths that do not come directly from the constructors themselves. For instance, in the higher inductive type π•Š1, the constructor π—…π—ˆπ—ˆπ—‰ is not the only nontrivial path from π–»π–Ίπ—Œπ–Ύ to π–»π–Ίπ—Œπ–Ύ; we have also β€œπ—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰β€ and β€œπ—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰β€ and so on, as well as π—…π—ˆπ—ˆπ—‰-1, etc., all of which are different. This may seem so obvious as to be not worth mentioning, but it is a departure from the behavior of β€œordinary” inductive types, where one can expect to see nothing in the inductive type except what was β€œput in” directly by the constructors.

Secondly, this generation is really free generation: higher inductive types do not technically allow us to impose β€œaxioms”, such as forcingMathworldPlanetmath β€œπ—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰β€ to equal π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ. However, in the world of ∞-groupoids, there is little differencePlanetmathPlanetmath between β€œfree generation” and β€œpresentationMathworldPlanetmath”, since we can make two paths equal up to homotopyMathworldPlanetmathPlanetmath by adding a new 2-dimensional generator relating them (e.g.Β a path π—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰=π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ in π–»π–Ίπ—Œπ–Ύ=π–»π–Ίπ—Œπ–Ύ). We do then, of course, have to worry about whether this new generator should satisfy its own β€œaxioms”, and so on, but in principle any β€œpresentation” can be transformed into a β€œfree” one by making axioms into constructors. As we will see, by adding β€œtruncation constructors” we can use higher inductive types to express classical notions such as group presentations as well.

Thirdly, even though a higher inductive type contains β€œconstructors” which generate paths in that type, it is still an inductive definition of a single type. In particular, as we will see, it is the higher inductive type itself which is given a universal propertyMathworldPlanetmath (expressed, as usual, by an inductionMathworldPlanetmath principle), and not its identity types. The identity type of a higher inductive type retains the usual induction principle of any identity type (i.e.Β path induction), and does not acquire any new induction principle.

Thus, it may be nontrivial to identify the identity types of a higher inductive type in a concrete way, in contrast to how in http://planetmath.org/node/87569Chapter 2 we were able to give explicit descriptions of the behavior of identity types under all the traditional type forming operations. For instance, are there any paths from π–»π–Ίπ—Œπ–Ύ to π–»π–Ίπ—Œπ–Ύ in π•Š1 which are not simply composites of copies of π—…π—ˆπ—ˆπ—‰ and its inverseMathworldPlanetmathPlanetmathPlanetmathPlanetmathPlanetmathPlanetmath? Intuitively, it seems that the answer should be no (and it is), but proving this is not trivial. Indeed, such questions bring us rapidly to problems such as calculating the homotopy groups of spheres, a long-standing problem in algebraic topology for which no simple formulaMathworldPlanetmathPlanetmath is known. Homotopy type theory brings a new and powerful viewpoint to bear on such questions, but it also requires type theoryPlanetmathPlanetmath to become as complex as the answers to these questions.

Fourthly, the β€œdimension” of the constructors (i.e.Β whether they output points, paths, paths between paths, etc.)Β does not have a direct connection to which dimensions the resulting type has nontrivial homotopy in. As a simple example, if an inductive type B has a constructor of type Aβ†’B, then any paths and higher paths in A result in paths and higher paths in B, even though the constructor is not a β€œhigher” constructor at all. The same thing happens with higher constructors too: having a constructor of type Aβ†’(x=By) means not only that points of A yield paths from x to y in B, but that paths in A yield paths between these paths, and so on. As we will see, this possibility is responsible for much of the power of higher inductive types.

On the other hand, it is even possible for constructors without higher types in their inputs to generate β€œunexpected” higher paths. For instance, in the 2-dimensional sphere π•Š2 generated by

  • β€’

    A point π–»π–Ίπ—Œπ–Ύ:π•Š2, and

  • β€’

    A 2-dimensional path π—Œπ—Žπ—‹π–Ώ:π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ=π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ in π–»π–Ίπ—Œπ–Ύ=π–»π–Ίπ—Œπ–Ύ,

there is a nontrivial 3-dimensional path from π—‹π–Ύπ–Ώπ—…π—‹π–Ύπ–Ώπ—…π–»π–Ίπ—Œπ–Ύ to itself. Topologists will recognize this path as an incarnation of the Hopf fibration. From a category-theoretic point of view, this is the same sort of phenomenon as the fact mentioned above that π•Š1 contains not only π—…π—ˆπ—ˆπ—‰ but also π—…π—ˆπ—ˆπ—‰β’\centerdotβ’π—…π—ˆπ—ˆπ—‰ and so on: it’s just that in a higher groupoid, there are operations which raise dimension. Indeed, we saw many of these operations back in Β§2.1 (http://planetmath.org/21typesarehighergroupoids): the associativity and unit laws are not just properties, but operations, whose inputs are 1-paths and whose outputs are 2-paths.

Title 6.1 Introduction