Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 737:961abb22f2d9
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 19 Jul 2022 15:56:49 +0900 |
parents | 3c3e3a1291bb |
children | ffd3bb1a43fe |
files | src/zorn.agda |
diffstat | 1 files changed, 23 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Tue Jul 19 15:14:50 2022 +0900 +++ b/src/zorn.agda Tue Jul 19 15:56:49 2022 +0900 @@ -478,12 +478,20 @@ m01 with trio< b px --- px < b < x ... | tri> ¬a ¬b c = ⊥-elim (¬p<x<op ⟪ c , subst (λ k → b o< k ) (sym (Oprev.oprev=x op)) b<x ⟫) ... | tri< b<px ¬b ¬c = chain-mono2 x ( o<→≤ (subst (λ k → px o< k) (Oprev.oprev=x op) <-osuc )) o≤-refl m04 where + m02 : (UChain.u (proj2 ua) o< px) ∨ (UChain.u (proj2 ua) ≡ o∅) + m02 with UChain.u<x (proj2 ua) + ... | case2 u=0 = case2 u=0 + ... | case1 u<x with trio< (UChain.u (proj2 ua)) px + ... | tri< a ¬b ¬c = case1 a + ... | tri> ¬a ¬b c = ⊥-elim (¬p<x<op ⟪ c , subst (λ k → _ o< k ) (sym (Oprev.oprev=x op)) u<x ⟫) -- u<x px<u + ... | tri≈ ¬a b ¬c = ? -- u = px case + --- if u = px, x is sup px ≡ u < a < b o< x, b ≡ px ∨ b o< a m03 : odef (UnionCF A f mf ay (ZChain.supf zc) px) a - m03 = ? + m03 = ⟪ proj1 ua , record { u = UChain.u (proj2 ua) ; u<x = m02 ; uchain = UChain.uchain (proj2 ua) } ⟫ m04 : odef (UnionCF A f mf ay (ZChain.supf zc) px) b m04 = ZChain1.is-max (prev px px<x) m03 b<px ab (case2 record {x<sup = λ {z} lt → IsSup.x<sup is-sup (chain-mono2 x ( o<→≤ (subst (λ k → px o< k) (Oprev.oprev=x op) <-osuc )) o≤-refl lt) } ) a<b - ... | tri≈ ¬a b=px ¬c = {!!} + ... | tri≈ ¬a b=px ¬c = {!!} -- b = px case ... | no lim = record { is-max = is-max ; chain-mono2 = chain-mono2 x } where is-max : {a : Ordinal} {b : Ordinal} → odef (UnionCF A f mf ay (ZChain.supf zc) x) a → b o< x → (ab : odef A b) → @@ -492,7 +500,7 @@ is-max {a} {b} ua b<x ab (case1 has-prev) a<b = is-max-hp x {a} {b} ua b<x ab has-prev a<b is-max {a} {b} ua b<x ab (case2 is-sup) a<b = chain-mono2 x ? o≤-refl m04 where m05 : b ≡ ZChain.supf zc b - m05 = sym (ZChain.sup=u ? ab is-sup) + m05 = sym (ZChain.sup=u ? ab is-sup) -- ZChain on x m04 : odef (UnionCF A f mf ay (ZChain.supf zc) (osuc b)) b m04 = ⟪ ab , record { u = b ; u<x = case1 <-osuc ; uchain = ch-is-sup ? (subst (λ k → FClosure A f k b) m05 (init ab)) } ⟫ @@ -561,7 +569,7 @@ inititalChain : ( f : Ordinal → Ordinal ) → (mf : ≤-monotonic-f A f ) {y : Ordinal} (ay : odef A y) → ZChain A f mf ay o∅ inititalChain f mf {y} ay = record { supf = isupf ; chain⊆A = λ lt → proj1 lt ; chain∋init = cy - ; initial = isy ; f-next = inext ; f-total = itotal ; chain<A = {!!} } where + ; initial = isy ; f-next = inext ; f-total = itotal ; chain<A = ? ; sup=u = ? } where isupf : Ordinal → Ordinal isupf z = y cy : odef (UnionCF A f mf ay isupf o∅) y @@ -632,7 +640,7 @@ -- if previous chain satisfies maximality, we caan reuse it -- no-extension : ZChain A f mf ay x - no-extension = record { supf = {!!} ; initial = pinit ; chain∋init = pcy + no-extension = record { supf = ZChain.supf (prev px ? ); initial = pinit ; chain∋init = pcy ; chain⊆A = pchain⊆A ; f-next = pnext ; f-total = ptotal } chain-mono : UnionCF A f mf ay (ZChain.supf zc) (Oprev.oprev op ) ⊆' pchain @@ -728,17 +736,17 @@ ... | tri> ¬a ¬b c = spu - chain-mono : pchain ⊆' UnionCF A f mf ay psupf x - chain-mono {a} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-init a x } ⟫ = - ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-init a x } ⟫ - chain-mono {.(psupf0 u)} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup is-sup (init x) } ⟫ = - ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup {!!} {!!} } ⟫ - chain-mono {.(f x)} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup is-sup (fsuc x fc) } ⟫ = - ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup {!!} (fsuc x {!!}) } ⟫ + -- chain-mono : pchain ⊆' UnionCF A f mf ay psupf x + -- chain-mono {a} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-init a x } ⟫ = + -- ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-init a x } ⟫ + -- chain-mono {.(psupf0 u)} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup is-sup (init x) } ⟫ = + -- ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup {!!} {!!} } ⟫ + -- chain-mono {.(f x)} ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup is-sup (fsuc x fc) } ⟫ = + -- ⟪ az , record { u = u ; u<x = u<x ; uchain = ch-is-sup {!!} (fsuc x {!!}) } ⟫ - chain-≡ : UnionCF A f mf ay psupf x ⊆' pchain - → UnionCF A f mf ay psupf x ≡ pchain - chain-≡ lt = ==→o≡ record { eq→ = lt ; eq← = chain-mono } + -- chain-≡ : UnionCF A f mf ay psupf x ⊆' pchain + -- → UnionCF A f mf ay psupf x ≡ pchain + -- chain-≡ lt = ==→o≡ record { eq→ = lt ; eq← = chain-mono } zc5 : ZChain A f mf ay x zc5 with ODC.∋-p O A (* x)