changeset 311:423efbcf6a09

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 15 Sep 2023 21:55:32 +0900
parents b4a3ed9301cb
children e6e8fc55b1bf
files src/sym5h.agda
diffstat 1 files changed, 183 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/sym5h.agda	Fri Sep 15 21:55:32 2023 +0900
@@ -0,0 +1,183 @@
+open import Level hiding ( suc ; zero )
+open import Algebra
+module sym5h where
+
+open import Symmetric 
+open import Data.Unit using (⊤ ; tt )
+open import Function.Inverse as Inverse using (_↔_; Inverse; _InverseOf_)
+open import Function hiding (flip)
+open import Data.Nat hiding (_⊔_) -- using (ℕ; suc; zero)
+open import Data.Nat.Properties
+open import Relation.Nullary
+open import Data.Empty
+open import Data.Product
+
+open import Gutil 
+open import NormalSubgroup
+open import Putil 
+open import Solvable 
+open import  Relation.Binary.PropositionalEquality hiding ( [_] )
+
+import Algebra.Morphism.Definitions as MorphismDefinitions
+open import Algebra.Morphism.Structures
+
+open import Tactic.MonoidSolver using (solve; solve-macro)
+import Algebra.Morphism.Definitions as MorphismDefinitions
+open import Algebra.Morphism.Structures
+
+open import Data.Fin hiding (_<_ ; _≤_  ; lift )
+open import Data.Fin.Permutation  hiding (_∘ₚ_)
+
+infixr  200 _∘ₚ_
+_∘ₚ_ = Data.Fin.Permutation._∘ₚ_
+
+open import Data.List  hiding ( [_] )
+open import nat
+open import fin
+open import logic
+open import FLutil
+open import Putil
+
+open _∧_
+
+¬sym5solvable : ¬ ( solvable (Symmetric 5) )
+¬sym5solvable sol = counter-example (dervied-length sol) (end5 _ (s02 (dervied-length sol))) where
+--
+--    dba       1320      d → b → a → d
+--    (dba)⁻¹   3021      a → b → d → a
+--    aec       21430
+--    (aec)⁻¹   41032
+--    [ dba , aec ] = (abd)(cea)(dba)(aec) = abc
+--      so commutator always contains abc, dba and aec
+--      All stage of Commutator Group of Sym5 contains a sym 3 
+--
+--      if so, it contains arbitrary 3 different elements of Sym5 as a Sym 3
+--           sym3' = p ∙ sym3 ∙ p⁻¹ 
+
+     open _=p=_
+     open ≡-Reasoning
+     open solvable
+     open import Data.Fin.Properties
+
+     -- a group contains Symmetric 3 as a normal subgroup
+
+     record HaveSym3 {c d : Level } (G : Group c d ) : Set (Level.suc c Level.⊔ Level.suc d) where
+        field 
+           isSub :  SubGroup {d} G 
+           G→3 :  RawGroup.Carrier (GR (SGroup G isSub)) → Permutation 3 3
+           is-sym3 : IsGroupIsomorphism (GR (SGroup G isSub)) (GR (Symmetric 3)) G→3
+
+     open _=p=_
+     -- Symmetric 3 is a normal subgroup of Symmetric 5
+     s00 : HaveSym3 (Symmetric 5) 
+     s00 = record {
+           isSub = sub00
+         ; G→3 = s15
+         ; is-sym3 = ?
+        } where
+           open ≡-Reasoning
+           s10 : Permutation 5 5 → Set
+           s10 perm = (perm  ⟨$⟩ˡ (# 0) ≡ # 0) ×  (perm  ⟨$⟩ˡ (# 1) ≡ # 1)
+           s11 : s10 pid
+           s11 = refl , refl 
+           s12 : (a : Permutation 5 5) → s10 a → s10 (pinv a)
+           s12 p (eq3 , eq4) = s12a , s12b where
+               s12a : pinv p ⟨$⟩ˡ # 0 ≡ # 0
+               s12a = begin
+                 pinv p ⟨$⟩ˡ # 0 ≡⟨ cong (λ k → pinv p ⟨$⟩ˡ k) (sym eq3) ⟩
+                 pinv p ⟨$⟩ˡ (p ⟨$⟩ˡ # 0) ≡⟨ inverseʳ p ⟩
+                 # 0 ∎ 
+               s12b : pinv p ⟨$⟩ˡ # 1 ≡ # 1
+               s12b = begin
+                 pinv p ⟨$⟩ˡ # 1 ≡⟨ cong (λ k → pinv p ⟨$⟩ˡ k) (sym eq4) ⟩
+                 pinv p ⟨$⟩ˡ (p ⟨$⟩ˡ # 1) ≡⟨ inverseʳ p ⟩
+                 # 1 ∎ 
+           s13 : {a b : Permutation 5 5} → a =p= b → s10 a → s10 b
+           s13 {a} {b} eq (eq3 , eq4) = trans (peqˡ (psym eq) (# 0)) eq3  , trans (peqˡ (psym eq) (# 1)) eq4  
+           s14 : {a b : Permutation 5 5} → s10 a → s10 b → s10 (a ∘ₚ b)
+           s14 {a} {b} eqa eqb = s14a , s14b where
+               s14a : a ∘ₚ b ⟨$⟩ˡ # 0 ≡ # 0
+               s14a = begin
+                  a ∘ₚ b ⟨$⟩ˡ # 0 ≡⟨ cong (λ k →  a ⟨$⟩ˡ k) (proj₁ eqb) ⟩
+                  a ⟨$⟩ˡ # 0 ≡⟨ proj₁ eqa  ⟩
+                  # 0 ∎
+               s14b : a ∘ₚ b ⟨$⟩ˡ # 1 ≡ # 1
+               s14b = begin
+                  a ∘ₚ b ⟨$⟩ˡ # 1 ≡⟨ cong (λ k →  a ⟨$⟩ˡ k) (proj₂ eqb) ⟩
+                  a ⟨$⟩ˡ # 1 ≡⟨ proj₂ eqa  ⟩
+                  # 1 ∎
+           sub00 = record { P = s10 ; Pε  = s11  ; P⁻¹ = s12 ; P≈ = s13 ; P∙ = λ {a} {b} → s14 {a} {b} }
+           s15 : Nelm (Symmetric 5) sub00 → Permutation 3 3
+           s15 record { elm = elm ; Pelm = Pelm } = shrink (shrink elm (proj₁ Pelm)) s16 where
+               s16 :  shrink elm (proj₁ Pelm) ⟨$⟩ˡ # 0 ≡ # 0
+               s16 = begin
+                 shrink elm (proj₁ Pelm) ⟨$⟩ˡ # 0 ≡⟨ Data.Fin.Properties.suc-injective (
+                    suc (shrink elm (proj₁ Pelm) ⟨$⟩ˡ # 0) ≡⟨ ? ⟩ 
+                    elm  ⟨$⟩ˡ (suc (# 0))  ≡⟨ proj₂ Pelm ⟩ 
+                    suc (# 0) ∎ ) ⟩
+                 # 0 ∎
+     s01 : (i : ℕ ) → HaveSym3 (SGroup _ (NormalSubGroup.Psub (CommNormal (Symmetric 5) i))) 
+     s01 zero = ?
+     s01 (suc i) = record {
+           isSub = sub01
+         ; G→3 = s15
+         ; is-sym3 =  record {
+              isGroupMonomorphism = record {    
+                 isGroupHomomorphism = record {
+                     isMonoidHomomorphism = record {
+                          isMagmaHomomorphism = record {
+                             isRelHomomorphism = record { cong = λ {x} {y} eq → ? }
+                           ; homo = ? }
+                        ; ε-homo = ? }
+                       ; ⁻¹-homo = ?  }
+                   ; injective = λ eq → ? }
+           ;  surjective = λ nx → s16 nx , s17 nx  }
+        } where
+           sym3 : HaveSym3 (SGroup _ (NormalSubGroup.Psub (CommNormal (Symmetric 5) i))) 
+           sym3 = s01 i
+           s10 : Nelm (Symmetric 5) (NormalSubGroup.Psub (CommNormal (Symmetric 5) (suc i))) → Set
+           s10 record { elm = perm ; Pelm = Pelm } = (perm  ⟨$⟩ˡ (# 0) ≡ # 0) ×  (perm  ⟨$⟩ˡ (# 1) ≡ # 1)
+           sub01 :  SubGroup (SGroup _ (NormalSubGroup.Psub (CommNormal (Symmetric 5) (suc i))))
+           sub01 = record { P = s10 ; Pε  = refl , refl   ; P⁻¹ = ? ; P≈ = ? ; P∙ = λ {a} {b} → ? }
+           s15 : Nelm (SGroup (Symmetric 5) (NormalSubGroup.Psub (CommNormal (Symmetric 5) (suc i)))) sub01 → Permutation 3 3
+           s15 record { elm = record { elm = elm ; Pelm = ic } ; Pelm = Pelm } = shrink (shrink elm (proj₁ Pelm)) ? 
+           s16 : Permutation 3 3  → Nelm (SGroup (Symmetric 5) (NormalSubGroup.Psub (CommNormal (Symmetric 5) (suc i)))) sub01
+           s16 abc = record { elm = record { elm = ? ; Pelm = ? } ; Pelm = ? } where
+              dba : Permutation 5 5
+              dba = ?
+              aec : Permutation 5 5
+              aec = ?
+              Cdba : deriving (Symmetric 5) i dba
+              Cdba = ?
+              Caec : deriving (Symmetric 5) i aec
+              Caec = ?
+              s18 :  iCommutator (Symmetric 5) (suc i) (pprep (pprep abc))
+              s18 = iunit (ccong ? ( comm Cdba Caec ))
+           s17 : (abc : Permutation 3 3 ) →  s15 (s16 abc) =p= abc
+           s17 = ?
+
+
+     -- if Symmetric 0 is a normal subgroup of Commutator Group of Symmetric 5
+     -- the next stagee contains Symmetric 0 as a normal subgroup
+
+     s03 : (i : ℕ) → Permutation 5 5
+     s03 0 = FL→perm (plist→FL (0 ∷ 1 ∷ 0 ∷ 1 ∷ 2 ∷ []))
+     s03 (suc zero) = FL→perm (plist→FL (0 ∷ 1 ∷ 1 ∷ 0 ∷ 2 ∷ []))
+     s03 (suc (suc i)) = s03 i
+
+     s02 : (i : ℕ) → deriving (Symmetric 5) i (s03 i)
+     s02 i = ? where
+        s04 : HaveSym3 (SGroup _ (NormalSubGroup.Psub (CommNormal (Symmetric 5) (dervied-length sol)))) 
+        s04 = s01 (dervied-length sol)
+
+     -- open Solvable ( Symmetric 5) 
+     end5 : (x : Permutation 5 5) → deriving (Symmetric 5) (dervied-length sol) x →  x =p= pid  
+     end5 x der = end sol x der
+
+     counter-example :  (i : ℕ) → ¬ (s03 i  =p= pid )
+     counter-example zero eq with ←pleq _ _ eq
+     ... | ()
+     counter-example (suc zero) eq with ←pleq _ _ eq
+     ... | ()
+     counter-example (suc (suc i)) eq = counter-example i eq 
+