本棚の奥にしまっていた本をなんとなく眺めていたら、自分の中では*1全部解決してしまいました。
という事で、その本を引用して、この話題については自分的終了にします。って今までも一回しか触れてないけど。
ところで、ある入力に対してはシステムが異常状態となり、出力や次の状態が定義されない場合がある。そうした異常入力に対しては、(i)の値を未定義とする、(ii)を特別な値(たとえば?)とする、の二つの考え方がある。本書ではつねに(ii)の考え方に従うことにする。したがって本書では、どんな場合でも定義されている関数−全域的関数−の計算問題のみを考えることになる。
いま、ある問題がわれわれに与えられているとする。このとき入力に対してその問題が規定している出力を求める方法をその問題を解くアルゴリズムという。
(中略)
ところで「アルゴリズム=方法」と定義したが、”方法”とはあまりに抽象的ないい方である。もっと具体的に述べよう。本書ではプログラムとして実現できる計算方法をアルゴリズムと呼ぶことにする。本来ならばこの定義の妥当性も考えねばならないが、本書ではそうした議論まで立ち入らないことにする;
強調は原文ママ。
さてテニス行ってこよ。
*1:あくまで個人的に納得できたということで、他の人がこれで納得するかどうかはわかりません。