diff --git a/src/metric-spaces.lagda.md b/src/metric-spaces.lagda.md
index 0bf9402bb1..fc2e8d5442 100644
--- a/src/metric-spaces.lagda.md
+++ b/src/metric-spaces.lagda.md
@@ -69,6 +69,9 @@ open import metric-spaces.induced-premetric-structures-on-preimages public
open import metric-spaces.isometric-equivalences-premetric-spaces public
open import metric-spaces.isometries-metric-spaces public
open import metric-spaces.isometries-premetric-spaces public
+open import metric-spaces.large-metric-spaces public
+open import metric-spaces.large-premetric-spaces public
+open import metric-spaces.large-rational-neighborhoods public
open import metric-spaces.limits-of-cauchy-approximations-premetric-spaces public
open import metric-spaces.limits-of-sequences-metric-spaces public
open import metric-spaces.limits-of-sequences-premetric-spaces public
@@ -102,6 +105,7 @@ open import metric-spaces.sequences-premetric-spaces public
open import metric-spaces.sequences-pseudometric-spaces public
open import metric-spaces.short-functions-metric-spaces public
open import metric-spaces.short-functions-premetric-spaces public
+open import metric-spaces.similarity-of-elements-large-premetric-spaces public
open import metric-spaces.subspaces-metric-spaces public
open import metric-spaces.symmetric-premetric-structures public
open import metric-spaces.triangular-premetric-structures public
diff --git a/src/metric-spaces/large-metric-spaces.lagda.md b/src/metric-spaces/large-metric-spaces.lagda.md
new file mode 100644
index 0000000000..81b9e43d4b
--- /dev/null
+++ b/src/metric-spaces/large-metric-spaces.lagda.md
@@ -0,0 +1,185 @@
+# Large metric spaces
+
+```agda
+module metric-spaces.large-metric-spaces where
+```
+
+Imports
+
+```agda
+open import elementary-number-theory.positive-rational-numbers
+
+open import foundation.dependent-pair-types
+open import foundation.identity-types
+open import foundation.large-binary-relations
+open import foundation.propositions
+open import foundation.universe-levels
+
+open import metric-spaces.large-premetric-spaces
+open import metric-spaces.large-rational-neighborhoods
+open import metric-spaces.similarity-of-elements-large-premetric-spaces
+```
+
+
+
+## Idea
+
+A {{#concept "large metric space" Agda=Large-Metric-Space}} is a
+[large premetric space](metric-spaces.large-premetric-spaces.md) where
+[similarity](metric-spaces.similarity-of-elements-large-premetric-spaces.md) has
+propositional fibers.
+
+## Definitions
+
+### Extensional large premetric spaces
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ where
+
+ is-extensional-Large-Premetric-Space : UUω
+ is-extensional-Large-Premetric-Space =
+ {l1 l2 : Level} → (x : type-Large-Premetric-Space M l1) →
+ is-prop
+ ( Σ
+ ( type-Large-Premetric-Space M l2)
+ ( sim-element-Large-Premetric-Space M x))
+```
+
+### The type of large metric spaces
+
+```agda
+record
+ Large-Metric-Space (α : Level → Level) (β : Level → Level → Level) : UUω
+ where
+ constructor
+ make-Large-Metric-Space
+ field
+ premetric-space-Large-Metric-Space :
+ Large-Premetric-Space α β
+ is-extensional-Large-Metric-Space :
+ is-extensional-Large-Premetric-Space (premetric-space-Large-Metric-Space)
+
+open Large-Metric-Space public
+
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Metric-Space α β)
+ where
+
+ type-Large-Metric-Space : (l : Level) → UU (α l)
+ type-Large-Metric-Space =
+ type-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+
+ neighborhood-Large-Metric-Space :
+ Large-Rational-Neighborhood-Relation β type-Large-Metric-Space
+ neighborhood-Large-Metric-Space =
+ neighborhood-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+
+ is-in-neighborhood-Large-Metric-Space :
+ (d : ℚ⁺) {l1 l2 : Level} →
+ type-Large-Metric-Space l1 →
+ type-Large-Metric-Space l2 →
+ UU (β l1 l2)
+ is-in-neighborhood-Large-Metric-Space =
+ is-in-neighborhood-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+
+ is-prop-is-in-neighborhood-Large-Metric-Space :
+ (d : ℚ⁺) {l1 l2 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2) →
+ is-prop (is-in-neighborhood-Large-Metric-Space d x y)
+ is-prop-is-in-neighborhood-Large-Metric-Space =
+ is-prop-is-in-neighborhood-Large-Rational-Neighborhood-Relation
+ neighborhood-Large-Metric-Space
+
+ is-upper-bound-dist-prop-Large-Metric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2) →
+ ℚ⁺ →
+ Prop (β l1 l2)
+ is-upper-bound-dist-prop-Large-Metric-Space x y d =
+ neighborhood-Large-Metric-Space d x y
+
+ is-upper-bound-dist-Large-Metric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2) →
+ ℚ⁺ →
+ UU (β l1 l2)
+ is-upper-bound-dist-Large-Metric-Space x y d =
+ is-in-neighborhood-Large-Metric-Space d x y
+
+ is-prop-is-upper-bound-dist-Large-Metric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2) →
+ (d : ℚ⁺) →
+ is-prop (is-upper-bound-dist-Large-Metric-Space x y d)
+ is-prop-is-upper-bound-dist-Large-Metric-Space x y d =
+ is-prop-is-in-neighborhood-Large-Metric-Space d x y
+
+ refl-neighborhood-Large-Metric-Space :
+ (d : ℚ⁺) {l : Level} (x : type-Large-Metric-Space l) →
+ is-in-neighborhood-Large-Metric-Space d x x
+ refl-neighborhood-Large-Metric-Space =
+ refl-neighborhood-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+
+ symmetric-neighborhood-Large-Metric-Space :
+ (d : ℚ⁺) {l1 l2 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2) →
+ is-in-neighborhood-Large-Metric-Space d x y →
+ is-in-neighborhood-Large-Metric-Space d y x
+ symmetric-neighborhood-Large-Metric-Space =
+ symmetric-neighborhood-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+
+ inv-neighborhood-Large-Metric-Space :
+ (d : ℚ⁺) {l1 l2 : Level}
+ {x : type-Large-Metric-Space l1}
+ {y : type-Large-Metric-Space l2} →
+ is-in-neighborhood-Large-Metric-Space d x y →
+ is-in-neighborhood-Large-Metric-Space d y x
+ inv-neighborhood-Large-Metric-Space d {x = x} {y = y} =
+ symmetric-neighborhood-Large-Metric-Space d x y
+
+ triangular-neighborhood-Large-Metric-Space :
+ (ε δ : ℚ⁺) {l1 l2 l3 : Level}
+ (x : type-Large-Metric-Space l1)
+ (y : type-Large-Metric-Space l2)
+ (z : type-Large-Metric-Space l3) →
+ is-in-neighborhood-Large-Metric-Space δ y z →
+ is-in-neighborhood-Large-Metric-Space ε x y →
+ is-in-neighborhood-Large-Metric-Space (ε +ℚ⁺ δ) x z
+ triangular-neighborhood-Large-Metric-Space =
+ triangular-neighborhood-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+```
+
+## Properties
+
+### Equal elements of a large metric space are neighors
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Metric-Space α β)
+ where
+
+ neighborhood-eq-Large-Metric-Space :
+ {l : Level} (x y : type-Large-Metric-Space M l) →
+ (x = y) →
+ (d : ℚ⁺) →
+ is-in-neighborhood-Large-Metric-Space M d x y
+ neighborhood-eq-Large-Metric-Space =
+ neighborhood-eq-Large-Premetric-Space
+ ( premetric-space-Large-Metric-Space M)
+```
diff --git a/src/metric-spaces/large-premetric-spaces.lagda.md b/src/metric-spaces/large-premetric-spaces.lagda.md
new file mode 100644
index 0000000000..7f5f2f3966
--- /dev/null
+++ b/src/metric-spaces/large-premetric-spaces.lagda.md
@@ -0,0 +1,121 @@
+# Large premetric spaces
+
+```agda
+module metric-spaces.large-premetric-spaces where
+```
+
+Imports
+
+```agda
+open import elementary-number-theory.positive-rational-numbers
+
+open import foundation.identity-types
+open import foundation.large-binary-relations
+open import foundation.propositions
+open import foundation.universe-levels
+
+open import metric-spaces.large-rational-neighborhoods
+```
+
+
+
+## Idea
+
+A {{concept "large premetric space" Agda=Large-Premetric-Space}} is a family of
+types indexed by universe levels equipped with a reflexive, symmetric and
+triangular
+[large rational neighborhood](metric-spaces.large-rational-neighborhoods.md).
+
+## Definitions
+
+```agda
+record
+ Large-Premetric-Space (α : Level → Level) (β : Level → Level → Level) : UUω
+ where
+ constructor
+ make-Large-Premetric-Space
+ field
+ type-Large-Premetric-Space : (l : Level) → UU (α l)
+ neighborhood-Large-Premetric-Space :
+ Large-Rational-Neighborhood-Relation β type-Large-Premetric-Space
+ refl-neighborhood-Large-Premetric-Space :
+ is-reflexive-Large-Rational-Neighborhood-Relation
+ neighborhood-Large-Premetric-Space
+ symmetric-neighborhood-Large-Premetric-Space :
+ is-symmetric-Large-Rational-Neighborhood-Relation
+ neighborhood-Large-Premetric-Space
+ triangular-neighborhood-Large-Premetric-Space :
+ is-triangular-Large-Rational-Neighborhood-Relation
+ neighborhood-Large-Premetric-Space
+
+open Large-Premetric-Space public
+
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ where
+
+ is-in-neighborhood-Large-Premetric-Space :
+ (d : ℚ⁺) {l1 l2 : Level} →
+ type-Large-Premetric-Space M l1 →
+ type-Large-Premetric-Space M l2 →
+ UU (β l1 l2)
+ is-in-neighborhood-Large-Premetric-Space =
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation
+ (neighborhood-Large-Premetric-Space M)
+
+ is-prop-is-in-neighborhood-Large-Premetric-Space :
+ (d : ℚ⁺) {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2) →
+ is-prop (is-in-neighborhood-Large-Premetric-Space d x y)
+ is-prop-is-in-neighborhood-Large-Premetric-Space =
+ is-prop-is-in-neighborhood-Large-Rational-Neighborhood-Relation
+ (neighborhood-Large-Premetric-Space M)
+
+ is-upper-bound-dist-prop-Large-Premetric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2) →
+ ℚ⁺ →
+ Prop (β l1 l2)
+ is-upper-bound-dist-prop-Large-Premetric-Space x y d =
+ neighborhood-Large-Premetric-Space M d x y
+
+ is-upper-bound-dist-Large-Premetric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2) →
+ ℚ⁺ →
+ UU (β l1 l2)
+ is-upper-bound-dist-Large-Premetric-Space x y d =
+ is-in-neighborhood-Large-Premetric-Space d x y
+
+ is-prop-is-upper-bound-dist-Large-Premetric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2) →
+ (d : ℚ⁺) →
+ is-prop (is-upper-bound-dist-Large-Premetric-Space x y d)
+ is-prop-is-upper-bound-dist-Large-Premetric-Space x y d =
+ is-prop-is-in-neighborhood-Large-Premetric-Space d x y
+```
+
+## Properties
+
+### Equal elements of a large premetric space are neighors
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ where
+
+ neighborhood-eq-Large-Premetric-Space :
+ {l : Level} (x y : type-Large-Premetric-Space M l) →
+ (x = y) →
+ (d : ℚ⁺) →
+ is-in-neighborhood-Large-Premetric-Space M d x y
+ neighborhood-eq-Large-Premetric-Space x .x refl d =
+ refl-neighborhood-Large-Premetric-Space M d x
+```
diff --git a/src/metric-spaces/large-rational-neighborhoods.lagda.md b/src/metric-spaces/large-rational-neighborhoods.lagda.md
new file mode 100644
index 0000000000..920f5c9592
--- /dev/null
+++ b/src/metric-spaces/large-rational-neighborhoods.lagda.md
@@ -0,0 +1,86 @@
+# Large rational neighborhoods on types
+
+```agda
+module metric-spaces.large-rational-neighborhoods where
+```
+
+Imports
+
+```agda
+open import elementary-number-theory.positive-rational-numbers
+
+open import foundation.large-binary-relations
+open import foundation.propositions
+open import foundation.universe-levels
+```
+
+
+
+## Idea
+
+A {{concept "large rational neighborhood" Agda=Large-Rational-Neighborhood}} on
+a family of types indexed by universe levels `A` is a family of
+[large relations](foundation.large-binary-relations.md) on `A` indexed by the
+[positive rational numbers](elementary-number-theory.positive-rational-numbers.md).
+
+## Definitions
+
+```agda
+module _
+ {α : Level → Level} (β : Level → Level → Level)
+ (A : (l : Level) → UU (α l))
+ where
+
+ Large-Rational-Neighborhood-Relation : UUω
+ Large-Rational-Neighborhood-Relation =
+ ℚ⁺ → Large-Relation-Prop β A
+
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ {A : (l : Level) → UU (α l)}
+ (N : Large-Rational-Neighborhood-Relation β A)
+ (d : ℚ⁺) {l1 l2 : Level} (x : A l1) (y : A l2)
+ where
+
+ neighborhood-Large-Rational-Neighborhood-Relation : Prop (β l1 l2)
+ neighborhood-Large-Rational-Neighborhood-Relation = N d x y
+
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation : UU (β l1 l2)
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation =
+ type-Prop neighborhood-Large-Rational-Neighborhood-Relation
+
+ is-prop-is-in-neighborhood-Large-Rational-Neighborhood-Relation :
+ is-prop is-in-neighborhood-Large-Rational-Neighborhood-Relation
+ is-prop-is-in-neighborhood-Large-Rational-Neighborhood-Relation =
+ is-prop-type-Prop neighborhood-Large-Rational-Neighborhood-Relation
+```
+
+## Properties
+
+### Specification of properties of rational neighborhoods
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ {A : (l : Level) → UU (α l)}
+ (N : Large-Rational-Neighborhood-Relation β A)
+ where
+
+ is-reflexive-Large-Rational-Neighborhood-Relation : UUω
+ is-reflexive-Large-Rational-Neighborhood-Relation =
+ (d : ℚ⁺) {l : Level} (x : A l) →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N d x x
+
+ is-symmetric-Large-Rational-Neighborhood-Relation : UUω
+ is-symmetric-Large-Rational-Neighborhood-Relation =
+ (d : ℚ⁺) {l1 l2 : Level} (x : A l1) (y : A l2) →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N d x y →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N d y x
+
+ is-triangular-Large-Rational-Neighborhood-Relation : UUω
+ is-triangular-Large-Rational-Neighborhood-Relation =
+ (ε δ : ℚ⁺) {l1 l2 l3 : Level} (x : A l1) (y : A l2) (z : A l3) →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N δ y z →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N ε x y →
+ is-in-neighborhood-Large-Rational-Neighborhood-Relation N (ε +ℚ⁺ δ) x z
+```
diff --git a/src/metric-spaces/similarity-of-elements-large-premetric-spaces.lagda.md b/src/metric-spaces/similarity-of-elements-large-premetric-spaces.lagda.md
new file mode 100644
index 0000000000..489443350f
--- /dev/null
+++ b/src/metric-spaces/similarity-of-elements-large-premetric-spaces.lagda.md
@@ -0,0 +1,141 @@
+# Similarity of elements in large premetric spaces
+
+```agda
+module metric-spaces.similarity-of-elements-large-premetric-spaces where
+```
+
+Imports
+
+```agda
+open import elementary-number-theory.positive-rational-numbers
+
+open import foundation.identity-types
+open import foundation.large-binary-relations
+open import foundation.propositions
+open import foundation.transport-along-identifications
+open import foundation.universe-levels
+
+open import metric-spaces.large-premetric-spaces
+open import metric-spaces.large-rational-neighborhoods
+```
+
+
+
+## Idea
+
+Two elements `x y` of a
+[large premetric space](metric-spaces.large-premetric-spaces.md) are
+{{#concept "similar" Disambiguation="elements of a large premetric space" Agda=sim-element-Large-Premetric-Space}}
+if their distance is bounded by all
+[positive rational numbers](elementary-number-theory.positive-rational-numbers.md).
+Similarity of element sin a large premetric space is reflexive, symmetric and
+transitive.
+
+## Definitions
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2)
+ where
+
+ sim-prop-element-Large-Premetric-Space : Prop (β l1 l2)
+ sim-prop-element-Large-Premetric-Space =
+ Π-Prop
+ ( ℚ⁺)
+ ( is-upper-bound-dist-prop-Large-Premetric-Space M x y)
+
+ sim-element-Large-Premetric-Space : UU (β l1 l2)
+ sim-element-Large-Premetric-Space =
+ type-Prop sim-prop-element-Large-Premetric-Space
+
+ is-prop-sim-element-Large-Premetric-Space :
+ is-prop sim-element-Large-Premetric-Space
+ is-prop-sim-element-Large-Premetric-Space =
+ is-prop-type-Prop sim-prop-element-Large-Premetric-Space
+```
+
+## Properties
+
+### Similarity of elements in large premetric spaces is reflexive
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ {l : Level} (x : type-Large-Premetric-Space M l)
+ where
+
+ sim-eq-element-Large-Premetric-Space :
+ (y : type-Large-Premetric-Space M l) →
+ x = y →
+ sim-element-Large-Premetric-Space M x y
+ sim-eq-element-Large-Premetric-Space =
+ neighborhood-eq-Large-Premetric-Space M x
+
+ refl-sim-element-Large-Premetric-Space :
+ sim-element-Large-Premetric-Space M x x
+ refl-sim-element-Large-Premetric-Space =
+ sim-eq-element-Large-Premetric-Space x refl
+```
+
+### Similarity of elements in large premetric spaces is symmetric
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ where
+
+ symmetric-sim-element-Large-Premetric-Space :
+ {l1 l2 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2) →
+ sim-element-Large-Premetric-Space M x y →
+ sim-element-Large-Premetric-Space M y x
+ symmetric-sim-element-Large-Premetric-Space x y x~y d =
+ symmetric-neighborhood-Large-Premetric-Space M d x y (x~y d)
+
+ inv-sim-element-Large-Premetric-Space :
+ {l1 l2 : Level}
+ {x : type-Large-Premetric-Space M l1}
+ {y : type-Large-Premetric-Space M l2} →
+ sim-element-Large-Premetric-Space M x y →
+ sim-element-Large-Premetric-Space M y x
+ inv-sim-element-Large-Premetric-Space {x = x} {y = y} =
+ symmetric-sim-element-Large-Premetric-Space x y
+```
+
+### Similarity of elements in large premetric spaces is transitive
+
+```agda
+module _
+ {α : Level → Level} {β : Level → Level → Level}
+ (M : Large-Premetric-Space α β)
+ where
+
+ transitive-sim-element-Large-Premetric-Space :
+ {l1 l2 l3 : Level}
+ (x : type-Large-Premetric-Space M l1)
+ (y : type-Large-Premetric-Space M l2)
+ (z : type-Large-Premetric-Space M l3) →
+ sim-element-Large-Premetric-Space M y z →
+ sim-element-Large-Premetric-Space M x y →
+ sim-element-Large-Premetric-Space M x z
+ transitive-sim-element-Large-Premetric-Space x y z y~z x~y d =
+ tr
+ ( is-upper-bound-dist-Large-Premetric-Space M x z)
+ ( eq-add-split-ℚ⁺ d)
+ ( triangular-neighborhood-Large-Premetric-Space
+ ( M)
+ ( left-summand-split-ℚ⁺ d)
+ ( right-summand-split-ℚ⁺ d)
+ ( x)
+ ( y)
+ ( z)
+ ( y~z (right-summand-split-ℚ⁺ d))
+ ( x~y (left-summand-split-ℚ⁺ d)))
+```