前回の記事で、部分群とそれによる類別を見つけることで、 群 G = {a1,a2,a3,a4,a5,a6} の操作が、C = {a1,a2,a4} の3つの要素だけで合成できるのを発見することができた。これは、便利な方法だが、どうやれば部分群を見つけることができるだろうか。
それは、群 G の要素をひとつ取り上げ、その巡回群を作ることで発見できる。群 G の要素 a からその累乗を次々に作っていったとき、a, a2, ... , am , ... それらの全てが異なることはできないので、必ず同じ要素があるはずだ。それを ar = as と置くと、ar-s = e となるので、e は a の累乗に属している。そこで、{e, a, a2, ... , am-1} という集合を作るとそれは、群 G の部分群になる。この群を巡回群という。また、mを要素 a の位数という。 詳しい証明は教科書に任せることにして、これを利用して群 G の部分群を見つけてみよう。方法は簡単だ、群 G の要素を取り上げてその累乗を次々に作っていけばいい。群論電卓で実験した結果を次に示す。 Prelude> :l group.hs [1 of 1] Compiling Main ( group.hs, interpreted ) Ok, modules loaded: Main. *Main> mapM_ (\x -> print $ take 6 $ iterate (*x) x) [a1,a2,a3,a4,a5,a6] [a1,a1,a1,a1,a1,a1] [a2,a3,a1,a2,a3,a1] [a3,a2,a1,a3,a2,a1] [a4,a1,a4,a1,a4,a1] [a5,a1,a5,a1,a5,a1] [a6,a1,a6,a1,a6,a1] この結果を見ると、群 G には少なくとも {a1}, {a1,a2,a3}, {a1,a4}, {a1,a5}, {a1,a6} という5つの部分群があることが分かる。あとは、これらによる類別を作ることで、G の演算表を分析することができる。 例えば、{a1,a4} による類別を求めるために、{a1,a2,a3,a4,a5,a6} と {a1,a4} の演算表を作ってみる。 *Main> printab [a1,a2,a3,a4,a5,a6] [a1,a4] [a1,a4] [a2,a5] [a3,a6] [a4,a1] [a5,a2] [a6,a3] 上の結果から、群 G が部分群 {a1,a4} によって {a1,a4}, {a2,a5}, {a3,a6} に類別されることが分かる。したがって、群 G の要素が {a1,a4} と {a1,a2,a3} の直積で表せることが分かり、前回のような分析ができる。 群の積の演算表さえ分かれば、その演算の本質的な演算を機械的に見つけ出すことができるのは便利だ。
by tnomura9
| 2012-08-31 23:57
| Haskell
|
Comments(0)
|
カテゴリ
新型コロナウイルス 主インデックス Haskell 記事リスト 圏論記事リスト 考えるということのリスト 考えるということ ラッセルのパラドックス Haskell Prelude Ocaml ボーカロイド 圏論 jQuery デモ HTML Python ツールボックス XAMPP Ruby ubuntu WordPress 脳の話 話のネタ リンク 幸福論 キリスト教 心の話 メモ 電子カルテ Dojo JavaScript C# NetWalker ed と sed HTML Raspberry Pi C 言語 命題論理 以前の記事
最新のトラックバック
最新のコメント
ファン
記事ランキング
ブログジャンル
画像一覧
|
ファン申請 |
||