Kompromis czasoprzestrzenny i najlepszy algorytm

14

Rozważmy język taki jak:L

LDTIME(O(f(n)))DSPACE(O(g(n)))

i tak

LDTIME(o(f(n)))DSPACE(o(g(n)))

Innymi słowy, najszybsza maszyna oblicza L w czasie O ( f ( n ) ), a najbardziej wydajna pod względem przestrzeni maszyna M ' oblicza L , używając przestrzeni O ( g ( n ) ) .MLO(f(n))MLO(g(n))

Co można powiedzieć o wydajności przestrzennej M lub wydajności czasowej M? Lub bardziej precyzyjnie, jeśli jest zbiorem wszystkich maszyn, które obliczają L w O ( f ( n ) ), to co można powiedzieć o większości przestrzeni wydajnej maszyny w M T ? Co o tym samym dla oczywistej wersji Space: M S .MTLO(f(n))MTMS

Można i g ( n ) jest stosowany do określenia pewnych kompromisów dobre przestrzenno-czasową? W jakich warunkach T S o ( f ( n ) g ( n ) ) lub bardziej ogólnie dla niektórych kompromisów czasoprzestrzennych h ( T , S ), w jakich warunkach jest h ( T , S ) h ( o ( f ( n ) )f(n)g(n)TSo(f(n)g(n))h(T,S) .h(T,S)h(o(f(n)),o(g(n)))

Artem Kaznatcheev
źródło
Czy pytasz o dowolny L, czy jesteś zainteresowany wynikami tego rodzaju, które mogą istnieć w przypadku konkretnych problemów?
Suresh Venkat
Naprawdę interesuje mnie jedno i drugie. Moją pierwotną motywacją były głównie problemy z osiągalnością (ukierunkowana i nieukierowana łączność st). Interesujące byłoby jednak wiedzieć, czy dostępne są jakieś ogólne granice lub techniki.
Artem Kaznatcheev
2
Tak, każdą językową rozstrzygalne . Ten język udostępnia funkcje f L , g L, dzięki czemu L TIME [ f L ( n ) ] SPACE [ g L ( n ) ] i L TIME [ o ( f L ( n ) ) ] SPACE [ o ( g L ( n ) ) ]LfL,gLLTIME[fL(n)]SPACE[gL(n)]LTIME[o(fL(n))]SPACE[o(gL(n))] (Czy to prawda, czy też istnieją języki przyspieszające, które ją naruszają?)
Derrick Stolee
W szczególności istnieją przykłady w zakresie wyszukiwania problemów, które dopuszczają (zapytanie, spację) formy (log n, poli (n)) lub (sublinearny, liniowy) lub ich dowolną interpolację
Suresh Venkat

Odpowiedzi:

14

Prototypowe f i g prawdopodobnie byłyby wielomianem i przestrzenią polilogu. Interesującym problemem jest tutaj łączność (w grafach ukierunkowanych), którą można rozwiązać w czasie wielomianowym (przy użyciu przestrzeni liniowej) lub w przestrzeni polilogu (przy użyciu czasu wielomianowego). Znanym otwartym problemem jest to, czy można go rozwiązać w TIME-SPACE (poly, polylog), klasie znanej jako SC .

To znaczy, twoje pytanie jest dobrze znanym otwartym problemem. Nie sądzę, aby znane było tu coś nietrywialnego.

Noam
źródło
Dziękuję za odpowiedź. Podejrzewałem, że będzie to otwarty problem, ale mam nadzieję, że pewne konkretne wyniki będą już znane. Niefortunne :(.
Artem Kaznatcheev
-4

to pytanie pojawiło się na „podobnych pytaniach”, kiedy właśnie opublikowałem to drugie pytanie /cstheory/9677/deterministic-time-space-separation-via-space-compression .

tam cytuję wynik Hopcroft, Paul, Valiants 1977 (najwyraźniej najlepiej znany według rj liptona na jego blogu), który wydaje się dotyczyć twojego pytania, tj. DTIME(t(n))DSPACE(t(n)/log(n))

vzn
źródło
1
I don't see how this applies to time-space trade-offs...
Artem Kaznatcheev
the concept of "time space tradeoff" seems not to be exactly defined. my answer can be understood as follows: a program that is in DTIME(t(n)) is "naturally" in DSPACE(t(n)). the HPV1977 results then allow one to construct a TM, at the expense of some increase in states (and tapes maybe?) such that it takes DSPACE(t(n)/log(n)) space instead. therefore a "tradeoff"
vzn
1
There is a standard understanding of trade-offs in CS which is not at all what you describe (what you describe is not a trade-off at all, but just a standard relationship between DTIME and DSPACE). Further, I explicitly explain what I want in time-space trade-off in my question, please read questions carefully before trying to answer them.
Artem Kaznatcheev
if your definition of time-space tradeoffs above in your question is standard as you say, is it defined in any literature?
vzn
looking over your definition it looks intuitively plausible that such f(n),g(n) exist for all decidable languages but wouldnt one run into problems even proving such f(n),g(n) necessarily exist due to the blum speedup theorem....?
vzn