Definition

An eta rule (or η-rule) in Type Theory is a definitional equality expressing that values of a type can be uniquely reconstructed from their elimination forms.

The η-rule is dual to the β-rule: while β-rules describe how eliminators compute on introduced values, η-rules describe how values can be reconstructed from their eliminations as definitional equalities.

General Pattern

For a type with elimination and introduction forms, the η-rule typically has the form:

This states that any value is equal to the result of eliminating it and then re-introducing those components.

Examples

Product Type

For product types, the η-rule states:

Any pair is equal to the pair formed from its projections.

Function Type

For function types, the η-rule is:

This states that any function term is definitionally equal to the lambda abstraction that applies it. Note that this is weaker than Function Extensionality, which states that pointwise equal functions are propositionally equal.

Sum Type

For sum types, the η-rule states:

Any sum value equals the result of case-analyzing it and re-injecting.

Unit Type

For the unit type :

All elements of the unit type are equal to the canonical element.

Relationship to Extensionality

Eta rules are related to but distinct from Extensionality principles:

  • Eta rules express uniqueness at the level of definitional equality
  • Extensionality principles (like Function Extensionality) are propositional statements about equality
  • Eta rules apply to syntactic forms and are checked by the type checker
  • Extensionality principles state that observationally equivalent values are propositionally equal

For example, the η-rule for functions () is a definitional equality, while Function Extensionality () is a propositional principle that cannot be proven from the η-rule alone in most type theories.

Relationship to Computation

While β-rules are typically reduction rules (rewriting from left to right), η-rules may be used as:

  • Expansion rules (rewriting from right to left)
  • Equality principles (stating equivalence without direction)
  • Definitional equalities in the type checker

Properties

  • Eta rules ensure that canonical forms are unique representatives
  • They operate at the level of definitional equality, not propositional equality
  • In some type theories, η-rules are admissible but not primitive
  • Eta rules interact with definitional equality and unification
  • Eta rules preserve decidability of type checking