LoginSignup
4
0

More than 5 years have passed since last update.

Wikipediaで抽象代数学のマグマを読んでみよう

Last updated at Posted at 2017-02-24

ゲーム制作のネタにもなるかもしれない。よくできてるもんだ。

今回の記事

自然数は 前に書いた。

「Wikipediaのペアノの公理を読んでみる」 http://qiita.com/muzudho1/items/3a743168dc12b00a2d96

次は なんか「最も簡単なものはマグマであり」と書いてるし、マグマを読んでみよう。

Wikipedia 「抽象代数学」
https://ja.wikipedia.org/wiki/%E6%8A%BD%E8%B1%A1%E4%BB%A3%E6%95%B0%E5%AD%A6

以下、Wikipedia に書いてあることを単に わたしが読んで 言い方を変えて 書いただけ。数学的な用語を知らないので 説明の仕方が違って良いのではないか。
間違っているところがあれば 誰かが教えてくれるだろう……。

その前に。

数がいっぱいある中で……。
Gazo

二項演算

2つのバケツを選んで、
Gazo
何か計算しようとすることを 二項演算(にこうえんざん) と呼ぶと誰かが決めてるようだ。真似しよう。

マグマは 二項演算で出てくる。

二項演算以外に 何があるかというと、

単項演算

バケツを1つだけ選んで、
Gazo
このバケツを どうにかしようとする 単項演算 (たんこうえんざん) と、

あとは

多項演算

3つ以上のバケツを選んで、
Gazo
これらのバケツで 何か計算しようとすることを 三項演算 (さんこうえんざん) と呼ぶようだ。

3つ以上は キリがないので 多項演算 (たこうえんざん) と呼べばいいのではないか。

で、単項演算とか 多項演算は 忘れるとして、二項演算に戻る。
Gazo

Gazo
「なんで 二項演算だけ 特別なんだ……。七項演算のマグマは無いのか……」

とりあえず 二項演算だけ見ていく。

もう こっから むずかしい

絵に描くのも大変なので描かないが、数字は0~6の他にも7以上とかがあるとする。

そして バケツに名前を付ける。
Gazo
エックス・バケツ と、 ワイ・バケツ があることにする。別に うさぎさんバケツ、くまさんバケツでも良かった。いや、むしろ うさぎさんバケツ、くまさんバケツの方が良かった。

あと、普段の算数・数学を忘れてもらうために 数字を いったん 宇宙語に置き換える。
Gazo

そしてこの忙しい時に 何か黒い物体が降りてくる。
Gazo
この黒い物体と 意志の疎通は取れるのか……。

そのとき不思議なことが起こった。 黒い物体は光り輝き 1枚の風呂敷へと変わった。
Gazo

で、なんか
Gazo
エックス・バケツ チームが横に、 ワイ・バケツ チームが縦に並んだ。

なるほど、この表があれば どんな二項演算でも答えは 風呂敷に書き込めるかもしれない、例えば……。
Gazo
わたしのキーボードでは 打ち込めないが、x と y を使って ● という計算をした答えは 緑色に光っているところに 答えがあるだろう。描くのが大変なので描かないが……。

Gazo
「七項演算だったら 表を描くのが 大変だったところだ……」

で、要点としては

何が マグマ なのかというと……。
Gazo
宇宙語と 宇宙語を 計算した答えは また同じ 宇宙語 になることらしい。

それの何が嬉しいのかというと……。

Gazo

計算した答えを使って また 計算 できる ことだ。 嬉しくない……。

で、もっと単純に考えれば

まだ、普段の 算数・数学 の癖 が残っているかもしれない。もっと単純に考えよう。

宇宙語と 宇宙語 を計算した結果を さっきのは無しにして もう一度 考え直して 表に埋めてみる。

Gazo
文字列連結じゃないか……。

確かに C#言語なんかでも

string c = "a" + "b";

とでも書けば c の内容は "c" ではなくて "ab" だ。

計算順序を かっちり指定することが必要

で、この マグマ とかいうやつ。

"a" ● "b" ● "c"

とか書かれていても、

  • "a" ● "b" を先に計算して、そのあと "ab" ● "c" を計算するのか、
  • "b" ● "c" を先に計算して、そのあと "a" ● "bc" を計算するのか、

決まりがないので計算できない。普段の数学の真似をして、丸かっこを付けるものとする。

( "a" ● "b" ) ● "c"

"a" ● ( "b" ● "c" )

の、どっちかになる。

Gazo
「あれっ? ( "a" ● "c" ) ● "b" とか、 "a" ● ( "c" ● "b" ) とか、
( "c" ● "b" ) ● "a" とかは?」

ここでは 計算順序の話しなので、 "a" ● "b" ● "c" は固定で、丸かっこを入れる場所だけが違う。

例えば

"a" ● "b" ● "c" ● "d"

だと、

( "a" ● ( "b" ● ( "c" ● "d" ) ) ) // 3 2 1

( "a" ● ( ( "b" ● "c")  ● "d" ) ) // 3 1 2

( ( "a" ● ( "b" ● "c") ) ● "d" ) // 2 1 3

( ( ( "a" ● "b" ) ● "c" ) ● "d" ) // 1 2 3

( ( "a" ● "b" ) ● ( "c" ● "d" ) ) // 1 3 1 ※1はどっちが先でも同じ

ぐらいの順がありそう。

で、これを絵に描くと
Gazo
二分木だよね、ということが言いたいんじゃないか。誰かが書いた Wikipedia。

(追記)丸かっこ

「計算結果がどれも同じじゃないか?」って? 違う違う。

もう少し Wikipedia に書いてある通りに意訳すると、計算結果には 息継ぎの切れ目のようなものがある。
Gazo

「真っ赤な食堂のテーブルの上の花瓶に挿している花」という文があったとして 赤いのは食堂なのかテーブルなのか花瓶なのか花なのか、というように日本語には 係り結び のようなものがある。マグマには 係り結びのルールが無いので 丸かっこのようなものが必要。

逆に言うと

日本人は 日ごろから abcd のような日本語の文を耳から聞いて
Gazo
丸かっこも使わずに 文脈や違和感から abcdのどれとどれがくっつくのか 5パターンぐらい見分けられたり 間違ったりするということだ。

マグマには これができない。

休憩

マグマの全部を 再説明し直せていないんだが 夜中になったので 再説明を終わる。

マグマの要点を復習すると、宇宙語と 宇宙語で計算したら また宇宙語、それ以外はルールが決まってない、あと説明する時間が足りてない何か。

(以下、追記)で、マグマとか1個 知ってても意味ない

なんか もう1個 マグマを見つけたとする。
Gazo
なんか マグマにも 西洋っぽいのもあれば アジアンなものもあるのだろう。もしかすると エジプトかもしれない。

重要なのは

で、ここで重要なのは……
Gazo
どうも この別々のマグマは 別の計算をしようとしている ようだ。わたしには分かる。キーボードで宇宙語を打ち込めないんだが ここで仮に 左の宇宙語を うさぎ語、 右の宇宙語を かめ語 と名付けるとし、そして 何かやっているかわからないがそこでの何かの計算を うさぎ算 かめ算 と呼ぶとしよう。

うさぎ算、かめ算は 同じだったら話が楽すぎる

Gazo

うさぎ算と かめ算は ぜんぜん同じに見えない計算とする。まあ何か 違う理屈で 計算が行われるのだろう。

じゃあ ここに もうひとつ いぬ算 というものを用意するとする。

いぬ算を中継すると どうよ

左のうさぎと、右のかめ では ぜんぜん つかみどころがなかったものが……。
Gazo
いぬ算 を中継させることで、計算結果に一致がみられるような、そんな 直訳の翻訳装置みたいな計算方法があるかもしれない。

そんな いぬ算 みたいなものを発見しようものなら 計算の応用範囲は 他分野に広がっていくだろう。

では、この いぬ算 では、何が起こっているのか。

一応 いぬ算の順序の例

なんか 見にくいので……。

1
Gazo

2
Gazo

3
Gazo

4
Gazo

5
Gazo

6
Gazo

7
Gazo

8
Gazo

9
Gazo

10
Gazo

こんな感じで計算すると、いつも計算結果がイコールになるとする。

Gazo
「なぜ、 犬(1兎2)=犬(1)亀 犬(2) だけ特別なのか……?」

わたしが決めた学問じゃないんで知らないが、
犬(1)亀 犬(2)=犬(1兎2) も 言ってることは同じ なんで、
多分、兎 と 亀 の表記を省略したときに 2つを見比べると……。

犬(1 2)      = 犬(1) 犬(2)

犬(1) 犬(2)= 犬(1 2)

左にある方が 犬(1 2) の方が見た目もすっきりしているし、そっちの書き方を優先したんじゃないだろうか、知らんけど。

Wikipediaでの例を読んでみよう。

次のように解説がある。

Wikipedia 「Homomorphism」
https://en.wikipedia.org/wiki/Homomorphism

e^(1+2) = e^1 * e^2    // 兎+ 亀* 犬e^

ln(1*2) = ln(1) + ln(2)    // 兎* 亀+ 犬ln( )

へぇ、確かにイコールだ。うさぎ、かめ、いぬ がいる。
また、もっと視覚的な説明がされている。

Wikipediaでは数学は英語ページの方が充実しているのか……。

足し算と、掛け算を並べても 何も嬉しくないが……。
Gazo

こんな風に 掛け算の方を 1から始まる2の倍数にすると……。
Gazo
計算方法も 計算結果も異なるが、おんなじ絵柄の絨毯になっている。 絵に描いた方がいいだろうか。

Gazo

ここで、下の図で説明するが、足し算表の数字を 足し合わせたあと 2のX乗 (いぬ算)にすると、 右の掛け算表の 2のX乗した列と行だけ掛け合わせると、同じ計算をしていることになる。

Gazo

このように いぬ算 のようなものを1つ仲介することで おんなじ計算ができるようになるとき、準同型、英語で言うと Homomorphism (ホモモーフィズム)と言うようだ。

誰が見つけたんだ こんなの……。

2つのマグマがあれば、準同型 を作れるような いぬ算 がないか探してみるのもいいのかもしれない。

まだマグマの全部 解説してないんで、時間があるときに また この記事に続けて書く。

で、うさぎ語

そこらへんを ほっつき歩いている うさぎ星人に、「全部の文字を集めてこい」といって寄こさせたのが下の図だ。
Gazo
全部じゃないかもしれないが、とりあえず 集まった。水増しも無いようだ。

で、この文字セットを使って
Gazo
電卓を作ろう。

\ カタ、 カタ、 トンッ /
Gazo

文字の組み合わせによっては ブザーが鳴って 計算できないこともあるかもしれない。なんて 不自由 なんだ。打ち歩詰めルールみたいだ。

もしかすると この文字は うさぎ語 の中では 数字ではないのかもしれない。

\ カタ、 カタ、 トンッ /
Gazo

念入りに探す。もしかすると 片方が数字で、片方が文字かもしれない。ブザーが鳴っているのも 組み合わせのせいかもしれない。いろんな組み合わせも試す。

\ カタ、 カタ、 トンッ /
Gazo

計算に成功したときは なんのチャイムも ファンファーレもならない。
こんな くそ地味な作業 が好きなやつも世の中には存在する。

うさぎ語 独自調べ

わたしが独自に調べたところによると、
Gazo
うさぎ語の上図の9文字は 2文字間では どのように組み合わせても OK のようだ。3文字の組み合わせでは知らん。

わたしは うさぎ語の専門家ではないので 詳しいわけではないが、うさぎ語で書かれていない再説明ということで 読む人もいるのではないか。Qiita に書いておけば間違っていれば 誰か教えてくれるだろう。

よーし、全域性 は確保された。

ところで……。

これは ダメ だったが……。
Gazo

これは OK なようだ。
Gazo

うさぎ算とは 何なのか。分けわからん。

そういう 局所性 もあるうさぎ字 も含めると……。
Gazo
さらに4文字増えるようが、この青い字を使うと 計算機が ブー と鳴ってしまう。マグマじゃない。

それに比べて 運よく 赤い字は どう組み合わせても また赤い字が出てくる。うまく完結してくれた。計算機の中だけでうまく 閉じている とでも言おうか。マグマだ。

青い字も もしかすると単項演算や多項演算だったら 閉じている字 なのかもしれないが……。

うさぎ星人には説明しなかったが 今回 欲しいのは
Gazo
この うさぎ算 で 両脇に置ける 二項演算用の数字だけだ。

とりあえず、上図の 赤いうさぎ字を 数字 と呼ぶことにする。

今 やりたいのは、かめ語の電卓の 亀ボタンを……、
Gazo

この兎ボタンで……、
Gazo

ハッキングしようというわけだ。

まとめておくと……。

70ミリリットルのポリ袋 M があるとする。
Gazo

で、この中に 35ミリリットルのポリ袋 N が入っていたとする。
Gazo

このポリ袋は、どんなに中を開けても ポリ袋しか入っていない。

ポリ袋論

で、埼玉に住んでいると 埼玉県民 と呼ばれるわけだが、埼玉県民の中には 新座市民 というのが入っている。

この袋の中身を もっと開けていくと 区民世帯 が出てきて、最後には 世帯員 が出てくるかと思う。

ここで要点なのは どんなに袋を 開けても 山田〇郎とか 鈴木イ〇ロー のような具体的な誰かは出てこないことで、例えば誰か と問う と、反町〇史 とか 藤井〇也 とかが出てくる。

開ける」と「問う」は漢字は似ているが 別の操作だということを踏まえて、それと同じ理屈で……、

この何なのかわからない謎のポリ袋 M。 このポリ袋は例えば何か? と問うてみよう。
Gazo

えっ、問う の? 別にいいけど……。いっぱいあるんで少しだけ 答える と……。
Gazo
なんだ、マグマな数だったのか……。これは書き切れない。

じゃあ、N のポリ袋って 例えば何?
Gazo

えっ、問う の? 別にいいけど……。色んなパターンがあるけど例えば こんなパターンはどうだろうか?
Gazo
ゾロ目か~。

ゾロ目以外のパターンもあるかもしれないが。

なんにしろ こういうのを……。

Gazo
NはMの 部分集合 と呼ぶのらしい。

どうも MはNを兼ねる ことを数学的に言うとそうなるらしい。

で M が マグマ なら、 N が 部分マグマ とか言うのも、なんか そのまんま だ。

続く。

(2017-03-16 追記: 書く時間がないじゃないか。時間くれ)

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0