changeset 277:25c8b4d71085

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 27 Jan 2023 10:45:25 +0900
parents e83341c5c981
children ed06f82988c1
files src/Fundamental.agda
diffstat 1 files changed, 45 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/Fundamental.agda	Thu Jan 26 11:31:58 2023 +0900
+++ b/src/Fundamental.agda	Fri Jan 27 10:45:25 2023 +0900
@@ -40,6 +40,9 @@
 _<_∙_> :  (m : Group c c )  →    Group.Carrier m →  Group.Carrier m →  Group.Carrier m
 m < x ∙ y > =  Group._∙_ m x y
 
+_<_≈_> :  (m : Group c c )  →    (f  g : Group.Carrier m ) → Set c 
+m < x ≈ y > =  Group._≈_ m x y
+
 infixr 9 _<_∙_>
 
 --
@@ -163,8 +166,41 @@
            φ-cong : {f g : Carrier } → f ≈ g  → {x : Carrier } →  ⟦ n (φ f x ) ⟧ ≈ ⟦ n (φ g x ) ⟧ 
            φ-cong = ?
 
+    -- inverse of φ
+    --  f = λ x → record { a = af ; n = fn ; aN=x = x ≈ af ∙ ⟦ fn ⟧  )   = (af)K  , fn ≡ factor x af , af ≡ a (f x)
+    --        (inv-φ f)K ≡ (af)K
+    --           φ (inv-φ f) x → f (h0 x)
+    --           f x → φ (inv-φ f) (h1 x)
+    --
+    --  inv-φ f ≡ a (f ε)  -- not af ≡ a (f x)
+    --  φ (inv-φ f)  returns ( λ x → record { a = a (f ε) ; n = factor x (a (f ε)) ; is-factor x (a (f ε)) )
+    --          it should be ( λ x → record { a =      af ; n = factor x af        ; is-factor x af
+    --          it should be ( λ x → record { a =      af ; n = fn                 ; is-factor x af
+    --      ⟦ n (φ (inv-φ f) x)  ⟧ ≈ ⟦ n (f x) ⟧ ≈ ⟦ fn ⟧
+    --      ⟦ factor x (a (f ε)) ⟧ ≈ ⟦ n (f x) ⟧ ≈ ⟦ fn ⟧ ≈ ⟦ factor x g ⟧ 
+    --      g ∙ ⟦ factor y (a (f ε)) ⟧ ≈ x 
+    --            factor x g
+    --      g ∙ ⟦ factor y g ⟧ ≈ y 
+
     inv-φ : Group.Carrier (G / K ) → Group.Carrier G
-    inv-φ f = ⟦ n (f ε) ⟧ 
+    inv-φ f = a (f ε)
+
+    _∋_ : (f : Group.Carrier (G / K)) (x : Carrier ) → Set c
+    _∋_  f x = a (f x) ∙ ⟦ n (f x) ⟧ ≈ x  
+
+    aNeq : {f g : Group.Carrier (G / K)} →  (G / K)  < f ≈ g >
+       →  ( {x : Carrier  } → f ∋  x → g ∋ x ) × ( {x : Carrier  } → g ∋  x → f ∋ x )
+    aNeq {f} {g} f=g = an00 , ? where 
+        an00 : {x : Carrier} → f ∋ x → g ∋ x
+        an00 {x} fnx = begin
+           a (g x) ∙ ⟦ n (g x) ⟧ ≈⟨ ∙-cong (gsym G (an01 (a (f x)))) (grefl G) ⟩
+           (a (f x) ∙ ⟦ factor (a (g x)) (a (f x)) ⟧ ) ∙ ⟦ n (g x) ⟧ ≈⟨ ? ⟩
+           a (f x) ∙ ( ⟦ factor (a (g x)) (a (f x)) ⟧  ∙ ⟦ n (g x) ⟧ ) ≈⟨ ? ⟩
+           a (f x) ∙ ( ⟦ factor (a (g x)) (a (f x)) ∙ n (g x) ⟧ ) ≈⟨ ? ⟩
+           a (f x) ∙ ⟦ n (f x) ⟧ ≈⟨ fnx ⟩
+           x ∎  where
+               an01 : (y : Carrier) → y ∙ ⟦ factor (a (g x)) y ⟧ ≈ a (g x)
+               an01 y = is-factor (a (g x)) y
 
     cong-i : {f g : Group.Carrier (G / K ) } → ({x : Carrier } →  ⟦ n (f x) ⟧ ≈ ⟦ n (g x) ⟧ ) → inv-φ f ≈ inv-φ g
     cong-i = ?
@@ -174,8 +210,10 @@
     ... | record { a = fa ; n = fn ; aN=x = faN=x } = begin
        ⟦ factor y z ⟧ ≈⟨ ? ⟩ 
        z ⁻¹ ∙ ( z ∙ ⟦ factor y z ⟧ ) ≈⟨ ? ⟩ 
-       z ⁻¹ ∙ y  ≈⟨ ? ⟩ 
-       z ⁻¹ ∙ fa ∙ ⟦ fn ⟧   ≈⟨ ? ⟩ 
+       z ⁻¹ ∙ y  ≈⟨ ∙-cong (grefl G) (gsym G faN=x )  ⟩ 
+       z ⁻¹ ∙ ( fa  ∙ ⟦ fn ⟧ )  ≈⟨ ? ⟩ 
+       (z ⁻¹ ∙ fa ) ∙ ⟦ fn ⟧   ≈⟨ ? ⟩ 
+       ε ∙ ⟦ fn ⟧   ≈⟨ solve monoid ⟩ 
        ⟦ fn ⟧ ∎ where
           z = fa ⁻¹
 
@@ -193,10 +231,10 @@
     is-inverse : (f : (x : Carrier) → aN K x ) →  {y : Carrier} → ⟦ n (φ (inv-φ f) y) ⟧ ≈ ⟦ n (f y) ⟧
     is-inverse f {y} = begin
        ⟦ n (φ (inv-φ f) y) ⟧  ≈⟨ grefl G ⟩
-       ⟦ n (φ ⟦ n (f ε) ⟧  y) ⟧  ≈⟨ grefl G ⟩
-       ⟦ factor y ⟦ n (f ε) ⟧ ⟧  ≈⟨ ? ⟩
-       ⟦ factor y afn' ⟧  ≈⟨ factor=nf f ⟩
-       ⟦ n (f y) ⟧ ∎ where
+       ⟦ n (φ (a (f ε)) y) ⟧  ≈⟨ grefl G ⟩
+       ⟦ factor y (a (f ε))  ⟧  ≈⟨ ? ⟩                 --  a (f ε) ∙ ⟦ factor y ( a (f ε)) ⟧ ≈ y 
+       ⟦ factor y ((a (f y)) ⁻¹) ⟧  ≈⟨ factor=nf f ⟩   --  a (f y) ∙ ⟦ factor y ( a (f y)) ⟧ ≈ y 
+       ⟦ n (f y) ⟧ ∎ where                             --  a (f y) ∙ ⟦ n (f y) ⟧ ≈ y 
            afn : a (f ε) ∙ ⟦ n (f ε) ⟧ ≈ ε
            afn = aN=x (f ε)
            afn' = (a (f y)) ⁻¹