@@ -9,13 +9,17 @@ module metric-spaces.nets-metric-spaces where
99``` agda
1010open import elementary-number-theory.positive-rational-numbers
1111
12+ open import foundation.coinhabited-pairs-of-types
1213open import foundation.dependent-pair-types
1314open import foundation.images
1415open import foundation.inhabited-types
16+ open import foundation.logical-equivalences
1517open import foundation.propositions
1618open import foundation.subtypes
1719open import foundation.universe-levels
1820
21+ open import logic.propositionally-decidable-types
22+
1923open import metric-spaces.approximations-metric-spaces
2024open import metric-spaces.cartesian-products-metric-spaces
2125open import metric-spaces.equality-of-metric-spaces
@@ -33,6 +37,7 @@ open import metric-spaces.uniformly-continuous-functions-metric-spaces
3337open import univalent-combinatorics.finitely-enumerable-subtypes
3438open import univalent-combinatorics.finitely-enumerable-types
3539open import univalent-combinatorics.inhabited-finitely-enumerable-subtypes
40+ open import univalent-combinatorics.inhabited-finitely-enumerable-types
3641```
3742
3843</details >
@@ -80,6 +85,14 @@ module _
8085 subtype-finitely-enumerable-subtype
8186 ( finitely-enumerable-subset-net-Metric-Space)
8287
88+ type-net-Metric-Space : UU (l1 ⊔ l3)
89+ type-net-Metric-Space = type-subtype subset-net-Metric-Space
90+
91+ finitely-enumerable-type-net-Metric-Space : Finitely-Enumerable-Type (l1 ⊔ l3)
92+ finitely-enumerable-type-net-Metric-Space =
93+ finitely-enumerable-type-finitely-enumerable-subtype
94+ ( finitely-enumerable-subset-net-Metric-Space)
95+
8396 is-approximation-subset-net-Metric-Space :
8497 is-approximation-Metric-Space X ε subset-net-Metric-Space
8598 is-approximation-subset-net-Metric-Space = pr2 N
@@ -90,28 +103,61 @@ module _
90103 is-approximation-subset-net-Metric-Space)
91104```
92105
93- ### If a metric space is inhabited, so is any net on it
106+ ### A metric space and any net for it are coinhabited
107+
108+ A metric space is inhabited if and only if any net for it is inhabited.
94109
95110``` agda
96111module _
97112 {l1 l2 l3 : Level}
98- (X : Metric-Space l1 l2) (|X| : is-inhabited (type-Metric-Space X))
99- (ε : ℚ⁺) (S : net-Metric-Space l3 X ε)
113+ (X : Metric-Space l1 l2) (ε : ℚ⁺) (S : net-Metric-Space l3 X ε)
100114 where
101115
102116 abstract
103- is-inhabited-net-inhabited-Metric-Space :
104- is-inhabited-finitely-enumerable-subtype (pr1 S)
105- is-inhabited-net-inhabited-Metric-Space =
106- is-inhabited-is-approximation-inhabited-Metric-Space X |X| ε
107- ( subset-net-Metric-Space X ε S)
108- ( is-approximation-subset-net-Metric-Space X ε S)
109-
110- inhabited-finitely-enumerable-subtype-net-Metric-Space :
117+ is-coinhabited-net-Metric-Space :
118+ is-coinhabited (type-net-Metric-Space X ε S) (type-Metric-Space X)
119+ is-coinhabited-net-Metric-Space =
120+ is-coinhabited-approximation-Metric-Space
121+ ( X)
122+ ( ε)
123+ ( approximation-net-Metric-Space X ε S)
124+
125+ is-inhabited-type-is-inhabited-net-Metric-Space :
126+ is-inhabited (type-net-Metric-Space X ε S) →
127+ is-inhabited (type-Metric-Space X)
128+ is-inhabited-type-is-inhabited-net-Metric-Space =
129+ forward-implication is-coinhabited-net-Metric-Space
130+
131+ is-inhabited-net-is-inhabited-type-Metric-Space :
132+ is-inhabited (type-Metric-Space X) →
133+ is-inhabited (type-net-Metric-Space X ε S)
134+ is-inhabited-net-is-inhabited-type-Metric-Space =
135+ backward-implication is-coinhabited-net-Metric-Space
136+
137+ inhabited-finitely-enumerable-subset-net-is-inhabited-Metric-Space :
138+ is-inhabited (type-Metric-Space X) →
111139 inhabited-finitely-enumerable-subtype l3 (type-Metric-Space X)
112- inhabited-finitely-enumerable-subtype -net-Metric-Space =
140+ inhabited-finitely-enumerable-subset -net-is-inhabited- Metric-Space |S| =
113141 ( finitely-enumerable-subset-net-Metric-Space X ε S ,
114- is-inhabited-net-inhabited-Metric-Space)
142+ is-inhabited-net-is-inhabited-type-Metric-Space |S|)
143+ ```
144+
145+ ### Given any net for a metric space ` X ` , ` X ` is propositionally decidable
146+
147+ ``` agda
148+ module _
149+ {l1 l2 l3 : Level}
150+ (X : Metric-Space l1 l2) (ε : ℚ⁺) (S : net-Metric-Space l3 X ε)
151+ where
152+
153+ abstract
154+ is-inhabited-or-empty-type-is-inhabited-or-empty-net-Metric-Space :
155+ is-inhabited-or-empty (type-Metric-Space X)
156+ is-inhabited-or-empty-type-is-inhabited-or-empty-net-Metric-Space =
157+ is-inhabited-or-empty-is-coinhabited
158+ ( is-coinhabited-net-Metric-Space X ε S)
159+ ( is-inhabited-or-empty-type-Finitely-Enumerable-Type
160+ ( finitely-enumerable-type-net-Metric-Space X ε S))
115161```
116162
117163## Properties
0 commit comments