changeset 217:d5668179ee69

cardinal continue
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 05 Aug 2019 17:02:37 +0900
parents 5b9b6ef971dd
children eee983e4b402
files OD.agda
diffstat 1 files changed, 34 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/OD.agda	Sun Aug 04 18:09:00 2019 +0900
+++ b/OD.agda	Mon Aug 05 17:02:37 2019 +0900
@@ -646,11 +646,39 @@
 
          cardinal : {n : Level } (X  : OD {suc n}) → Cardinal X
          cardinal {n} X = record {
-                cardinal = sup-o ( λ x → cardinal-p x )
-              ; conto = {!!}
-              ; cmax = {!!}
+                cardinal = sup-o ( λ x → proj1 ( cardinal-p x) )
+              ; conto = onto
+              ; cmax = cmax
             } where
-             cardinal-p : (x  : Ordinal {suc n}) →  Ordinal {suc n}
+             cardinal-p : (x  : Ordinal {suc n}) →  ( Ordinal {suc n} ∧ Dec (Onto (Ord x) X) )
              cardinal-p x with p∨¬p ( Onto (Ord x) X ) 
-             cardinal-p x | case1 True = x
-             cardinal-p x | case2 False = o∅
+             cardinal-p x | case1 True = record { proj1 = x ; proj2 = yes True }
+             cardinal-p x | case2 False = record { proj1 = o∅ ; proj2 = no False }
+             onto : Onto (Ord (sup-o (λ x → proj1 (cardinal-p x)))) X
+             onto = record {
+                        xmap = xmap
+                     ;  ymap = ymap
+                     ;  xmap-on-Y  = xmap-on-Y
+                     ;  ymap-on-X  = ymap-on-X
+                     ;  onto-iso = onto-iso
+               } where
+                Y = (Ord (sup-o (λ x → proj1 (cardinal-p x))))
+                xmap : (x : Ordinal {suc n}) → Ordinal {suc n}
+                xmap = {!!}
+                ymap : (y : Ordinal {suc n}) → Ordinal {suc n}
+                ymap = {!!}
+                xmap-on-Y  : (x :  Ordinal {suc n} ) → def Y x  → def X (xmap x)
+                xmap-on-Y  = {!!}
+                ymap-on-X  : (y :  Ordinal {suc n} ) → def X y  → def Y (ymap y)
+                ymap-on-X  = {!!}
+                onto-iso : (y :  Ordinal {suc n} ) → def X y → xmap ( ymap y ) ≡ y
+                onto-iso = {!!}
+             cmax : (y : Ordinal) → sup-o (λ x → proj1 (cardinal-p x)) o< y → ¬ Onto (Ord y) X
+             cmax y lt ontoy = o<> lt (o<-subst {suc n} {_} {_} {y} {sup-o (λ x → proj1 (cardinal-p x))}
+                (sup-o< {suc n} {λ x → proj1 ( cardinal-p x)}{y}  ) lemma refl ) where
+                   lemma : proj1 (cardinal-p y) ≡ y
+                   lemma with  p∨¬p ( Onto (Ord y) X )
+                   lemma | case1 x = refl
+                   lemma | case2 not = ⊥-elim ( not ontoy )
+
+