Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 1213:22de2d4f7271
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 05 Mar 2023 12:16:07 +0900 |
parents | 3922fc5c6f9e |
children | 93e1869bb57c |
files | src/Tychonoff.agda |
diffstat | 1 files changed, 69 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/src/Tychonoff.agda Sat Mar 04 11:39:52 2023 +0900 +++ b/src/Tychonoff.agda Sun Mar 05 12:16:07 2023 +0900 @@ -35,7 +35,7 @@ open import filter O open import OPair O open import Topology O -open import maximum-filter O +-- open import maximum-filter O open Filter open Topology @@ -152,11 +152,11 @@ -- then we have maximum ultra filter -- maxf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → MaximumFilter (λ x → x) (F CSX fp) - 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) + 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) mf : {X : Ordinal} → o∅ o< X → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → Filter {Power P} {P} (λ x → x) mf {X} 0<X CSX fp = MaximumFilter.mf (maxf 0<X CSX fp) ultraf : {X : Ordinal} → (0<X : o∅ o< X ) → (CSX : * X ⊆ CS TP) → (fp : fip {X} CSX) → ultra-filter ( mf 0<X CSX fp) - 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) + 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) -- -- so i has a limit as a limit of UIP -- @@ -193,6 +193,9 @@ uf05 : odef (filter (MaximumFilter.mf (maxf 0<X CSX fp))) x uf05 = MaximumFilter.F⊆mf (maxf 0<X CSX fp) record { b = & (* x , * x) ; b⊆X = uf07 ; sb = gi (subst (λ k → odef k x) (sym *iso) (case1 (sym &iso)) ) ; u⊆P = x⊆P ; x⊆u = λ x → x } + uf061 : odef (filter (MaximumFilter.mf (maxf 0<X CSX fp))) (& (* (& (P \ * x )))) + uf061 = UFLP.is-limit ( uflp (mf 0<X CSX fp) (ultraf 0<X CSX fp)) {& (P \ * x)} uf03 + -- uf06 (same as uf061) have yellow if zorn lemma is not imported uf06 : odef (filter (MaximumFilter.mf (maxf 0<X CSX fp))) (& (P \ * x )) uf06 = subst (λ k → odef (filter (MaximumFilter.mf (maxf 0<X CSX fp))) k) &iso (UFLP.is-limit ( uflp (mf 0<X CSX fp) (ultraf 0<X CSX fp)) {& (P \ * x)} uf03 ) uf13 : & ((* x) ∩ (P \ * x )) ≡ o∅ @@ -321,30 +324,72 @@ uflPQ : (F : Filter {Power (ZFP P Q)} {ZFP P Q} (λ x → x)) (UF : ultra-filter F) → UFLP (ProductTopology TP TQ) F UF uflPQ F UF = record { limit = & < * ( UFLP.limit uflp ) , * ( UFLP.limit uflq ) > ; P∋limit = Pf ; is-limit = isL } where + F∋PQ : odef (filter F) (& (ZFP P Q)) + F∋PQ with ultra-filter.ultra UF {od∅} (λ z az → ⊥-elim (¬x<0 (subst (λ k → odef k z) *iso az)) ) (λ z az → proj1 (subst (λ k → odef k z) *iso az ) ) + ... | case1 fp = ⊥-elim ( ultra-filter.proper UF fp ) + ... | case2 flp = subst (λ k → odef (filter F) k) (cong (&) (==→o≡ fl20)) flp where + fl20 : (ZFP P Q \ Ord o∅) =h= ZFP P Q + fl20 = record { eq→ = λ {x} lt → proj1 lt ; eq← = λ {x} lt → ⟪ lt , (λ lt → ⊥-elim (¬x<0 lt) ) ⟫ } + 0<P : o∅ o< & (ZFP P Q) + 0<P with trio< o∅ (& (ZFP P Q)) + ... | tri< a ¬b ¬c = a + ... | tri≈ ¬a b ¬c = ⊥-elim (ultra-filter.proper UF (subst (λ k → odef (filter F) k) (trans (sym b) (sym ord-od∅)) F∋PQ) ) + ... | tri> ¬a ¬b c = ⊥-elim (¬x<0 c) + isP→PxQ : {x : HOD} → (x⊆P : x ⊆ P ) → ZFP x Q ⊆ ZFP P Q + isP→PxQ {x} x⊆P (ab-pair p q) = ab-pair (x⊆P p) q + F⊆pxq : {x : HOD } → filter F ∋ x → x ⊆ ZFP P Q + F⊆pxq {x} fx {y} xy = f⊆L F fx y (subst (λ k → odef k y) (sym *iso) xy) + FPSet : HOD + FPSet = Replace' (filter F) (λ x fx → Replace' x ( λ y xy → * (zπ1 (F⊆pxq fx xy) ))) + FPSet⊆PP : FPSet ⊆ Power P + FPSet⊆PP {x} record { z = z ; az = fz ; x=ψz = x=ψz } w xw with subst (λ k → odef k w) (trans (cong (*) x=ψz) *iso) xw + ... | record { z = z1 ; az = az1 ; x=ψz = x=ψz1 } + = subst (λ k → odef P k) (sym (trans x=ψz1 &iso)) + (zp1 (F⊆pxq (subst (λ k → odef (filter F) k) (sym &iso) fz) (subst (λ k → odef (* z) k) (sym &iso) az1)) ) FP : Filter {Power P} {P} (λ x → x) - FP = record { filter = Proj1 (filter F) (Power P) (Power Q) ; f⊆L = ty00 ; filter1 = ? ; filter2 = ? } where - ty00 : Proj1 (filter F) (Power P) (Power Q) ⊆ Power P - ty00 {x} ⟪ PPx , ppf ⟫ = PPx + FP = record { filter = FPSet ; f⊆L = FPSet⊆PP ; filter1 = ty01 ; filter2 = {!!} } where + ty01 : {p q : HOD} → Power P ∋ q → FPSet ∋ p → p ⊆ q → FPSet ∋ q + ty01 {p} {q} Pq record { z = x ; az = fx ; x=ψz = x=ψz } p⊆q = record { z = _ ; az = ty02 ; x=ψz = cong (&) ty04 } where + -- p ≡ (Replace' (* x) (λ y xy → (zπ1 (F⊆pxq (subst (odef (filter.Filter.filter F)) (sym &iso) fx) xy)) + -- x = ( px , qx ) , px ⊆ q + ty03 : Power (ZFP P Q) ∋ ZFP q Q + ty03 z zpq = isP→PxQ {* (& q)} (Pq _) ( subst (λ k → odef k z ) (trans *iso (cong (λ k → ZFP k Q) (sym *iso))) zpq ) + p⊆P : p ⊆ P + p⊆P {w} pw with subst (λ k → odef k w) (subst₂ (λ j k → j ≡ k ) *iso *iso (cong (*) x=ψz)) pw + ... | record { z = z1 ; az = az1 ; x=ψz = x=ψz1 } = subst (λ k → odef P k) (sym (trans x=ψz1 &iso)) + (zp1 (F⊆pxq (subst (λ k → odef (filter F) k) (sym &iso) fx) (subst (λ k → odef (* x) k) (sym &iso) az1 )) ) + x⊆pxq : * x ⊆ ZFP p Q + x⊆pxq = ? + ty05 : filter F ∋ ZFP p Q + ty05 = filter1 F (λ z wz → isP→PxQ p⊆P (subst (λ k → odef k z) *iso wz)) (subst (λ k → odef (filter F) k) (sym &iso) fx) x⊆pxq + ty06 : ZFP p Q ⊆ ZFP q Q + ty06 (ab-pair wp wq ) = ab-pair (p⊆q wp) wq + ty02 : filter F ∋ ZFP q Q + ty02 = filter1 F ty03 ty05 ty06 + ty04 : q ≡ Replace' (* (& (ZFP q Q))) (λ y xy → * (zπ1 + (F⊆pxq (subst (odef (filter F)) (sym &iso) ty02) xy))) + ty04 = ? + UFP : ultra-filter FP - UFP = record { proper = ? ; ultra = ? } + UFP = record { proper = {!!} ; ultra = {!!} } uflp : UFLP TP FP UFP uflp = FIP→UFLP TP (Compact→FIP TP CP) FP UFP FQ : Filter {Power Q} {Q} (λ x → x) - FQ = record { filter = Proj2 (filter F) (Power P) (Power Q) ; f⊆L = ty00 ; filter1 = ? ; filter2 = ? } where + FQ = record { filter = Proj2 (filter F) (Power P) (Power Q) ; f⊆L = ty00 ; filter1 = {!!} ; filter2 = {!!} } where ty00 : Proj2 (filter F) (Power P) (Power Q) ⊆ Power Q ty00 {x} ⟪ QPx , ppf ⟫ = QPx UFQ : ultra-filter FQ - UFQ = record { proper = ? ; ultra = ? } + UFQ = record { proper = {!!} ; ultra = {!!} } uflq : UFLP TQ FQ UFQ uflq = FIP→UFLP TQ (Compact→FIP TQ CQ) FQ UFQ Pf : odef (ZFP P Q) (& < * (UFLP.limit uflp) , * (UFLP.limit uflq) >) - Pf = ? - pq⊆F : {p q : HOD} → Neighbor TP (& p) (UFLP.limit uflp) → Neighbor TP (& q) (UFLP.limit uflq) → ? ⊆ filter F - pq⊆F = ? + Pf = {!!} + pq⊆F : {p q : HOD} → Neighbor TP (& p) (UFLP.limit uflp) → Neighbor TP (& q) (UFLP.limit uflq) → {!!} ⊆ filter F + pq⊆F = {!!} isL : {v : Ordinal} → Neighbor (ProductTopology TP TQ) (& < * (UFLP.limit uflp) , * (UFLP.limit uflq) >) v → filter F ∋ * v - isL {v} npq = ? where + isL {v} npq = {!!} where bpq : Base (ZFP P Q) (pbase TP TQ) (Neighbor.u npq) (& < * (UFLP.limit uflp) , * (UFLP.limit uflq) >) bpq = Neighbor.ou npq (Neighbor.ux npq) pqb : Subbase (pbase TP TQ) (Base.b bpq ) @@ -359,27 +404,27 @@ -- BaseP ∩ F is not empty -- (Base P ∩ F) ⊆ F , (Base P ) ⊆ F , il1 : odef (Power P) z ∧ ZProj1 (filter F) z - il1 = ? -- UFLP.is-limit uflp ? bz + il1 = {!!} -- UFLP.is-limit uflp ? bz nei1 : HOD nei1 = Proj1 (* (Neighbor.u npq)) (Power P) (Power Q) plimit : Ordinal plimit = UFLP.limit uflp nproper : {b : Ordinal } → * b ⊆ nei1 → o∅ o< b - nproper = ? + nproper = {!!} b∋z : odef nei1 z - b∋z = ? + b∋z = {!!} bp : BaseP {P} TP Q z - bp = record { p = ? ; op = ? ; prod = ? } + bp = record { p = {!!} ; op = {!!} ; prod = {!!} } neip : {p : Ordinal } → ( bp : BaseP TP Q p ) → * p ⊆ filter F - neip = ? + neip = {!!} il2 : * z ⊆ ZFP (Power P) (Power Q) - il2 = ? - il3 : filter F ∋ ? - il3 = ? + il2 = {!!} + il3 : filter F ∋ {!!} + il3 = {!!} fz : odef (filter F) z - fz = subst (λ k → odef (filter F) k) &iso (filter1 F ? ? ?) - base⊆F (gi (case2 qx)) b⊆u {z} bz = ? - base⊆F (g∩ b1 b2) b⊆u {z} bz = ? + fz = subst (λ k → odef (filter F) k) &iso (filter1 F {!!} {!!} {!!}) + base⊆F (gi (case2 qx)) b⊆u {z} bz = {!!} + base⊆F (g∩ b1 b2) b⊆u {z} bz = {!!}