Czy ?


15

Oczekuję, że odpowiedź brzmi „nie”, ale tak naprawdę nie mogłem skonstruować kontrprzykładu. Różnica polega na tym, że w ∩ ε > 0 D T I M E ( O ( n 2 + ε ) )∩ε>0DTIME(O(n2+ε)) możemy nie być w stanie wybrać algorytmu O ( n 2 + ε )O(n2+ε) równomiernie w εε .

Za pomocą argumentu „jaskółczy ogon” (na przykład patrz to pytanie ), jeśli istnieje zestaw maszyn Turinga M iMi decydujących o języku L.L takim, że ∀ ε > 0 ∃ M i ∈ O ( n 2 + ε )∀ε>0∃Mi∈O(n2+ε) , to L.L jest in D T I M E ( n 2 + o ( 1 ) )DTIME(n2+o(1)) .

Biorąc pod uwagę maszynę Turinga, to czy maszyna działa w czasie n 2 + o ( 1 )n2+o(1) jest Π 0 3Π03 . Czy język (podany kod dla maszyny go rozpoznającej) znajduje się w D T I M E ( n 2 + o ( 1 ) )DTIME(n2+o(1)) to Σ 0 4Σ04 (i Π 0 3Π03 ); czy język jest w ∩ ε > 0 D T I M E ( O ( n 2 + ε ) )∩ε>0DTIME(O(n2+ε)) jest Π 0 3Π03 . Jeśli możemy udowodnić Σ 0 4Σ04 kompletność (lub po prostu Σ 0 3Σ03 twardość) D T I M E ( n 2 + o ( 1 ) )DTIME(n2+o(1)) , to rozwiązałoby problem, ale nie jestem pewien, jak to zrobić że.

Problem zostałby również rozwiązany, jeśli znajdziemy sekwencję języków L ILi taką, że
* L ILi ma naturalny algorytm decyzyjny O ( n 2 + 1 / i )O(n2+1/i) (jednolicie w jai ).
* Każde L ILi jest skończone.
* Jest nie tylko wielkość L ILi nierozstrzygalnym, ale algorytm nie można wykluczyć w ∈ L iw∈Li znacznie szybciej niż O ( n 2 + 1 / i )O(n2+1/i) (w najgorszym przypadku ww ), z wyjątkiem skończenie wielu jai (w zależności od algorytm).

Jestem również ciekawy, czy istnieją jakieś znaczące / interesujące przykłady (dla ∩ ε > 0 D T I M E ( O ( n 2 + ε ) ) ∖ D T I M E ( n 2 + o ( 1 ) )∩ε>0DTIME(O(n2+ε))∖DTIME(n2+o(1)) lub analogiczna relacja).


Nigdy nie myślałem o pytaniach rozstrzygających, takich jak dana maszyna Turinga, czy rozpoznaje język w . Bardzo schludny! Czy był jakiś konkretny powód, dla którego wybrałeś 2 w wykładniku? Zgaduję, że byłoby to mniej więcej takie samo, jeśli weźmiesz pod uwagę inną liczbę w wykładniku wyższą niż 2? D T I M E ( n 2 + o ( 1 ) )DTIME(n2+o(1))
— Michael Wehar,

1
@MichaelWehar Chciałem tylko konkretnego przykładu, a „1” jest czasem wyjątkowy, więc wybrałem „2”. Powyższe właściwości kompletności i odpowiedź poniżej są dość ogólne.
— Dmytro Taranovsky

Odpowiedzi:


10

Oto kontrprzykład, tj. Język z algorytmem (przy użyciu wielowarstwowych maszyn Turinga) dla każdego , ale niejednolicie w : Zaakceptuj iff a ta maszyna Turinga zatrzymuje się w mniej niż krokach na pustym wejściu. Inne ciągi znaków są odrzucane.O(n2+ε)O(n2+ε)ε>0ε>0εε
0k1m0k1mk>0k>0kkm2+1/km2+1/k

Dla każdego otrzymujemy algorytm poprzez zakodowanie na sztywno wszystkich wystarczająco małych niehamujących maszyn i symulację reszty.εεO(n2+ε)O(n2+ε)

Teraz rozważ maszynę Turinga decydującą o języku.MM

Niech (na pustym wejściu) będzie wydajną implementacją: dla 1,2,4,8, ...:      użyj aby zdecydować, czy zatrzyma się w kroki.      halt iff mówi, że nie zatrzymujemy się, ale nadal możemy zatrzymać się w krokach .M′M′
nn
MMM′M′<n2+1/M′<n2+1/M′
MM<n2+1/M′<n2+1/M′

Dzięki poprawności , nie zatrzymuje się, ale przyjmuje -stepów na wejściu dla nieskończenie wielu . (Jeśli jest zbyt szybki, wówczas byłoby sprzeczne z M. Ograniczenie Ω ( n 2 + 1 / M ' ) zależy od M ' symulującego M w czasie liniowym i poza tym wydajnego.)MMM′M′MMΩ(n2+1/M′)Ω(n2+1/M′)0M′1n−M′0M′1n−M′nnMMM′M′MΩ(n2+1/M′)M′M


Nie rozumiem ostatniego zdania. Gdzie otrzymujemy niższe granice czasu działania M ? M
— Emil Jeřábek wspiera Monikę

@ EmilJeřábek Wyjaśniłem odpowiedź. Daj mi znać, czy można go jeszcze ulepszyć.
— Dmytro Taranovsky,

1
Być może nie rozumiem, co znaczy „ale wciąż możemy się zatrzymać…”. Co dokładnie robi M '?
— Emil Jeřábek wspiera Monikę

@ EmilJeřábek M 'nie używa danych wejściowych i wielokrotnie wywołuje M, aby zdecydować o ograniczonym problemie zatrzymania dla M'. Jeśli, na przykład, po uruchomieniu dla 900 kroków, M 'odkryje, że (zgodnie z M) M' nie zatrzymuje się w pierwszych 1000 krokach, wówczas M 'zatrzymuje się. Jeśli nie, to M 'nadal działa i dzwoni do M, aby zdecydować, czy M' zatrzyma się w pierwszych 4000 krokach.
— Dmytro Taranovsky,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.