# Sorial type families ```agda module foundation.sorial-type-families where ``` <details><summary>Imports</summary> ```agda open import foundation.universe-levels open import foundation-core.equivalences open import structured-types.pointed-types ``` </details> ## Idea The notion of _sorial type family_ is a generalization of the notion of [torsorial type family](foundation.torsorial-type-families.md). Recall that if a type family `E` over a [pointed type](structured-types.pointed-types.md) `B` is torsorial, then we obtain in a canonical way, for each `x : B` an action ```text E x → (E pt ≃ E x) ``` A **sorial type family** is a type family `E` over a pointed type `B` for which we have such an action. ## Definitions ### Sorial type families ```agda module _ {l1 l2 : Level} (B : Pointed-Type l1) (E : type-Pointed-Type B → UU l2) where is-sorial-family-of-types : UU (l1 ⊔ l2) is-sorial-family-of-types = (x : type-Pointed-Type B) → E x → (E (point-Pointed-Type B) ≃ E x) ```