サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
掃除・片付け
shiatsumat.hatenablog.com
「一辺1の正方形領域から3点をランダムに選んだ時に3点を結んでできる三角形の面積の期待値」を初等的な方法で求めました。 調べてみると全く同じ問題を紹介している Square Triangle Picking -- from Wolfram MathWorld というページがあって、答えも載っていましたが、計算の方法に関しては The solution was first given by Woolhouse (1867). Since attempting to do the integrals by brute force result in intractable integrands, the best approach using computer algebra is to divide the six-dimensional region of integration into
この記事はHaskell Advent Calendar 2013の3日目の記事です。 目次 どうして? ファンクタを拡張しよう おさらい 引数をふたつ取ろう 逆転の発想 共変・反変・自由変・固定変 データ型の整理 正の位置と負の位置 自由変と固定変 ファンクタ類を自動生成しよう まとめ おまけ Thornについて CPLであそぼう どうして? ファンクタはHaskellに欠かせないものですが、ファンクタを一般化して見るという見方は意外に広まっていないように感じます。分かってしまえば単純な話だけにもったいないと思ってこの記事を書くことにしました。 また、僕は最近Thornというライブラリを作りました。これは、さまざまなデータ型から関手や畳み込み・展開をTemplate Haskellを使って自動生成するライブラリです。このライブラリを作るなかで気づいたことも合わせて書いていこうと思います。
GHC では型システムが急速に進化していて、ついに型レベル自然数 (type-level natural number) も組み込まれました。 この型レベル自然数は、0, 1, 2, ... というリテラルによって型レベル自然数を得られ、足し算・掛け算・冪乗・引き算・比較が可能です。考えられる使い道としては、配列の要素外アクセスを制限したり、バージョン管理をしたりといったことを、コンパイル時に静的に行うことでしょう。 しかしこの型レベル自然数の類 (kind) は Nat であり、真の型(proper type, 実際に値を持つ類 * の型)ではありません。これはもったいない気がします。型に属する値が何種類あるか、という観点から、ヴォイド型 Void は 0、ユニット型 () は 1、ブール型 Bool は 2、直和 Either a b は足し算 a + b、直積 (a, b) は掛け算
ポリアの壺問題 (Polya's urn problem) というのは確率に関する有名問題で、次のようなものです。 壺の中に赤玉がa個、白玉がb個入っている。ある正の整数kを決めておく。これから次の試行を繰り返す。 壺の中から1個玉を取り出し戻す。その玉が赤玉ならば赤玉をk個、白玉ならば白玉をk個、壺に新たに加える。(全体の個数はk個増える。) このとき、n回目に取り出す玉の色が赤玉である確率を求めよ。 実は n によらずに確率は a/(a+b) となります。 この証明にはトリッキーな帰納法が使われることが多いですが、実は見方を変えて考えれば帰納法も計算も使わずに証明できてしまいます。 (証明)以下のように考えます。 壺の中にa+b個の玉が入っていて、それぞれ1からa+bまでの番号が書かれていて、うちa個は赤色、b個は白色である。ある正の整数kを決めておく。これから次の試行を繰り返す。 壺
このページを最初にブックマークしてみませんか?
『shiatsumat.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く