Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 858:bba4ce6d2766
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 07 Sep 2022 23:17:29 +0900 |
parents | 266e0b9027cd |
children | f72b35ab0ef9 |
files | src/zorn.agda |
diffstat | 1 files changed, 31 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Wed Sep 07 21:28:30 2022 +0900 +++ b/src/zorn.agda Wed Sep 07 23:17:29 2022 +0900 @@ -787,22 +787,23 @@ -- -- supf0 px is sup of UnionCF px , supf0 x is sup of UnionCF x - no-extension : ¬ xSUP (UnionCF A f mf ay supf0 px) x → ZChain A f mf ay x - no-extension ¬sp=x = record { supf = supf0 ; sup = λ lt → STMP.tsup (sup lt ) ; supf-mono = supf-mono ; supf-max = supf-max + no-extension : ( (¬ xSUP (UnionCF A f mf ay supf0 px) x ) ∨ HasPrev A pchain x f) → ZChain A f mf ay x + no-extension P = record { supf = supf0 ; sup = λ lt → STMP.tsup (sup lt ) ; supf-mono = supf-mono ; supf-max = supf-max ; initial = pinit1 ; chain∋init = pcy1 ; sup=u = sup=u ; supf-is-sup = λ lt → STMP.tsup=sup (sup lt) ; csupf = csupf ; chain⊆A = λ lt → proj1 lt ; f-next = pnext1 ; f-total = ptotal1 } where pchain0=1 : pchain ≡ pchain1 - pchain0=1 = ==→o≡ record { eq→ = zc10 ; eq← = zc11 } where + pchain0=1 = ==→o≡ record { eq→ = zc10 ; eq← = zc11 P } where 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≤x u1-is-sup fc ⟫ = ⟪ az , ch-is-sup u1 (ordtrans u1≤x (osucc (pxo<x op))) u1-is-sup fc ⟫ - zc11 : {z : Ordinal} → OD.def (od pchain1) 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 ⟫ with osuc-≡< u1≤x + zc11 : (¬ xSUP (UnionCF A f mf ay supf0 px) x ) ∨ (HasPrev A pchain x f ) + → {z : Ordinal} → OD.def (od pchain1) z → OD.def (od pchain) z + zc11 P {z} ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ + zc11 P {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup fc ⟫ with osuc-≡< u1≤x ... | case2 lt = ⟪ az , ch-is-sup u1 u1≤px u1-is-sup fc ⟫ where u1≤px : u1 o≤ px u1≤px = (subst (λ k → u1 o< k) (sym (Oprev.oprev=x op)) lt) - ... | case1 eq = ⊥-elim (¬sp=x zcsup) where + zc11 (case1 ¬sp=x) {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup fc ⟫ | case1 eq = ⊥-elim (¬sp=x zcsup) where s1u=x : supf0 u1 ≡ x s1u=x = trans (ChainP.supu=u u1-is-sup) eq zc13 : osuc px o< osuc u1 @@ -825,6 +826,21 @@ zcsup : xSUP (UnionCF A f mf ay supf0 px) x zcsup = record { ax = subst (λ k → odef A k) (trans zc12 eq) (supf∈A o≤-refl) ; is-sup = record { x<sup = x<sup } } + zc11 (case2 hp) {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup fc ⟫ | case1 eq = zc20 fc where + zc20 : {z : Ordinal} → FClosure A f (supf0 u1) z → OD.def (od pchain) z + zc20 {z} (init asu su=z ) = zc13 where + zc14 : x ≡ z + zc14 = begin + x ≡⟨ sym eq ⟩ + u1 ≡⟨ sym (ChainP.supu=u u1-is-sup ) ⟩ + supf0 u1 ≡⟨ su=z ⟩ + z ∎ where open ≡-Reasoning + zc13 : odef pchain z + zc13 = subst (λ k → odef pchain k) (trans (sym (HasPrev.x=fy hp)) zc14) ( ZChain.f-next zc (HasPrev.ay hp) ) + zc20 {.(f w)} (fsuc w fc) = ZChain.f-next zc (zc20 fc) + + -- zc11 (case2 hp) {z} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup (init asu su=z ) ⟫ | case1 eq = zc13 where + --zc11 (case2 hp) {.(f w)} ⟪ az , ch-is-sup u1 u1≤x u1-is-sup (fsuc w fc) ⟫ | case1 eq = ? record STMP {z : Ordinal} (z≤x : z o≤ x ) : Set (Level.suc n) where field tsup : SUP A (UnionCF A f mf ay supf0 z) @@ -849,15 +865,18 @@ 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 → IsSup.x<sup is-sup lt } ... | tri≈ ¬a b ¬c = ZChain.sup=u zc ab (o≤-refl0 b) record { x<sup = λ lt → IsSup.x<sup is-sup lt } - ... | tri> ¬a ¬b px<b = ⊥-elim (¬sp=x zcsup ) where + ... | tri> ¬a ¬b px<b = zc31 P where zc30 : x ≡ b zc30 with osuc-≡< b≤x ... | case1 eq = sym (eq) ... | case2 b<x = ⊥-elim (¬p<x<op ⟪ px<b , subst (λ k → b o< k ) (sym (Oprev.oprev=x op)) b<x ⟫ ) - zcsup : xSUP (UnionCF A f mf ay supf0 px) x - zcsup with zc30 - ... | refl = record { ax = ab ; is-sup = record { x<sup = λ {w} lt → - IsSup.x<sup is-sup (subst (λ k → odef k w) pchain0=1 lt) } } + zc31 : ( (¬ xSUP (UnionCF A f mf ay supf0 px) x ) ∨ HasPrev A pchain x f) → supf0 b ≡ b + zc31 (case1 ¬sp=x) = ⊥-elim (¬sp=x zcsup ) where + zcsup : xSUP (UnionCF A f mf ay supf0 px) x + zcsup with zc30 + ... | refl = record { ax = ab ; is-sup = record { x<sup = λ {w} lt → + IsSup.x<sup is-sup (subst (λ k → odef k w) pchain0=1 lt) } } + zc31 (case2 hasPrev ) = ? zc04 : {b : Ordinal} → b o≤ x → (b o≤ px ) ∨ (b ≡ x ) zc04 {b} b≤x with trio< b px