Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 951:86a2bfb7222e
supf mc = mc
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 01 Nov 2022 11:57:52 +0900 |
parents | 6e126013f056 |
children | 05f54e16f138 |
files | src/zorn.agda |
diffstat | 1 files changed, 18 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Tue Nov 01 09:21:19 2022 +0900 +++ b/src/zorn.agda Tue Nov 01 11:57:52 2022 +0900 @@ -79,6 +79,10 @@ <-ftrans {x} {_} {z} (case2 x<y ) (case1 refl ) = case2 x<y <-ftrans {x} {y} {z} (case2 x<y) (case2 y<z) = case2 ( IsStrictPartialOrder.trans PO x<y y<z ) +ftrans<=-< : {x y z : Ordinal } → x <= y → y << z → x << z +ftrans<=-< {x} {y} {z} (case1 eq) y<z = subst (λ k → k < * z) ? y<z +ftrans<=-< {x} {y} {z} (case2 lt) y<z = IsStrictPartialOrder.trans PO lt y<z + <=to≤ : {x y : Ordinal } → x <= y → * x ≤ * y <=to≤ (case1 eq) = case1 (cong (*) eq) <=to≤ (case2 lt) = case2 lt @@ -1501,11 +1505,16 @@ is-sup : IsSup A (UnionCF A (cf nmx) (cf-is-≤-monotonic nmx) as0 (ZChain.supf zc) mc) (MinSUP.asm msp1) is-sup = record { x≤sup = λ zy → MinSUP.x≤sup msp1 (chain-mono (cf nmx) (cf-is-≤-monotonic nmx) as0 supf (ZChain.supf-mono zc) (o<→≤ mc<A) zy )} not-hasprev : ¬ HasPrev A (UnionCF A (cf nmx) (cf-is-≤-monotonic nmx) as0 (ZChain.supf zc) mc) mc (cf nmx) - not-hasprev hp = <-irr z26 z30 where + not-hasprev record { ax = ax ; y = y ; ay = ⟪ ua1 , ch-init fc ⟫ ; x=fy = x=fy } = ? + not-hasprev record { ax = ax ; y = y ; ay = ⟪ ua1 , ch-is-sup u u<x is-sup1 fc ⟫; x=fy = x=fy } = ⊥-elim ( <-irr z48 z32 ) where z30 : * mc < * (cf nmx mc) z30 = proj1 (cf-is-<-monotonic nmx mc (MinSUP.asm msp1)) - z26 : (* (cf nmx mc) ≡ * mc) ∨ (* (cf nmx mc) < * mc) - z26 = ? + z31 : ( supf mc ≡ mc ) ∨ ( * (supf mc) < * mc ) + z31 = MinSUP.x≤sup msp1 (ZChain.csupf zc (z09 (ZChain.asupf zc) )) + z32 : * (supf mc) < * (cf nmx (cf nmx y)) + z32 = ftrans<=-< z31 (subst (λ k → * mc < * k ) (cong (cf nmx) x=fy) z30 ) + z48 : ( * (cf nmx (cf nmx y)) ≡ * (supf mc)) ∨ (* (cf nmx (cf nmx y)) < * (supf mc) ) + z48 = <=to≤ (ZChain1.order (SZ1 (cf nmx) (cf-is-≤-monotonic nmx) as0 zc (& A)) mc<A u<x (fsuc _ ( fsuc _ fc ))) is-sup : IsSup A (UnionCF A (cf nmx) (cf-is-≤-monotonic nmx) as0 (ZChain.supf zc) d) (MinSUP.asm spd) is-sup = record { x≤sup = z22 } where @@ -1542,20 +1551,14 @@ z56 eq = cong supf eq z57 : u << mc → supf u o≤ supf mc z57 lt = ZChain.supf-<= zc (case2 z58) where - z58 : supf u << supf mc -- supf u o< supf d - z58 = ? - z59 : supf mc o< supf u → ⊥ → supf mc << supf u - z59 lt = ? - -- --with z52 - -- ... | case1 eq = ? - -- ... | case2 lt = ? -- ZChain.supf-<= zc (case2 ? ) + z58 : supf u << supf mc -- supf u o< supf d -- supf u << supf d + z58 = subst₂ ( λ j k → j << k ) (sym (ChainP.supu=u is-sup1)) (sym sc=c) lt z49 : supf u o< supf mc → (cf nmx (cf nmx y) ≡ supf mc) ∨ (* (cf nmx (cf nmx y)) < * (supf mc) ) z49 su<smc = ZChain1.order (SZ1 (cf nmx) (cf-is-≤-monotonic nmx) as0 zc (& A)) mc<A su<smc (fsuc _ ( fsuc _ fc )) z50 : (cf nmx (cf nmx y) ≡ supf d) ∨ (* (cf nmx (cf nmx y)) < * (supf d) ) z50 = ZChain1.order (SZ1 (cf nmx) (cf-is-≤-monotonic nmx) as0 zc (& A)) d<A u<x (fsuc _ ( fsuc _ fc )) z47 : {mc d1 : Ordinal } {asc : odef A (supf mc)} (spd : MinSUP A (uchain (cf nmx) (cf-is-≤-monotonic nmx) asc )) - → (cf nmx (cf nmx y) ≡ supf mc) ∨ (* (cf nmx (cf nmx y)) < * (supf mc) ) - → supf mc << d1 + → (cf nmx (cf nmx y) ≡ supf mc) ∨ (* (cf nmx (cf nmx y)) < * (supf mc) ) → supf mc << d1 → * (cf nmx (cf nmx y)) < * d1 z47 {mc} {d1} {asc} spd (case1 eq) smc<d = subst (λ k → k < * d1 ) (sym (cong (*) eq)) smc<d z47 {mc} {d1} {asc} spd (case2 lt) smc<d = IsStrictPartialOrder.trans PO lt smc<d @@ -1588,6 +1591,9 @@ ... | case1 eq = ⊥-elim ( <-irr (case1 (cong (*) (sym eq) )) sc<<sd ) ... | case2 lt = lt + ¬sms=sa : ¬ ( supf mc ≡ supf (& A)) -- → supf mc ≡ supf d ≡ supf (& A), supf mc << d + ¬sms=sa = ? + sms<sa : supf mc o< supf (& A) sms<sa with osuc-≡< ( ZChain.supf-mono zc (o<→≤ ( ∈∧P→o< ⟪ MinSUP.asm msp1 , lift true ⟫) )) ... | case2 lt = lt