Definition

In type theory, strict positivity is a syntactic restriction on inductive type definitions requiring that the type being defined, , occurs only to the right of function arrows in the types of its constructor arguments. This constraint ensures the defined type represents a well-founded least fixed point and guarantees the termination of recursive functions and logical consistency.

Formally, we say occurs strictly positively in a type expression if any of the following holds:

  1. does not contain .
  2. is .
  3. is (or ) where does not occur in , and occurs strictly positively in .
  4. is an application of a previously defined strictly positive type constructor (e.g., ), where occurs strictly positively in the parameters.

Non-strictly Positive Example

We reject definitions where occurs in a negative position (to the left of an arrow):

Here occurs negatively in the domain of the argument to . This violation allows the encoding of paradoxical combinators, leading to non-termination and inconsistency (Girard’s Paradox).

Relation to Functors

In category theory, strictly positive types correspond to initial algebras for strictly positive functors. A functor is strictly positive if it can be built from constant functors, the identity functor, products, and coproducts (and fixed points thereof).

References