2008-02-06から1日間の記事一覧

λ計算で 1+2

すっかり飽きる前にλ計算してみます。お題は 1+2 が 3 になるかどうか。 チャーチ数と足し算の定義はwikipediaのものを使います。 1 := λf x. f x 2 := λf x. f (f x) 3 := λf x. f (f (f x)) PLUS := λm n f x. m f (n f x) PLUS 1 2 をβ変換(引数に変数を…

式木の ==, Equals

C#

Expression<Func<int, int>> expr = x => x + 1; Expression<Func<int, int>> expr2 = x => x + 1; Console.WriteLine( expr == expr2 ); // false Console.WriteLine( expr.Equals( expr2 ) ); // false Console.WriteLine( expr.ToString() == expr2.ToString() ); // true なるほどねー(</func<int,></func<int,>…

サンタクロースは

いるよ

飽きてきた

λにはじまり、帰納的関数とかゲーデルとか集合とかプチ数学ブームしてました。でも、難しいことは理解できず、早くも飽きてきた…。プチリンク遊び Console.WriteLine( "siokoshou" .OrderBy( c => c ) .Distinct() .Aggregate( "", ( s, c ) => s += c ) ); …