Jika D T I M E ( f ( n ) )DTIME(f(n)) didefinisikan sebagai kelas semua bahasa yang dapat dipilih dalam waktu O ( f ( n ) )O(f(n)) oleh mesin Turing dua pita, maka saya curiga bahwa jawabannya adalah tidak. Dengan kata lain, saya pikir tidak selalu ada kelas kompleksitas waktu menengah yang ketat.
Catatan: Jawaban ini mungkin tidak persis seperti yang Anda cari karena saya mempertimbangkan fungsi yang tidak dapat dihitung dan saya tidak menyertakan setiap detail argumen. Tapi, saya merasa itu adalah awal yang baik. Silahkan mengajukan pertanyaan. Mungkin saya dapat mengisi rincian ini lebih lanjut di beberapa titik atau mungkin ini akan menghasilkan jawaban yang lebih baik dari pembaca yang tertarik.
Pertimbangkan fungsi dari bentuk f : N → Nf:N→N . Kami menyebut fungsi-fungsi ini sebagai fungsi bilangan alami.
Klaim 1: Saya mengklaim bahwa kita dapat membangun fungsi bilangan alami (tidak dapat dikomputasi) yang sangat lambat tumbuh
ε ( n )ε(n) sedemikian rupa sehingga:
(1) ε ( n )ε(n) tidak menurun
(2) ε ( n ) = ω ( 1 )ε(n)=ω(1)
(3) Untuk semua komputer yang tidak terbatas, f : N → Nf:N→N , himpunan
{ n|ε ( n ) ≤ f ( n ) }{n|ε(n)≤f(n)} tidak terbatas.
Kami membangun ε ( n ) sebagai fungsi langkah non-menurun yang tumbuh lambat. Mari kita menghitung semua fungsi komputasi terbatas { f i } i ∈ N . Kami ingin membangun ε ( n ) sedemikian rupa sehingga untuk setiap i dan setiap j ≤ i , m i n { kε(n){fi}i∈Nε(n)ij≤i|ε ( k ) ≥ i } ≥ m i n { k|f j ( k ) ≥ i } . Dengan kata lain, kita menunggu untuk memetakan ε ( n ) ke i sampaifungsi i pertamadalam penghitungan telah dipetakan ke nilai yang lebih besar dari atau sama dengan i setidaknya sekali. Kemudian, ε ( n ) terus memetakan ke i hingga fungsi i + 1 pertamadalam penghitungan telah dipetakan ke nilai yang lebih besar dari atau sama dengan i + 1 setidaknya sekali dan pada titik ini mulai memetakan ke i + 1min{k|ε(k)≥i}≥min{k|fj(k)≥i}ε(n)iiiε(n)ii+1i+1i+1. Jika kita melanjutkan proses berulang ini untuk membangun ε ( n ) , maka untuk setiap fungsi komputabel yang diberikan tidak terikat, meskipun ε ( n ) mungkin tidak selalu lebih kecil, itu akan sering kali paling tidak setidaknya sama kecil.ε(n)ε(n)
Catatan: Saya baru saja memberikan intuisi di balik klaim 1, saya tidak memberikan bukti terperinci. Silakan bergabung dalam diskusi di bawah ini.
Karena ε ( n ) adalah fungsi yang tumbuh sangat lambat, kami memiliki yang berikut:ε(n)
Klaim 2: Untuk semua fungsi bilangan asli yang dapat dihitung f ( n ) dan h ( n ) , jika h ( n ) = Ω ( f ( n )f(n)h(n)ε ( n ) )danh(n)=O(f(n)), laluh(n)=Θ(f(n)).h(n)=Ω(f(n)ε(n))h(n)=O(f(n))h(n)=Θ(f(n))
Untuk klaim 2, jika ada fungsi yang dapat dihitung h ( n ) antara f ( n )h(n)ε ( n ) danf(n)sedemikian rupa sehinggah(n)≠Θ(f(n)), maka kita akan dapat menghitung fungsi bilangan alami tak terbatas yang tumbuh lebih lambat dariε(n)yang tidak mungkin . f(n)ε(n)f(n)h(n)≠Θ(f(n))ε(n)
Biarkan saya menjelaskan beberapa detail yang relevan. Misalkan demi kontradiksi bahwa fungsi seperti h ( n ) ada. Lalu, ⌊ f ( n )h(n)h ( n ) ⌋tidak terbatas.⌊f(n)h(n)⌋
Catatan: Fungsi sebelumnya dapat dihitung karena f ( n ) dan h ( n ) dapat dihitung.f(n)h(n)
Karena h ( n ) = Ω ( f ( n )ε ( n ) ), kita memiliki⌊f(n)h(n)=Ω(f(n)ε(n))h ( n ) ⌋=O(ε(n)). Karena itu ada beberapa konstantaαsehingga untuk semuancukup besar,⌊αf(n)⌊f(n)h(n)⌋=O(ε(n))αnh ( n ) ⌋<ε(n). Karena fungsi ini tidak terbatas dan dapat dihitung, kami dapat menerapkan Klaim 1 untuk mendapatkan bahwaε(n)≤⌊αf(n)⌊αf(n)h(n)⌋<ε(n)h(n)⌋ε(n)≤⌊αf(n)h(n)⌋ infinitely often which contradicts the previous statement.
Claim 3: For a time constructible function f(n)f(n), we have that DTIME(f(n)ε(n))⊊DTIME(f(n))DTIME(f(n)ε(n))⊊DTIME(f(n)), yet there does not exist h(n)h(n) such that f(n)ε(n)≤h(n)≤f(n)f(n)ε(n)≤h(n)≤f(n) and DTIME(f(n)ε(n))⊊DTIME(h(n))⊊DTIME(f(n))DTIME(f(n)ε(n))⊊DTIME(h(n))⊊DTIME(f(n)).
In order to just show that, DTIME(f(n)ε(n))⊊DTIME(f(n))DTIME(f(n)ε(n))⊊DTIME(f(n)) we need to use a stronger time hierarchy theorem and this is where we use the assumption that the number of tapes is fixed (we said two tapes above). See "The tight deterministic time hierarchy" by Martin Furer.
Since there are no computable natural number functions between f(n)ε(n)f(n)ε(n) and f(n)f(n) other than those that are Θ(f(n))Θ(f(n)), we have that for every function h(n)h(n) such that f(n)ε(n)≤h(n)≤f(n)f(n)ε(n)≤h(n)≤f(n) and h(n)≠Θ(f(n))h(n)≠Θ(f(n)), DTIME(f(n)ε(n))=DTIME(h(n))DTIME(f(n)ε(n))=DTIME(h(n)).