Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 772:068cba4ee934
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 26 Jul 2022 10:07:42 +0900 |
parents | 7679fef53073 |
children | 6a48f8eb8b53 |
files | src/zorn.agda |
diffstat | 1 files changed, 39 insertions(+), 29 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Tue Jul 26 03:37:25 2022 +0900 +++ b/src/zorn.agda Tue Jul 26 10:07:42 2022 +0900 @@ -301,7 +301,7 @@ f-total : IsTotalOrderSet chain supf-mono : { a b : Ordinal } → a o< b → supf a o≤ supf b - csupf : {z : Ordinal } → odef chain (supf z) + csupf : (z : Ordinal ) → odef chain (supf z) sup=u : {b : Ordinal} → (ab : odef A b) → b o< z → IsSup A (UnionCF A f mf ay supf (osuc b)) ab → supf b ≡ b fcy<sup : {u w : Ordinal } → u o< z → FClosure A f init w → (w ≡ supf u ) ∨ ( w << supf u ) -- different from order because y o< supf order : {b sup1 z1 : Ordinal} → b o< z → supf sup1 o< supf b → FClosure A f (supf sup1) z1 → (z1 ≡ supf b) ∨ (z1 << supf b) @@ -630,7 +630,7 @@ inititalChain : ( f : Ordinal → Ordinal ) → (mf : ≤-monotonic-f A f ) {y : Ordinal} (ay : odef A y) → ZChain A f mf ay o∅ inititalChain f mf {y} ay = record { supf = isupf ; chain⊆A = λ lt → proj1 lt ; chain∋init = cy - ; csupf = λ {z} → csupf {z} ; fcy<sup = λ u<0 → ⊥-elim ( ¬x<0 u<0 ) ; supf-mono = λ _ → o≤-refl + ; csupf = λ z → csupf z ; fcy<sup = λ u<0 → ⊥-elim ( ¬x<0 u<0 ) ; supf-mono = λ _ → o≤-refl ; initial = isy ; f-next = inext ; f-total = itotal ; sup=u = λ _ b<0 → ⊥-elim (¬x<0 b<0) ; order = λ b<0 → ⊥-elim (¬x<0 b<0) } where spi = & (SUP.sup (ysup f mf ay)) isupf : Ordinal → Ordinal @@ -654,8 +654,8 @@ uz01 : Tri (* (& a) < * (& b)) (* (& a) ≡ * (& b)) (* (& b) < * (& a) ) uz01 = chain-total A f mf ay isupf (proj2 ca) (proj2 cb) - csupf : {z : Ordinal} → odef (UnionCF A f mf ay isupf o∅) (isupf z) - csupf {z} = ⟪ asi , ch-is-sup spi uz02 (init asi) ⟫ where + csupf : (z : Ordinal) → odef (UnionCF A f mf ay isupf o∅) (isupf z) + csupf z = ⟪ asi , ch-is-sup spi uz02 (init asi) ⟫ where uz03 : {z : Ordinal } → FClosure A f y z → (z ≡ isupf spi) ∨ (z << isupf spi) uz03 {z} fc with SUP.x<sup sp (subst (λ k → FClosure A f y k ) (sym &iso) fc ) ... | case1 eq = case1 ( begin @@ -710,8 +710,8 @@ supf0 = ZChain.supf zc - csupf : {z : Ordinal} → odef (UnionCF A f mf ay supf0 x) (supf0 z) - csupf {z} with ZChain.csupf zc {z} + csupf : (z : Ordinal) → odef (UnionCF A f mf ay supf0 x) (supf0 z) + csupf z with ZChain.csupf zc z ... | ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ ... | ⟪ az , ch-is-sup u is-sup fc ⟫ = ⟪ az , ch-is-sup u is-sup fc ⟫ @@ -783,34 +783,44 @@ ... | tri≈ ¬a b ¬c | record { eq = eq1 } = subst (λ k → spu ≡ psupf k) b (sym eq1) ... | tri> ¬a ¬b c | _ = ⊥-elim ( ¬b z=x) - csupf :{z : Ordinal} → odef (UnionCF A f mf ay psupf x) (psupf z) - csupf {z} with trio< z x | inspect psupf z + csupf : (z : Ordinal) → odef (UnionCF A f mf ay psupf x) (psupf z) + csupf z with trio< z x | inspect psupf z ... | tri< z<x ¬b ¬c | record { eq = eq1 } = zc11 where ozc = pzc (osuc z) (ob<x lim z<x) - zc12 : odef A (ZChain.supf ozc z) - ∧ UChain A f mf ay (ZChain.supf ozc) (osuc z) (ZChain.supf ozc z) - zc12 = ZChain.csupf ozc {z} + oz<x : osuc z o< x + oz<x = ? + zc12 : odef A (ZChain.supf ozc z) ∧ UChain A f mf ay (ZChain.supf ozc) (osuc z) (ZChain.supf ozc z) + zc12 = ZChain.csupf ozc z zc11 : odef A (ZChain.supf ozc z) ∧ UChain A f mf ay psupf x (ZChain.supf ozc z) - zc11 with zc12 - ... | ⟪ az , ch-init fc ⟫ = ⟪ az , ch-init fc ⟫ - ... | ⟪ az , ch-is-sup u is-sup fc ⟫ = ⟪ az , z13 fc is-sup ⟫ where - z13 : FClosure A f (ZChain.supf ozc u ) (ZChain.supf ozc z ) → ChainP A f mf ay (ZChain.supf ozc) u (ZChain.supf ozc z ) - → UChain A f mf ay psupf x (ZChain.supf ozc z ) - z13 fc is-sup = ? - - -- ch-is-sup z - -- zc14 (subst (λ k → FClosure A f k (ZChain.supf ozc z)) (sym eq1) (init az)) ⟫ where - -- zc14 : ChainP A f mf ay psupf z (ZChain.supf ozc z) - -- zc14 = record { csupz = ? ; supfu=u = ? ; fcy<sup = ? ; order = ? } where - -- csupz : FClosure A f (psupf z) (ZChain.supf ozc z) - -- csupz = ? - - ... | tri≈ ¬a b ¬c | record { eq = eq1 } = ⟪ SUP.A∋maximal usup , ch-is-sup x zc15 - (subst (λ k → FClosure A f k spu) zc17 (init (SUP.A∋maximal usup))) ⟫ where - zc15 : ChainP A f mf ay psupf x spu - zc15 = ? + zc11 with ZChain.csupf ozc z | inspect (ZChain.csupf ozc) z + ... | ⟪ az , ch-init fc ⟫ | _ = ⟪ az , ch-init fc ⟫ + ... | ⟪ az , ch-is-sup u is-sup fc ⟫ | record { eq = eq2 } + = ⟪ az , ch-is-sup u zc18 (subst (λ k → FClosure A f k _) zc16 fc) ⟫ where + zc14 : ZChain.csupf ozc z ≡ ⟪ az , ch-is-sup u is-sup fc ⟫ + zc14 = eq2 + zc13 : odef A (ZChain.supf ozc u) ∧ UChain A f mf ay (ZChain.supf ozc) (osuc z) (ZChain.supf ozc u) + zc13 = ZChain.csupf ozc u + zc15 : FClosure A f (ZChain.supf ozc u) (ZChain.supf ozc z) + zc15 = fc + zc17 : u ≡ psupf z + zc17 = ? + zc19 : u o< x + zc19 = ? + zc16 : ZChain.supf ozc u ≡ psupf u + zc16 = ? + zc18 : ChainP A f mf ay psupf u (ZChain.supf ozc z) + zc18 = record { csupz = subst (λ k → FClosure A f k _) zc16 fc + ; supfu=u = ? ; fcy<sup = ? ; order = ? } + ... | tri≈ ¬a b ¬c | record { eq = eq1 } = ⟪ sa , ch-is-sup spu zc15 + (subst (λ k → FClosure A f k spu) zc18 (init sa)) ⟫ where + sa = SUP.A∋maximal usup + zc18 : spu ≡ psupf spu + zc18 = ? zc17 : spu ≡ psupf x zc17 = subst (λ k → spu ≡ psupf k ) b (sym eq1) + zc15 : ChainP A f mf ay psupf spu spu + zc15 = record { csupz = subst (λ k → FClosure A f k spu) zc18 (init sa) + ; supfu=u = sym zc18 ; fcy<sup = ? ; order = ? } ... | tri> ¬a ¬b c | record { eq = eq1 } = ⟪ SUP.A∋maximal usup , ch-is-sup x zc16 (subst (λ k → FClosure A f k spu) psupf=x (init (SUP.A∋maximal usup))) ⟫ where zc16 : ChainP A f mf ay psupf x spu