# HG changeset patch # User Shinji KONO # Date 1595036192 -32400 # Node ID aad9249d1e8ff9c7572e7268636711489cdd227b # Parent 8a430df110eb77ab60ec3a1759b2a942dad7a386 hω2 diff -r 8a430df110eb -r aad9249d1e8f OD.agda --- a/OD.agda Fri Jul 17 18:57:40 2020 +0900 +++ b/OD.agda Sat Jul 18 10:36:32 2020 +0900 @@ -106,6 +106,16 @@ postulate odAxiom : ODAxiom open ODAxiom odAxiom +-- odmax minimality +-- +-- since we have ==→o≡ , so odmax have to be unique. We should have odmaxmin in HOD. +-- We can calculate the minimum using sup but it is tedius. +-- Only Select has non minimum odmax. +-- We have the same problem on 'def' itself, but we leave it. + +odmaxmin : Set (suc n) +odmaxmin = (y : HOD) (z : Ordinal) → ((x : Ordinal)→ def (od y) x → x o< z) → odmax y o< osuc z + -- possible order restriction hod-ord< : {x : HOD } → Set n hod-ord< {x} = od→ord x o< next (odmax x) @@ -320,16 +330,17 @@ HOD→ZF = record { ZFSet = HOD ; _∋_ = _∋_ - ; _≈_ = _=h=_ + ; _≈_ = hod→zf._=h=_ ; ∅ = od∅ ; _,_ = _,_ - ; Union = Union - ; Power = Power - ; Select = Select - ; Replace = Replace - ; infinite = infinite - ; isZF = isZF + ; Union = hod→zf.Union + ; Power = hod→zf.Power + ; Select = hod→zf.Select + ; Replace = hod→zf.Replace + ; infinite = hod→zf.infinite + ; isZF = hod→zf.isZF } where + module hod→zf where ZFSet = HOD -- is less than Ords because of maxod Select : (X : HOD ) → ((x : HOD ) → Set n ) → HOD Select X ψ = record { od = record { def = λ x → ( odef X x ∧ ψ ( ord→od x )) } ; odmax = odmax X ; ) + h1 : {x : Ordinal } → Hω2 x → + Hω2 (od→ord < nat→ω 1 , ord→od x >) + h2 : {x : Ordinal } → Hω2 x → + Hω2 (od→ord < nat→ω 2 , ord→od x >) + +HODω2 : HOD +HODω2 = record { od = record { def = λ x → Hω2 x } ; odmax = {!!} ;