タグ

mathに関するtsukkeeのブックマーク (46)

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

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

    素数判定 - あどけない話
  • #google - chart API で数式表示 : 404 Blog Not Found

    2009年09月30日00:30 カテゴリMathTips #google - chart API で数式表示 これはおいしい。 Google Chart APIを使って数式を埋め込む - Hello, world! - s21g ちょっと前からGoogleDocsで数式が書けるようになりましたが、 これがGoogle Chart APIを使って実装されているようです。Demo というわけで早速JSで。 LaTex Expression: Formula: ソースはこれくらい簡単です。 <input type="text" size="64" value="\int_{}^{}e^{i\theta}d\theta=\frac{1}{i}e^{i\theta}+C=-ie^{i\theta}+C" onkeyup=" (function(tex, img){ img.alt = tex; i

    #google - chart API で数式表示 : 404 Blog Not Found
  • ホワット・ア・ワンダフル・ワールド 1+1=2を証明するためには1万ステップ以上かかるよ,という話

    なんかすごいサイトを見つけてしまいました. Metamath Proof Explorer Home Page 数学の基礎付けに関する 20 世紀の記念碑的偉業と称えられながらも,歴史上何人がこれまで読破したのか,と常にネタにされる Principia Mathematica (12 万円,2000 ページ!) に,1+1=2 の証明が載ってるっていうのはわりと有名な話だと思いますけど. 追記 : Radium Software Development 2006-06-30 : Proof that 1 + 1 = 2 # ちなみに,三巻組の大著の全文をオンラインで見ることができます."From this proposition it will follow, when arithmetical addition has been defined, that 1+ 1= 2.". このサイ

    tsukkee
    tsukkee 2008/10/13
  • 生活や実務に役立つ高精度計算サイト

    tsukkee
    tsukkee 2008/10/13
  • C++のテンプレートで素数計算 - 西尾泰和のはてなダイアリー

    C++のテンプレートで計算をするなんて変態だと思っていたのだけど、奥さんがさくっと10分くらいで書いたFizzBuzzのコードを見るとなんか非常に素直で読みやすいコードだったので、僕もテンプレートで何かしてみることにしました。 Kazuho@Cybozu Labs: C++ テンプレートで(いまさら)FizzBuzz http://labs.cybozu.co.jp/blog/kazuho/archives/2008/04/fizzbuzz_cpp_template.php そんなわけでできたのが素数を求めるコード。途中の「数字を全部出す」と「2の倍数を出す」をコメントで残してあります。isPrime2とかisPrime3とかあるのは3つ合わせてisPrimeの働きをする型のそれぞれの名前を思いつかないので適当な名前になっています。テンプレートにはデフォルトの型引数があるみたいなのでisP

    C++のテンプレートで素数計算 - 西尾泰和のはてなダイアリー
    tsukkee
    tsukkee 2008/10/13
    あとでやってみる
  • 「解読不能は数学的に証明済み」、RSAを超える新暗号方式とは ― @IT

    2008/04/11 すべての暗号はいずれ破られる。2000年前のシーザー暗号の時代から高度な暗号技術が一般化したデジタル通信の現代に至るまで、それが暗号通信の歴史が証明し続けた事実であると同時に、もっとも人口に膾炙したクリシェでもあった。例えば、鳴り物入りでリリースされたDVDのコンテンツ暗号技術CSS」(Content Scramble System)が、リリースからわずか数年で10代のノルウェー人ハッカーに破られたことは記憶に新しい。 【追記】(2008年4月15日) この記事は取材に基づいて執筆したものですが、一部専門家らから「CAB方式暗号は解読不能」というのは誇大表現ではないかとの疑義が呈されています。アルゴリズムの公開や第三者による検証がない現在、この記事に登場するCAB方式が発案者・実装者の主張通り画期的な暗号方式で、当に解読が不可能であるかどうか分かりません。現在、専

    tsukkee
    tsukkee 2008/10/13
    あっちこっちで話題になってるみたいだけど真偽のほどはいかに?
  • インド、ロシアだけじゃないぞ、ブラジル発の熱帯式算数もあるんだぜ - 檜山正幸のキマイラ飼育記 (はてなBlog)

    一昨日のエントリーで、ロシア発のマスロフ式算数を紹介しました。実はこれ、リトヴィノフ(G. L. Litvinov)のサーベイ論文"MASLOV DEQUANTIZATION, IDEMPOTENT AND TROPICAL MATHEMATICS: A BRIEF INTRODUCTION"(http://glitvinov.googlepages.com/2007_JMS_426.pdf)の0.2%ほどを解説したものでした。 リトヴィノフ論文のタイトルにTROPICALって単語が入ってるのに気がつきましたか? ロシアのマスロフとはまた別に、ブラジルのシモン(Imre Simon)*1に始まると言われる熱帯風(トロピカル)な計算体系があります(トロピカルというネーミングは、ペリン(Dominic Perrin)によるそうです)。 トロピカルという用語の使用法は現状混乱ぎみですが、ここでは

    インド、ロシアだけじゃないぞ、ブラジル発の熱帯式算数もあるんだぜ - 檜山正幸のキマイラ飼育記 (はてなBlog)
    tsukkee
    tsukkee 2008/10/13
  • マスロフ式算数がやたらに面白いんですけど - 檜山正幸のキマイラ飼育記 (はてなBlog)

    インド式算数って、速算処方箋の寄せ集めでしょ。ロシア発のマスロフ式算数は、質的に新しい演算を扱う奧が深い算数ですよ。マスロフ式算数を学んでも速算の役には立たないけど、背後にある数理的構造/現象の神秘に触れられるかもよ。 内容: マスロフ式算数の由来 maxとminの算数 足し算的演算 足し算的演算の実例 マスロフ和 マスロフ和の極限 プランク定数と脱量子化 マスロフ式算数の由来 1980年代に、ロシアの物理学者マソロフ(Victor P. Maslov)により始められた脱量子化(Maslov Dequantization)という手法があり、現在では、数学、物理学、工学の広い範囲に影響を与えてます。マソロフ脱量子化の入り口は、変形した足し算を含む計算です。この計算は、普通の算数と同じ簡単な法則に従いますが、エキゾチックな世界を記述する道具になります。 このエキゾチックな算数の構造は、高校生

    マスロフ式算数がやたらに面白いんですけど - 檜山正幸のキマイラ飼育記 (はてなBlog)
    tsukkee
    tsukkee 2008/10/13
    おもしろいけどこれ以上はわかる気がしないw
  • http://homepage2.nifty.com/skimp-studio/htm/crawl_top.htm

    Crawl 3Dプログラム(3Dのグラフィックや動きを扱うプログラム)入門コーナーです。 1.骨 1-1.ベクトル其の壱 1-2.ベクトル其の弐 1-3.ベクトル其の参 1-4.行列其の壱 1-5.行列其の弐 1-6.座標変換其の壱 1-7.座標変換其の弐 1-8.座標変換其の参 1-9.座標変換其の四 1-10.骨其の壱 2.球 2-1.微分其の壱 2-2.微分其の弐 2-3.積分其の壱 2-3.積分其の弐

  • 任意軸に対する回転行列

    任意軸に対する回転行列 楽墨堂 小倉康樹 任意軸に対する回転行列の要素を以下に示す。 Vx*Vx*(1-cos) + cos Vx*Vy*(1-cos) - Vz*sin Vz*Vx*(1-cos) + Vy*sin Vx*Vy*(1-cos) + Vz*sin Vy*Vy*(1-cos) + cos Vy*Vz*(1-cos) - Vx*sin Vz*Vx*(1-cos) - Vy*sin Vy*Vz*(1-cos) + Vx*sin Vz*Vz*(1-cos) + cos ただし、(Vx, Vy, Vz)は軸の単位ベクトル、cos,sinは回転角のコサイン、サイン。 Copyright (C) 1998-2010 Ogura Koki All rights reserved.

    tsukkee
    tsukkee 2008/10/13
  • アルゴリズム百選 - ユークリッドの互除法 : 404 Blog Not Found

    2007年12月11日16:30 カテゴリアルゴリズム百選Math アルゴリズム百選 - ユークリッドの互除法 今回は、ユークリッドの互除法を取り上げます。 ユークリッドの互除法とは何か。小学校の時に実は習っているはずですが、忘れている方は思い出してみてください。最大公約数(Greatest Common Divisor)を確実に計算する方法です。古代から有名なこのアルゴリズムは、かつては"The Algorithm"といえばこれをさすほど有名なアルゴリズムです。 それは、コードではなく普通の言葉でも簡単に書くことが出来ます。gcd(m, n)を出すには、 mをnで割り、余りがrだとする 余りrが0なら、nがGCD。 そうでなければ、nとrのGCDを求める 互い違いに割っていくので、互除法というわけです。 function gcd(m, n){ if (m < n) return gcd(

    アルゴリズム百選 - ユークリッドの互除法 : 404 Blog Not Found
  • 平面幾何におけるベクトル演算

    ここでは,ACM/ICPC頻出の平面幾何について,基的なベクトル演算を解説します。 最後にライブラリとしてソースコードを載せているので番では印刷して持っておくとよいでしょう。 ベクトルの基礎 デカルト座標系とユークリッド空間 スカラーとベクトル 点とベクトル ベクトルの和と差 ベクトルの利用 complex型の導入 絶対値,2点間の距離,単位ベクトル 法線ベクトル,単位法線ベクトル 内積と外積 内積・外積 2直線の直交判定・平行判定 点が線上にあるかないかの判定 直線と線分 直線と点の距離 線分と点の距離 線分の交差判定 線分の交点計算 直線の交点計算 ソースコード $Id: index.shtml 1825 2007-09-23 00:35:10Z SYSTEM $

    tsukkee
    tsukkee 2008/10/13
  • Life is beautiful: フィボナッチ関数とJavascriptの黒魔術と

    「最近あなたのブログ、プログラミングの話ばっかりじゃない?」とはの指摘。確かにその通りなんだが、これとかこれを読んでしまうと、どうしてもそちらに走りたくなるのが私の性分。ということで、とことん「ギーク街道」に堕ちてみた。 今回の作品は、iAnime.jsの非同期JSON言語(名前はまだない)を使って非同期に自分を再帰的に呼び出しながらただひたすらにフィボナッチ数列を表示するというプログラム。 function start(k1, k2) { var span = (k2+" ").length*10; var obj=document.createElement("span"); obj.style.position = "absolute"; obj.style.left = -span+"px"; obj.style.right = "0px"; iBrowse.setText(ob

  • フィボナッチ数とひまわり - まめめも

    最近何かと話題のフィボナッチ数計算の高速化ですが、 F(n) = (fib(n+1), fib(n)) (2次元の縦ベクトルだが表記の都合で横に書く) A = ((1, 1), (1, 0)) (第1行が(1, 1)で第2行が(1, 0)の行列) すると,F(n) = A F(n-1) = A A F(n-2) = A A A F(n-3) = ...となるから,F(n)を計算するためには,Aのn乗を計算して,それに右からF(0)をかければ良いことになる。 計算量の工夫でプログラムは劇的に速くなる 以前この記事を読んだときも、ははー、と思ったのですが、そのときは実装してみなかったのでちょっと実装してみました。 require "matrix" def fib(n) aux = proc do |m, a| case m when 0 then Matrix.I(2) when 1 then

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    tsukkee
    tsukkee 2008/10/13
  • CodeZine:テンプレートによるメタプログラミングと数論(MPL, メタプログラミング, テンプレート)

    1. はじめに メタプログラミングとは、別のプログラムを生成できるプログラムを書くことです。この技法はさまざまな言語においてさまざまな目的で使用されています。メタプログラミングは、部分的な評価を行うことによって1つのプログラムを別のプログラムに変換する方法、言い換えれば、プログラミングを自動化する手段であるとも言えます[11]。メタプログラミングの典型例の1つは、出力としてプログラムを生成するLexやYACCなどのコンパイラ構築ツールです。コンパイラ自体もこのカテゴリに含めることができますが、コンパイラの場合は一般にホスト言語とドメイン言語が異なります[3]。通常、コンパイラは特定の文法に従って書かれたソースを入力として受け取り、CやC++Javaなどのプログラムを出力します。 C++ではテンプレートとマクロを使用してコードを作成することができます。ただし、この方法は綿密に設計された機能

  • 142857.com - このウェブサイトは販売用です! - 142857 リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    tsukkee
    tsukkee 2008/10/13
  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • JavaScript で n 進数を扱う: Days on the Moon

    2 進数や 16 進数を使いたいというとき、JavaScript では組み込みの機能を利用できます。使えるのは 16 進数だけではなく、2 進数から 36 進数 (0 ~ 9 および a ~ z を使用) まで扱えます。 n 進数文字列から数値への変換 n 進数文字列から数値へと変換するときは、parseInt 関数を使います。第 2 引数に基数 n を指定することで、第 1 引数の文字列を n 進数であると解釈してくれます。n は 32 ビット整数に変換され、その値が 2 未満または 36 を超えるときは NaN が返ります。ただし、n が 0 になるときは文字列が 10 進数表記であるとして解釈されます。 parseInt(10, 36); // 36 parseInt("10", 0x100000000 + 36); // 36 基数が明示されておらず、文字列が 0 から始まっていた

  • sta la sta - 手書きの数式を認識して計算してくれるオンライン電卓 - xThink Online Calculator

    http://xthink.net/calc/ 急いでいるときには向かないけど、使ってみると意外と楽しいオンライン電卓のご紹介。 こちらの『xThink Online Calculator』、電卓のくせにどこにも数字キーが見当たりません。なぜなら、『xThink Online Calculator』はマウスで書いた手書きの数式を認識して計算してくれるからです。 例えば、基中の基「1+1」 と、このようにちゃんと認識してくれました。 ちなみに「=」は書かなくて大丈夫です。 他にもsin、cosといった三角関数や 分数、ルートといった数式もちゃんと計算してくれます。 他にも一番上のイメージのように「π」も使えますね。あと、かけ算は「×」ではなく「*」のようです。まだまだ使える記号や数式がありそう。 左メニューの「Annotations」で選んだ色で書いた場合は計算には影響しませんね。手書き

    sta la sta - 手書きの数式を認識して計算してくれるオンライン電卓 - xThink Online Calculator