「圏論」を含む日記 RSS

はてなキーワード: 圏論とは

2019-09-12

[] Haskell学習カリキュラム

  1. Haskell文法を学ぶ。
  2. 圏論を学ぶ。
  3. 圏論知識を基にして、再びHaskellを見直す。

Haskell文法書だけを読む

圏論Haskell対応関係

対象
関数

となっていることを、最初は知らなくてもOK

単にHaskell文法を学ぶだけで、背後にある考え方(圏論)は、まだ知らなくてもOK

圏論の基礎

圏論は元々数学で考案された考え方なので、直接的には代数やとトポロジー知識必要になるが、そこまでのレベルは求めていない。

とりあえず、プログラミングで使える程度の初歩的なレベル理解で十分。

圏論の具体的な応用例としてHaskellを見直す。

圏論知識を基にして、Haskell文法や仕組みを見直してみる。

注釈対象定義して、関数は射を定義していることが分かる。

ファンクター、アプリティブ、モナドで、手続き型の順次・反復・分岐表現できることが分かる。

2019-02-02

anond:20181211235036

味わい深いのは個人主観なのでどうでもいい(というかそういう逃げを前提として書いているのだろうから)として、

>うーんとなってしまった。unit-flat の話だったら設計上それ以上 flat作用させても不変のエンドポイントがないと不味いよねぐらいで設計できてしまう。

意味不明「不変のエンドポイント」ってなんだよ?圏論にそんな用語あったっけ?w

不変のエンドポイントがないと不味いよねぐらいで設計できてしまう、で、できてしまうというのが百歩譲って本当だとしてそれが何なのか?

批判ぽい印象操作したいだけの戯言だな。

2019-01-20

世の中しらんことが多いなと感じる

sin(x)の導関数cos(x)であることを証明できる日本人は何人いるであろうか。30%いるだろうか。

その中で、サティジムノペディと聞いてピンとくる人は何人いるであろうか。

その中で、確定申告のやり方を人に教えられる人は何人いるだろうか。

その中で、冷蔵庫ロードラインという言葉を正しく説明できる人は何人いるだろうか。

その中で、タイ語アルファベットを読める人は何人いるだろうか。

その中で、LD50説明できる人は何人いるだろうか。

その中で、エディプスコンプレックスという言葉が初耳でない人は何人いるだろうか。

その中で、ミクロ経済学での無差別曲線説明できる人は何人いるだろうか。

その中で、膠着語孤立語の違いについて説明できる人は何人いるだろうか。

その中で、圏論モナドを正しく理解している人は何人いるだろうか。

その中で、今月アフリカのどこでどのような経緯でテロが起こったか解説できる人は何人いるだろうか。

その中で、行書と草書の違いを説明できる人は何人いるだろうか。

その中で、黒澤明映画を知っている人は何人いるだろうか。

その中で、悪魔の喉笛がどこにあるか知っている人は何人いるだろうか。

その中で、中国で言われている世界三大美女をすべて言える人は何人いるだろうか。

その中で、ブリネル硬さ有用性を語れる人は何人いるだろうか。

その中で、ロールケーキレシピを知っている人は何人いるだろうか。

その中で、中央選挙管理会はどのように組織され何をしているのかわかる人は何人いるだろうか。

その中で、脳神経の12対を知っている人は何人いるだろうか。

その中で、CIAOちゅ〜るが何か知っている人は何人いるだろうか。

その中で、特別送達がどうすればできるか知っている人は何人いるだろうか。

その中で、パレットとは何に使うものか知っている人は何人いるだろうか。

その中で、アーガイル柄とは何を指すか知っている人は何人いるだろうか。

その中で、外傷性刺青とは何か知っている人は何人いるだろうか。

その中で、廿日市市がどこにあるか知っている人は何人いるだろうか。

その中で、日本専売公社がどのような経緯で設立されたか知っている人は何人いるだろうか。

その中で、三心四修とは何か説明できる人は何人いるだろうか。

その中で、フォッコ英語名を言える人は何人いるだろうか。

ひとつひとつは知ればググることができる。しかひとつひとつは平易である。ただすべてを知っている人は多くない。

こうした言葉1つで知らない世界があったことを知れる。これらの知識雑学と似ているが、少し趣が違っていて、その言葉の裏に膨大な情報があることを知って圧倒されるというものだ。たとえばアーガイル柄をひとつとってもそうで、その言葉からは服飾の世界には膨大な情報があり、ミシンや染料があり繊維があり生地があり針がありファッションがありモデルがあり流通があり……そういうことについて何の疑問もなく「服を買っていた」ということに戦慄を覚えた。それで世の中頭のいい人が多いなとすごく感じている。自分の知らない言葉観念論理が世の中にあふれているというのはおそろしいことだ。

2019-01-08

anond:20190107223948

ラーメンで言えば、いわゆる支那そば系のあっさり醤油メンマが載ってるみたいのが正統だ、ぐらいな話であり、ラーメン嗜好品ではなくもっと至高のなにかだと思ってる人にとっては、そういう正統派ラーメンを軽視してラーメン語るなってとこだろうけど、豚骨こってりが好きな人間に無理にあっさり支那そば食べさせてもしょうがないんだよ。

音楽も単なる嗜好品なんだし、そこまで正統をありがたがる必要もないと思う。増田的には嗜好品ではなくもっとすごいなにかなのかとは思うけど、多くの人にとってそこまでのものではない。学生オケなんて、カラオケEXILE歌うウェイとそんな変わらんよ。

古典ベースになってるのって、音楽として魅力的だからというより、単に教科書として手頃だからというだけの話だと思う。数学だって嗜好品とか娯楽として考えたら高校教科書より圏論とかのほうが楽しいだろうし、まず高校数学で100点取れって言われても困る。

2018-09-24

anond:20180924142546

方言圏論と同じように、陰湿さのレベルも輪を書いて広がっていやしないかと思うときがある

2018-06-25

anond:20180625035202

プログラマには数学素養はいると思う

それこそ圏論とかまで当たり前に求められるようになってきてる

でもコーダーには不要

要はどこを目指しているかだと思う

あと夜学は相当意思が強くないと途中で挫ける

2018-02-14

独立研究者 森田真生は山師

しかしたら数年前に決着のついてる話かもしれないが森田真生の話をする。

一応どういう人か簡単説明しておく。Wikipediaや本人のHPによれば「独立研究者」という肩書

大学等の研究機関に属さずに数学テーマとした研究をしている在野の研究者

著作もいくつかあり、中でも「数学する身体」という本は小林秀雄賞をとっているらしい。

また「数学演奏会」なるイベントを定期的に開いているとのこと。

僕はこの人の著作を読んだこともないし、「数学演奏会」に行ったこともないので正直あまり知らない。

ただ僕が簡単アクセスできるこの人の情報から判断するにこの人は胡散臭い

多分この人が話題になったのは結構前の事だと思うが、今更書くのは僕が注意を向けたのが最近の事だからだ。

前々から書店に陳列される著作を通じて存在は知っていたが読んだことは無かった。

本の見た目からして一般向けの啓蒙書という感じなのでスルーしていた。

しか最近知り合いがこの人の名を挙げたので気になって調べてみたら思ったよりも浅薄で、

数学の専門知識の無い人をおかしな方向に誘導しているように見えたので、注意喚起意味を込めてこの文章を書くことにした。

森田問題点は単純で「数学知識があまり無いのに、まるで数学を知っているかのように語っている」というのに尽きる。

これだけだと説得力もないし、内容も不明瞭なので森田数学知識があまり無いと判断する根拠を記す。

何をもって知識が無いと判断するかは難しいところだが大きく、森田の語る内容が表層的という点からそう判断した。

森田はTEDで講演している。是非見てほしい。(他にもいくつかYouTube森田動画があがっている。)

森田のTEDでの講演

https://www.youtube.com/watch?v=Hx6ZNEWydCU

浅すぎないだろうか。この内容を話すのに数学の専門知識必要な部分は一つもない。

一貫して根拠のないフワッとした話ばかりで最終的には岡潔を引いて「数学とは自分内面出会うことだ」などと言うが、

説明あやふや哲学的にもお粗末なものだ。

かにトーク性質からしてあまりテクニカルな話はできない。

ただ専門知識仮定しなくても実りある話はできる。

次のフィールズメダリストのVillaniによるTEDでの講演を見てほしい。

https://www.ted.com/talks/cedric_villani_what_s_so_sexy_about_math?language=ja

この講演は本当に凄い。専門的なバックグラウンドもつ話を一般人向けの話にうまく落とし込んでいる。

Villaniが例外的に上手い部分はあるとはいえ、一般人向けにある程度深い数学の話をするのが不可能ではないことが分かる。

森田が誰にでもできる程度の講演しかしないのはその程度の知識しかいからだと思っている。

森田研究者というが論文特に書いていないため、知識の程度はわからない。

検索で引っかかる唯一の森田による大学数学レベル記述は「哲学者のための圏論入門」というタイトルpdfだが、

内容としては圏論哲学系の人に紹介するものなので、その目的からしても当然のことだが入門的内容のまとめに過ぎず、

ここから知識の程度を測るのは難しい。これをあえて書いたのはこのpdf存在森田知識証左になると考える人いるかもしれないため。

これくらいは数学科卒なら大抵書ける。

また森田の話に出てくる数学者はグロタンディーク岡潔マクレーンチューリングウィッテングロモフ等といった

ビッグネームばかりでしかも分野もばらけているというのも不思議だ。

何らかの研究対象があればその分野で一流の研究者名前が挙がっていいはずだと思うのだが。

他にも本人のTwitterなどを多少見たが、特定の分野に対する造詣は感じられないし、一般啓蒙書的な数学理解を超えるものは見られない。

森田知識がない分には一向に構わないが、無い知識数学を語らないでほしい。

数学を語るのが数学者だけの特権と言うつもりは全くないが、専門知識を語るのは難しいことだということを強調したい。

数学書を理解するのは一定の訓練で出来るようになるが、その内容をテキストから離れた自分文脈に組み込んで話すのはずっと難しい。

しかしそれが出来なくては一般人のレベルに専門知識を落とし込むことは出来ない。森田はこのレベルには達していない。

数学について語るのではなく、自身数学観について語るのは構わないが、それならばビッグネーム名前を借りるべきでは無く、

徹頭徹尾自分言葉で語るべきだろう。権威の名を出して森田数学観を語れば、一般人にはそれが独自見解と気づくのは難しいのではないか

僕には森田数学観とこれまで数学者によって積み上げられてきた数学は大きく異なると思う。

数学に関心を持つ人が森田数学観に感化されて、数学を学ぶ機会を逃してしまうとすればそれは不幸なことだ。

2015-05-13

圏論がどうとか知らんわ

ホモロジー群が関手ですとか言われてもんん????って感じ。

プログラミングオリエンテッドじゃねーからプログラミング理論関係ない数学はそれなりに知ってるよ。

プログラマー連中はプログラミング関係ない数学を知らなさすぎだからな。

圏がどうとか言う前に微分方程式の基礎くらい知っとけよって思う。

http://anond.hatelabo.jp/20150513112635

Haskellって後から圏論取り入れたんじゃなかった?

あと、型の有無と動的・静的型付がごっちゃになってね?Rubyだって型に相当するものあるじゃん

http://anond.hatelabo.jp/20150513110244

うぜえ。

俺は毛の壁じゃねえし、こんなん関数型界隈じゃ常識だわ。

計算可能性の理論ラムダ計算Lispを産んだように、プログラム意味論圏論Haskellを産んだ。

プログラム意味論では変数の型が議論の最小単位で、関数プログラムはある型の変数を別の型の変数へ変換する変換器として記述される。

から本質的に、型が無いとプログラムという概念存在できないことになる。

で、このアカデミック議論が普段書くコードにどう影響を与えるかというと、実はほとんど影響がない。

もちろん知っていた方がよりエレガントなコードを書けるだろうが、必須ではない。

圏論を知っている必要があるのは、Haskell設計する人達だけだ。

下っ端はエリート様達が作った便利な道具を、細かい理屈抜きにしてありがたく使えればいい。

http://anond.hatelabo.jp/20150513104859

関数を一級オブジェクトとして扱えるかどうかとは関係ないよ。

しかプログラム圏論を使って扱おうと思うと本質的重要だよ。

この辺を青筋立てて語る奴らのいるせいで、ますます倦厭され普及が遅れるきらいがある。

なんでもっと大らかな心を持てないかねぇ。

2015-01-28

http://anond.hatelabo.jp/20150127003906

Kが関数型言語について虚言・妄想を書き連ねたように扱われてるが、解説はクソだったにしても、ソースコードは動くし完全に無根拠で書かれてるわけじゃないんだよな。

Kの記事批判コメントしてる自称関数型言語界隈の人たちも、関数型言語はただ動かせるだけで、プログラミング意味論圏論(といっても初歩)を数学的に議論できるやつなんてほとんどいないから、明確に誤りを指摘できずに今回ほど泥沼化してる。

程度の差はあれ、Kみたいに変な例えしか書いてないような関数型言語についての記事はいっぱいあるんだよなぁ…。

2015-01-27

http://anond.hatelabo.jp/20150127035153

関数型の言語プログラム書いてる人は別として、

関数プログラマ」ってのになるとキモくなる、と言うのがよく分かる例か。

圏論とか言い出す当たりも典型的というかなんというか。。。バカは黙って体張って仕事してろ、と言いたくなる良い例ですな。でももやしっこなんだろうな。。。

http://anond.hatelabo.jp/20150127062539

情報インプットアウトプットも、実際凄い能力を持ってる人だと思う。

ただ彼には普通技術者研究者とは違う彼独自理想の形、みたいなものがあって、既存の考え方を彼の理想のために都合のいいように組み込んでしまうんだよな。

都合のいい部分だけ取り入れて、気に入らない部分は切り捨てて「これが本当の関数型だ!」とか「これが圏論本質だ!」とか言っちゃう

専門に勉強してる人から見ると、本当に重要な部分が無視されていたり、用語の使い方がおかしかったり、いろいろ突っ込みどころがあるんだけど、

彼には彼の中で確固たる理想理論があって、筋道立てて話すことはできるので、素人からは正しいように見えるんだよな。

2014-05-15

未来の為の寛容さ

関数本と称したデタラメ本なんかどれだけ高く平積みしたところで、どうでもいいと思ってるよ。間違って買っちゃった初心者右往左往するだろうが、きっといつかは正しい知識に戻ってくるだろうし、それで諦めちゃう人はどのみち辞める定めなんだろう。たとえQiitaとかで議論を吹っかけられようと、話し合いが成立しないと判った時点で席を立てばいい。煽られようとワザワザ付き合ってやる必要はない。でも実際のお前らは腹を立て、戦い、傷ついてPTSDになって、数スレを消費した。そんなナイーブなお前らが、今回の事件は何故かスルーできた。

悪意のカタマリだろうと、他愛のない道化はむしろ放置でいいと思うんだよ。色んな奴がもっと好き勝手に書くべきだ。ちゅーんさんはモナド本を書いていいし、漫画解説する関数型があっていいし、遅延評価解説本は望まれている。市井プログラマー素人技術本を書いていいんだ。関数型プログラミング繁栄はそういう態度の先にあると思う。選択肢は多い方がいい。その中で、何が本当に重要かは読者が決める。ヘンテコリンな奴をありのまま受け入れる寛容さは必要だと思うんだ。

でも今回のはそれに収まらない。重要さのレベルが違うだろ。どこぞの馬の骨じゃない。あの子日本Haskellコミュニティの若手ホープじゃないか。今は女性関係で腹を立てているだけかもしれないが、将来トップに立った彼に「あなたライブラリは負の価値しか持ちません」っつって包丁画像突きつけられたらどうする。Slackでは「勉強会に参加する学生が少ない」とか嘆かれてたけど、俺が学生なら、もはや頼まれても行きたくない彼女言及しなければ安全? 俺はそんな風には全然思えないし、正直不安だよ。



…いや、だからどうしろって言う意見はない。どうすればいいかは判らない。お前らの冷静さにビックリしたというのが感想だ。他人が頭ごなしに言っても伝わらないだろうし、本当に必要なのは排斥することじゃなくて、自分の考えを親身になって聞いてくれる仲間だと思う。ただ正論ねじ伏せるのでなく、それでいて「単なる腰抜け」じゃない誰か。

彼はスレ民でもあった筈だが、ム板のこのスレはそういう話に適さないだろう。俺たちが場を提供することはできない。勝手だが身内に期待したい。圏論の話ならいつでも歓迎です。

以上、スレ汚し済まなかった。コードポイントフリーにする作業(たのしい)に戻ります

--------------------------

この文章は当初2ちゃんねるプログラムHaskellスレに投げる予定だったが、スレ汚しになると判っていて書くのもどうかと思い、失礼してこちらに置きました。あとリツーイータビリティ。(この記事リンクフリーです)

2014-04-22

http://anond.hatelabo.jp/20140410183410

すごい今更だけど、1に対してだけ少し。

基本的に、まだ発展途上にあるものほど、理論面が強調されがちなんだと思う。

今の関数型言語は、まだデザインパターンが、色々発案されだしているけど、確立しきっていなかった頃のJavaオブジェクト指向時代、みたいな感じ。

Javaで言うデザパタは、関数型言語では大体、モナドとしてまとめられるわけだけれど、そのモナドを色々発明するために、圏論をしっておくに越したことはない、みたいな感じなんじゃないかと。

もっとも、そろそろすでに出てきているデザパタモナドを利用するだけの、純粋学習者も増え始めている頃合だから、気になりだしては来るタイミングなんだろうけど。

2014-04-21

20代男性プログラマのためのライフハック

集中力を維持しデキる男になるための

から初められるライフハック

1 ビタミンミネラルサプリをとる

食生活が乱れがちになっても健康を維持できる。

口内炎貧血に二度と悩まされなくなる。

2 通勤自転車を使う

通勤時間が2,30分増える程度なら電車より自転車を使おう。

満員電車に体力を削られることなく、体型や心肺機能を維持でき集中力もUp!

3 毎日10分でいいからLISP圏論勉強する

どちらをやるかはお好みに合わせて。

疲れない範囲で難しい問題に取り組むことで脳が活性化する。

4 ちん毛を手入れする

亀頭が完全に出るように短くそろえる。

パンツの中で毛が皮に巻き込まれなくなる。

5 オナホ格安風俗店を使う

普段はオナホを使い、二週に一度は格安店に通って性欲を発散しよう。

彼女を作るよりコスパ満足度も高くなる。

女は30手前で焦りだしたのを捕まえればいいのが安く手に入る。

2014-04-10

プログラム中級者が感じる関数型の違和感

なんだか話題になってるから書く。

やっと初心者を脱して中級者になりかけてるプログラミング学習者が関数型言語に何を感じているかを書こうと思う。

1 圏論かいらないんじゃないの?

Haskellが短いコードプログラムを書けるというのは分かる。

forループmapやfoldで抽象化する利点も分かる。

それでやりたい処理のほぼ全てがまかなえるということも実感している。

副作用のない小さな関数を合成して大きな関数を作る利点も分かる。

再利用性も上がるし、どこからどう影響を受けているかが簡単に分かるからバグも出にくい。

ただ、Haskellの基礎になってる圏論が何の役に立つのかは、まったく分からない。

むしろ邪魔なんじゃないかと思う。

ファンクターやモナド概念圏論で扱われているのは分かるけど、圏論なんて名前だけ知ってればコードを書くのに不都合はないだろう。

圏論必要なのはHaskell設計する人であって、使う人ではないと思う。

なのに、やれクライスリ圏だ自己関手の圏だのと、うるさいったらありゃしない。

Linux上で開発環境整えるのにカーネルコードを読めって言うぐらい的外れだと思う。

いや、知識として持っとくのはいいだろうけど、役に立たんだろ。

2 言うほど新しい機能ないような?

Rubyが羊の皮をかぶったLispとはよく言われることだけど、関数型言語オブジェクト指向言語とそこまで違いがあるような気がしない。

純粋言語ではできないけど、クロージャに内部状態を保持してもらって無名オブジェクトみたいな使い方をすることはあると思う。

その無名オブジェクトもっとあれこれデータ関数詰め込めば、いつの間にか普通にJavaC#で使うようなクラスのできあがり。

その間はなめらかにつながっていて、不連続に切れるようなもんじゃない。

関数プログラミングと言いつつ、オブジェクト指向の考え方は利用できる。

上級者はデザインパターンdisるのが好きかもしれないけど、逆の考え方をするべきだと思う。

デザインパターンオブジェクト指向言語欠点を補うための苦肉の策じゃないよ。

関数プログラミングの基礎的なパーツだと思う。

からちょっと見た目がすっきりするだけで、結局やることはオブジェクトプログラミングと変わりはないと思う。

3 なんか選民思想にとらわれて無い?

関数プログラミングコミュニティの人って、業務でクソコードメンテさせられて、その現実逃避に美しいコードに擦り寄っているように見える。

もちろん、美しいコードを書けるなら書いた方がいいし、現代的な言語を使えるなら使ったほうがいいと思う。

けど、適材適所というか、オブジェクト指向言語でも、やってやれないことはないわけで。

役に立たない圏論をありがたがる所とか、どうもイキがってるように見える。

せいぜい生産性が倍になる程度で、他の要素が悪ければ帳消しになるような利点でしかないに違いないのに。

開発プロセスとかを見直す方が仕事を楽にしてくれるんじゃないのかな?

2014-01-20

自称関数型プログラミングマスターの同僚がイタイ

一人で勝手イタイならいいけど、いい加減我慢も限界でなんとかしたい。

そいつ圏論に裏付けられた静的型付け言語スバラシサを布教しないと気がすまないらしく、事あるごとに純粋でないオブジェクト指向言語disる

曰く、静的型付け言語だと型を合わせてコンパイラが通るようにするだけで実行時エラーを絶対起こさなコードが書けるらしい。

ああまた始まったと思ってたら、そいつが熱弁する後ろから同僚が近づいて「ヒープ足んねぇ」って書かれたメモ背中に貼っつけてたのは笑った。

お前が書いたn3アルゴリズム(!!!!)も型さえ合えばコンパイラがnlognに書き換えてくれんのかね。

いやそれ、動いてるって言わないから

型チェックぐらいで取れるバグなんて、せいぜいスタックキューみたいなもんだろ。

その程度の仕事しか任せてもらってないのは分かるが。

お前の怪しい動的計画法バグをチェックできるコンパイラなんて存在しないぞ。

圏論なんてやってる時間があるならダイクストラ法でも復習しとけってんだ。

そもそも関数型言語生産性が高いというのが眉唾ものだ。

どちらにせよ設計においてはオブジェクト指向が使われるのだからほとんど違いなどない。

せいぜい数倍コードが短くなる程度の話に学習コストをかける価値は無い。

もちろん俺はとっくに学習済みであるが、他の同僚には難しい。

彼ら全員が理解しない限り、関数型言語で開発などできるわけがない。

そのコストと、純粋関数型言語によって得られるメリット差し引きすると、正直何の魅力も感じないのだ。

関数型にかぶれている奴は、プロジェクト全体を見通す力、マクロ的な視野なく、自分の狭い世界だけで騒いでいるだけだ。

ま、厨二病みたいなもんさ。

2013-10-26

http://anond.hatelabo.jp/20131026144247

実際に買ったのはロッキードマーティンとかだな。

Googleには少なくとも数台はあるでしょ。

で、圏論とかコンフォーマル代数についてはどうですか?

うちの会社社員とか協力会社募集するけど、「あらゆることに精通しています」とか言いながらその程度も理解してない人が来たら困っちゃうよ。

http://anond.hatelabo.jp/20131026142229

いやD-waveマシンは実際に販売されてるから

その程度も理解してない人間は「あらゆること」なんて言っちゃだめだよ。

その調子だとラムダ計算とか圏論とかの計算機科学の基礎すら怪しそうだな。

「あらゆること」なんてぶち上げるくらいだから流石にその程度はマスターしてるんだろうと思って触れなかったんだけど。

ちなみにクリフォード代数とかconformal algebraとかは分かってる?

CGとかやるとき結構重要なんだけど。

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん