Die Art und Weise, wie Ihre zweite Sprache geschrieben ist, ist in Bezug auf normale Standards nicht genau formuliert. ist eine Reihe von Sprachen und keine Reihe von Maschinen. Basierend auf dem, was Sie im Rest Ihrer Frage gesagt haben, gehe ich davon aus, dass Sie versuchen, zwischen Maschinen zu unterscheiden, die höchstens polynomiell laufen, und solchen, die ein Problem in lösen . Vielleicht wäre dies ein besserer Weg, um es zu schreiben als:PP
A={⟨M⟩|(∃k∀x)M(x) halts in O(|x|k) time}
O kann durch ersetzt werden Θ Wenn Sie schwächere Computer wie Protokollzeit-TMs ausschließen möchten.
Beachten Sie, dass: A⊂{⟨M⟩|L(M)∈P}
Wie von sdcvvc beobachtet , gilt der Satz von Rice hier nicht sofort und reicht nicht aus, da die verwendete "nicht triviale" Eigenschaft eine Eigenschaft von sein mussL(M). Eine an eine Maschine gebundene Zeit ist keine Eigenschaft der Sprache, sondern eine Eigenschaft dieser Maschine.
Eine Antwort für eine vorgegebene kwurde die theoretische Frage diskutiert, auf die in den Kommentaren Bezug genommen wird. Die Wahl dieser Konstante war der Schlüssel zum Beweis der Unentscheidbarkeit. In unserer Sprache enthalten wir allek∈N und haben daher kein Maximum k arbeiten mit.
Ich hatte keine Zeit, um ausreichend Nachforschungen anzustellen, aber ich stelle mir vor, dass es nicht unangemessen wäre, ihre Ergebnisse auf irgendwelche auszudehnen k>2 über direkte Induktion.
Ein aktuelles Papier geschrieben von David Gajser, der durch dem die cstheory Post motiviert war, antwortet eine verallgemeinerte Version dieser Frage:
Lassen HALTT(n)={⟨M⟩|∀xM(x) halts in at most T(n=|x|) time}
Für Einzelband-Turingmaschinen:
HALTT(n) ist unentscheidbar, wenn T(n)=Ω(nlog(n))
Für Turingmaschinen mit mehreren Bändern:
HALTT(n) ist entscheidbar iff T(n)≤k+1 für einige k∈N
Er erweitert diese Unentscheidbarkeitsergebnisse auf Klassen mit beliebig großen Konstanten (wie z P). Ihm zufolge ist die Antwort auf Ihre Frage, dass die Sprache (A) ist unentscheidbar.