C'è qualche problema non banale nella teoria degli algoritmi seriali con un limite inferiore polinomiale non banale di ?


8

Nella teoria degli algoritmi distribuiti, ci sono problemi con limiti inferiori, come , che sono "grandi" (intendo, più grandi di ) e non banali. Mi chiedo se ci sono problemi con limiti simili nella teoria dell'algoritmo seriale, intendo ordine molto maggiore di .Ω(n2)Ω(nlogn)Ω(nlogn)

Con banale intendo "ottenuto solo considerando che dobbiamo leggere l'intero input" e similmente.


Stai chiedendo limiti inferiori per problemi o limiti inferiori per algoritmi specifici?
A.Schulz,

@ A.Schulz Sto chiedendo limiti inferiori per problemi.
Immanuel Weihnachten,

@RealzSlaw, giusto, ho modificato la domanda, ora con l'assunto standard che n è la dimensione dell'input; Ho anche specificato che con centralizzato intendevo "seriale", come ho visto qui en.wikipedia.org/wiki/Algorithm#By_implementation
Immanuel Weihnachten

abbastanza interessante, non troviamo molta attenzione data a tali classi - come è stato fatto con il problema dell'ordinamento. La moltiplicazione della matrice è . Il problema del percorso più breve è - che probabilmente già conosci. Ma esiste una classe per questi algoritmi? Davvero non lo so. La somiglianza tra questi problemi è che ogni input (tra i ) dovrà fare un'azione con ogni altro input. Tale azione è almeno . Ω(n2)Ω(n2)nΩ(1)
AJed

@RealzSlaw: sono d'accordo con te. Mi mancavano alcuni dettagli nella mia risposta. Ma capisci cosa voglio dire.
AJed

Risposte:


10

Ci sono problemi di questo tipo dal teorema della gerarchia temporale. Basta prendere qualsiasi problema che è completo per una grande classe di complessità. Ad esempio, prendi un problema completo per . Tale problema sarà per tutti .ExpTimeΩ(nc)cN

Tuttavia, nota anche che per problemi in , non ci sono limiti inferiori di tempo forte nel modello TM multi-nastro e l'esistenza di algoritmi di tempo lineari per SAT è coerente con lo stato attuale delle conoscenze. (Nel modello TM a nastro singolo non è difficile dimostrare che molti problemi come i palindromi richiedono un tempo di ma tali limiti inferiori dipendono essenzialmente dai dettagli del modello TM a nastro singolo.)NPΩ(n2)


3

Alcuni semplici problemi che hanno limiti inferiori maggiori delle dimensioni dei loro input, sono algoritmi con dimensioni di output maggiori delle loro dimensioni di input.

Qualche esempio:

  • Il problema di elencare tutte le soluzioni a 3-SAT, o similmente, il problema di elencare tutti i cicli hamiltoniani . Entrambi questi problemi hanno un numero esponenziale di soluzioni nel caso peggiore. Quindi hanno un limite inferiore di . È interessante notare, tuttavia, che il problema 3-SAT in sé non ha limiti superlineari (maggiori di ) noti ! Ciò significa che non sappiamo se è più difficile di lineare!Ω(cn),c>1Ω(n)
  • Puoi persino creare nuovi algoritmi come questo: "completamento di un grafico", ovvero , dove e, l'algoritmo produrrà un grafico , dove .G=V,EE=n=|V|G=V,EE={u,v|uv  u,vV}

Inoltre, potresti essere in grado di comporre un problema con output di dimensioni , con un problema che utilizza come input e output o persino output di dimensioni (ad esempio, qualcosa che conta il numero di output) per ottenere un problema che accetta input di dimensioni e output di dimensioni e che ha un tempo di esecuzione maggiore di . Tuttavia, potrebbe essere molto difficile provare (che non esiste un collegamento per ottenere la risposta in meno tempo).Ω(n2)Ω(n2)Ω(n)Ω(1)Ω(n)Ω(n)Ω(n)


Un altro modo in cui alcuni problemi hanno conosciuto limiti inferiori è quello di limitare il modello di calcolo.

Sebbene il limite inferiore dell'ordinamento di confronto non superi , penso che valga la pena discuterne. L'ordinamento di confronto è anche un problema con un limite inferiore maggiore rispetto alla dimensione di input, ma il limite inferiore non supera e in. Tuttavia, mentre stavo studiando questo, ho trovato questa domanda su mathoverflow: la complessità del tempo super-lineare riduce i limiti per qualsiasi problema naturale in NP . Ulteriori esempi elencati nella risposta sono molto al di sotto di . Penso che il senso sia che, se si limita il modello di calcolo, è possibile ottenere limiti inferiori per problemi per i quali altrimenti non li abbiamo. E se non si limita il modello di calcolo, è molto difficile dimostrare limiti inferiori ai problemi.Ω(nlogn)Ω(nlogn)Ω(nlogn)


C'è qualcosa che non capisco. La moltiplicazione lunga può essere fatta con meno di O (n ^ 2) secondo Wikipedia? Pertanto, è un limite inferiore. Ω(n2)
AJed

La moltiplicazione della matrice può essere eseguita con e questo limite è stato migliorato. Tuttavia, un limite inferiore naturale è . O(n2.8)Ω(n2)
AJed

1
@AJed non è un limite inferiore del problema , ma è un limite inferiore dell'algoritmo .
Realz Slaw,

E ora ha modificato la sua domanda per affrontare il "problema" anziché l'algoritmo.
Realz Slaw,

1
@RealzSlaw Mi scuso per non essere stato abbastanza preciso nel testo della mia domanda all'inizio.
Immanuel Weihnachten,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.