あなたの議論の欠点は、「優れている」とは、すべてのアルゴリズムを実行できることを意味するだけでなく、複雑さの概念、つまり、アルゴリズムをシミュレートするために実行する時間ステップの数も含むということです。
チューリングマシンでアルゴリズムをどのようにシミュレートしますか?チューリングマシンは、有限状態マシンと無限のテープで構成されています。チューリングマシンは、その初期状態と状態遷移行列によって決定されるアルゴリズムを実行しますが、あなたが話していると思うのは、「コード」を読み取ることができるユニバーサルチューリングマシン(UTM)です(これは通常、別のチューリングマシンの説明です) )テープの「コードセグメント」に書き込まれ、テープの「データセグメント」に書き込まれた入力データでそのマシンをシミュレートします。
チューリングマシンは、有限状態マシンの状態数が異なる場合があります(テープに書き込まれるアルファベットも異なりますが、有限アルファベットはバイナリで簡単にエンコードされるため、チューリングマシン間の大きな違いにはなりません)。したがって、状態マシンが大きいUTMと状態マシンが小さいUTMを使用できます。テープの「コード」部分に同じエンコーディングを使用している場合、大きいUTMが小さいUTMを上回る可能性があります。
シミュレーションされるTMを記述するために使用されるコードをいじることもできます。このコードは、たとえばC ++にすることも、シナプス強度をマトリックスとして書き留めたニューラルネットワークにすることもできます。どの記述が計算に適しているかは、問題によって異なります。
状態マシンが異なるUTM間の比較例:同じ言語、たとえばC ++の異なるコンパイラーを検討します。どちらも最初にC ++をコンパイルしてアセンブリにしてから、アセンブリ(物理CPU)を読み取って実行する別のUTMを実行します。したがって、より優れたコンパイラは同じコードをより速く実行します。
人間対コンピュータに戻ると、人間はC ++で作成するようなアルゴリズムを実行するニューラルネットワークです。これには、アルゴリズムを手の動きに変換するための、費用がかかり、非効率的な作業が伴います。コンピュータはコンパイラを使用して、C ++をネイティブに実行できるアセンブリに変換します。そのため、C ++コードをはるかに効率的に実装できます。あるいは、人間には大量のニューロンがあり、神経コード、つまりシナプス強度は読みにくいため、現在のコンピューターではまだそのコードを実行できません。