# HG changeset patch # User Shinji KONO # Date 1659658967 -32400 # Node ID bcc241fbb390f18ac70a54e10b4aefdf097577cd # Parent 150e1c7097ce60f9bad7c175f9ad69386bcaea0d ... diff -r 150e1c7097ce -r bcc241fbb390 src/zorn.agda --- a/src/zorn.agda Thu Aug 04 06:59:40 2022 +0900 +++ b/src/zorn.agda Fri Aug 05 09:22:47 2022 +0900 @@ -276,7 +276,8 @@ record ChainP (A : HOD ) ( f : Ordinal → Ordinal ) (mf : ≤-monotonic-f A f) {y : Ordinal} (ay : odef A y) (supf : Ordinal → Ordinal) (u : Ordinal) : Set n where field fcy ¬a ¬b c = sp1 + -- if previous chain satisfies maximality, we caan reuse it -- -- supf0 px is sup of UnionCF px , supf0 x is sup of UnionCF x - no-extension : ZChain A f mf ay x - no-extension = record { supf = supf1 ; supf-mono = ? ; sup = sup + no-extension : ¬ sp1 ≡ x → ZChain A f mf ay x + no-extension ¬sp=x = record { supf = supf1 ; supf-mono = ? ; sup = sup ; initial = ? ; chain∋init = ? ; sup=u = {!!} ; supf-is-sup = ? ; csupf = ? ; chain⊆A = ? ; f-next = ? ; f-total = ? } where - sup1 : SUP A (UnionCF A f mf ay supf0 x) - sup1 = supP pchain pchain⊆A ptotal - sp1 = & (SUP.sup sup1 ) - supf1 : Ordinal → Ordinal - supf1 z with trio< z px - ... | tri< a ¬b ¬c = ZChain.supf zc z - ... | tri≈ ¬a b ¬c = ZChain.supf zc z - ... | tri> ¬a ¬b c = sp1 UnionCF⊆ : UnionCF A f mf ay supf1 x ⊆' UnionCF A f mf ay supf0 x UnionCF⊆ ⟪ as , ch-init fc ⟫ = UnionCF⊆ ⟪ as , ch-init fc ⟫ - UnionCF⊆ ⟪ as , ch-is-sup u {z} u≤x record { fcy ¬a ¬b c | record {eq = eq1} = ? - ... | tri≈ ¬a b ¬c = ⟪ as , ch-is-sup u {z} u≤x record { fcy ¬a ¬b c | record {eq = eq1} = ? - ... | tri> ¬a ¬b c = ⟪ as , ch-is-sup u {z} u≤x record { fcy ¬a ¬b px ¬a ¬b c = ? + ... | tri> ¬a ¬b c = ⊥-elim ( ¬sp=x (subst (λ k → sp1 ≡ k ) u=x (su=u1 ?) )) where + u=x : u ≡ x + u=x with trio< u x + ... | tri< a ¬b ¬c = ? + ... | tri≈ ¬a b ¬c = b + ... | tri> ¬a ¬b c = ? sup : {z : Ordinal} → z o≤ x → SUP A (UnionCF A f mf ay supf1 z) sup {z} z≤x with trio< z px - ... | tri< a ¬b ¬c = ? -- ZChain.sup zc (o<→≤ a) - ... | tri≈ ¬a b ¬c = ? -- ZChain.sup zc (o≤-refl0 b) - ... | tri> ¬a ¬b c = ? -- sp1 + ... | tri< a ¬b ¬c = SUP⊆ ? (ZChain.sup zc (o<→≤ a)) + ... | tri≈ ¬a b ¬c = SUP⊆ ? (ZChain.sup zc (o≤-refl0 b)) + ... | tri> ¬a ¬b c = SUP⊆ ? sup1 zc4 : ZChain A f mf ay x - zc4 with ODC.∋-p O A (* px) - ... | no noapx = no-extension -- ¬ A ∋ p, just skip - ... | yes apx with ODC.p∨¬p O ( HasPrev A (ZChain.chain zc ) apx f ) + zc4 with ODC.∋-p O A (* x) + ... | no noax = no-extension ? -- ¬ A ∋ p, just skip + ... | yes ax with ODC.p∨¬p O ( HasPrev A (ZChain.chain zc ) ax f ) -- we have to check adding x preserve is-max ZChain A y f mf x - ... | case1 pr = no-extension -- we have previous A ∋ z < x , f z ≡ x, so chain ∋ f z ≡ x because of f-next - ... | case2 ¬fy ¬a ¬b c = x - ... | case2 ¬x=sup = no-extension -- px is not f y' nor sup of former ZChain from y -- no extention + + ... | case2 ¬x=sup = no-extension ? -- px is not f y' nor sup of former ZChain from y -- no extention ... | no lim = zc5 where @@ -856,7 +872,7 @@ ... | case1 eq = case1 (trans eq (sym eq1) ) ... | case2 lt = case2 (subst ( λ k → z1 << k ) (sym eq1) lt) cp1 : ChainP A f mf ay psupf z - cp1 = record { fcy