Definition

A computation rule (or β-rule) in Type Theory specifies how elimination forms reduce when applied to introduction forms. Computation rules describe the operational behavior of a type by defining how constructed values are deconstructed.

General Pattern

For a type with introduction form that constructs values and elimination form that destructs them, the computation rule specifies:

Examples

Product Type

For product types, the computation rules for projections are:

The elimination (projection) of an introduction (pairing) returns the original component.

Function Type

For function types, the β-rule for application is:

Applying a lambda abstraction to an argument substitutes the argument for the parameter in the body.

Sum Type

For sum types, case analysis on an injected value reduces:

Natural Numbers

For natural numbers:

Purpose

Computation rules ensure that:

  • Type constructors have well-defined operational semantics
  • Programs can be evaluated through reduction
  • The type system is decidable and normalizing
  • Elimination forms are the inverse of introduction forms