Mercurial > hg > Members > kono > Proof > ZF-in-agda
changeset 504:5dd9cf0094d5
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 13 Apr 2022 07:26:22 +0900 |
parents | 1546541ed461 |
children | 5fcd2863317d |
files | src/zorn.agda |
diffstat | 1 files changed, 41 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/zorn.agda Tue Apr 12 18:52:14 2022 +0900 +++ b/src/zorn.agda Wed Apr 13 07:26:22 2022 +0900 @@ -88,6 +88,25 @@ me : { A a : HOD } → A ∋ a → Element A me {A} {a} lt = record { elm = a ; is-elm = lt } +A∋x-irr : (A : HOD) {x y : HOD} → x ≡ y → (A ∋ x) ≡ (A ∋ y ) +A∋x-irr A {x} {y} refl = refl + + +open import Relation.Binary.HeterogeneousEquality as HE using (_≅_ ) + +postulate + ∋x-irr : (A : HOD) {x y : HOD} → x ≡ y → (ax : A ∋ x) (ay : A ∋ y ) → ax ≅ ay + odef-irr : (A : OD) {x y : Ordinal} → x ≡ y → (ax : def A x) (ay : def A y ) → ax ≅ ay + +is-elm-irr : (A : HOD) → {x y : Element A } → elm x ≡ elm y → is-elm x ≅ is-elm y +is-elm-irr A {x} {y} eq = ∋x-irr A eq (is-elm x) (is-elm y ) + +El-irr2 : (A : HOD) → {x y : Element A } → elm x ≡ elm y → is-elm x ≅ is-elm y → x ≡ y +El-irr2 A {x} {y} refl HE.refl = refl + +El-irr : {A : HOD} → {x y : Element A } → elm x ≡ elm y → x ≡ y +El-irr {A} {x} {y} eq = El-irr2 A eq ( is-elm-irr A eq ) + record ZChain ( A : HOD ) (y : Ordinal) : Set (suc n) where field max : HOD @@ -157,9 +176,29 @@ ; <odmax = λ lt → subst (λ k → k o< & A) &iso (c<→o< (d→∋ A (proj1 lt) )) } zc2 : OSup> A (d→∋ A (is-elm x)) ∨ Maximal A ∨ InFiniteIChain A (d→∋ A (is-elm x)) zc2 with is-o∅ (& Gtx) - ... | no nogt = case1 {!!} + ... | no not = case1 record { y = & y ; icy = zc4 ; y>x = proj2 zc3 } where + y : HOD + y = ODC.minimal O Gtx (λ eq → not (=od∅→≡o∅ eq)) + zc3 : odef ( IChainSet x ) (& y) ∧ ( & (elm x) o< (& y )) + zc3 = ODC.x∋minimal O Gtx (λ eq → not (=od∅→≡o∅ eq)) + zc4 : odef (IChainSet (me (subst (OD.def (od A)) (sym &iso) (is-elm x)))) (& y) + zc4 = ⟪ proj1 (proj1 zc3) , (λ ic → zc6 (* (& (elm x))) (sym *iso) ic) ⟫ where + zc5 : odef (IChainSet (me (is-elm x))) (& y) + zc5 = proj1 zc3 + zc6 : (ax : HOD) → elm x ≡ ax → (iy : IChain A (& y)) → ic-connet iy (& ax) + zc6 ax refl iy = proj2 (proj1 zc3) iy ... | yes nogt with is-o∅ (& HG) - ... | no nohg = case2 (case1 {!!} ) + ... | no nohg = case2 (case1 record { maximal = y ; A∋maximal = proj1 zc3 ; ¬maximal<x = zc4 } ) where + y : HOD + y = ODC.minimal O HG (λ eq → nohg (=od∅→≡o∅ eq)) + zc3 : odef A (& y) ∧ IsFC A (d→∋ A (is-elm x) ) (& y) + zc3 = ODC.x∋minimal O HG (λ eq → nohg (=od∅→≡o∅ eq)) + zc5 : odef (IChainSet {A} (me (d→∋ A (is-elm x) ))) (& y) + zc5 = IsFC.icy (proj2 zc3) + zc6 : odef (IChainSet {IChainSet (me (d→∋ A (is-elm x)))} (me (d→∋ (IChainSet (me (d→∋ A (is-elm x)))) (IsFC.icy (proj2 zc3))))) (& y) + zc6 = ⟪ {!!} , {!!} ⟫ + zc4 : {z : HOD} → A ∋ z → ¬ (y < z) + zc4 {z} az y<z = IsFC.c-finite (proj2 zc3) record { y = & z ; icy = {!!} ; y>x = {!!} } ... | yes nohg = case2 (case2 {!!} )