物理コンピューターには有限のメモリがあるため、チューリング完全ではないというのはあなたの言う通りです。計算可能性理論が計算に適したモデルではない他の方法があります-時間とメモリの制約を考慮していません。複雑性理論は、コンピューティングのより現実的な描写として(おそらく)発明されましたが、IMHOは同様の(しかしより微妙な)問題に悩まされています。
一方、コンピューティングの機能と限界を数学的に研究するには、制約のない抽象化を使用する必要があります。これにより、分析が可能になります。同様に、統計力学では、要素(原子または分子)の数が非常に多く、動作が限界に近い(つまり、要素の数が無限大になる傾向がある)と想定しています。漸近的な観点からコンピューティングを研究することには同様の利点がありますが、誤解を招くことがあります。後者の例をいくつか示します。
- 暗号化では、指数アルゴリズムが実行可能な場合があります。間違ったセキュリティパラメータを選択した場合、暗号化は「おそらく安全」であっても安全ではない可能性があります。
- 多項式時間アルゴリズムは、効率的で実行可能な計算を表すと考えられていますが、それらの多くは実行可能ではありません。例として、最も洗練された行列乗算アルゴリズムは実際には使用されません。
- 現代の複雑性理論は最悪の場合のパフォーマンスに取りつかれており、実際に使用されているヒューリスティックアルゴリズムを分析できません。NP困難な問題は実行不可能と見なされていますが、実際には常に解決されています。
別の問題は、実際のコンピューターがチューリングマシンのように機能しないことです。それらはRAMマシンのように機能します。RAMマシンは、実際のコンピューティングの抽象化に適しています。