changeset 122:4d2434513228

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 30 Jun 2019 11:03:34 +0900
parents 453ef0d4ee8a
children 0c2cbf37e002
files HOD.agda ordinal-definable.agda
diffstat 2 files changed, 31 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/HOD.agda	Thu Jun 27 19:26:45 2019 +0900
+++ b/HOD.agda	Sun Jun 30 11:03:34 2019 +0900
@@ -129,11 +129,6 @@
 transitive  {n} {z} {y} {x} z∋y x∋y  with  ordtrans ( c<→o< {suc n} {x} {y} x∋y ) (  c<→o< {suc n} {y} {z} z∋y ) 
 ... | t = otrans z z∋y (c<→o< {suc n} {x} {y} x∋y ) 
 
-record Minimumo {n : Level } (x : Ordinal {n}) : Set (suc n) where
-  field
-     mino : Ordinal {n}
-     min<x :  mino o< x
-
 ∅5 : {n : Level} →  { x : Ordinal {n} }  → ¬ ( x  ≡ o∅ {n} ) → o∅ {n} o< x
 ∅5 {n} {record { lv = Zero ; ord = (Φ .0) }} not = ⊥-elim (not refl) 
 ∅5 {n} {record { lv = Zero ; ord = (OSuc .0 ord) }} not = case2 Φ<
@@ -216,7 +211,7 @@
 -- postulate f-extensionality : { n : Level}  → Relation.Binary.PropositionalEquality.Extensionality (suc n) (suc (suc n))
 
 csuc :  {n : Level} →  HOD {suc n} → HOD {suc n}
-csuc x = ord→od ( osuc ( od→ord x ))
+csuc x = Ord ( osuc ( od→ord x ))
 
 -- Power Set of X ( or constructible by λ y → def X (od→ord y )
 
@@ -229,12 +224,40 @@
 Def {n} A = Ord ( sup-o ( λ x → od→ord ( ZFSubset A (ord→od x )) ) )  
 
 -- Constructible Set on α
+-- Def X = record { def = λ y → ∀ (x : OD ) → y < X ∧ y <  od→ord x } 
+-- L (Φ 0) = Φ
+-- L (OSuc lv n) = { Def ( L n )  } 
+-- L (Φ (Suc n)) = Union (L α) (α < Φ (Suc n) )
 L : {n : Level} → (α : Ordinal {suc n}) → HOD {suc n}
 L {n}  record { lv = Zero ; ord = (Φ .0) } = od∅
 L {n}  record { lv = lx ; ord = (OSuc lv ox) } = Def ( L {n} ( record { lv = lx ; ord = ox } ) ) 
 L {n}  record { lv = (Suc lx) ; ord = (Φ (Suc lx)) } = -- Union ( L α )
     cseq ( Ord (od→ord (L {n}  (record { lv = lx ; ord = Φ lx }))))
 
+LS :  {n : Level} → {la : Nat } → {oa : OrdinalD {suc n} la }
+        → L {n} (record { lv = la; ord = OSuc la oa })  ∋ L {n} (record { lv = la; ord = oa })
+LS {n} {la} {oa} = {!!} where
+      lemma0 :  {n : Level} → (ox : Ordinal {suc n}) →  od→ord (ZFSubset (Ord ox) (ord→od ox)) ≡ ox
+      lemma0 = {!!}
+      lemma :   {n : Level} → (ox : Ordinal {suc n}) → ox o<  sup-o ( λ x → od→ord ( ZFSubset (Ord ox) (ord→od x )))
+      lemma {n} ox =  o<-subst {suc n} {_} {_} {ox} {sup-o ( λ x → od→ord ( ZFSubset (Ord ox) (ord→od x )))}
+          (sup-o< {suc n} {λ x → od→ord ( ZFSubset (Ord ox) (ord→od x ))} {ox} ) (lemma0 ox) refl
+
+L0 :  {n : Level} → {la : Nat } → {oa : OrdinalD {suc n} (Suc la) }{ob : OrdinalD {suc n} la }
+   → L (record { lv = Suc la; ord = oa })  ∋ L (record { lv = la; ord = ob })
+L0 = {!!}
+
+L1 :  {n : Level} → (α β : Ordinal {suc n}) → α o< β → ∀ (x : HOD {suc n})  → L α ∋ x → L β ∋ x 
+L1 {n} record { lv = .0 ; ord = (Φ .0) } record { lv = .(Suc _) ; ord = ord₁ } (case1 (s≤s z≤n)) x (case1 ())
+L1 {n} record { lv = .0 ; ord = (Φ .0) } record { lv = .(Suc _) ; ord = ord₁ } (case1 (s≤s z≤n)) x (case2 ())
+L1 {n} record { lv = .0 ; ord = (OSuc .0 ord₂) } record { lv = (Suc lx) ; ord = ord₁ } (case1 (s≤s z≤n)) x α∋x = lemma α∋x where
+   lemma : (od→ord x) o< (sup-o (λ x₁ → od→ord (ZFSubset (L (record { lv = 0 ; ord = ord₂ })) (ord→od x₁))))
+       → L (record { lv = Suc lx ; ord = ord₁ }) ∋ x
+   lemma lt = {!!}
+L1 {n} record { lv = (Suc _) ; ord = ord₂ } record { lv = (Suc (Suc _)) ; ord = ord₁ } (case1 (s≤s (s≤s x₁))) x α∋x = {!!}
+L1 {n} record { lv = lx ; ord = (Φ lx) } record { lv = lx ; ord = (OSuc lx _) } (case2 Φ<) x α∋x = {!!}
+L1 {n} record { lv = lx ; ord = (OSuc lx _) } record { lv = lx ; ord = (OSuc lx _) } (case2 (s< x₁)) x α∋x = {!!}
+
 omega : { n : Level } → Ordinal {n}
 omega = record { lv = Suc Zero ; ord = Φ 1 }
 
@@ -301,8 +324,6 @@
        ;   selection = λ {X} {ψ} {y} → selection {X} {ψ} {y}
        ;   replacement = replacement
      } where
-         open _∧_ 
-         open Minimumo
          pair : (A B : HOD {suc n} ) → ((A , B) ∋ A) ∧  ((A , B) ∋ B)
          proj1 (pair A B ) = omax-x {n} (od→ord A) (od→ord B)
          proj2 (pair A B ) = omax-y {n} (od→ord A) (od→ord B)
@@ -324,7 +345,7 @@
               lemma-t : csuc minsup ∋ t
               lemma-t = {!!} -- o<→c< (o<-subst (sup-lb (o<-subst (c<→o< P∋t) refl diso )) refl refl ) 
               lemma-s : ZFSubset A ( Ord ( sup-x (λ x → od→ord ( ZFSubset A (ord→od x)))))  ∋ x
-              lemma-s with osuc-≡< ( o<-subst (c<→o< lemma-t ) refl diso  )
+              lemma-s with osuc-≡< ( o<-subst (c<→o< lemma-t ) refl (sym ord-Ord) )
               lemma-s | case1 eq = {!!}
               lemma-s | case2 lt = transitive {n} {minsup} {t} {x} {!!} t∋x
          -- 
@@ -348,7 +369,7 @@
          union→ X z u xx with trio< ( od→ord u ) ( osuc ( od→ord z ))
          union→ X z u xx | tri< a ¬b ¬c with  osuc-< a (c<→o< (proj2 xx))
          union→ X z u xx | tri< a ¬b ¬c | ()
-         union→ X z u xx | tri≈ ¬a b ¬c = def-subst {suc n} {_} {_} {X} {osuc (od→ord z)} (proj1 xx) refl b where
+         union→ X z u xx | tri≈ ¬a b ¬c = def-subst {suc n} {_} {_} {X} {osuc (od→ord z)} (proj1 xx) refl b 
          union→ X z u xx | tri> ¬a ¬b c = otrans X (proj1 xx) 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
--- a/ordinal-definable.agda	Thu Jun 27 19:26:45 2019 +0900
+++ b/ordinal-definable.agda	Sun Jun 30 11:03:34 2019 +0900
@@ -121,11 +121,6 @@
    lemma0 :  def ( ord→od ( od→ord z )) ( od→ord x) →  def z (od→ord x)
    lemma0 dz  = def-subst {suc n} { ord→od ( od→ord z )} { od→ord x} dz (oiso)  refl
 
-record Minimumo {n : Level } (x : Ordinal {n}) : Set (suc n) where
-  field
-     mino : Ordinal {n}
-     min<x :  mino o< x
-
 ∅5 : {n : Level} →  { x : Ordinal {n} }  → ¬ ( x  ≡ o∅ {n} ) → o∅ {n} o< x
 ∅5 {n} {record { lv = Zero ; ord = (Φ .0) }} not = ⊥-elim (not refl) 
 ∅5 {n} {record { lv = Zero ; ord = (OSuc .0 ord) }} not = case2 Φ<
@@ -353,8 +348,6 @@
        ;   selection = λ {X} {ψ} {y} → selection {ψ} {X} {y} 
        ;   replacement = replacement
      } where
-         open _∧_ 
-         open Minimumo
          pair : (A B : OD {suc n} ) → ((A , B) ∋ A) ∧  ((A , B) ∋ B)
          proj1 (pair A B ) = omax-x {n} (od→ord A) (od→ord B)
          proj2 (pair A B ) = omax-y {n} (od→ord A) (od→ord B)