changeset 1447:3e50aa63f550

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 05 Jul 2023 12:09:48 +0900
parents a295c52af3b7
children 32cc4b789036
files src/cardinal.agda
diffstat 1 files changed, 42 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/src/cardinal.agda	Wed Jul 05 10:57:43 2023 +0900
+++ b/src/cardinal.agda	Wed Jul 05 12:09:48 2023 +0900
@@ -335,7 +335,7 @@
 --    t   true  false   ...  false
 ---
 Cantor1 : { S : HOD } → S c< Power S
-Cantor1 {S}  f = diag4 where 
+Cantor1 {S}  f = ? where 
      f1 : Injection (& S) (& (Power S))
      f1 = record { i→ = λ x sx → & (* x , * x) ; iB = c00 ;  inject = ? }where
          c00 : (x : Ordinal) (lt : odef (* (& S)) x) → odef (* (& (Power S))) (& (* x , * x))
@@ -348,42 +348,52 @@
      b : HODBijection (Power S) S 
      b = subst₂ (λ j k → HODBijection j k) *iso *iso ( Bernstein f2 f1)
 
-     diag2 : {x : Ordinal } → (sx : odef S x) → (z : Ordinal) → odef (* (fun← b x sx)) z → odef S z
-     diag2 {x} sx z xz = funA b x sx z xz 
-    
-     diag3 : {x : Ordinal } → (sx : odef S x) → odef (Power S) (fun← b x sx)
-     diag3 sx = diag2 sx
+     record inS : Set n where
+        field
+           x : Ordinal
+           sx : odef S x
+
+     ins-refl : (x : inS) → record { x = inS.x x ; sx = inS.sx x } ≡ x
+     ins-refl x with HE.≅-to-≡ ( ∋-irr {S} (inS.sx x) (inS.sx x) )
+     ... | refl = refl
 
-     diag : {x : Ordinal } → (sx : odef S x) → (z : Ordinal) → Set n
-     diag {x} sx z with trio< x z | ODC.p∨¬p O ( odef (* (fun← b x sx)) x)
-     ... | tri< a ¬b ¬c | n = odef  (* (fun← b x sx)) z 
-     ... | tri> ¬a ¬b c | n = odef  (* (fun← b x sx)) z 
-     ... | tri≈ ¬a b₁ ¬c | case1 y = ¬ odef S z
-     ... | tri≈ ¬a b₁ ¬c | case2 n = odef S z
+     inS-eq : {x y : inS } → inS.x x ≡ inS.x y  → x ≡ y  
+     inS-eq {x} {y} eq = ? where -- HE.≅-to-≡ (ca11 (inS.sx x) (inS.sx y) eq ?) where
+         ca11 : {x y : Ordinal} →  (sx1 : odef S x) (sy1 : odef S y)  → x ≡ y → sx1 ≅ sy1 
+             →  record { x = x ; sx = sx1 }  ≅ record { x = y ; sx = sy1 } 
+         ca11 _ _ refl HE.refl = HE.refl
 
-     DIAG : {x : Ordinal } → (sx : odef S x) → HOD
-     DIAG {x} sx = record { od = record { def = λ z → diag sx z  } ; odmax = ? ; <odmax = ? } 
+           -- cong₂ (λ j k → record { x = j ; sx = k }) eq ( HE.≅-to-≡ ( ∋-irr {S} (inS.sx x) (inS.sx y) ))  
+           -- ca11 : inS.x x ≡ inS.x y → inS.sx x ≅ inS.sx y → x ≡ y
+           -- ca11 refl refl = refl
 
-     Pdiag : {x : Ordinal} → (sx : odef S x) → odef (Power S) (& (DIAG sx))
-     Pdiag {x} sx z xz with trio< x z | ODC.p∨¬p O ( odef (* (fun← b x sx)) x) | subst (λ k → odef k z) *iso xz
-     ... | tri< a ¬b ¬c | n | u = funA b x sx z u
-     ... | tri> ¬a ¬b c | n | u = funA b x sx z u
-     ... | tri≈ ¬a refl ¬c | case1 x₁ | u = ⊥-elim ( u sx )
-     ... | tri≈ ¬a refl ¬c | case2 x₁ | u = u
-
-     p0 : odef (Power S) o∅
-     p0 z xz = ⊥-elim (¬x<0 (subst (λ k → odef k z) o∅≡od∅ xz)  )
+     record inSC (ib : inS → Bool) (x : Ordinal) : Set n where
+        field
+           sx  : odef S x
+           tsx : ib record { x = x ; sx = sx } ≡ true
 
-     s : Ordinal 
-     s = fun→ b o∅ p0
+     BS : Bijection (inS → Bool ) inS
+     BS = record {
+         fun←  = ca00
+       ; fun→  = ca01
+       ; fiso← = ca04
+       ; fiso→ = ca05 
+       } where
+           ca00 : inS → inS → Bool
+           ca00 ix iy with ODC.p∨¬p O ( odef (* ( fun← b (inS.x ix ) (inS.sx ix))) (inS.x iy ) )
+           ... | case1 y = true
+           ... | case2 n  = false
+           ca01 : (inS → Bool) → inS
+           ca01 ib = record { x = fun→ b (& ca03) ca02 ; sx = funB b (& ca03) ca02 } where
+               ca03 : HOD
+               ca03 = record { od = record { def = λ x → inSC ib x } ; odmax = ? ; <odmax = ? }
+               ca02 : odef (Power S) (& ca03)
+               ca02 z xz = inSC.sx (subst (λ k → odef k z) *iso xz)
+           ca04 : (ib : inS → Bool) → ca00 (ca01 ib) ≡ ib
+           ca04 ib = ?
+           ca05 : (x : inS) → ca01 (ca00 x) ≡ x
+           ca05 x = ?
 
-     ss : odef S s
-     ss = funB b o∅ p0
-
-     diag4 : ⊥ 
-     diag4 with ODC.p∨¬p O ( odef (* (fun← b s ss)) s)
-     ... | case1 y  = ?
-     ... | case2 n  = ?
 
 Cantor2 : { u : HOD } → ¬ ( u =c=  Power u )
 Cantor2 = {!!}