# HG changeset patch # User Shinji KONO # Date 1562508167 -32400 # Node ID 312e27aa3cb5516825e1550696aa3d6bc59a4908 # Parent 53077af367e90a024d30243b82eda6e2641cb9e1 remove otrans again. start over diff -r 53077af367e9 -r 312e27aa3cb5 HOD.agda --- a/HOD.agda Sun Jul 07 22:23:02 2019 +0900 +++ b/HOD.agda Sun Jul 07 23:02:47 2019 +0900 @@ -16,7 +16,6 @@ record HOD {n : Level} : Set (suc n) where field def : (x : Ordinal {n} ) → Set n - otrans : {x : Ordinal {n} } → def x → { y : Ordinal {n} } → y o< x → def y open HOD open import Data.Unit @@ -49,9 +48,7 @@ -- Ordinal in HOD ( and ZFSet ) Ord : { n : Level } → ( a : Ordinal {n} ) → HOD {n} -Ord {n} a = record { def = λ y → y o< a ; otrans = lemma } where - lemma : {x : Ordinal} → x o< a → {y : Ordinal} → y o< x → y o< a - lemma {x} x ¬a ¬b c = otrans X (proj1 xx) c + union→ X z u xx | tri> ¬a ¬b c = {!!} union← : (X z : HOD) (X∋z : Union X ∋ z) → (X ∋ union-u {X} {z} X∋z ) ∧ (union-u {X} {z} X∋z ∋ z ) union← X z X∋z = record { proj1 = lemma ; proj2 = <-osuc } where lemma : X ∋ union-u {X} {z} X∋z @@ -435,35 +418,12 @@ -- ψiso : {ψ : HOD {suc n} → Set (suc n)} {x y : HOD {suc n}} → ψ x → x ≡ y → ψ y -- ψiso {ψ} t refl = t - selection : {X : HOD } {ψ : (x : HOD ) → Set (suc n)} {y : HOD} → (((y₁ : HOD) → X ∋ y₁ → ψ y₁) ∧ (X ∋ y)) ⇔ (Select X ψ ∋ y) - selection {X} {ψ} {y} = record { proj1 = λ s → record { - proj1 = λ y1 y1y → proj1 cond (ord→od y) (subst (λ k → def X k ) (sym diso) X>y) ; proj2 = proj2 cond } - ; proj2 = λ select → record { proj1 = λ y X>y → subst (λ k → ψ k ) oiso (proj1 select (od→ord y) X>y ) ; proj2 = proj2 select } - } where - lemma : (cond : ((y : OD) → X ∋ y → ψ y ) ∧ (X ∋ y) ) → ψ y - lemma cond = (proj1 cond) y (proj2 cond) + proj1 = λ cond → record { proj1 = proj1 cond ; proj2 = ψiso {ψ} (proj2 cond) (sym oiso) } + ; proj2 = λ select → record { proj1 = proj1 select ; proj2 = ψiso {ψ} (proj2 select) oiso } + } replacement← : {ψ : OD → OD} (X x : OD) → X ∋ x → Replace X ψ ∋ ψ x replacement← {ψ} X x lt = record { proj1 = sup-c< ψ {x} ; proj2 = lemma } where lemma : def (in-codomain X ψ) (od→ord (ψ x)) lemma not = ⊥-elim ( not ( od→ord x ) (record { proj1 = lt ; proj2 = cong (λ k → od→ord (ψ k)) (sym oiso)} ) ) replacement→ : {ψ : OD → OD} (X x : OD) → (lt : Replace X ψ ∋ x) → ¬ ( (y : OD) → ¬ (x == ψ y)) - replacement→ {ψ} X x lt not = ⊥-elim ( not {!!} (ord→== {!!} ) ) + replacement→ {ψ} X x lt not = ⊥-elim ( not {!!} (ord→== {!!}) ) ∅-iso : {x : OD} → ¬ (x == od∅) → ¬ ((ord→od (od→ord x)) == od∅) ∅-iso {x} neq = subst (λ k → ¬ k) (=-iso {n} ) neq minimul : (x : OD {suc n} ) → ¬ (x == od∅ )→ OD {suc n} @@ -433,7 +431,7 @@ lemma (case1 ()) lemma (case2 ()) reg : {y : Ordinal} → def (Select (minimul x not) (λ x₂ → (minimul x not ∋ x₂) ∧ (x ∋ x₂))) y → def od∅ y - reg {y} t with proj1 t y (proj2 t) + reg {y} t with {!!} ... | x∈∅ = o<-subst (proj1 x∈∅) diso refl extensionality : {A B : OD {suc n}} → ((z : OD) → (A ∋ z) ⇔ (B ∋ z)) → A == B eq→ (extensionality {A} {B} eq ) {x} d = def-iso {suc n} {A} {B} (sym diso) (proj1 (eq (ord→od x))) d diff -r 53077af367e9 -r 312e27aa3cb5 zf.agda --- a/zf.agda Sun Jul 07 22:23:02 2019 +0900 +++ b/zf.agda Sun Jul 07 23:02:47 2019 +0900 @@ -75,7 +75,7 @@ -- infinity : ∃ A ( ∅ ∈ A ∧ ∀ x ∈ A ( x ∪ { x } ∈ A ) ) infinity∅ : ∅ ∈ infinite infinity : ∀( X x : ZFSet ) → x ∈ infinite → ( x ∪ { x }) ∈ infinite - selection : ∀ { X : ZFSet } → { ψ : (x : ZFSet ) → Set m } → ∀ { y : ZFSet } → (((y : ZFSet) → y ∈ X → ψ y ) ∧ ( y ∈ X ) ) ⇔ (y ∈ Select X ψ ) + selection : { ψ : ZFSet → Set m } → ∀ { X y : ZFSet } → ( ( y ∈ X ) ∧ ψ y ) ⇔ (y ∈ Select X ψ ) -- replacement : ∀ x ∀ y ∀ z ( ( ψ ( x , y ) ∧ ψ ( x , z ) ) → y = z ) → ∀ X ∃ A ∀ y ( y ∈ A ↔ ∃ x ∈ X ψ ( x , y ) ) replacement← : {ψ : ZFSet → ZFSet} → ∀ ( X x : ZFSet ) → x ∈ X → ψ x ∈ Replace X ψ replacement→ : {ψ : ZFSet → ZFSet} → ∀ ( X x : ZFSet ) → ( lt : x ∈ Replace X ψ ) → ¬ ( ∀ (y : ZFSet) → ¬ ( x ≈ ψ y ) )