ルービックキューブ
この間(id:selvaggio:20060527)ルービックキューブを買ってから調べたこと、
それ以前に調べたことをまとめようと思う。
というのもid:mzpが「最近、バトンばっかやん」と申すからであるからして。
導入
置換系のパズル(勝手に命名)というのは大抵群論で片が付くらしい。
15パズルも対称群(またの名は置換群、そのまんま)というヤツで片が付く。
ルービックキューブもしかり。
「ルービックキューブ 群論」とかでググればそれっぽいのがヒットする。
つまり群論とルービックキューブというヤツは非常にかかわりが深いものだ。
群論 to ルービックキューブ
群論というからには群を扱う理論なわけで、学問なのだから当然ながら扱う対象の定義から入るのが常である。
しかしちゃんとした定義はめんどくさい、非常に。
よってルービックキューブが群であることを確かめるにとどめる。
結合法則
まぁ簡単に言えば、順番さえ守ればドコから計算しても良い、のだが。
ルービックキューブで例えようとするとどうしようもない。
上手い例えが見つからない。
例えるならば、「既に茹でてあるカップメン」を「食べる」のと「カップメン」を「茹でて食べる」の結果が等しい程度だ。
あ、全然ルービックキューブじゃねえし。
単位元の存在
単位元というとなんだコノヤローとなるが、何のことはない、何もしないことだ。
ルービックキューブでも、単位元は何もしないことだ。
「何もしないでおいて」から「カップメン食べる」のと、「カップメン食べて」から「何もしない」のは同じ「カップメン食べる」だ。
カップメンが多いのは気のせいだ。
逆元の存在
逆元というとなんだコノヤローとなるが、何のことはない、逆の操作のことだ。
「ドアを開ける」「ドアを閉める」
逆の操作だな。
世の中全部がこう便利であればよいのだが、逆元が存在しない例はいくらでもある。
ヤクザを「殴る」「あ、やっぱ今のなし。」「ざけとんかごるぁ」
当然のように「殴る」の逆元は存在しない。
しかし、ルービックキューブは常に今行ったことの逆をできる。
逆に回せばいいんだから。
この性質は非常にありがたい性質だ。
交換法則は考慮しない
群の満たすべき性質ではないが、重要な性質に交換法則が一般には成り立たないのがある。
例えば、カップメン「茹でて」から「食べる」のと、「食べて」から「茹でる」(?)のは違う(後者はだいぶ悲惨だ)。
ルービックキューブでも、回す面を選ぶ順番を間違えれば全く異なる結果を得る。
世の中で、交換できる演算というのは案外幸せなヤツだ。
「借金を返して」から「結婚する」のと、「結婚して」から「借金を返す」のはだいぶ違う気がするのも気のせいじゃないだろう。
話がそれた。
この交換法則が成り立たないというのはたぶん重要な性質だ。
これが成り立つのは可換群、またはアーベル群とか言う、幸せなヤツらだ。
(恐らく)可換群な演算を持つパズルと言えば、ライツアウトだ。
アレは押す順番によらないので、パズルとしては簡単なほうだ。
可換ではないルービックキューブは、論理構造も複雑になる。
だから解くの難しいんだけどな。