# HG changeset patch # User Shinji KONO # Date 1678755023 -32400 # Node ID a7dfcbbd07fff1c1dcd39d932453cef548e0396f # Parent 50fcf7f047d16f161dbc5b5ca9632e2b49795740 f1 f2 done diff -r 50fcf7f047d1 -r a7dfcbbd07ff src/generic-filter.agda --- a/src/generic-filter.agda Tue Mar 14 06:19:42 2023 +0900 +++ b/src/generic-filter.agda Tue Mar 14 09:50:23 2023 +0900 @@ -1,22 +1,22 @@ {-# OPTIONS --allow-unsolved-metas #-} -import Level +import Level open import Ordinals module generic-filter {n : Level.Level } (O : Ordinals {n}) where -import filter +import filter open import zf open import logic -- open import partfunc {n} O -import OD +import OD -open import Relation.Nullary -open import Relation.Binary -open import Data.Empty +open import Relation.Nullary +open import Relation.Binary +open import Data.Empty open import Relation.Binary open import Relation.Binary.Core open import Relation.Binary.PropositionalEquality -open import Data.Nat -import BAlgebra +open import Data.Nat +import BAlgebra open BAlgebra O @@ -50,7 +50,7 @@ -- open import Data.List hiding (filter) -open import Data.Maybe +open import Data.Maybe open import ZProduct O @@ -58,19 +58,19 @@ field ctl-M : HOD ctl→ : ℕ → Ordinal - ctl ¬a ¬b c = ⊥-elim ( nat-≤> n≤m c ) @@ -161,7 +161,7 @@ d⊆P : dense ⊆ L dense-f : {p : HOD} → L ∋ p → HOD dense-d : { p : HOD} → (lt : L ∋ p) → dense ∋ dense-f lt - dense-p : { p : HOD} → (lt : L ∋ p) → (dense-f lt) ⊆ p + dense-p : { p : HOD} → (lt : L ∋ p) → (dense-f lt) ⊆ p record GenericFilter {L P : HOD} (LP : L ⊆ Power P) (M : HOD) : Set (Level.suc n) where field @@ -172,17 +172,18 @@ -- \-⊆ -P-GenericFilter : (P L p0 : HOD ) → (LP : L ⊆ Power P) → L ∋ p0 - → (CAP : {p q : HOD} → L ∋ p → L ∋ q → L ∋ (p ∩ q )) +P-GenericFilter : (P L p0 : HOD ) → (LP : L ⊆ Power P) → L ∋ p0 + → (CAP : {p q : HOD} → L ∋ p → L ∋ q → L ∋ (p ∩ q )) -- L is Boolean Algebra + → (UNI : {p q : HOD} → L ∋ p → L ∋ q → L ∋ (p ∪ q )) → (NEG : ({p : HOD} → L ∋ p → L ∋ ( P \ p))) → (C : CountableModel ) → GenericFilter {L} {P} LP ( ctl-M C ) -P-GenericFilter P L p0 L⊆PP Lp0 CAP NEG C = record { - genf = record { filter = Replace (PDHOD L p0 C) (λ x → P \ x) ; f⊆L = gf01 ; filter1 = ? ; filter2 = ? } +P-GenericFilter P L p0 L⊆PP Lp0 CAP UNI NEG C = record { + genf = record { filter = Replace (PDHOD L p0 C) (λ x → P \ x) ; f⊆L = gf01 ; filter1 = f1 ; filter2 = f2 } ; generic = λ D cd → subst (λ k → ¬ (Dense.dense D ∩ k) ≡ od∅ ) (sym gf00) (fdense D cd ) } where - GP = Replace (PDHOD L p0 C) (λ x → P \ x) - f⊆PL : PDHOD L p0 C ⊆ L - f⊆PL lt = x∈PP lt + GP = Replace (PDHOD L p0 C) (λ x → P \ x) + f⊆PL : PDHOD L p0 C ⊆ L + f⊆PL lt = x∈PP lt gf01 : Replace (PDHOD L p0 C) (λ x → P \ x) ⊆ L gf01 {x} record { z = z ; az = az ; x=ψz = x=ψz } = subst (λ k → odef L k) (sym x=ψz) ( NEG (subst (λ k → odef L k) (sym &iso) (f⊆PL az)) ) gf141 : {xp xq : Ordinal } → (Pp : PDN L p0 C xp) (Pq : PDN L p0 C xq) → (* xp ∪ * xq) ⊆ P @@ -195,7 +196,7 @@ * (& (P \ (* xp ))) ∩ (* (& (P \ (* xq )))) ≡⟨ cong₂ (λ j k → j ∩ k ) *iso *iso ⟩ (P \ (* xp )) ∩ (P \ (* xq )) ≡⟨ gf02 {P} {* xp} {* xq} ⟩ P \ ((* xp) ∪ (* xq)) ≡⟨ cong (λ k → P \ k) (sym *iso) ⟩ - P \ * (& (* xp ∪ * xq)) ∎ where + P \ * (& (* xp ∪ * xq)) ∎ where open ≡-Reasoning xp = Replaced.z gp xq = Replaced.z gq @@ -203,89 +204,89 @@ gf131 {p} {q} gp gq = trans (cong (λ k → P \ k) (gf121 gp gq)) (trans ( L\Lx=x (subst (λ k → k ⊆ P) (sym *iso) (gf141 (Replaced.az gp) (Replaced.az gq))) ) *iso ) - f1 : {p q : HOD} → L ∋ q → PDHOD L p0 C ∋ p → p ⊆ q → PDHOD L p0 C ∋ q - f1 {p} {q} L∋q PD∋p p⊆q = ? + f1 : {p q : HOD} → L ∋ q → Replace (PDHOD L p0 C) (λ x → P \ x) ∋ p → p ⊆ q → Replace (PDHOD L p0 C) (λ x → P \ x) ∋ q + f1 {p} {q} L∋q record { z = z ; az = az ; x=ψz = x=ψz } p⊆q = record { z = _ + ; az = record { gr = gr az ; pn ¬a ¬b c = record { z = & ( (* xp) ∪ (* xq) ) ; az = gf10 ; x=ψz = cong (&) (gf121 gp gq ) } where - gp = record { z = xp ; az = Pp ; x=ψz = peq } - gq = record { z = xq ; az = Pq ; x=ψz = qeq } + -- gf02 : {P a b : HOD } → (P \ a) ∩ (P \ b) ≡ ( P \ (a ∪ b) ) + gf23 : & (p ∩ q) ≡ & (P \ * (& (* xp ∪ * xq))) + gf23 = cong (&) (gf121 gp gq ) + ... | tri> ¬a ¬b c = record { z = & ( (* xp) ∪ (* xq) ) ; az = gf10 ; x=ψz = cong (&) (gf121 gp gq ) } where + gp = record { z = xp ; az = Pp ; x=ψz = peq } + gq = record { z = xq ; az = Pq ; x=ψz = qeq } gf10 : odef (PDHOD L p0 C) (& (* xp ∪ * xq)) gf10 = record { gr = PDN.gr Pp ; pn ) val : (x : HOD) {P L : HOD } {LP : L ⊆ Power P}