バグのないプログラム
[tag:]
http://anond.hatelabo.jp/20170214114736
プログラムがなすモデル、プログラマが作ったと
                    思っているモデル、仕様書がなすモデル、
                    仕様書を書いた人間が想定していたモデル、
                    プログラムを使用する人間が期待するモデル等、
                    プログラムには様々なモデル化が関係するが、
                    そのモデル間の齟齬がバグと呼ばれるものである。
最初と最後のモデルが同じ構造を有していれば
                    よいので、理学的にはバグのないプログラムは
                    可能だろう。
                    しかし、工学的には「十分に気を付ける」の十分性を
                    満たすためのコストが、コードの規模と間に挟まる
                    モデルの数に応じて指数的に増加するように思われる。
とりあえず余計なモデルの数を減らせばよいのでは。