モノイド単語

モノイド
5.1千文字の記事
  • 3
  • 0pt
掲示板へ

モノイドとは、圏論に出てくる慣れない概念であるが、実例としては足し算掛け算がなど結構身近なものがある。

以下の説明は、群論における一般的な説明である。

概要

モノイドは集合Sと、Sの要素に対する2項演算子「·」、Sに属する単位元e、の組み合わせのうち、以下の規則を満たすものをす。

結合: 任意のa, b, c ∈S について、(a · b) · c = a · (b · c) が成り立つ。

単位: 任意のa ∈S について、 a · e = e · a = a が成り立つ。
e · a = a を左単位、a · e = a を右単位という。

モノイドの例

モノイドという名前を聞いたことがない人は多いと思うが、モノイドとなっているものの例としてでも知っているものが、掛け算である。

Sを実数(整数複素数自然数でもよい)の集合、「·」を掛け算、e  = 1 とすれば、

  1. 結合: 任意のa, b, c ∈S について、(a · b) · c = a · (b · c) が成り立つ。
  2. 単位: 任意のa ∈S について、 a · 1 = 1 · a = a が成り立つ。

というように、モノイドの条件を満たしていることがわかる。

一つだけ注意する点があるとすれば、掛け算の例はたまたま交換法則(任意のa, b ∈S について、a · b = b · a)を満たしているが、モノイドは交換法則を(満たすこともあるが)満たすことが保されていないことである。

文字a,b,c,…からなる集合アルファベットということにする。アルファベットをAと書くと、A={a, b, c, …, x, y, z}である。Aの要素からなる有限な文字列をA上の語(word)という。例えば、"a"、 "xyz"、 "hello"、 "category"、 "qawsedrftgyhujikolp" などである。ここで、文字列を "-" で表す。Aの「クリーネ閉包」A*を、A*={A上の語}で定義する。語w,w'∈A*に対し、二項演算w・w'を語の連結ww'で定義する。例えば”ab” ・ "cd" = "abcd"、"ab"・"-"="ab"、"-"・"ab"="ab"である。こうすることで演算・は

  1. 結合:任意の語w1,w2,w3について、(w1・w2)・w= w1・(w2・w3)
  2. 単位: 任意のwについて、"-"・w = w・"-" = w

となり、モノイドの構造を持つことがわかる。これをA上の自由モノイドという。これは交換法則を満たさない例である。

モノイドのどこが良いのか

結合により、a · b · c は前後どちらから計算してもよいことになるため括弧なしで書くことができる。

もうひとつは、並列計算である。重畳関数の計算をするときに単位元eを初期値とし、Sの要素からなるリストと、「·」を重畳関数引数にする関数と考えれば、通常の重畳関数は端から順に計算することしかできないところ、モノイドを引数にした重畳関数分割して計算して並列計算した結果を最後に「·」でつなぎあわせて計算しても正しい答えが出ることが保されているのである。

圏論におけるモノイド

圏論におけるモノイドを一部説明する。圏論の言葉でモノイドを説明する事もできるし、モノイドの性質を一般化したモノイド構造などを考えることができる。あるいは逆に、圏論単位元を持つ射の集まりという性質から、モノイドをものすごく一般化したものと見なすこともできる。

圏の例から見るモノイド

圏の定義こちらこちらの記事を参照。

  • ひとつの対Mと恒等射idMのみからなる圏。可換図式で表すと以下のとおり。

M
  ↺idM

可換図式において通常は恒等射は省略される。

  • これらを複数あつめたものは以下のとおり。

I J K L M

このように恒等射のみからなる圏は離散圏と呼ばれる。

  • 2つの対I,TとIからTへのひとつの射からなる圏。

I→T

  • 集合S={s,t,u,…}が与えられたとき、2つの対I,Tとそれらの恒等射、およびIからTへの射の集合C(I,T)=Sとする圏。
s
I
t
T

u
  • Mがモノイドのとき、ひとつの対Eを持ち、射集合M(E,E)=Mで与えられる圏が得られる。上の図でI=T=Mの場合。最初の例と異なり、恒等射以外に自己射を持つと考える。
m
M
idM
M

n

射m,nの合成はモノイドMの積をもってmn=mnで与えられ、恒等射はMの単位元で与えられる。

  • 逆に、Cを圏とし、任意のX∈Ob(C)に対してC(X,X)は射の合成に関しIdX単位元とするモノイドになる。つまり、ひとつの対のみを持つ圏Mを与えることは、モノイドMを与えることに他ならない。

以上を踏まえると、圏はモノイドの多対版であると考えることができる。

準備

以下はモノイダル圏の説明。

圏の積

Cを圏とし、C1、C2Cの対とする。Cの対C0と2つの射p:C0→C1、q:C0→C2からなる三つ組(C0,p,q)つまり

C1 ←C0→
p  q
C2

が以下の性質を満たすとする。

Cの対X、2つの射f1:X→C1f2:X→C2からなる任意の3つ組(X,f1,f2)に対し、ある射f:X→C0がただひとつ存在し、pf=f1、qf=f2を満たす。可換図式は以下のとおり。

←X→
↓f1  f↓ f2
C1 ←C0
p  q
C2

この図式の性質を普遍性という。このとき、C0をC1,C2の積(またはカルテシアン積)と呼び、C0=C1×C2と書く。多くの場合、直積と呼ばれる積に相当するものである。

つまりC1とC2が与えられたとき、どのようなXからの射の対(f1,f2)でもあるfを経由して対(p,q)を通るように一意に分解される「普遍的」な分解である。

また、終対IはI×X→XX×Iを考えれば、この積のもとで恒等元として働くことがわかる。例えば集合の場合、終対は一点集合I={*}であり、λ(*,x)=x、η(x,*)=x、x∈Xで与えられる全単射I×X→λX←ηX×Iにおいて、恒等元として作用していることがわかる。

テンソル積

M,N,LをR-加群とする。環R上の加群テンソル積⊗Rは以下の定義を持つ積である。ただし、ModRはR-加群の圏、M×N∋(m,n)はMとNの集合としての直積。

  • R-双線形写像と呼ばれる写像φ:M×N→M⊗RNが存在する。
  • φは普遍的。つまり、任意のR-加群Uと任意のR-双線形写像F:M×N→Uに対し、R-準同写像f:M⊗RN→Uが一意に存在してF=f∘φとなる。

M×N
φ

M⊗RN
↓ F ↙f
U

M⊗RNの元をφ(m,n)=m⊗nと書く。テンソル積は存在すれば一意である。

この時、⊗Rは以下の性質を持つ。

  1. R-加群M、Nに対しM⊗RNは再びR-加群となる。
  2. f:M→M'、g:N→N'がR加群の準同のとき、f⊗Rg:M⊗RN→M'⊗RN'も加群の準同である。
  3. 任意のR加群Mに対し、自然な同R⊗RM≅M⊗RR≅Mが存在する。
  4. 任意のR加群L,M,Nに対し、自然な同(L⊗RM)⊗RN≅L⊗R(M⊗RN)が存在する。

性質1,2より、⊗Rは直積圏からの関手-⊗R-:ModModR→ModRを定める。

これは、どのような「積の構造を持つ写像」F:M×N→Uもテンソル積⊗Rを元に生成する事ができるということを示唆している。

この性質を抽し、圏の上のモノイダル構造が定式化される。

モノイダル圏

関手・自然変換定義は該当記事を参照。

圏の積C×C'からDへの関手H:C×C'→Dを双関手という。

圏C上に双関手-⊗-:C×C→C、自然変換a=aX,Y,Z:(X⊗Y)⊗Z → X⊗(Y⊗Z)、対I∈Ob(C)、同ι:I⊗I→I、関手R1,L1が与えられ、次の2条件を満たす時、⊗(あるいは(⊗,a,I,ι,R1,L1))を圏のモノイダル構造という。

1.五公理 すべてのX,Y,Z,Wに対して次の図式が可換。

(X⊗(Y⊗Z))⊗W
aidW
((X⊗Y)⊗Z)⊗W
a
(X⊗Y)⊗(Z⊗W)
↓a ↓a
X⊗((Y⊗Z)⊗W)

  →
  idXa

X⊗(Y⊗(Z⊗W))

2.単位元の公理 L1(X)=I⊗X、R1(X)=X⊗Iと定義される関手L1:C→C、R1:C→Cは圏同値である。

(XI)Y  →
 a
X(IY)
↓R1idY   idXL1
↘→ XY  ←↙

圏Cとその上のモノイダル構造の3つ組(C,⊗,I)をモノイダル圏と呼ぶ。あるいはしばしばCをモノイダル圏と省略して呼ぶ。⊗をCのテンソル積、Iをテンソル積のユニット単位)と呼ぶ。つまりモノイダル圏とは、カルテシアン積以外の何らかの「積」の構造を持つ圏である。

例:集合の圏Setには直積が存在する。X,Y∈Setに対し、X⊗Y:=X×Yとおき、Iとして1元からなる集合{*}を採用し、aX,Y,Z((x,y),z):=(x,(y,z))(ただしx∈X、y∈Y、z∈Z)とすれば圏Set上のモノイダル構造(Set,×,{*})が決まる。

例:Rを可換環、RをR加群テンソル積とするとき、(ModR,R,R)はモノイダル圏となる。

モノイド対象

モノイダル圏Cにおいて、対Xと射m:X⊗X→X、e:I→Xの3つ組(X,m,e)について、以下の2つの図式が可換であるとき、XをCにおけるモノイド対、または単にモノイドという。

(X⊗X)⊗X

m⊗idX

X⊗X
aX,X,X≃ ↓
X⊗(X⊗X) ↓m
idX⊗m ↓
X⊗X


m

X

I⊗X e⊗idX
X⊗X

idX⊗e

X⊗I
↓m

p2
X
p1

これらの図式が可換であるとはつまり次の合成が等しいということを示している。

m∘(idX⊗m)=m∘(midX)、m∘(e⊗idX)=p2、m∘(idX⊗e)=p1

これらは要素を使って表すこともできる。

集合Mの例で言うと、M上の関数mをm(x,y)=xyのように書き、一点集合I={*}上の関数eをその一の値である要素e(*)=u∈Mで置き換えると図式は以下のようになる。

〈〈x,y〉,z〉≅〈x,〈y,z〉〉 〈x,yz〉
xy,z〉 xyz

〈*,x〉 〈u,x〉 〈x,u〉 〈x,*〉
ux〉=〈x〉 〈xu〉=〈x〉

これらはまさに、乗法が結合的で左および右恒等元として要素uを持つというモノイドの定義そのものである。これは逆に言えば、代表的な恒等元を可換図式でどのようにすれば表すことができるかという例を示している。

M×Mのカルテシアン積×が結合的であって、全単射I×M→M←M×Iで規定される恒等元Iを持てば、⊗は2つの対上のどんな演算に置き換えてもよい。Cが圏であり、ある演算◆がこのような演算であり、Iをその単位元とすると、体系(C,◆,I)におけるモノイドというものについて議論することができる。

  • 集合の圏Setにおけるモノイド対は群論におけるモノイド(記事最上部で定義されたもの)と一致する。集合Mに対し、写像m:M×M→Mおよびe:{*}→Mを与えることはM上の積と元e(*)=1∈Mを与えることに他ならない。体系の三つ組は(Set,×,{*})。
  • アーベル群の圏Abを(アーベル群の)テンソル積⊗によりモノイダル圏と考えた時、圏Abにおけるモノイド対は「単位元を持つ環」になる。アーベル群Aに対し、準同AA→Aを与えることはZ-双線形写像A×A→Aを与えること、つまり通常の環の積を与えることと同値。テンソル積のユニットはZ(整数)であり、u:Z→Aを与えることはZの生成元1から単位元u(1)∈Aを与えることになる。体系の三つ組は(Ab,⊗,Z)。
  • Rを可換環とするとき、ModRにおけるモノイドはR-代数に一致する。R-加群TとR-加群準同u:R→Tとφ:T⊗RT→Tで図式を可換にするものが与えられたとき、積stφ(s⊗t)と定義すればTは環になる。加群定義に加え、(as)t=a(st)(a∈R、s,t∈T)となることがR-代数の定義であるので、TがR-代数となることが確認できる。体系の3つ組は(ModR,⊗R,R)。

任意の環Rに対して整数ZからRへ向かって一意な環準同ζ:Z⇒Rがあり、環Rは一意な方法でZ-代数になる。環とZ-代数は同一の概念であり、R-代数について述べられたことはR=Zとすることで環に対する読み替えることができる。

  • 自己関手の成す圏CCにおけるモノイドはモナドと呼ばれる。体系の3つ組は(CC,,I)。

関連商品

ニコニコ市場は2023年11月に終了しました。

関連項目

【スポンサーリンク】

  • 3
  • 0pt
記事編集 編集履歴を閲覧

ニコニ広告で宣伝された記事

春日部つむぎ (単) 記事と一緒に動画もおすすめ!
提供: 輪廻
もっと見る

この記事の掲示板に最近描かれたお絵カキコ

お絵カキコがありません

この記事の掲示板に最近投稿されたピコカキコ

ピコカキコがありません

モノイド

1 ななしのよっしん
2018/08/25(土) 06:56:38 ID: xX3QCEHiuW
今のままだと集合の圏におけるモノイドしか定義出来ていない。
圏論に出てくる概念として紹介したいなら、一般の圏のモノイドかモノイダル圏のモノイド定義に触れた方がよいのでは。
それか圏論って言葉をなくすとか。
👍
高評価
0
👎
低評価
0
2 ななしのよっしん
2018/10/12(金) 17:24:42 ID: 8HQYH3WDxl
だいぶ詳しくなりましたね。
圏、関手自然変換定義などのベーシックな部分は圏論の記事に移行したほうがいいかもしれません。
「X,Y,Z,Wを集合とする。」だと最初に4つの特別な集合を固定してるように見えるので改めた方が良いかもしれません。
👍
高評価
0
👎
低評価
0
3 deadbull
2018/10/13(土) 09:14:50 ID: h9c0BemHuG
内容についてはさっぱりですが、補足ありがとうございます
モナド米田の補題についても詳しければ、モナド(プログラミング)掲示板とかでご教示頂けると嬉しいです。
👍
高評価
0
👎
低評価
0
4 ななしのよっしん
2018/10/19(金) 01:12:31 ID: T62sSTSCtQ
ようするに直積集合から元の集合への写像X×X∋(a,b)→ab∈Xとして積⊗と単位元を導入したものがモノイド
そのような積が存在すれば同を除いて一意で具体的な構成は何の圏によるかで変わる
ということなのかな
👍
高評価
0
👎
低評価
0
5 ななしのよっしん
2022/06/30(木) 02:47:36 ID: ENne9i3QLR
アルゴリズムでの応用の話をしようと思ったらガチ圏論話題だったでござる
👍
高評価
0
👎
低評価
0
6 ななしのよっしん
2022/07/03(日) 22:41:25 ID: LZF454LBHQ
http://math.artet.net/?eid=1422409exit
https://oshiete.goo.ne.jp/qa/12989409.htmlexit
「対が1つしかない圏がモノイド」で「自然数全体Nを対自然数同士の対応を射とすると足し算とか掛け算モノイドで表せる」って話は混乱するんだけど自己解決した

不特定自然数nからnへ射がある」って考えると、全ての射がnからnへ向かうので対圏論的にはただひとつ
nは不特定だから1か100か分からないけど射が向かう先がひとつになるなら圏にとって同一とみなせる
そもそも代数的に見たモノイド単位元を除けば数を特定して計算するんじゃなく不特定な数同士の関係
不特定自然数nが一の対である圏(モノイド)を考えると、自然数同士の加法・乗法を射として構造を抽出できる

こう考えるとモノイドの例としての自然数同士の加法乗法についてすっきりと理解できる気がする
👍
高評価
0
👎
低評価
0
7 ななしのよっしん
2022/07/03(日) 22:58:46 ID: LZF454LBHQ
↑は、答えを探して字幕付きで見てたhttps://youtu.be/aZjhqkD6k6w?t=2720exitの45:20あたりで
質問に+5とかは射ですって答えてるのを見ていて思いついた、たぶんこういうことなんだろうと

圏論モナドプログラミングについては、これがプログラミング初心者の自分にもわかる!と思った
https://www.youtube.com/watch?v=HPG6v4xGrN8exit
こうして言われてみると便利そう
👍
高評価
0
👎
低評価
0
8 ななしのよっしん
2022/07/03(日) 23:06:05 ID: LZF454LBHQ
失礼、↑はモナドプログラミングの話で、モノイドプログラミングの関わりはわかんないね
圏論とか関手とかの説明自体がものすごくわかりやすいので参考になる人はいると思うけど
👍
高評価
0
👎
低評価
0
9 ななしのよっしん
2022/07/04(月) 00:07:50 ID: LZF454LBHQ
>>6だけどモノイドの恒等射を調べてたらやっぱり違ったかもごめん
https://eed3si9n.com/herding-cats/ja/Monoid-as-categories.htmlexit
>射は文字通り 0、1、2 などであって関数ではない

自然数の加法の圏なら「対は*、射は自然数、恒等射は0、合成は+」で、
2+3=5は射2∘射3=射5、7+0=7は射7∘射0=射7、という解釈で何も問題ない
同じ矢印ベクトルとは違って射の始域終域が一致しても射は同じになるわけじゃないから、
合成しても「同じ」になる恒等射0は特殊な射として意味があるわけだ
射ってグラフ理論みたく純につながり方を表すものじゃなく、一種の「経路」を含んでるね?これ

てことは、自然数全体をただひとつの対とし自然数自然数に移すのを射として、
という某本の言葉づかいhttp://math.artet.net/?eid=1422409exitがおかしいのかな
*は虚無なのかなんな
(省略しています。全て読むにはこのリンクをクリック!)
👍
高評価
0
👎
低評価
0
10 ななしのよっしん
2022/07/23(土) 13:15:14 ID: a4xp3C14lP
>>4
> そのような積が存在すれば同を除いて一意で具体的な構成は何の圏によるかで変わる
例えばSetには複数のモノイダル積を入れることができる、普通は直積だけど直和(とI = 集合)を入れても何の問題もないので、本質的に複数ある

>>9
> てことは、自然数全体をただひとつの対とし自然数自然数に移すのを射として、
> という某本の言葉づかいhttp://math.artet.net/?eid=1422409exitexitがおかしいのかな
私自身は某本を読んでおらず裏は取れないけど、少なくともブログに書いてあることはおかしい
*は虚無だと思った方がいいかもね

モノイドプログラミングの関連として、オートマトン関係のことを追記したい気持ちになった
👍
高評価
1
👎
低評価
0