comparison src/Topology.agda @ 1151:8a071bf52407

Finite intersection property to Compact done
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 18 Jan 2023 01:43:24 +0900
parents fe0129c40745
children e1c6719a8c38
comparison
equal deleted inserted replaced
1150:fe0129c40745 1151:8a071bf52407
279 record CFIP (X x : Ordinal) : Set n where 279 record CFIP (X x : Ordinal) : Set n where
280 field 280 field
281 is-CS : * x ⊆ Replace' (* X) (λ z xz → L \ z) 281 is-CS : * x ⊆ Replace' (* X) (λ z xz → L \ z)
282 sx : Subbase (* x) o∅ 282 sx : Subbase (* x) o∅
283 Cex : (X : Ordinal ) → HOD 283 Cex : (X : Ordinal ) → HOD
284 Cex X = record { od = record { def = λ x → CFIP X x } ; odmax = osuc (& (Replace' (* X) (λ z xz → L \ z))) ; <odmax = ? } where 284 Cex X = record { od = record { def = λ x → CFIP X x } ; odmax = osuc (& (Replace' (* X) (λ z xz → L \ z))) ; <odmax = fip05 } where
285 fip05 : {y : Ordinal} → CFIP X y → y o< osuc (& L) 285 fip05 : {y : Ordinal} → CFIP X y → y o< osuc (& (Replace' (* X) (λ z xz → L \ z)))
286 fip05 {y} cf = subst₂ (λ j k → j o≤ k ) ? ? ( ⊆→o≤ ( CFIP.is-CS cf )) 286 fip05 {y} cf = subst₂ (λ j k → j o< osuc k ) &iso refl ( ⊆→o≤ ( CFIP.is-CS cf ) )
287 fip00 : {X : Ordinal } → * X ⊆ OS top → * X covers L → ¬ ( Cex X =h= od∅ ) 287 fip00 : {X : Ordinal } → * X ⊆ OS top → * X covers L → ¬ ( Cex X =h= od∅ )
288 fip00 {X} ox oc cex=0 = ⊥-elim (fip09 fip25 fip20) where 288 fip00 {X} ox oc cex=0 = ⊥-elim (fip09 fip25 fip20) where
289 -- CX is finite intersection 289 -- CX is finite intersection
290 fip02 : {C x : Ordinal} → * C ⊆ * (CX ox) → Subbase (* C) x → o∅ o< x 290 fip02 : {C x : Ordinal} → * C ⊆ * (CX ox) → Subbase (* C) x → o∅ o< x
291 fip02 {C} {x} C<CX sc with trio< x o∅ 291 fip02 {C} {x} C<CX sc with trio< x o∅
319 -- create Finite-∪ from cex 319 -- create Finite-∪ from cex
320 isFinite : {X : Ordinal} (xo : * X ⊆ OS top) (xcp : * X covers L) → Finite-∪ (* X) (finCover xo xcp) 320 isFinite : {X : Ordinal} (xo : * X ⊆ OS top) (xcp : * X covers L) → Finite-∪ (* X) (finCover xo xcp)
321 isFinite {X} xo xcp = fip30 (cex xo xcp) o∅ (CFIP.is-CS (CXfip xo xcp)) (CFIP.sx (CXfip xo xcp)) where 321 isFinite {X} xo xcp = fip30 (cex xo xcp) o∅ (CFIP.is-CS (CXfip xo xcp)) (CFIP.sx (CXfip xo xcp)) where
322 fip30 : ( x y : Ordinal ) → * x ⊆ Replace' (* X) (λ z xz → L \ z) → Subbase (* x) y → Finite-∪ (* X) (& (Replace' (* x) (λ z xz → L \ z ))) 322 fip30 : ( x y : Ordinal ) → * x ⊆ Replace' (* X) (λ z xz → L \ z) → Subbase (* x) y → Finite-∪ (* X) (& (Replace' (* x) (λ z xz → L \ z )))
323 fip30 x y x⊆cs (gi sb) = fip31 where 323 fip30 x y x⊆cs (gi sb) = fip31 where
324 fip32 : Replace' (* x) (λ z xz → L \ z) ⊆ * X -- x⊆cs :* x ⊆ Replace' (* X) (λ z₁ xz → L \ z₁) , x=ψz : w ≡ & (L \ * z) , odef (* x) z
325 fip32 {w} record { z = z ; az = xz ; x=ψz = x=ψz } with x⊆cs xz
326 ... | record { z = z1 ; az = az1 ; x=ψz = x=ψz1 } = subst (λ k → odef (* X) k) fip33 az1 where
327 fip34 : * z1 ⊆ L
328 fip34 {w} wz1 = os⊆L top (subst (λ k → odef (OS top) k) (sym &iso) (xo az1)) wz1
329 fip33 : z1 ≡ w
330 fip33 = begin
331 z1 ≡⟨ sym &iso ⟩
332 & (* z1) ≡⟨ cong (&) (sym (L\Lx=x fip34 )) ⟩
333 & (L \ ( L \ * z1)) ≡⟨ cong (λ k → & ( L \ k )) (sym *iso) ⟩
334 & (L \ * (& ( L \ * z1))) ≡⟨ cong (λ k → & ( L \ * k )) (sym x=ψz1) ⟩
335 & (L \ * z) ≡⟨ sym x=ψz ⟩
336 w ∎ where open ≡-Reasoning
324 fip31 : Finite-∪ (* X) (& (Replace' (* x) (λ z xz → L \ z))) 337 fip31 : Finite-∪ (* X) (& (Replace' (* x) (λ z xz → L \ z)))
325 fip31 = fin-e ? 338 fip31 = fin-e (subst (λ k → k ⊆ * X ) (sym *iso) fip32 )
326 fip30 x yz x⊆cs (g∩ {y} {z} sy sz) = ? 339 fip30 x yz x⊆cs (g∩ {y} {z} sy sz) = fip35 where
340 fip35 : Finite-∪ (* X) (& (Replace' (* x) (λ z₁ xz → L \ z₁)))
341 fip35 = subst (λ k → Finite-∪ (* X) k)
342 (cong (&) (subst (λ k → (k ∪ k ) ≡ (Replace' (* x) (λ z₁ xz → L \ z₁)) ) (sym *iso) x∪x≡x )) ( fin-∪ (fip30 _ _ x⊆cs sy) (fip30 _ _ x⊆cs sz) )
327 -- is also a cover 343 -- is also a cover
328 isCover1 : {X : Ordinal} (xo : * X ⊆ OS top) (xcp : * X covers L) → * (finCover xo xcp) covers L 344 isCover1 : {X : Ordinal} (xo : * X ⊆ OS top) (xcp : * X covers L) → * (finCover xo xcp) covers L
329 isCover1 {X} xo xcp = subst₂ (λ j k → j covers k ) (sym *iso) ? ( fip40 (cex xo xcp) o∅ (CFIP.is-CS (CXfip xo xcp)) (CFIP.sx (CXfip xo xcp))) where 345 isCover1 {X} xo xcp = subst₂ (λ j k → j covers k ) (sym *iso) (subst (λ k → L \ k ≡ L) (sym o∅≡od∅) L\0=L)
346 ( fip40 (cex xo xcp) o∅ (CFIP.is-CS (CXfip xo xcp)) (CFIP.sx (CXfip xo xcp))) where
330 -- record { cover = λ {x} Lx → ? ; P∋cover = ? ; isCover = ? } 347 -- record { cover = λ {x} Lx → ? ; P∋cover = ? ; isCover = ? }
348 fip45 : {L a b : HOD} → (L \ (a ∩ b)) ⊆ ( (L \ a) ∪ (L \ b))
349 fip45 {L} {a} {b} {x} Lab with ODC.∋-p O b (* x)
350 ... | yes bx = case1 ⟪ proj1 Lab , (λ ax → proj2 Lab ⟪ ax , subst (λ k → odef b k) &iso bx ⟫ ) ⟫
351 ... | no ¬bx = case2 ⟪ proj1 Lab , subst (λ k → ¬ ( odef b k)) &iso ¬bx ⟫
352 fip43 : {A L a b : HOD } → A covers (L \ a) → A covers (L \ b ) → A covers ( L \ ( a ∩ b ) )
353 fip43 {A} {L} {a} {b} ca cb = record { cover = fip44 ; P∋cover = fip46 ; isCover = fip47 } where
354 fip44 : {x : Ordinal} → odef (L \ (a ∩ b)) x → Ordinal
355 fip44 {x} Lab with fip45 {L} {a} {b} Lab
356 ... | case1 La = cover ca La
357 ... | case2 Lb = cover cb Lb
358 fip46 : {x : Ordinal} (lt : odef (L \ (a ∩ b)) x) → odef A (fip44 lt)
359 fip46 {x} Lab with fip45 {L} {a} {b} Lab
360 ... | case1 La = P∋cover ca La
361 ... | case2 Lb = P∋cover cb Lb
362 fip47 : {x : Ordinal} (lt : odef (L \ (a ∩ b)) x) → odef (* (fip44 lt)) x
363 fip47 {x} Lab with fip45 {L} {a} {b} Lab
364 ... | case1 La = isCover ca La
365 ... | case2 Lb = isCover cb Lb
331 fip40 : ( x y : Ordinal ) → * x ⊆ Replace' (* X) (λ z xz → L \ z) → Subbase (* x) y 366 fip40 : ( x y : Ordinal ) → * x ⊆ Replace' (* X) (λ z xz → L \ z) → Subbase (* x) y
332 → (Replace' (* x) (λ z xz → L \ z )) covers (L \ * y ) 367 → (Replace' (* x) (λ z xz → L \ z )) covers (L \ * y )
333 fip40 = ? 368 fip40 x .(& (* _ ∩ * _)) x⊆r (g∩ {a} {b} sa sb) = subst (λ k → (Replace' (* x) (λ z xz → L \ z)) covers ( L \ k ) ) (sym *iso)
369 ( fip43 {_} {L} {* a} {* b} fip41 fip42 ) where
370 fip41 : Replace' (* x) (λ z xz → L \ z) covers (L \ * a)
371 fip41 = fip40 x a x⊆r sa
372 fip42 : Replace' (* x) (λ z xz → L \ z) covers (L \ * b)
373 fip42 = fip40 x b x⊆r sb
374 fip40 x y x⊆r (gi sb) with x⊆r sb
375 ... | record { z = z ; az = az ; x=ψz = x=ψz } = record { cover = fip51 ; P∋cover = fip53 ; isCover = fip50 }where
376 fip51 : {w : Ordinal} (Lyw : odef (L \ * y) w) → Ordinal
377 fip51 {w} Lyw = z
378 fip52 : {w : Ordinal} (Lyw : odef (L \ * y) w) → odef (* X) z
379 fip52 {w} Lyw = az
380 fip55 : * z ⊆ L
381 fip55 {w} wz1 = os⊆L top (subst (λ k → odef (OS top) k) (sym &iso) (xo az)) wz1
382 fip56 : * z ≡ L \ * y
383 fip56 = begin
384 * z ≡⟨ sym (L\Lx=x fip55 ) ⟩
385 L \ ( L \ * z ) ≡⟨ cong (λ k → L \ k) (sym *iso) ⟩
386 L \ * ( & ( L \ * z )) ≡⟨ cong (λ k → L \ * k) (sym x=ψz) ⟩
387 L \ * y ∎ where open ≡-Reasoning
388 fip53 : {w : Ordinal} (Lyw : odef (L \ * y) w) → odef (Replace' (* x) (λ z₁ xz → L \ z₁)) z
389 fip53 {w} Lyw = record { z = _ ; az = sb ; x=ψz = fip54 } where
390 fip54 : z ≡ & ( L \ * y )
391 fip54 = begin
392 z ≡⟨ sym &iso ⟩
393 & (* z) ≡⟨ cong (&) fip56 ⟩
394 & (L \ * y )
395 ∎ where open ≡-Reasoning
396 fip50 : {w : Ordinal} (Lyw : odef (L \ * y) w) → odef (* z) w
397 fip50 {w} Lyw = subst (λ k → odef k w ) (sym fip56) Lyw
398
334 399
335 400
336 -- some day 401 -- some day
337 Compact→FIP : Set (suc n) 402 Compact→FIP : Set (suc n)
338 Compact→FIP = {L : HOD} → (top : Topology L ) → Compact top → FIP top 403 Compact→FIP = {L : HOD} → (top : Topology L ) → Compact top → FIP top