81
わんくま同盟 東京勉強会 #82 あおいたんのパズルを数学しましょうか 長月葵 @aoi_nagatsuki [email protected]

T82 aoitan あおいたんのパズルを数学しましょうか_修正版

Embed Size (px)

Citation preview

Page 1: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あおいたんのパズルを数学しましょうか

長月葵

@aoi_nagatsuki

[email protected]

Page 2: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

はじめに

Page 3: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

まえおき

• おなまえあおいたん

• どうも最近数学キャラ扱いされがちだけど実はそう数学キャラでもない

– あおいたんはあくまでもソフトウェア工学の基礎として数学基礎論を嗜んでるだけですよ!

• エヴァリスト・ガロアは

– 読者にとって、著者がわかっていない事を明確にしている科学書がもっとも有用で、難しさを包み隠すことがもっとも有害であるということは、残念ながら余り気づかれていない。

• と言いましたが今回は敢えて隠していきます

• ちゃんとした話がしたい人は懇親会で

• 多分質疑応答の時間は取れないので質問は休憩時間か懇親会で

Page 4: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

おねがい

• わからないことは単語でもページ数でもいいのでとにかくメモしてください

– 後で質問したい場合は手元に残る何かに

– わからなかったところがあおいたんのところに届けばいいならアンケートに

– ページのタイトルがユニークにしてあるのでページ数がわからなければタイトルを書いてください

• ほぼ間違いなくその疑問はおぼえていられないのでまずメモりましょう

• メモる時間が取れるかはちょっと保障しかねます(マテ

Page 5: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

アジェンダ1

• まずはおさらい

• 第一部 解けるパズル解けないパズル

• 第二部 あみだくじの足し算

• 第三部 8パズルの足し算

• まとめ

• 付録

Page 6: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

アジェンダ2

• 全部はやれない自信があります

• とりあえずおさらいと第一部第二部がやれればいいと思っています

• 第三部が本題ではありますが必要な道具は第二部までで揃います

–第三部に辿りつけなかったら休憩と懇親会で話しましょう

• 時間が足りないので数学的にちゃんとした言葉での説明はしません

–要望があればブログに書きます

Page 7: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

まずはおさらい

Page 8: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

15パズル - 概要

• スライドパズルの元祖ですね

• よく見る のピースの並びがひとつ欠けていてスライドさせて絵合わせするやつです

–最初は数字並べだったようです

• ルービックキューブが出てくるまでパズルの王様でした

44

Page 9: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

15パズル - ルール

• のピースを並べたものから一つ取り除いた盤を用いる

• スライドしてピースのないところと隣接するピースを交換できる

• シャッフルされた状態から特定の順序に並び替えるのが目的

• 以下では数字が多いとめんどくさいので8パズルを扱います

44

44

Page 10: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

足し算 - 基本

• a個のものとb個のものを並べて数えること

(を抽象化したもの)

• 2個のりんごと3個のりんごを並べて数えると5

• と言うのを数だけ取り出して と書きましょうねと約束したものが足し算です

• ちょっと頭おかしくなると集合の直和と元の数だとか関数の入れ子の数だとか0と或る数の次の数を得る操作をn回繰り返すだとかで表現しちゃうわけですが気になる人は懇親会で誰かに聞いてね

532

Page 11: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

足し算 - 法則

• 足し算の並びの中に出てくる数字の種類の中で一番細かいものの範囲に収まる

–整数と整数の足し算なら整数になる

–整数と実数の足し算なら実数になる

• 足し算の並びはどこから計算しても結果が変わらない

• 0を足しても値は変わらない

15)75(37)53(

55005

Page 12: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

パズルを数学しましょうか 第一部 解けるパズル解けないパズル

Page 13: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルを数字で表す

• 毎度図示するのは大変なのでここからは8パズルを数字の並びで表します

• 例えば出来上がりの図は

• とします

• 空きスペースは無視します

87654321

Page 14: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

置換を配列で表す

• 8パズルの状態をある状態から別の状態にすることを置換と呼ぶことにします

• 置換を2行の数字の列で表します

• 例えば出来上がりの図から一つ入れ替えると

• になります

• このような置換は

• と書くことにします

68754321

87654321

68754321

Page 15: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

巡回置換にする1

• ある置換

• があったとき

52673418

87654321

Page 16: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

巡回置換にする2

– 1→8→5→7→2→1

– 3→4→3

– 6→6

• と元の数まで辿れる組を見つけられます

Page 17: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

巡回置換にする3

• これらを

– (1 2 5 7 8)

– (3 4)

– (6)

• と書いて巡回置換と呼ぶことにします

Page 18: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

置換の符号1

• 巡回置換の要素数を長さと呼びましょう

– (1 2 5 7 8)=5

– (3 4)=2

– (6)=1

• です

Page 19: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

置換の符号2

• この巡回置換の長さ-1の合計が偶数だったら正、奇数だったら負と言うことにします

– もうちょっと数学的に書くと巡回置換の長さ-1の合計を-1の冪に乗せて

–のようにして正負を得ます

• これで得られた正負を置換の符号と呼ぶことにします

11 )11()12()15(

Page 20: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

置換の符号は不変量

• スライドをどのように操作してもそこから得られる置換の符号は変わりません

• 置換の符号は不変量です

–不変量というのは何らかの操作をしても変わらない物や値のことを言います

– ここではスライド操作をしても符号が変わらないことを言っています

Page 21: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

解けないパズル - 解けない形

• 8パズルにはどうやっても解けないダメ形があります

• からは

• にはできません

78654321

87654321

Page 22: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

解けないパズル - 符号の確認

• 置換の符号を確かめてみます

• 対して完成形の符号が

11

)87)(6)(5)(4)(3)(2)(1(78654321

87654321

)12()11()11()11()11()11()11(

11

)8)(7)(6)(5)(4)(3)(2)(1(87654321

87654321

)11()11()11()11()11()11()11()11(

Page 23: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

解けないパズル1

• もしスライド操作でダメ形から完成形にできるとしたら

• スライド操作では符号は変化しないので

–ダメ形の符号=完成形の符号

• になるはずです

Page 24: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

解けないパズル2

• 上の等式をそれぞれの符号で置き換えると

– -1=1

• になって矛盾する

• なのでスライド操作でダメ形から完成形にできるは成り立たちません

• まとめると8パズルが解けるためには符号が1

でなければならないわけです

Page 25: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

パズルを数学しましょうか 第二部 あみだくじの足し算

Page 26: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ1

• 8パズルもパターンが多いのでまずはパターンが足し算できることをあみだくじでみていきましょう

• ここからはあみだくじを数字で表していきます

–縦線三本のあみだくじを扱います

• 今後あみだくじ3と書きます

–スタート位置に1,2,3と番号を振ります

–ゴール位置にも1,2,3と番号を振ります

Page 27: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ2

– 1 2 3

– |-| |

– | |-|

– |-| |

– 1 2 3

– という形があったとき1から3、2から2、3から1に行くので

• と書きます

123

Page 28: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3の結果のパターン

• あみだくじ3の結果には以下のパターンがあります

123

213

132

312

231

321

Page 29: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3のパターンの省略

• あみだくじのパターンは無限にありますね

• でも結果のパターンは有限です

–あみだくじ3の結果のパターンは前ページの6通りです

• なので結果が同じものはその結果になる最小のパターンまで端折ることにします

Page 30: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3の足し算

• あみだくじのパターンは並べることで行き先を変えられます

– 1 2 3

– |-| | = (2 1 3)

– 1 2 3

– +

– 1 2 3

– | |-| = (1 3 2)

– 1 2 3

– =

– 1 2 3

– |-| |

– | |-| = (3 1 2)

– 1 2 3

Page 31: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

もう一度おさらい - 足し算の法則

• 足し算の法則は

–足し算の並びの中に出てくる数字の種類の中で一番細かいものの範囲に収まる

–足し算の並びはどこから計算しても結果が変わらない

– 0を足しても値は変わらない

• なのであみだくじが足し算できるならこれらができるはずです

Page 32: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3の足し算の法則1

• あみだくじ3の足し算はどうでしょう

–足し算の並びの中に出てくる数字の種類の中で一番細かいものの範囲に収まる

• あみだくじの結果のパターンをどう並べてもあだくじの結果のパターンに収まります

Page 33: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3の足し算の法則2

–足し算の並びはどこから計算しても結果が変わらない

• あみだくじの結果のパターンの並びはどこの並び二つを取ってその結果に置き換えても最終的な結果はかわりません

Page 34: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

あみだくじ3の足し算の法則3

– 0を足しても値は変わらない

• あみだくじの結果のパターンには何もしない並び

• があるので0のような動きになります

321

Page 35: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

パズルを数学しましょうか 第三部 8パズルの足し算

Page 36: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルのパターン

• 沢山あります

– 8!ぐらいあるので並べません

–ただしこの中には解けないパターンがあるので都度置換の符号を確かめましょう

Page 37: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算

• 8パズルのパターンはそれに必要なスライド操作を続けて行うことで結果が変えられます

• 次ページから一つ目の過程を順番に見てみます。

+ =

+ =

Page 38: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程01

Page 39: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程02

Page 40: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程03

Page 41: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程04

Page 42: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程05

Page 43: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程06

Page 44: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程07

Page 45: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程08

Page 46: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程09

Page 47: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程10

Page 48: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程11

Page 49: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程12

Page 50: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程13

Page 51: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程14

Page 52: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程15

Page 53: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程16

Page 54: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程17

Page 55: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程18

Page 56: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程19

Page 57: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程20

Page 58: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程21

Page 59: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程22

Page 60: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程23

Page 61: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程24

Page 62: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程25

Page 63: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程26

Page 64: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程27

Page 65: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程28

Page 66: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程29

Page 67: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程30

Page 68: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程31

Page 69: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程32

Page 70: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程33

Page 71: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程34

Page 72: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算過程35

Page 73: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算の法則1

• 8パズルの足し算の法則も確認しましょう

–足し算の並びの中に出てくる数字の種類の中で一番細かいものの範囲に収まる

• 8パズルの結果のパターンをどう並べても8パズルの結果のパターンに収まります

Page 74: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算の法則2

–足し算の並びはどこから計算しても結果が変わらない

• 8パズルの結果のパターンの並びはどこの並び二つを取ってその結果に置き換えても最終的な結果はかわりません

Page 75: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

8パズルの足し算の法則3

– 0を足しても値は変わらない

• 8パズルの結果のパターンには何もしない並び

• があるので0のような動きになります

87654321

Page 76: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

まとめ

• これまで見たように置換で動きを表現できるパズルはすべて置換の足し算で表現できます

• 今回見た内容をちゃんとやると対称群と言う概念になります

• 群論は構造を整理する強力な道具なので一度勉強してみると世の中が楽しく見えるかもしれないですよ

Page 77: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

付録

Page 78: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

参考文献

Page 79: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

対称群と15ゲーム

• 平成21年度 数学特別講義I

• 対称群と15ゲーム

–佐垣 大輔

– http://ocw.tsukuba.ac.jp/25a0-v-1-

65705b66985e/65705b66727952258b1b7fa9i/

300c5bfe79f07fa430681530fc30e0300d30b93

0e930a4-pdf30d530a130a430eb

• -第一部の内容はこのPDFを参考にしました

Page 80: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

数学ガール - ガロア理論

• 数学ガール ガロア理論

–結城浩

– http://www.amazon.co.jp/dp/4797367547/aoiro

yozora-22

• 第二部の内容はこの本の第一章と第三章を参考にしました

Page 81: T82 aoitan あおいたんのパズルを数学しましょうか_修正版

わんくま同盟 東京勉強会 #82

群論の味わい

• 群論の味わい -置換群で解き明かすルービックキューブと15パズル- [単行本]

– David Joyner (著), 川辺 治之 (翻訳)

– http://www.amazon.co.jp/dp/4320019415/aoiro

yozora-22

• 群によるパズルの表現と全体の構成はこの本の第一章、第三章、第五章、第八章以降を参考にしました