アルゴリズムを語る上で,次は重要だと思ってます. アルゴリズムは数学的な抽象概念で,それをコンピュータ上に実現したものがプログラムである.抽象的なアルゴリズムと具体的なプログラムは分離されなくてはならない.さらに,プログラムはそれが採用するプログラミング言語に大きく依存する. アルゴリズムについて数学的に証明すべきことは「正当性」と「計算量」であり,それらは分離されなくてはならない.さらに,それらはアルゴリズムや問題が採用する計算モデルと計算量評価モデルに大きく依存する. 思考を明確にするためには,分離できるところをとことん分離していく立場を取ることが重要だと思います (いわゆる「分析」). ということを前提として,「私ごときがアルゴリズム本を書くことにした訳」にdankogaiさんからコメントをいただいたので,私見を述べます. 「裸のアルゴリズム」が正しいか否かを証明するのは、数学の証明