# HG changeset patch # User Shinji KONO # Date 1669861875 -32400 # Node ID 2da8dcbb0825b9d1c34865c10c8f7546744c024d # Parent 382680c3e9be4490b8c4bac895df5ca28eda3048 ch-init again, because ch-is-sup require u ¬a ¬b c = ? - -- ... | tri≈ ¬a b ¬c = ? - -- ... | tri< a ¬b ¬c = ? + chain∋init : {x : Ordinal } → x o≤ z → odef (UnionCF A f ay supf x) y + chain∋init {x} x≤z = ⟪ ay , ch-init (init ay refl) ⟫ + + f-next : {a z : Ordinal} → odef (UnionCF A f ay supf z) a → odef (UnionCF A f ay supf z) (f a) + f-next {a} ⟪ ua , ch-init fc ⟫ = ⟪ proj2 ( mf _ ua) , ch-init (fsuc _ fc) ⟫ + f-next {a} ⟪ ua , ch-is-sup u su ¬a ¬b c = ? where - cp4 : supf (supf s) ≡ supf s - cp4 = ? - cp3 : supf s o< x - cp3 = ? - cp2 : odef (UnionCF A f supf x) (supf s) - cp2 = ⟪ asupf , ch-is-sup (supf s) cp3 cp4 (init asupf cp4) ⟫ --- ... | case1 eq = ? --- ... | case2 lt = ? + -- different from order because y o< supf + fcy (λ lt → <-irr (case2 b ¬a ¬b c = ⊥-elim ( o≤> ( begin @@ -522,13 +522,13 @@ spb ≡⟨ sym sbx=spb ⟩ supfb x ∎ ) c ) where open o≤-Reasoning O - z53 : {z : Ordinal } → odef (UnionCF A f (ZChain.supf za) x) z → odef (UnionCF A f (ZChain.supf zb) x) z + z53 : {z : Ordinal } → odef (UnionCF A f ay (ZChain.supf za) x) z → odef (UnionCF A f ay (ZChain.supf zb) x) z z53 {z} ⟪ as , cp ⟫ = ⟪ as , ? ⟫ UChain-eq : { A : HOD } { f : Ordinal → Ordinal } {mf : ≤-monotonic-f A f} {z y : Ordinal} {ay : odef A y} { supf0 supf1 : Ordinal → Ordinal } → (seq : {x : Ordinal } → x o< z → supf0 x ≡ supf1 x ) - → UnionCF A f supf0 z ≡ UnionCF A f supf1 z + → UnionCF A f ay supf0 z ≡ UnionCF A f ay supf1 z UChain-eq {A} {f} {mf} {z} {y} {ay} {supf0} {supf1} seq = ==→o≡ record { eq← = ueq← ; eq→ = ueq→ } where ueq← : {x : Ordinal} → odef A x ∧ ? → odef A x ∧ ? ueq← {z} ⟪ ab , cp ⟫ = ⟪ ab , ? ⟫ @@ -646,11 +646,11 @@ {init : Ordinal} (ay : odef A init) (zc : ZChain A f mf ay (& A)) (x : Ordinal) → x o≤ & A → ZChain1 A f mf ay zc x SZ1 f mf mf< {y} ay zc x x≤A = zc1 x x≤A where chain-mono1 : {a b c : Ordinal} → a o≤ b - → odef (UnionCF A f (ZChain.supf zc) a) c → odef (UnionCF A f (ZChain.supf zc) b) c + → odef (UnionCF A f ay (ZChain.supf zc) a) c → odef (UnionCF A f ay (ZChain.supf zc) b) c chain-mono1 {a} {b} {c} a≤b = chain-mono f mf ay (ZChain.supf zc) (ZChain.supf-mono zc) a≤b - is-max-hp : (x : Ordinal) {a : Ordinal} {b : Ordinal} → odef (UnionCF A f (ZChain.supf zc) x) a → (ab : odef A b) - → HasPrev A (UnionCF A f (ZChain.supf zc) x) f b - → * a < * b → odef (UnionCF A f (ZChain.supf zc) x) b + is-max-hp : (x : Ordinal) {a : Ordinal} {b : Ordinal} → odef (UnionCF A f ay (ZChain.supf zc) x) a → (ab : odef A b) + → HasPrev A (UnionCF A f ay (ZChain.supf zc) x) f b + → * a < * b → odef (UnionCF A f ay (ZChain.supf zc) x) b is-max-hp x {a} {b} ua ab has-prev a ¬a ¬b c with trio< a px ... | tri< a ¬a ¬b c = ⊥-elim ( o<¬≡ refl (ordtrans<-≤ c (OrdTrans ? sp≤x))) -- x o< supf0 px o≤ sp1 ≤ x ... | tri> ¬a ¬b c = ⊥-elim ( ¬p ¬a ¬b px ¬a ¬b c = zc36 ¬b ... | tri≈ ¬a b ¬c = record { tsup = ? ; tsup=sup = ? } where - zc37 : MinSUP A (UnionCF A f supf0 z) + zc37 : MinSUP A (UnionCF A f ay supf0 z) zc37 = record { sup = ? ; asm = ? ; x≤sup = ? ; minsup = ? } sup=u : {b : Ordinal} (ab : odef A b) → - b o≤ x → IsMinSUP A (UnionCF A f supf0 b) b ∧ (¬ HasPrev A (UnionCF A f supf0 b) f b ) → supf0 b ≡ b + b o≤ x → IsMinSUP A (UnionCF A f ay supf0 b) b ∧ (¬ HasPrev A (UnionCF A f ay supf0 b) f b ) → supf0 b ≡ b sup=u {b} ab b≤x is-sup with trio< b px ... | tri< a ¬b ¬c = ZChain.sup=u zc ab (o<→≤ a) ⟪ record { x≤sup = λ lt → IsMinSUP.x≤sup (proj1 is-sup) lt } , ? ⟫ ... | tri≈ ¬a b ¬c = ZChain.sup=u zc ab (o≤-refl0 b) ⟪ record { x≤sup = λ lt → IsMinSUP.x≤sup (proj1 is-sup) lt } , ? ⟫ @@ -1218,7 +1218,10 @@ zc32 : {w : Ordinal } → odef pchainpx w → (w ≡ b) ∨ (w << b) zc32 = ? - ... | no lim = record { supf = supf1 ; sup=u = ? ; asupf = ? ; supf-mono = supf-mono ; order = ? + ... | no lim with trio< x o∅ + ... | tri< a ¬b ¬c = ⊥-elim ( ¬x<0 a ) + ... | tri≈ ¬a b ¬c = record { supf = ? } + ... | tri> ¬a ¬b 0 ¬a ¬b c = spu pchain : HOD - pchain = UnionCF A f supf1 x + pchain = UnionCF A f ay supf1 x -- pchain ⊆ pchainx @@ -1316,7 +1319,7 @@ ... | tri> ¬a ¬b c = ? cfcs : (mf< : <-monotonic-f A f) {a b w : Ordinal } - → a o< b → b o≤ x → supf1 a o< b → FClosure A f (supf1 a) w → odef (UnionCF A f supf1 b) w + → a o< b → b o≤ x → supf1 a o< b → FClosure A f (supf1 a) w → odef (UnionCF A f ay supf1 b) w cfcs mf< {a} {b} {w} a