# HG changeset patch # User Shinji KONO # Date 1663326730 -32400 # Node ID a639a0d9265965379947ea5d5936cc4636ec843b # Parent 2eaa61279c361457744ca15372a04eba437433e0 ... diff -r 2eaa61279c36 -r a639a0d92659 src/zorn.agda --- a/src/zorn.agda Thu Sep 15 16:24:31 2022 +0900 +++ b/src/zorn.agda Fri Sep 16 20:12:10 2022 +0900 @@ -52,10 +52,10 @@ -- Partial Order on HOD ( possibly limited in A ) -- -_<<_ : (x y : Ordinal ) → Set n -- Set n order +_<<_ : (x y : Ordinal ) → Set n x << y = * x < * y -_<=_ : (x y : Ordinal ) → Set n -- Set n order +_<=_ : (x y : Ordinal ) → Set n -- we can't use * x ≡ * y, it is Set (Level.suc n). Level (suc n) troubles Chain x <= y = (x ≡ y ) ∨ ( * x < * y ) POO : IsStrictPartialOrder _≡_ _<<_ @@ -409,17 +409,17 @@ supf-idem : {x : Ordinal } → supf (supf x) ≡ supf x supf-idem = ? - x≤supfx : {x : Ordinal } → x o≤ supf x + x≤supfx : (x : Ordinal ) → x o≤ supf x x≤supfx = ? supf∈A : {b : Ordinal} → b o≤ z → odef A (supf b) supf∈A {b} b≤z = subst (λ k → odef A k ) (sym (supf-is-sup b≤z)) ( SUP.as ( sup b≤z ) ) - fcy (<-irr (case2 lt1)) (λ eq → <-irr (case1 eq) lt1) lt1 where + lt1 : a0 < b0 + lt1 = subst₂ (λ j k → j < k ) *iso *iso lt + ptotal (case2 a) (case2 b) = subst₂ (λ j k → Tri (j < k) (j ≡ k) (k < j)) *iso *iso (fcn-cmp px f mf a b) + + sup1 : SUP A pchainpx + sup1 = supP pchainpx zc01 ptotal sp1 : Ordinal - sp1 = & (SUP.sup (sup1 sfpx=px )) + sp1 = & (SUP.sup sup1 ) supf1 : Ordinal → Ordinal supf1 z with trio< z px ... | tri< a ¬b ¬c = supf0 z - ... | tri≈ ¬a b ¬c = supf0 z - ... | tri> ¬a ¬b c = sp1 sfpx=px + ... | tri≈ ¬a b ¬c = px + ... | tri> ¬a ¬b c = sp1 pchainp : HOD - pchainp = UnionCF A f mf ay (supfp sfpx=px ) x + pchainp = UnionCF A f mf ay supf1 x ... | case2 px ¬a ¬b c = supf0 px - pchain1 : (sfpx=px : px o< supfp px ) → HOD - pchain1 lt = UnionCF A f mf ay supfp x + pchain1 : HOD + pchain1 = UnionCF A f mf ay supf1 x zc10 : {z : Ordinal} → OD.def (od pchain) z → OD.def (od pchain1) z zc10 {z} ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ - zc10 {z} ⟪ az , ch-is-sup u1 u1 ¬a ¬b px ¬a ¬b c = ⊥-elim ( o<> u1 ¬a ¬b px ¬a ¬b px x≤z (subst (λ k → z o< k ) (Oprev.oprev=x op) (ordtrans a <-osuc ))) - ... | tri≈ ¬a b ¬c = ⊥-elim ( o≤> x≤z (subst (λ k → k o< x ) (sym b) (pxo ¬a ¬b c = refl - - pchain0=x : UnionCF A f mf ay supf0 px ≡ UnionCF A f mf ay supf1 px - pchain0=x = ==→o≡ record { eq→ = zc10 ; eq← = zc11 } where - zc10 : {z : Ordinal} → OD.def (od pchain) z → odef (UnionCF A f mf ay supf1 px) z - zc10 {z} ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ - zc10 {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup fc ⟫ = ⟪ az , ch-is-sup u1 ? ? ? ⟫ - zc11 : {z : Ordinal} → odef (UnionCF A f mf ay supf1 px) z → OD.def (od pchain) z - zc11 {z} ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ - zc11 {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup fc ⟫ = ? - - + ... | case1 is-sup = ? -- x is a sup of zc ... | case2 ¬x=sup = no-extension (case1 nsup) where -- px is not f y' nor sup of former ZChain from y -- no extention nsup : ¬ xSUP (UnionCF A f mf ay supf0 px) x nsup s = ¬x=sup z12 where