# HG changeset patch # User Shinji KONO # Date 1657634731 -32400 # Node ID 01a88eeb9d00acac9db4e291a36b3c486927428b # Parent 0278f0d151f28798a6692ce368803c687e1edbb3 ... diff -r 0278f0d151f2 -r 01a88eeb9d00 src/zorn.agda --- a/src/zorn.agda Tue Jul 12 22:50:40 2022 +0900 +++ b/src/zorn.agda Tue Jul 12 23:05:31 2022 +0900 @@ -477,7 +477,7 @@ ind f mf {y} ay x prev with trio< y x ... | tri> ¬a ¬b c = ? ... | tri≈ ¬a refl ¬c = ? - ... | tri< 0 ¬a ¬b c = x + pchain⊆A : {y : Ordinal} → odef pchain y → odef A y + pchain⊆A {y} ny = proj1 ny + pnext : {a : Ordinal} → odef pchain a → odef pchain (f a) + pnext {a} ⟪ aa , ua ⟫ = ⟪ afa , record { u = UChain.u ua ; u ¬a ¬b c = x - pchain⊆A : {y : Ordinal} → odef pchain y → odef A y - pchain⊆A {y} ny = proj1 ny - pnext : {a : Ordinal} → odef pchain a → odef pchain (f a) - pnext {a} ⟪ aa , ua ⟫ = ⟪ afa , record { u = UChain.u ua ; u ¬a ¬b c = o∅ - UZ : HOD - UZ = UnionCF A f mf ay psupf0 x - total-UZ : IsTotalOrderSet UZ - total-UZ {a} {b} ca cb = subst₂ (λ j k → Tri (j < k) (j ≡ k) (k < j)) *iso *iso uz01 where + ... | tri≈ ¬a b ¬c = y + ... | tri> ¬a ¬b c = y + pchain : HOD + pchain = UnionCF A f mf ay psupf0 x + ptotal : IsTotalOrderSet pchain + ptotal {a} {b} ca cb = subst₂ (λ j k → Tri (j < k) (j ≡ k) (k < j)) *iso *iso uz01 where uz01 : Tri (* (& a) < * (& b)) (* (& a) ≡ * (& b)) (* (& b) < * (& a) ) uz01 = chain-total A f mf ay psupf0 (UChain.chain∋z (proj2 ca)) (UChain.chain∋z (proj2 cb)) - usup : SUP A UZ - usup = supP UZ (λ lt → proj1 lt) total-UZ + + pchain⊆A : {y : Ordinal} → odef pchain y → odef A y + pchain⊆A {y} ny = proj1 ny + pnext : {a : Ordinal} → odef pchain a → odef pchain (f a) + pnext {a} ⟪ aa , ua ⟫ = ⟪ afa , record { u = UChain.u ua ; u ¬a ¬b c = spu + zc5 : ZChain A f mf ay x zc5 with ODC.∋-p O A (* x) ... | no noax = {!!} where -- ¬ A ∋ p, just skip - ... | yes ax with ODC.p∨¬p O ( HasPrev A UZ ax f ) + ... | yes ax with ODC.p∨¬p O ( HasPrev A pchain ax f ) -- we have to check adding x preserve is-max ZChain A y f mf x ... | case1 pr = {!!} where -- we have previous A ∋ z < x , f z ≡ x, so chain ∋ f z ≡ x because of f-next - ... | case2 ¬fy