Rel, bicategory of relations, allegory
left and right euclidean;
extensional, well-founded relations.
constructive mathematics, realizability, computability
propositions as types, proofs as programs, computational trinitarianism
natural deduction metalanguage, practical foundations
type theory (dependent, intensional, observational type theory, homotopy type theory)
computational trinitarianism =
propositions as types +programs as proofs +relation type theory/category theory
Given two sets and equipped with equivalence relations, we say that a function is -extensional if it preserves the equivalence relation : for all and , if , then .
In category theory, this means that an extensional function is a functor between two thin groupoids or a dagger functor between two thin dagger categories, since equivalence relations can be modeled via the hom-sets of thin dagger categories or groupoids.
This definition is common in the dependent type theory literature that uses equivalence relations for defining setoids, but note that the carrier types are usually defined as general types instead of h-sets in this case.
Extensional functions are important in defining algebraic structures that use equivalence relations instead of equality for the equational axioms, such as prelattices and Heyting prealgebras.
One can generalize the definition of extensional function from equivalence relations to other structures
A pseudo-equivalence relation on a set is a quiver structure on (called the hom-sets), with identity morphisms in , composition of morphisms in for morphisms in and in , and dagger operation in for morphism in .
An extensional function between two sets and equipped with a pseudo-equivalence relation is then a function with a family of functions .
This definition is common in the dependent type theory literature that uses pseudo-equivalence relations for defining setoids, but note that the hom-sets and carrier types are usually defined as general types instead of h-sets. If the pseudo-equivalence relations are the identity types, then every function is extensional in this sense by the action on identifications.
One doesn’t actually need the full structure of a pseudo-equivalence relation to define an extensional function: only the quiver structure of the hom-sets are needed. Thus, an extensional function between two quivers and is a function with a family of functions .
Last revised on July 7, 2026 at 14:11:42. See the history of this page for a list of all contributions to it.