Documentation

Mathlib.Tactic.CategoryTheory.CategoryStar

Support for Category* C. #

In the category theory library, it is common to introduce a (universe polymorphic) general category as follows:

universe v u
variable (C : Type u) [Category.{v} C]

We tend to put the universe level v of the morphisms ahead of the level u for objects because it makes it easier to specify explicit universes when needed.

The elaborator Category* provides analogous behavior to Type* for introducing category instances. The term elaborator Category* C creates a universe parameter v, and places it just before any universe parameters appearing in C and its type. If C and its type have no parameters, v becomes the last level parameter. The elaborated term is then Category.{v} C.

Basic usage:

variable (C : Type*) [Category* C]

The syntax Category* C creates a new distinct implicit universe parameter v, placed just before any parameters appearing in C and its type, and elaborates to Category.{v} C.

Equations
  • One or more equations did not get rendered due to their size.
Instances For