Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 687:af1d69eb429e
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 10 Jul 2022 10:51:30 +0900 |
parents | b854c1f07873 |
children | 10195ebfbe2b |
files | src/zorn.agda |
diffstat | 1 files changed, 17 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Sun Jul 10 10:08:59 2022 +0900 +++ b/src/zorn.agda Sun Jul 10 10:51:30 2022 +0900 @@ -264,15 +264,12 @@ p≤z : (x : Ordinal ) → odef A (psup x) chainf : (x : Ordinal) → HOD is-chain : (x w : Ordinal) → odef (chainf x) w → Chain A f mf ay (psup x ) w - psup-mono : (x : Ordinal) → (x≤z : x o≤ z ) → chainf x ⊆' chainf z record ZChain ( A : HOD ) ( f : Ordinal → Ordinal ) (mf : ≤-monotonic-f A f) {init : Ordinal} (ay : odef A init) (zc0 : (x : Ordinal) → ZChain1 A f mf ay x ) ( z : Ordinal ) : Set (Level.suc n) where chain : HOD chain = ZChain1.chainf (zc0 (& A)) z field - chain-mono : (px py : Ordinal) → (x≤y : px o≤ py ) (y≤z : py o≤ z ) → (w : Ordinal ) - → ZChain1.chainf (zc0 (& A)) px ⊆' ZChain1.chainf (zc0 (& A)) py chain⊆A : chain ⊆' A chain∋init : odef chain init initial : {y : Ordinal } → odef chain y → * init ≤ * y @@ -465,7 +462,7 @@ pchain = chainf sc px no-ext : ZChain1 A f mf ay x - no-ext = record { psup = psup1 ; p≤z = p≤z1 ; chainf = chainf1 ; is-chain = is-chain1 ; psup-mono = sc0 } where + no-ext = record { psup = psup1 ; p≤z = p≤z1 ; chainf = chainf1 ; is-chain = is-chain1 } where psup1 : Ordinal → Ordinal psup1 z with o≤? z x ... | yes _ = ZChain1.psup sc z @@ -478,8 +475,6 @@ chainf1 z with o≤? z x ... | yes _ = ZChain1.chainf sc z ... | no _ = ZChain1.chainf sc x - sc0 : (z : Ordinal) → z o≤ x → chainf1 z ⊆' chainf1 x - sc0 z = ? is-chain1 : ? is-chain1 = ? sc4 : ZChain1 A f mf ay x @@ -488,7 +483,7 @@ ... | yes ax with ODC.p∨¬p O ( HasPrev A pchain ax f ) ... | case1 pr = no-ext ... | case2 ¬fy<x with ODC.p∨¬p O (IsSup A pchain ax ) - ... | case1 is-sup = record { psup = ? ; p≤z = ? ; chainf = ? ; is-chain = ? ; psup-mono = ? } where + ... | case1 is-sup = record { psup = ? ; p≤z = ? ; chainf = ? ; is-chain = ? } where schain : HOD schain = ? -- record { od = record { def = λ z → odef A z ∧ ( odef (ZChain1.chain sc ) z ∨ (FClosure A f x z)) } -- ; odmax = & A ; <odmax = λ {y} sy → ∈∧P→o< sy } @@ -507,11 +502,12 @@ (ZChain1.is-chain (pzc _ (UChain.u<x (proj2 cb))) _ _ (UChain.chain∋z (proj2 cb))) usup : SUP A UZ usup = supP UZ (λ lt → proj1 lt) total-UZ + spu = & (SUP.sup usup) sc4 : ZChain1 A f mf ay x - sc4 = record { psup = psup1 ; p≤z = p≤z1 ; chainf = chainf1 ; is-chain = is-chain1 ; psup-mono = sc0 } where + sc4 = record { psup = psup1 ; p≤z = p≤z1 ; chainf = chainf1 ; is-chain = is-chain1 } where psup1 : Ordinal → Ordinal psup1 z with o≤? x z - ... | yes _ = & (SUP.sup usup) + ... | yes _ = spu ... | no z<x = ZChain1.psup (pzc z (o¬≤→< z<x)) z p≤z1 : (z : Ordinal ) → odef A (psup1 z) p≤z1 z with o≤? x z @@ -519,16 +515,19 @@ ... | no z<x = ZChain1.p≤z (pzc z (o¬≤→< z<x)) z chainf1 : (z : Ordinal ) → HOD chainf1 z with o≤? x z - ... | yes _ = UZ + ... | yes _ = record { od = record { def = λ w → odef A w ∧ (odef UZ w ∨ FClosure A f spu w ) } ; odmax = & A ; <odmax = ? } ... | no z<x = ZChain1.chainf (pzc z (o¬≤→< z<x)) z - sc0 : (z : Ordinal) → z o≤ x → chainf1 z ⊆' chainf1 x - sc0 z z≤x {i} lt with o≤? x z - ... | yes _ = ? - ... | no z<x = ? where -- subst (λ k → odef k i) refl sc1 where - sc1 : odef (ZChain1.chainf (pzc z (o¬≤→< z<x)) z) i - sc1 = ZChain1.psup-mono (pzc z (o¬≤→< z<x)) _ o≤-refl lt - is-chain1 : ? - is-chain1 = ? + is-chain1 : (z w : Ordinal) → odef (chainf1 z) w → Chain A f mf ay (psup1 z ) w + is-chain1 z w lt with o≤? x z + ... | no z<x = ZChain1.is-chain (pzc z (o¬≤→< z<x)) z w lt + is-chain1 z w ⟪ aw , case1 uz ⟫ | yes _ = subst (λ k → Chain A f mf ay k w) ? uz02 where + uz02 : Chain A f mf ay (ZChain1.psup (pzc (UChain.u (proj2 uz)) (UChain.u<x (proj2 uz))) (UChain.u (proj2 uz))) w + uz02 = (ZChain1.is-chain (pzc _ (UChain.u<x (proj2 uz))) _ _ (UChain.chain∋z (proj2 uz) )) + is-chain1 z w ⟪ aw , case2 uzfc ⟫ | yes _ = ch-is-sup ? ? is-sup uzfc where + 0<s : ? + 0<s = ? + is-sup : (x1 w₁ : Ordinal) → x1 o< & (SUP.sup usup) → Chain A f mf ay x1 w₁ → w₁ << & (SUP.sup usup) + is-sup = ? ind : ( f : Ordinal → Ordinal ) → (mf : ≤-monotonic-f A f ) {y : Ordinal} (ay : odef A y) → (x : Ordinal) → (zc0 : (x : Ordinal) → ZChain1 A f mf ay x)