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)Ω(nlog⁡n)Ω(nlog⁡n)

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)c∈N

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,E′E′={u,v|u≠v ∧ u,v∈V}

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.Ω(nlog⁡n)Ω(nlog⁡n)Ω(nlog⁡n)


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.