Um zu beantworten, "welche Probleme durch Rechnen gelöst werden können", haben wir die Theorie der Berechenbarkeit entwickelt. Gibt es für die berechenbaren Probleme eine Theorie zur Beantwortung der Frage "Ist das Programm, das ich bekomme, das einfachste?"
Ich glaube nicht, dass die Komplexität der Berechnungen die Frage beantwortet. Ich denke, es wird überlegt, wie lange wir brauchen (obwohl abstrakt gemessen).
Ich bin nicht sicher, ob die algorithmische Informationstheorie die Frage beantwortet. Es scheint, dass die Theorie über Größe spricht, wo die Äquivalenz von minimaler Größe und einfachster für mich nicht offensichtlich ist (zumindest fühlen sie sich für mich anders an).
Ich denke, die Theorie sollte zumindest "einfache" oder "einfachere als" Beziehung definieren.
Ich bin jetzt überzeugt, dass ich mich mit Kolmogorov-Komplexität befassen sollte. Ich möchte jedoch erklären, was ich dachte, als ich die Frage stellte.
Wenn ich ein Programm verbessere, versuche ich, unnötige Verbindungen zwischen verschiedenen Teilen des Programms zu reduzieren (möglicherweise Teile neu zu teilen, damit es weniger oder schwächere Verbindungen geben kann). Da die Verbindungen reduziert sind, fühlt sich das Programm "einfacher" an. Daher die Wahl des Wortes "einfach", wenn ich die Frage formuliere. Es ist sehr wahrscheinlich, dass auch die Größe des Programms abnimmt, aber das ist ein guter Nebeneffekt, nicht das Hauptziel. Offensichtlich kann der Verbesserungsprozess nicht ewig dauern. Es gibt einen Punkt, an dem ich aufhören sollte. Wenn ich mich nur unter Berücksichtigung der "Struktur" (Entschuldigung für ein anderes undefiniertes Konzept) oder der "Beziehung" davon überzeugen kann, dass nichts mehr getan werden kann?
Hier enthält eine bessere Beschreibung meines Begriffs von Komplexität.
Olaf Sporns (2007) Komplexität . Scholarpedia , 2 (10): 1623