Paper Scrap

目次

高校数学しか知らない専門学生による群論入門 pt.1

  • 群論
  • ルービックキューブ
  • Group Theory

はじめに

ルービックキューブについてもっと深く知りたくて群論を勉強することにしました。

Kociemba法とかはPythonで実装したことはあるものの具体的なロジックを理解できていないので、ここで詳しく学んでいきたいと思います。

ゆくゆくは、NxNの最小手数を証明できたら楽しいだろうなと思っています。

(4x4以上の最小手数は計算量が膨大なので未解明。)

前提(スペック)

  • 高校数学(1,2,3,A,B,C)しか知らない
  • 漸化式だけ大学レベルも若干解ける
  • ルービックキューブは好き
  • 3x3のソルブアルゴリズムは実装したことがある。

注意

私は数学オタではないので正しい表記をしていない可能性があります。なるべく正しい表記をするように努めますが、誤りがある場合は容赦ください。

1. 定義

定義1. 二項演算

Aを集合とする。この時、集合A上で定義される二項演算は、

写像f:A×AA写像f: A \times A \rightarrow A

である。

解説 2つの元(集合を構成する要素)を使って1つの元を定める規則のこと。

例1.1 X = ℤとしたとき、加法(ℤは整数)
+:Z×ZZ;(x,y)x+y+:ℤ \times ℤ \rightarrow ℤ;(x,y) \mapsto x + y

解説 「+」は整数ℤで演算した場合、解は必ず整数ℤになる。

例1.2 X = ℤとしたとき、乗法 (ℤは整数)

同様に二項演算である。

×:Z×ZZ;(x,y)x×y\times :ℤ \times ℤ \rightarrow ℤ;(x,y) \mapsto x \times y
例1.3 X = ℝとしたとき、2つの実数の平均をとる操作 (ℝは実数全体)
:R×RR;(x,y)xy=x+y2\ast : ℝ \times ℝ \rightarrow ℝ;(x,y) \mapsto x \ast y = \frac{x+y}{2}

解説 2つの実数の平均は必ず実数になる。

定義2. 群

集合GとG上の二項演算*の組(G,*)が群であるとは、次の条件を満たすことを言う。

1. 単位元の存在
eGs.t.gG,ge=eg=g{}^\exists e \in G s.t. {}^\forall g \in G, g \ast e = e \ast g = g

解説 集合Gに属するどんな要素gを持ってきたとしても、右から演算しても左から演算しても、結果が元のgのままとなるような要素eが存在する。 このeをGの単位元という。

2. 逆元の存在
aG,bG,s.t.ab=ba=e{}^\forall a \in G, {}^\exists b \in G, s.t. a \ast b = b \ast a = e

解説 集合Gの中に、どんな要素aを選んできたとしても、それに対して演算すると単位元eになるbが必ず存在する。 このときのbをaの逆元と呼び、a⁻¹と書き表す。

3. 結合律
x,y,zG,(xy)z=x(yz){}^\forall x,y,z \in G, (x \ast y) \ast z = x \ast (y \ast z)

解説 結合法則。 x,yから計算してもy,zから計算しても同じである。

さらに群(G,*)が

x,yG,xy=yx{}^\forall x,y \in G, x \ast y = y \ast x

を満たすとき、可換群、もしくはアーベル群という。また、群Gの元の個数|G|をGの位数といい、それが有限な群を有限群、そうでない群を無限群という。

まとめ

二項演算と群の定義についてまとめました。これが今後の基礎になっていくと思います。この時点でもルービックキューブにつながるものがいくつもあって今後の群論の勉強が楽しみです。