changeset 1468:51b6bc16593c

filter fix done
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 21 Jun 2024 10:13:46 +0900
parents ca5bfb401ada
children 9d8fbfc5bf87
files src/filter.agda
diffstat 1 files changed, 23 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/src/filter.agda	Thu Jun 20 18:15:17 2024 +0900
+++ b/src/filter.agda	Fri Jun 21 10:13:46 2024 +0900
@@ -254,7 +254,7 @@
              mu42 {z} ⟪ xz , ¬p ⟫ = xz
          F=mf : F =h= filter mf
          F=mf with osuc-≡< ( ⊆→o≤ FisGreater )
-         ... | case1 eq = ord→== (sym eq) -- &≡&→≡ (sym eq)
+         ... | case1 eq = ord→== (sym eq) 
          ... | case2 lt = ⊥-elim ( MaximumFilter.is-maximum mx FisFilter FisProper F0⊆F ⟪ lt , FisGreater ⟫ )
 
 
@@ -270,19 +270,21 @@
          um02 : {y : Ordinal } → odef (filter F) y ∧ (¬ odef (filter U) y) → y o< & L
          um02 {y} Fy = odef< ( f⊆L F (proj1 Fy ) )
      GT≠∅ :  ¬ (GT =h= od∅)
-     GT≠∅ eq = ? where -- ⊥-elim (U≠F ( ==→o≡ ((⊆→= {filter U} {filter F}) U⊆F (U-F=∅→F⊆U {filter F} {filter U} gt01)))) where
-        U≠F : ¬ ( filter U ≡ filter F )
-        U≠F eq = o<¬≡ (cong (&) eq) U<F
+     GT≠∅ eq = ⊥-elim (U≠F ( ==→o≡ ((⊆→= {filter U} {filter F}) U⊆F  gt02 )   ) ) where
+        U≠F : ¬ ( & (filter U) ≡ & (filter F ))
+        U≠F eq  = o<¬≡ eq U<F
         gt01 : (x : Ordinal) → ¬ ( odef (filter F) x ∧ (¬ odef (filter U) x))
         gt01 x not = ¬x<0 ( eq→ eq not )
+        gt02 : filter F ⊆ filter U
+        gt02 {x} fx = U-F=∅→F⊆U {filter U} {filter F} {filter U} (λ x → x) gt01 fx
      p : HOD
      p = minimal GT GT≠∅
      ¬U∋p : ¬ ( filter U ∋ p )
-     ¬U∋p = ? -- proj2 (ODC.x∋minimal O GT GT≠∅)
+     ¬U∋p = proj2 (x∋minimal GT GT≠∅)
      L∋p : L ∋  p
-     L∋p = ? -- f⊆L F ( proj1 (ODC.x∋minimal O GT GT≠∅))
+     L∋p = f⊆L F ( proj1 (x∋minimal GT GT≠∅))
      um00 : ¬ odef (filter U) (& p)
-     um00 = ? -- proj2 (ODC.x∋minimal O GT GT≠∅)
+     um00 = proj2 (x∋minimal GT GT≠∅)
      L∋-p : L ∋  ( P \ p )
      L∋-p = NEG L∋p
      U∋-p : filter U ∋  ( P \ p )
@@ -290,11 +292,14 @@
      ... | case1 ux = ⊥-elim ( ¬U∋p ux )
      ... | case2 u-x = u-x
      F∋p : filter F ∋ p
-     F∋p = ? -- proj1 (ODC.x∋minimal O GT GT≠∅)
+     F∋p = proj1 (x∋minimal GT GT≠∅)
      F∋-p : filter F ∋ ( P \ p )
      F∋-p = U⊆F U∋-p 
      f0 : filter F ∋ od∅
-     f0 = ? -- subst (λ k → odef (filter F) k ) (trans (cong (&) ∩-comm) (cong (&) [a-b]∩b=0 ) ) ( filter2 F F∋p F∋-p ( CAP L∋p L∋-p) )
+     f0 = subst (λ k → odef (filter F) k ) (==→o≡ ff0 ) ( filter2 F F∋p F∋-p ( CAP L∋p L∋-p) ) where
+         ff0 : (p ∩ (P \ p)) =h= od∅
+         ff0 = record { eq→ = λ {x} lt → ⊥-elim (proj2 (proj2 lt ) (proj1 lt)) 
+                     ;  eq← = λ {x} lt → ⊥-elim ( ¬∅∋ (subst (λ k → odef od∅ k) (sym &iso) lt )) }
 
 --  if there is a filter , there is a ultra filter under the axiom of choise
 --        Zorn Lemma
@@ -308,10 +313,12 @@
 
 Filter-is-Filter : { L P : HOD  } (LP : L ⊆ Power P) → (F : Filter {L} {P} LP) → (proper : ¬ (filter F) ∋ od∅ ) → IsFilter {L} {P} LP (& (filter F))
 Filter-is-Filter {L} {P} LP F proper = record { 
-       f⊆L     = ? -- subst (λ k → k ⊆ L ) (sym *iso) (f⊆L F)
-     ; filter1 = ? -- λ {p} {q} Lq Fp p⊆q → subst₂ (λ j k → odef j k ) (sym *iso) &iso 
-        -- ( filter1 F (subst (λ k → odef L k) (sym &iso) Lq) (subst₂ (λ j k → odef j k ) *iso (sym &iso) Fp) p⊆q  )
-     ; filter2 = ? -- λ {p} {q} Fp Fq Lpq → subst₂ (λ j k → odef j k ) (sym *iso) refl ( filter2 F (subst₂ (λ j k → odef j k ) *iso (sym &iso) Fp)
-         -- (subst₂ (λ j k → odef j k ) *iso (sym &iso) Fq) Lpq )
-     ; proper  = ? -- subst₂ (λ j k → ¬ odef j k ) (sym *iso) ord-od∅ proper 
-   }
+       f⊆L     = λ {x} lt →  f⊆L F (eq→  *iso  lt ) 
+     ; filter1 = λ {p} {q} Lq Fp p⊆q → eq←  *iso (subst (λ k → odef (filter F) k )  &iso 
+         (filter1 F (subst (λ k → odef L k) (sym &iso) Lq) (subst (λ k → odef (filter F) k) (sym &iso) (eq→ *iso Fp ) ) p⊆q ))
+     ; filter2 = λ {p} {q} Fp Fq Lpq → eq← *iso (filter2 F 
+         (subst (λ k → odef (filter F) k) (sym &iso) (eq→ *iso Fp )) 
+         (subst (λ k → odef (filter F) k) (sym &iso) (eq→ *iso Fq )) 
+         Lpq )
+     ; proper  = λ lt → proper (eq→ *iso (subst (λ k → odef (* (& (filter F))) k) (sym ord-od∅) lt )) 
+   }