タグ

haskellとmathに関するjjzakのブックマーク (5)

  • Haskell/カリー=ハワード同型 - Wikibooks

    カリー=ハワード同型(Curry-Howard isomorphism)は数学の一見無関係に思えるふたつの領域、型理論と構造論理を結びつける実に驚くべき関係である。 導入[編集] これよりカリー=ハワード同型は単に C-H と表記する。C-H が示しているのは、定理の質を反映するような型を構築し、それからその型を持つ値を見つけさえすれば、どんな数学的定理をも証明することができる、ということだ。これは最初は極めて不思議に思える。型と定理にどんな関係があるというのだろうか?しかしながら、以下に述べるように、このふたつは非常に近しい関係にあるのである。はじめる前に簡単に注意しておくが、導入の章では error や undefinedのような 表示的意味論 が ⊥ である式の存在は無視する。これらはとても重要な役割を果たすのだが、これらについては後ほど別に考えることにする。また、unsafeCo

  • プログラミングのための確率統計 in Haskell

    こんな表のことを確率分布といいます。サイコロをふったときに起こるイベントの確率、たとえば「偶数の目が出る」確率を調べることは、この確率分布からこんな別の確率分布への変換だと考えられます。 この変換は、具体的にはこんな対応です。P(偶数) = P(2) + P(4) + P(6) P(奇数) = P(1) + P(3) + P(5)P(X)がイベントXに対する確率を表しているわけですが、Pを「イベントの集合から[0,1]区間の実数への関数」だとみなすこともできます。確率分布から確率分布への変換は、関数に対する演算でもあるわけです。確率分布を連想リストで表せば、高階関数や代数型を使って、この変換をモデル化できそうです。 以前、このアイデアをSchemeで試してみたことがありました。当時は、そもそも確率についての理解が今よりもいっそうあやしかったし、実装もちゃちでしたが、このアイデアが特別なもの

  • 素数判定 - あどけない話

    要約:素数判定に使われるミラーラビン法を解説しながら、Haskell で実装してみる。 フェルマーテスト 大きな数を確実に素数だと判定するには、大変時間がかかるので、実用的には「ほぼ素数だ」と確率的に判定する。確率的な素数判定の代表格がフェルマーテストである。 フェルマーテストには、以下に示すフェルマーの小定理を利用する。 a^p ≡ a (mod p) a は任意の整数。p は素数である。法 p の下で a を p 乗したものは、a と合同であると言う意味だ。a には制限はないが、特に a を p より小さい整数、0 ≦ a ≦ p - 1 とすれば、a を p 乗して、p で割ると a に戻るとも解釈できる。 最初に見たときは、だからどうしたと思われるかもしれない。しかし、有名なフェルマーの大定理が実用上何の役にも立たないのに対し、フェルマーの小定理はいろんな場面で活躍する。 実際に計

    素数判定 - あどけない話
    jjzak
    jjzak 2010/08/24
    要約:素数判定に使われるミラーラビン法を解説しながら、Haskell で実装してみる。
  • The Theory of Concatenative Combinators

    Brent Kerby (bkerby at byu dot net). Completed June 19, 2002. Updated February 5, 2007. Introduction A Few Combinators: swap, dup, zap, unit, cat, cons, i, dip Lambdas An Abstraction Algorithm The sip Combinator Schemes of Combinators: dign, buryn Another Combinator Scheme: flipn Two More Schemes: dipn, sipn Applicative Combinators: w, k, b, c, s Towards a Minimal Base: {cons, sip, k} A Smaller Ba

    jjzak
    jjzak 2007/08/23
    Concatenativeのコンビネーター
  • 檜山正幸のキマイラ飼育記 (はてなBlog)

    2023-10-25 圏スタンピング・モナドの代数は前層/余前層 雑記/備忘 「左加群は前層、右加群は余前層、双加群はプロ関手」の続きです。余前層としての右加群(または前層としての左加群)が、ファミリー〈集合族〉の圏上のモナドのアイレンベルク/ムーア代数になってるよ、という話です。$`\newcommand{\mrm}[1]{\mathrm{#1}}… 2023-10-24 続・有向コンテナと多項式コモナド: 錯綜整理 雑記/備忘 「有向コンテナと多項式コモナド」にて: モノイド類似構造である有向コンテナ〈圏〉構造が、多項式自己関手を台とするコモノイド構造として反映されるわけです。面白いですね。 面白そうなので、アーマン/ウウスタル〈Danel Ahman, Tarmo Uustalu〉以外の… 2023-10-23 Diag構成の変種とその書き方 雑記/備忘 ある文脈では、図式と関手は同

    檜山正幸のキマイラ飼育記 (はてなBlog)
  • 1