Your SlideShare is downloading. ×
0
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
モナモナ言うモナド入門
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

モナモナ言うモナド入門

2,672

Published on

モナドは友達、こわくないよ。

モナドは友達、こわくないよ。

Published in: Education
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,672
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
23
Comments
0
Likes
9
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. モナモナ言うモナド入門 2012.11.17 hiratara
  • 2. 今日話すこと✦ 圏論から目を背けずに 、 モナドの定義を淡々と✦ 図はスライド作るの面倒なので板書で✦ タイトルは@kazu_yamamoto さんの 「モナモナ言わないモナド入門」の オマージュ
  • 3. 今日話すこと✦ モナドは数学の概念✦ よほどの数学嫌いでもない限り、 回り道をして誤摩化す必要はない
  • 4. ゃ駄目だ。逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄目だ。 逃げちゃ駄
  • 5. 圏(Category)
  • 6. 圏(Category)✦ C0 - 対象の集合。A, B, C, ...✦ C1 - 射の集合。f, g, h, ...✦ dom: C1 → C0 - 定義域✦ cod: C1 → C0 - 値域
  • 7. 圏(Category)✦ id: C0 → C1 - 恒等射✦ dom (id A) = cod (id A) = A✦ ∘: C1×C1 → C1 - 合成 (C1×C1 := {<g, f>| dom g = cod f})✦ dom g ∘f = dom f, cod g ∘f = cod g
  • 8. 圏(Category)✦ h ∘(g ∘f) = (h ∘g) ∘f - 結合律✦ id ∘ f = f ∘ id = f - 恒等射
  • 9. 関手(Functor)
  • 10. 関手(Functor)✦ 圏Cと圏Dについて、関手F : C → Dとは、 F : C0 → D0 - 対象関数 F : C1 → D1 - 射関数 の組
  • 11. 関手(Functor)✦ dom Ff = F(dom f), cod Ff = F(cod f)✦ F id = id✦ F (g ∘f) = Fg ∘ Ff
  • 12. 自然変換(Natural Transformation)
  • 13. 自然変換(Nat)✦ 関手F, G:C → D について、 自然変換α:F→Gとは、 α : C0 → D1 (dom αA = FA、cod αA = GA)
  • 14. 自然変換(Nat)✦ 任意のCの射f : A → Bについて、 αB∘Ff = Gf∘αA
  • 15. 補足)垂直合成✦ F, F’,F’’:C→C’ α:F→F’, β:F’→F’’について、β.α:F→F’’を (β.α)A := βA∘αA と定義。
  • 16. 水平合成✦ F, F’:C→C’、G, G’:C’→C’’ α:F→F’, β:G→G’について、β∘α:FG→F’G’を (β∘α)A := βF’A∘GαA (= G’αA∘βFA) と定義。
  • 17. モノイド(Monoid)
  • 18. モノイダル圏✦ 圏C、双関手□:C×C→C、対象I、 自然同型α:(-□-)□-→-□(-□-)、 λ:I□-→id、ρ:-□I→idについて、
  • 19. モノイダル圏✦ (C, □, I, α, λ, ρ)がモノイダル圏とは、 任意の対象W, X, Y ,Zについて、 W□α(X, Y, Z)∘α(W, X□Y, Z)∘α(W, X, Y)□Z =α(W, X, Y□Z)∘α(W□X, Y, Z) X□λ∘α(X, I, Y) = ρ□Y
  • 20. モノイド✦ モノイダル圏 (C, □, I, α, λ, ρ)において、 対象M、射µ:M□M→M、η:I→Mが モノイドとは、 µ∘id□µ∘α(M, M, M) = µ∘µ□id µ∘η□id = λ, µ∘id□η = ρ
  • 21. モナド(Monad)
  • 22. モナド✦ 関手 T:C→C、自然変換η:id→T、µ:TT→T (T, η, µ)がモナドとは、 µ∘Tµ = µ∘µT µ∘Tη = µ∘ηT = id

×