Mercurial > hg > Members > kono > Proof > ZF-in-agda
comparison src/Tychonoff.agda @ 1279:7e7d8d825632
P x Q ⇆ Q x P done
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 06 Apr 2023 09:16:52 +0900 |
parents | b15dd4438d50 |
children | f4dac8be0a01 |
comparison
equal
deleted
inserted
replaced
1278:2cbe0db250da | 1279:7e7d8d825632 |
---|---|
33 open ODC O | 33 open ODC O |
34 | 34 |
35 open import filter O | 35 open import filter O |
36 open import ZProduct O | 36 open import ZProduct O |
37 open import Topology O | 37 open import Topology O |
38 -- open import maximum-filter O | 38 open import maximum-filter O |
39 | 39 |
40 open Filter | 40 open Filter |
41 open Topology | 41 open Topology |
42 | 42 |
43 -- | 43 -- |
78 field | 78 field |
79 limit : Ordinal | 79 limit : Ordinal |
80 P∋limit : odef P limit | 80 P∋limit : odef P limit |
81 is-limit : {v : Ordinal} → Neighbor TP limit v → filter F ∋ (* v) | 81 is-limit : {v : Ordinal} → Neighbor TP limit v → filter F ∋ (* v) |
82 | 82 |
83 -- | |
84 -- If Any ultra filter has a limit that is all neighbor of the limit is in the filter, | |
85 -- it has finite intersection property. | |
86 -- | |
87 -- Finite intersection defines a filter, so we have a ultra filter becaause Zorn lemma maximizing it. | |
88 -- If the limit of filter is not contained by a closed set p in FIP, it is in P \ p. It is open and | |
89 -- contains the limit, so it is in the ultra filter. This means p and P \ p is in the filter, which | |
90 -- contradicts proper of the ultra filter. | |
91 -- | |
83 UFLP→FIP : {P : HOD} (TP : Topology P) → | 92 UFLP→FIP : {P : HOD} (TP : Topology P) → |
84 ((F : Filter {Power P} {P} (λ x → x) ) (UF : ultra-filter F ) → UFLP TP F UF ) → FIP TP | 93 ((F : Filter {Power P} {P} (λ x → x) ) (UF : ultra-filter F ) → UFLP TP F UF ) → FIP TP |
85 UFLP→FIP {P} TP uflp with trio< (& P) o∅ | 94 UFLP→FIP {P} TP uflp with trio< (& P) o∅ |
86 ... | tri< a ¬b ¬c = ⊥-elim ( ¬x<0 a ) | 95 ... | tri< a ¬b ¬c = ⊥-elim ( ¬x<0 a ) |
87 ... | tri≈ ¬a P=0 ¬c = record { limit = λ CX fip → o∅ ; is-limit = fip03 } where | 96 ... | tri≈ ¬a P=0 ¬c = record { limit = λ CX fip → o∅ ; is-limit = fip03 } where |
174 -- then we have maximum ultra filter ( Zorn lemma ) | 183 -- then we have maximum ultra filter ( Zorn lemma ) |
175 -- to debug this file, commet out the maximum filter and open import | 184 -- to debug this file, commet out the maximum filter and open import |
176 -- otherwise the check requires a minute | 185 -- otherwise the check requires a minute |
177 -- | 186 -- |
178 maxf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → MaximumFilter (λ x → x) (F CSX fp) | 187 maxf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → MaximumFilter (λ x → x) (F CSX fp) |
179 maxf {X} 0<X CSX fp = ? -- F→Maximum {Power P} {P} (λ x → x) (CAP P) (F CSX fp) 0<PP (N∋nc 0<X CSX fp) (proper CSX fp) | 188 maxf {X} 0<X CSX fp = F→Maximum {Power P} {P} (λ x → x) (CAP P) (F CSX fp) 0<PP (N∋nc 0<X CSX fp) (proper CSX fp) |
180 mf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → Filter {Power P} {P} (λ x → x) | 189 mf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → Filter {Power P} {P} (λ x → x) |
181 mf {X} 0<X CSX fp = MaximumFilter.mf (maxf 0<X CSX fp) | 190 mf {X} 0<X CSX fp = MaximumFilter.mf (maxf 0<X CSX fp) |
182 ultraf : {X : Ordinal} → (0<X : o∅ o< X ) → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → ultra-filter ( mf 0<X CSX fp) | 191 ultraf : {X : Ordinal} → (0<X : o∅ o< X ) → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → ultra-filter ( mf 0<X CSX fp) |
183 ultraf {X} 0<X CSX fp = ? -- F→ultra {Power P} {P} (λ x → x) (CAP P) (F CSX fp) 0<PP (N∋nc 0<X CSX fp) (proper CSX fp) | 192 ultraf {X} 0<X CSX fp = F→ultra {Power P} {P} (λ x → x) (CAP P) (F CSX fp) 0<PP (N∋nc 0<X CSX fp) (proper CSX fp) |
184 -- | 193 -- |
185 -- so it has a limit as a limit of UIP | 194 -- so it has a limit as a limit of FIP |
186 -- | 195 -- |
187 limit : {X : Ordinal} → (CSX : * X ⊆ CS TP) → fip {X} CSX → Ordinal | 196 limit : {X : Ordinal} → (CSX : * X ⊆ CS TP) → fip {X} CSX → Ordinal |
188 limit {X} CSX fp with trio< o∅ X | 197 limit {X} CSX fp with trio< o∅ X |
189 ... | tri< 0<X ¬b ¬c = UFLP.limit ( uflp ( mf 0<X CSX fp ) (ultraf 0<X CSX fp)) | 198 ... | tri< 0<X ¬b ¬c = UFLP.limit ( uflp ( mf 0<X CSX fp ) (ultraf 0<X CSX fp)) |
190 ... | tri≈ ¬a 0=X ¬c = o∅ | 199 ... | tri≈ ¬a 0=X ¬c = o∅ |
241 x⊆Clx : {P : HOD} (TP : Topology P) → {x : HOD} → x ⊆ P → x ⊆ Cl TP x | 250 x⊆Clx : {P : HOD} (TP : Topology P) → {x : HOD} → x ⊆ P → x ⊆ Cl TP x |
242 x⊆Clx {P} TP {x} x<p {y} xy = ⟪ x<p xy , (λ c csc x<c → x<c xy ) ⟫ | 251 x⊆Clx {P} TP {x} x<p {y} xy = ⟪ x<p xy , (λ c csc x<c → x<c xy ) ⟫ |
243 P⊆Clx : {P : HOD} (TP : Topology P) → {x : HOD} → x ⊆ P → Cl TP x ⊆ P | 252 P⊆Clx : {P : HOD} (TP : Topology P) → {x : HOD} → x ⊆ P → Cl TP x ⊆ P |
244 P⊆Clx {P} TP {x} x<p {y} xy = proj1 xy | 253 P⊆Clx {P} TP {x} x<p {y} xy = proj1 xy |
245 | 254 |
255 -- | |
256 -- Finite intersection property implies that any ultra filter have a limit, that is, neighbors of the limit is in the filter. | |
257 -- | |
258 -- An ultra filter F is given. Take a closure of a filter. It is closed and it has finite intersection property, because F is porper. | |
259 -- So it has a limit as a FIP. If a neighbor p which contains the limit, p or P \ p is in the ultra filter. | |
260 -- If it is in P \ p, it cannot contains the limit, contradiction. | |
261 -- | |
246 FIP→UFLP : {P : HOD} (TP : Topology P) → FIP TP | 262 FIP→UFLP : {P : HOD} (TP : Topology P) → FIP TP |
247 → (F : Filter {Power P} {P} (λ x → x)) (UF : ultra-filter F ) → UFLP {P} TP F UF | 263 → (F : Filter {Power P} {P} (λ x → x)) (UF : ultra-filter F ) → UFLP {P} TP F UF |
248 FIP→UFLP {P} TP fip F UF = record { limit = FIP.limit fip (subst (λ k → k ⊆ CS TP) (sym *iso) CF⊆CS) ufl01 | 264 FIP→UFLP {P} TP fip F UF = record { limit = FIP.limit fip (subst (λ k → k ⊆ CS TP) (sym *iso) CF⊆CS) ufl01 |
249 ; P∋limit = ufl10 ; is-limit = ufl00 } where | 265 ; P∋limit = ufl10 ; is-limit = ufl00 } where |
250 F∋P : odef (filter F) (& P) | 266 F∋P : odef (filter F) (& P) |
343 | 359 |
344 import Axiom.Extensionality.Propositional | 360 import Axiom.Extensionality.Propositional |
345 postulate f-extensionality : { n m : Level} → Axiom.Extensionality.Propositional.Extensionality n m | 361 postulate f-extensionality : { n m : Level} → Axiom.Extensionality.Propositional.Extensionality n m |
346 open import Relation.Binary.HeterogeneousEquality as HE using (_≅_ ) | 362 open import Relation.Binary.HeterogeneousEquality as HE using (_≅_ ) |
347 | 363 |
348 FilterQP : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) | 364 -- FilterQP : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) |
349 → Filter {Power (ZFP Q P)} {ZFP Q P} (λ x → x) | 365 -- → Filter {Power (ZFP Q P)} {ZFP Q P} (λ x → x) |
350 FilterQP {P} {Q} F = record { filter = ? ; f⊆L = ? ; filter1 = ? ; filter2 = ? } | 366 -- FilterQP {P} {Q} F = record { filter = ? ; f⊆L = ? ; filter1 = ? ; filter2 = ? } |
351 | 367 -- |
352 projection-of-filter : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) | 368 -- projection-of-filter : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) |
353 → Filter {Power P} {P} (λ x → x) | 369 -- → Filter {Power P} {P} (λ x → x) |
354 projection-of-filter = ? | 370 -- projection-of-filter = ? |
355 | 371 -- |
356 projection-of-ultra-filter : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) (UF : ultra-filter F) | 372 -- projection-of-ultra-filter : {P Q : HOD } → (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) (UF : ultra-filter F) |
357 → ultra-filter (projection-of-filter F) | 373 -- → ultra-filter (projection-of-filter F) |
358 projection-of-ultra-filter = ? | 374 -- projection-of-ultra-filter = ? |
359 | 375 |
376 -- | |
377 -- We have UFLP both in P and Q. Given an ultra filter F on P x Q. It has limits on P and Q because a projection of ultra filter | |
378 -- is a ultra filter. Show the product of the limits is a limit of P x Q. A neighbor of P x Q contains subbase of P x Q, | |
379 -- which is either inverse projection x of P or Q. The x in in projection of F, because of UFLP. So it is in F, because of the | |
380 -- property of the filter. | |
381 -- | |
360 Tychonoff : {P Q : HOD } → (TP : Topology P) → (TQ : Topology Q) → Compact TP → Compact TQ → Compact (ProductTopology TP TQ) | 382 Tychonoff : {P Q : HOD } → (TP : Topology P) → (TQ : Topology Q) → Compact TP → Compact TQ → Compact (ProductTopology TP TQ) |
361 Tychonoff {P} {Q} TP TQ CP CQ = FIP→Compact (ProductTopology TP TQ) (UFLP→FIP (ProductTopology TP TQ) uflPQ ) where | 383 Tychonoff {P} {Q} TP TQ CP CQ = FIP→Compact (ProductTopology TP TQ) (UFLP→FIP (ProductTopology TP TQ) uflPQ ) where |
362 uflP : (F : Filter {Power P} {P} (λ x → x)) (UF : ultra-filter F) | 384 uflP : (F : Filter {Power P} {P} (λ x → x)) (UF : ultra-filter F) |
363 → UFLP TP F UF | 385 → UFLP TP F UF |
364 uflP F UF = FIP→UFLP TP (Compact→FIP TP CP) F UF | 386 uflP F UF = FIP→UFLP TP (Compact→FIP TP CP) F UF |