# Equivalences of inverse sequential diagrams of types ```agda module foundation.equivalences-inverse-sequential-diagrams where ``` <details><summary>Imports</summary> ```agda open import elementary-number-theory.natural-numbers open import foundation.dependent-pair-types open import foundation.equality-dependent-function-types open import foundation.fundamental-theorem-of-identity-types open import foundation.homotopy-induction open import foundation.inverse-sequential-diagrams open import foundation.morphisms-inverse-sequential-diagrams open import foundation.structure-identity-principle open import foundation.univalence open import foundation.universe-levels open import foundation-core.equivalences open import foundation-core.function-types open import foundation-core.homotopies open import foundation-core.identity-types open import foundation-core.torsorial-type-families ``` </details> ## Idea An {{#concept "equivalence of inverse sequential diagrams" Agda=equiv-inverse-sequential-diagram}} `A ≃ B` is a commuting diagram of the form ```text ⋯ ----> Aₙ₊₁ ----> Aₙ ----> ⋯ ----> A₁ ----> A₀ | | | | | ⋯ | | ⋯ | | ∨ ∨ ∨ ∨ ∨ ⋯ ----> Bₙ₊₁ ----> Bₙ ----> ⋯ ----> B₁ ----> B₀. ``` where every vertical map is an [equivalence](foundation-core.equivalences.md). ## Definitions ```agda equiv-inverse-sequential-diagram : {l1 l2 : Level} (A : inverse-sequential-diagram l1) (B : inverse-sequential-diagram l2) → UU (l1 ⊔ l2) equiv-inverse-sequential-diagram A B = Σ ( (n : ℕ) → family-inverse-sequential-diagram A n ≃ family-inverse-sequential-diagram B n) ( λ e → (n : ℕ) → naturality-hom-inverse-sequential-diagram A B (map-equiv ∘ e) n) hom-equiv-inverse-sequential-diagram : {l1 l2 : Level} (A : inverse-sequential-diagram l1) (B : inverse-sequential-diagram l2) → equiv-inverse-sequential-diagram A B → hom-inverse-sequential-diagram A B pr1 (hom-equiv-inverse-sequential-diagram A B e) n = pr1 (pr1 e n) pr2 (hom-equiv-inverse-sequential-diagram A B e) = pr2 e ``` ## Properties ### Characterizing equality of inverse sequential diagrams ```agda id-equiv-inverse-sequential-diagram : {l : Level} (A : inverse-sequential-diagram l) → equiv-inverse-sequential-diagram A A pr1 (id-equiv-inverse-sequential-diagram A) n = id-equiv pr2 (id-equiv-inverse-sequential-diagram A) n = refl-htpy equiv-eq-inverse-sequential-diagram : {l : Level} (A B : inverse-sequential-diagram l) → A = B → equiv-inverse-sequential-diagram A B equiv-eq-inverse-sequential-diagram A .A refl = id-equiv-inverse-sequential-diagram A is-torsorial-equiv-inverse-sequential-diagram : {l : Level} (A : inverse-sequential-diagram l) → is-torsorial (equiv-inverse-sequential-diagram A) is-torsorial-equiv-inverse-sequential-diagram A = is-torsorial-Eq-structure ( is-torsorial-Eq-Π ( λ n → is-torsorial-equiv (family-inverse-sequential-diagram A n))) ( family-inverse-sequential-diagram A , λ n → id-equiv) ( is-torsorial-Eq-Π ( λ n → is-torsorial-htpy (map-inverse-sequential-diagram A n))) is-equiv-equiv-eq-inverse-sequential-diagram : {l : Level} (A B : inverse-sequential-diagram l) → is-equiv (equiv-eq-inverse-sequential-diagram A B) is-equiv-equiv-eq-inverse-sequential-diagram A = fundamental-theorem-id ( is-torsorial-equiv-inverse-sequential-diagram A) ( equiv-eq-inverse-sequential-diagram A) eq-equiv-inverse-sequential-diagram : {l : Level} {A B : inverse-sequential-diagram l} → equiv-inverse-sequential-diagram A B → A = B eq-equiv-inverse-sequential-diagram {A = A} {B} = map-inv-is-equiv (is-equiv-equiv-eq-inverse-sequential-diagram A B) ``` ## Table of files about sequential limits The following table lists files that are about sequential limits as a general concept. {{#include tables/sequential-limits.md}}