HINTERGRUND:
Kürzlich habe ich versucht, ein bestimmtes schwieriges Problem zu lösen, das als Eingabe ein Array von Zahlen erhält . Für war die einzige Lösung, die ich finden konnte, eine andere Behandlung für jede der Ordnungen der 3 Zahlen zu haben. Das heißt, es gibt eine Lösung für den Fall , eine andere Lösung für usw. (der Fall kann durch eine dieser beiden Lösungen gelöst werden).
Wenn man an den Fall denkt, scheint es der einzige Weg zu sein, wieder alle verschiedene Ordnungen zu berücksichtigen und für jeden Fall eine andere Lösung zu entwickeln. Während die Lösung in jedem Einzelfall schnell ist, wäre das Programm selbst sehr groß. Die Laufzeitkomplexität des Problems ist also gering, aber die Komplexität der "Entwicklungszeit" oder die Komplexität der "Programmgröße" ist sehr groß.
Dies veranlasste mich zu beweisen, dass mein Problem nicht durch ein kurzes Programm gelöst werden kann. Also suchte ich nach Referenzen für ähnliche Beweise.
Das erste Konzept, das ich gefunden habe, ist Kolmogorovs Komplexität ; Die Informationen, die ich zu diesem Thema gefunden habe, sind jedoch sehr allgemein gehalten und enthalten hauptsächlich Existenzergebnisse.
FRAGE:
Können Sie ein spezifisches reales Problem , so dass jedes Programm, das auf einem Eingabearray der Größe löst, eine Größe von mindestens , wobei eine zunehmende Funktion ist von ?
Da die Antwort offensichtlich von der Auswahl der Programmiersprache abhängt, nehmen wir an, dass wir in Java oder in einer Turing-Maschine programmieren - je nachdem, was für Sie bequemer ist.
Jedes unentscheidbare Problem erfüllt diese Anforderung trivial, da es überhaupt keine Lösung gibt. Also suche ich eine entscheidende Sprache.