タグ

圏論に関するNobuhisaのブックマーク (3)

  • 2度のリストの横断を1度にするでおじゃる - 梶本裕介の日記

    import Control.Arrow average = sum &&& length >>> uncurry (div) main = print $ average [1, 2, 5, 7, 10] このaverageはsumとlengthによってリストを2度横断するでおじゃる.これを1度の横断にしたいでおじゃる.sumとlengthはcatamorphismによって, と表せるでおじゃる.ただしでcatamorphismを表し,をで略記し,0を0を返す定数関数とし,をprojectionとし,2項演算子はcurryingされていないとするでおじゃる.を1つのcatamorphismに変形するでおじゃる. = = = = = = ここでFはcatamorphismのbase functorでおじゃる.従ってaverageは次のように書きなおせるでおじゃる. averag

  • はじめての圏論 その第1歩:しりとりの圏 - 檜山正幸のキマイラ飼育記

    全体目次: 第1歩:しりとりの圏 (このエントリー) 第2歩:行列の圏 第3歩:極端な圏達 第4歩:部分圏 第5歩:変換キューの圏 第6歩:有限変換キューと半圏 第7歩:アミダの圏 第8歩:順序集合の埋め込み表現 第9歩:基に戻って、圏論感覚を養うハナシとか 付録/番外など: 中間付録A:絵を描いてみた 番外:同期/非同期の結合 中間付録B:アミダとブレイド 番外:米田の補題に向けてのオシャベリ 一部のプログラミング言語の背景として、圏論(カテゴリー論)が使われたりするせいか、以前に比べれば多少は圏論に興味を持つ人が増えたような気がしなくもないような。でも、安直な入門的文書はあまり見かけないですね。もちろん、シッカリした教科書や論説はあるんですが、どうもシッカリし過ぎているような。例えば、圏の例として「コンパクト・ハウスドルフ空間と連続写像の圏」とか言われてもねぇ(この例はいい例なんです

    はじめての圏論 その第1歩:しりとりの圏 - 檜山正幸のキマイラ飼育記
  • Quine: 自分自身を出力するプログラム

    Nobuhisa
    Nobuhisa 2008/09/30
    Quineの解説と、後半部分でMonadと圏論を扱ってる
  • 1