タグ

Programmingとmathに関するTaKUMAのブックマーク (50)

  • Essential Math for Games Programmers

    As the quality of games has improved, more attention has been given to all aspects of a game to increase the feeling of reality during gameplay and distinguish it from its competitors. Mathematics provides much of the groundwork for this improvement in realism. And a large part of this improvement is due to the addition of physical simulation. Creating such a simulation may appear to be a daunting

  • 株式会社NTTデータ数理システム

    オンラインセミナー:データ活用アセスメントによる課題整理と正しい方針策定 専門家の知見や観点に基づいたデータ活用アセスメント(データ事前評価)について、ユースケースを交え、分析手法の選択と適用、結果の解釈を中心にお伝えします。

    株式会社NTTデータ数理システム
  • 未来言語Agda - 数学猫の生活と意見

    最近Agdaを触る機会があったのだが、Agdaこそ未来のプログラミング言語ではないかという気がしてきた。ここでは行列の転置をする関数を定義することで、Agdaでのプログラミングがどんなものか紹介したい。その前に一言:Agdaは定理証明系として紹介されることが多い。これはAgdaにとって不幸なことだ。確かにAgdaの型システムは強力なので、例のカリーハワード同型により、型を命題、プログラムを証明とみなすことができる。ただし、私の印象ではAgda上は数学の証明をしやすいようにはそんなにはできていない。Agdaで証明するには、ある型をもつ定数なり関数を定義することになるわけだが、定義した関数がその型を持っているかことを型チェッカに説得するために、型チェッカの詳しい挙動について理解していなければならない。むしろ、Agdaは依存型をもつプログラミング言語と思った方がよいと思う。依存型とはなにかは例を

  • 四元数で3次元回転 (ソースコード付き)

    四元数で3次元回転 中田 亨, 2003年11月25日 ★こうすれば四元数で3次元の回転が計算できる 四元数(しげんすう, クォータニオン, quaternion)を使った回転の取り扱い手順を説明します。 (1)四元数の実部と虚部と書き方 四元数とは、4つの実数を組み合わせたものです。4つの要素のうち、ひとつは実部、残り3つは虚部です。たとえば、Qという四元数が、実部 t で虚部が x, y, z から成り立っているとき、下のように書きます。 また、V = (x, y, z)というベクトルを使って、 Q = (t; V) とも書くことがあります。 正統的に虚数単位i, j, kを利用した書き方だと、 Q = t + xi + yj + zk とも書きますが、こっちはあまり使いません。 (2)四元数同士の掛け算 虚数単位同士の掛け算は ii = -1, ij = -ji = k (この他の組

  • 力学モデル (グラフ描画アルゴリズム) - Wikipedia

    力学モデルによる、wiki ページのネットワークの可視化。(辺はリンクを表す) 力学モデル(りきがくモデル)によるグラフ描画(力指向アルゴリズム)は、グラフを美しく描画するためのアルゴリズムの一つである。 このアルゴリズムは、グラフのノードを2次元空間や3次元空間に配置して、辺の長さをほぼ等しい長さにし、グラフの辺ができるだけ交差しないようにすることを目的にしている。 このアルゴリズムでは、グラフの頂点と辺に仮想的な力を割り当て、力学的エネルギーの低い安定状態を探すことで、この目的を達成している。もっとも直截的なモデルでは、それぞれの辺をフックの法則にしたがうばねとみなし、それぞれの頂点をクーロンの法則にしたがう電荷をもつ粒子とみなす。 そして、その力学系の挙動をシミュレートし、弾性力や静電気力が粒子を近づけたり遠ざけたりするようすを計算する。粒子が安定な配置になり、位置が変化しなくなるま

    力学モデル (グラフ描画アルゴリズム) - Wikipedia
    TaKUMA
    TaKUMA 2011/08/28
    Force Directed Graph Layout.
  • エッシャーっぽい絵を生成する「エッシャーくん」を作ってみた。

    エッシャーっていう画家は知っていますか?分かんない人のために説明しますと、こんな感じのふしぎーな絵を書いている人です。名前は知らなくても一度は見たことがあるのではないでしょうか。 それでなんですが、適当な画像からなんかエッシャーっぽいふしぎな画像を生成するフィルタ「エッシャーくん(仮称)」をPython Imaging Library(PIL)で作ってみました。これを使えばどんな画像もエッシャーっぽい世界にご招待です。ソースは近々公開します。 追記(09/24) ソースコードをアップロードしました。subversionで管理されてますので、 svn checkout http://svn.coderepos.org/share/lang/python/escher Somewhere でチェックアウトしてください。 たとえば、こんな感じのイラストにエッシャーくんを適用させてみると… こんな

    エッシャーっぽい絵を生成する「エッシャーくん」を作ってみた。
  • Prime numbers - HaskellWiki

    In mathematics, amongst the natural numbers greater than 1, a prime number (or a prime) is such that has no divisors other than itself (and 1). This means that it cannot be represented as a product of any two of such numbers. Prime Number Resources At Wikipedia: Prime Numbers Sieve of Eratosthenes HackageDB packages: arithmoi: Various basic number theoretic functions; efficient array-based sieves,

  • 畳み込み - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "畳み込み" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2016年7月) 2つの正方形による畳み込み。解として得る波形は三角波となる。黄色の領域で示されている面積が2つの方形波の合成積である。 正方形がRC回路に入力された場合の出力信号波形を得るために、RC回路のインパルス応答と方形波の畳み込みを行っている。 黄色の領域で示されている面積が合成積である。 畳み込み(たたみこみ、英: convolution)とは、関数 g を平行移動しながら関数 f に重ね足し合わせる二項演算である。あるいはコンボリューションとも呼ばれる。

    畳み込み - Wikipedia
  • IIJ Research Laboratory

    次世代インターネットの 地平を切り拓く We are IIJ Research Laboratory. IIJ技術研究所について トピックス PAGE TOP

  • m-a-o

    m-a-o
  • 形式手法 - Wikipedia

    Z言語を使った形式仕様記述の例 形式手法(けいしきしゅほう、英: formal methods)は、ソフトウェア工学における数学を基盤としたソフトウェアおよびハードウェアシステムの仕様記述、開発、検証の技術である[1]。ソフトウェアおよびハードウェア設計への形式手法の適用は、他の工学分野と同様、適切な数学的解析を行うことで設計の信頼性と頑健性が向上するという予想によって動機付けられている[2]。 形式手法は理論計算機科学の様々な成果を基盤として応用したものであり、数理論理学、形式言語、オートマタ理論、プログラム意味論、型システム、代数的データ型などを活用して、ソフトウェアおよびハードウェアの仕様記述とその検証を行う[3]。 形式手法はいくつかの水準で使用可能である: 水準0 形式仕様記述を行い、プログラム自体を非形式主義的に行う。「軽い形式手法」と呼ぶ。費用対効果が早く得ることができる選択

    形式手法 - Wikipedia
  • Haskell - HaskellWiki

    2025 July GHC LTS Releases announced May GHC 9.10.2 is released March GHC 9.6.7 is released GHC 9.12.2 is released January Darcs 2.18.5 is released 2024 December Stackage: LTS 23 release for ghc-9.8 and Nightly now on ghc-9.10 November GHC 9.12.1 is released October Darcs 2.18.4 is released (changelog) GHC 9.8.3 is released July GHC 9.6.6 is released May GHC 9.10.1 is released February GHC 9.8.2 i

  • Blog articles/Mathematics - HaskellWiki

    Articles using Haskell for mathematics, and the mathematics of Haskell. For further references see the: Haskell math community. Mathematics of monads Haskell for mathematics General Eleven Reasons to use Haskell as a Mathematician Haskell for Maths: commutative algebra, combinatorics, number theory, and group theory libraries (blog, hackage) Learn Maths with Haskell Prototyping thought Why Haskell

  • Research papers/Testing and correctness - HaskellWiki

  • Applications and libraries/Mathematics - HaskellWiki

  • anarchy proof -

    Anarchy Proof This is a proof server. You can enjoy theorem proving here in several languages (one language). The list of all problems Create a new problems News return top

  • プログラミング言語の処理系と、デカルト圏の部分閉構造 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    デカルト閉圏は計算(computations)のモデルとして大変に使いやすいものです。しかし、どうもデカルト閉圏が矮小化されて理解され、応用範囲を狭めているような印象も持ちます。デカルト閉圏が型付きラムダ計算のモデルであるのは事実ですが、このことが強調されすぎて、デカルト閉圏は「型付きラムダ計算にしか適用できない」という誤解があるのかもしれません。 静的に強く型付けされるプログラミング言語処理系は、デカルト閉圏でうまくモデル化できます。いま、「プログラミング言語」ではなくて、「プログラミング言語処理系」と言ったのに注意してください。プログラミング言語の構文に意味を付与する話ではなくて、コンパイラやランタイムを含んだメカニズム全体の定式化にもデカルト閉圏が使えます。 デカルト閉圏とプログラミング言語処理系 デカルト閉圏の特徴は、C(A×B, C) = C(A, [B, C]) という同型があ

    プログラミング言語の処理系と、デカルト圏の部分閉構造 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • 数学 - プログラミングスレまとめ in VIP

    数学の考え方 † プログラムで「関数(function)」って言うよね。数学で扱う関数から見れば異質としか言いようが無いけど、しかし、やはり関数は関数なのです。では、関数とはなんぞや。 ところで数学(者)は、厳密な論理を重視し、高度な抽象化を行い、命題を導くことを目的とします。一見堅苦しい作業に思えるのですが、厳密に且つ抽象的に処理を行うことが、驚異的柔軟性を導いてくれます。譬えば「線型接続」の素晴らしさは、柔軟さゆえの事でしょう。 つまり、関数を抽象化してやると、「任意の値に関する答えを返してくれる処理」とも考えられるわけで、プログラムの処理も「関数」に該当するわけ。これもまあ柔軟と言えばそう。 プログラムだと、動けばいいやと思ってしまえば、動画変換のプログラムは何でもいいことになる。でも実際はそうじゃない、なるべく効率的で高速な物を考え、実現する。プログラムと同じように、数学にも効率化

  • 檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」

    気まぐれと偶然となりゆきで、ここ2,3回はモナドを話題にしました。googleで「モナド」を引いてザッと眺めると、「モナドはむずかしいー」とか「モナドで挫折した」みたいな雰囲気が感じられて、説明芸人の血が少し騒ぎましたね。「なら、予備知識ゼロでモナドの説明をしてやろうじゃねーか」と。 タイトルはだいぶ煽っちゃった…… けど、ハッタリじゃないつもり…… けど、実際はどうかな? ※印刷のときはサイドバーが消えます。 内容: とりあえず、あたりさわりなくモナドの来歴を紹介する こんな課題を考えてみよう:副作用付き計算 カウントアップする関数達 カウントアップしたい意志を戻り値で伝える それでは、いったい誰がカウントアップをするのだ 関数の引数の型をCountup型にまで拡張する そして、これがモナドだ とりあえず、あたりさわりなくモナドの来歴を紹介する 今からここで説明する「モナド(monad)

    檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」
    TaKUMA
    TaKUMA 2010/12/13
    モナドが少し分かった気になった。
  • Chimaira.org

    Chimaira.org Since 2004-12-25 このサイトについて XML 計算科学/ソフトウェア工学 形式言語理論 圏論 その他 総目次(自動生成) 主催者:檜山正幸 (HIYAMA Masayuki) hiyama {AT} chimaira {DOT} org キマイラ飼育記 (ブログ)