changeset 943:df68bb333cd0

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 30 Oct 2022 18:19:33 +0900
parents d396af76c559
children e1d727251e25
files src/zorn.agda
diffstat 1 files changed, 31 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/zorn.agda	Sat Oct 29 17:26:17 2022 +0900
+++ b/src/zorn.agda	Sun Oct 30 18:19:33 2022 +0900
@@ -1424,6 +1424,8 @@
           c : Ordinal 
           c = & ( SUP.sup sp1 )
           mc = MinSUP.sup msp1
+          mc<A : mc o< & A
+          mc<A =  ∈∧P→o< ⟪ MinSUP.asm msp1 , lift true ⟫
           c=mc : c ≡ mc
           c=mc = &iso
           z20 : mc << cf nmx mc 
@@ -1440,9 +1442,9 @@
           sd=ms : supf d ≡ MinSUP.sup ( ZChain.minsup zc (o<→≤ d<A) )
           sd=ms = ZChain.supf-is-minsup zc (o<→≤ d<A)
 
-          sc<<d : {mc : Ordinal } → {asc : odef A (supf mc)} → (spd : MinSUP A (uchain (cf nmx)  (cf-is-≤-monotonic nmx) asc )) 
+          sc<<d : {mc : Ordinal } → (asc : odef A (supf mc)) → (spd : MinSUP A (uchain (cf nmx)  (cf-is-≤-monotonic nmx) asc )) 
              → supf mc << MinSUP.sup spd
-          sc<<d {mc} {asc} spd = z25 where
+          sc<<d {mc} asc spd = z25 where
                 d1 :  Ordinal
                 d1 = MinSUP.sup spd -- supf d1 ≡ d
                 z24 : (supf mc ≡ d1) ∨ ( supf mc << d1 )
@@ -1463,6 +1465,25 @@
                     ... | case1 eq1 = case1 (cong (*) (trans (cong (cf nmx) (sym eq)) eq1)  ) 
                     ... | case2 lt = case2 (subst (λ k → * k < * d1 ) (cong (cf nmx) eq) lt) 
 
+          smc<<d : supf mc << d
+          smc<<d = sc<<d asc spd
+
+          sz<<c : {z : Ordinal } → z o< & A → supf z <= mc 
+          sz<<c z<A = MinSUP.x<sup msp1 (ZChain.csupf zc (z09 (ZChain.asupf zc)  ))
+
+          sc=c : supf mc ≡ mc
+          sc=c = ZChain.sup=u zc (MinSUP.asm msp1) (o<→≤ (∈∧P→o< ⟪ MinSUP.asm msp1 , lift true ⟫ )) ⟪ is-sup , not-hasprev ⟫ where
+              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
+                   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 with  MinSUP.x<sup msp1 ?
+                   ... | case1 eq = case1 (cong (*) eq)
+                   ... | case2 lt = case2 lt
+
           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
                z23 : {z : Ordinal } → odef (uchain (cf nmx) (cf-is-≤-monotonic nmx) asc) z → (z ≡ MinSUP.sup spd) ∨ (z << MinSUP.sup spd)
@@ -1475,7 +1496,7 @@
                     --     supf u o< spuf c → order
 
           not-hasprev : ¬ HasPrev A (UnionCF A (cf nmx) (cf-is-≤-monotonic nmx) as0 (ZChain.supf zc) d) d (cf nmx)
-          not-hasprev hp = ⊥-elim (z29 {mc} {asc} spd hp)  where
+          not-hasprev hp = ⊥-elim (z29 {mc} {asc} spd hp )  where
                z29 : {mc : Ordinal } {asc : odef A (supf mc)} (spd : MinSUP A (uchain (cf nmx)  (cf-is-≤-monotonic nmx) asc )) 
                   →  HasPrev A (UnionCF A (cf nmx) (cf-is-≤-monotonic nmx) as0 (ZChain.supf zc) (MinSUP.sup spd)) (MinSUP.sup spd) (cf nmx)
                   →  ⊥
@@ -1484,16 +1505,20 @@
                    y = HasPrev.y hp
                    d1 :  Ordinal
                    d1 = MinSUP.sup spd -- supf d1 ≡ d
+                   z31 :  odef (uchain (cf nmx) (cf-is-≤-monotonic nmx) asc) (cf nmx (MinSUP.sup spd))
+                   z31 = ?
                    z30 : * d1 < * (cf nmx d1)
                    z30 = proj1 (cf-is-<-monotonic nmx d1 (MinSUP.asm spd))
-                   z31 : odef (uchain (cf nmx) (cf-is-≤-monotonic nmx) asc) (cf nmx d1)
-                   z31 = ?
                    z24 : y << d1
                    z24 = subst (λ k → y <<  k) (sym (HasPrev.x=fy hp)) ( proj1 (cf-is-<-monotonic nmx y (proj1 (HasPrev.ay hp) ) ))
                    z26 : (* (cf nmx d1) ≡ * d1) ∨ (* (cf nmx d1) < * d1)
                    z26 with  MinSUP.x<sup spd z31
                    ... | case1 eq = case1 (cong (*) eq)
                    ... | case2 lt = case2 lt
+               --   case1 : FClosure of y
+               --   case2 : u o< supf mc
+               --   case3 : u ≡ supf mc      z31
+               --   case4 : supf mc o< u     ⊥ ( why ? )
                z25 : odef (ZChain.chain zc) (cf nmx d)
                z25 = ZChain.f-next zc (subst (λ k → odef (ZChain.chain zc) k) (sym (HasPrev.x=fy hp))
                    (ZChain.f-next zc 
@@ -1510,7 +1535,7 @@
           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
-          ... | case1 eq = ⊥-elim ( o<¬≡ eq ( ordtrans<-≤ (sc<sd (subst (λ k → supf mc << k ) (sym sd=d) (sc<<d {mc} {asc} spd)) ) 
+          ... | case1 eq = ⊥-elim ( o<¬≡ eq ( ordtrans<-≤ (sc<sd (subst (λ k → supf mc << k ) (sym sd=d) (sc<<d {mc} asc spd)) ) 
               ( ZChain.supf-mono zc (o<→≤ d<A ))))
 
           ss<sa : supf c o< supf (& A)