2017年1月8日 / アルゴリズム

ブログ書きました↓

文人悪食 (嵐山光三郎) A Day in the Life/ウェブリブログ
http://dayinthelife.at.webry.info/201701/article_1.html

「文人悪食」は超絶面白いので,おすすめです.

「世界でもっとも強力な9のアルゴリズム」とかいう本があるらしい.未読ですが.強力ってのが意味不明だけど.

その9個のアルゴリズムは,検索エンジンのインデキシング,ページランク,公開鍵暗号,誤り訂正符号,パターン認識,データ圧縮,データベース,デジタル署名,決定不能性,ということらしい.うーん,いまいち納得できない.

公開鍵暗号(デジタル署名含む),誤り訂正符号,データ圧縮,データベース(具体的にはどんなアルゴリズム?)には同意.暗号理論として,ゼロ知識対話証明,準同型暗号を含みたいところだけど.パターン認識は,広い意味での検索技術ということならば納得.

あと,決定不能性は,いわゆる限界定理のようなものであって,アルゴリズムじゃないでしょ.アルゴリズムとは,手続きの形式化で,チャーチの提唱のとおり,計算可能なものです.アルゴリズムの意味が分かってるのかな?

それで,強力なアルゴリズムという言葉は意味不明にしても,私ならば,各種ソーティング,ユークリッドの互除法(世界最古のアルゴリズムということに敬意を表して,そして,拡張ユークリッドの互除法は,逆元を求める重要なアルゴリズムなので),各種回路アルゴリズム,LR構文解析法,動的計画法,高速フーリエ変換,最短経路探索,などから選ぶかな.あと,Lamport の,分散環境におけるイベントの半順序関係とか.それと,量子計算機における,Shor のアルゴリズム(因数分解問題,離散対数問題)も革命的なので,ぜひ含めたい.…うーん,なんかアルゴリズムの教科書を書きたくなってきたな.

と言いつつも,アルゴリズムに関しては,Cormen らの Introduction to Algorithms があまりにも優れていて,もはやアルゴリズムの教科書なんか他には要らないレベルですけどね.Knuth の The Art of Computer Programming はあまりに専門家向きすぎる.内容的に最新でもないし.いずれにせよ,世の中に多々あるうさんくさいアルゴリズムの教科書なんか読む必要はないですよ.Cormen の本があれば十分.


この記事が気に入ったらサポートをしてみませんか?