Wikipedia lo definisce essere
Si dice che un algoritmo ha un tempo polinomiale se il suo tempo di esecuzione è limitato da un'espressione polinomiale delle dimensioni dell'input per l'algoritmo, cioè per qualche costante k.
L'algoritmo viene eseguito in tempi fortemente polinomiali se [8]
il numero di operazioni nel modello aritmetico di calcolo è limitato da un polinomio nel numero di numeri interi nell'istanza di input; e
lo spazio utilizzato dall'algoritmo è limitato da un polinomio delle dimensioni dell'input.
In Bernhard Korte, Jens Vygen, ottimizzazione combinatoria :
Definizione 1.4.
Si dice che un algoritmo con input razionale funzioni in tempo polinomiale se
- esiste un numero intero k tale che viene eseguito nel tempo , dove n è la dimensione di input e
- tutti i numeri nei calcoli intermedi possono essere memorizzati con bit .
Si dice che un algoritmo con input arbitrario funzioni in un tempo fortemente polinomiale se
- esiste un numero intero k tale che viene eseguito in tempo per qualsiasi input costituito da n numeri e
- corre in tempo polinomiale per input razionali.
Perfavore, correggimi se sbaglio. Di seguito sono riportate le differenze letterali che ho notato:
Per gli algoritmi del tempo polinomiale, la definizione di Korte e Vygen è "la definizione di Wikipedia + spazio di archiviazione polinomiale".
Per algoritmi temporali fortemente polinomiali, la definizione di Korte e Vygen e la definizione di Wikipedia richiedono entrambe un tempo polinomiale nella dimensione di memorizzazione dell'input. Ma K e V richiedono inoltre tempo polinomiale nel numero di numeri in qualsiasi input, mentre Wikipedia richiede anche spazio di archiviazione polinomiale nella dimensione di input.
Quindi le definizioni di K e V e Wikipedia per questi due concetti sono equivalenti, rispettivamente? Quali altre differenze e relazioni sono tra loro?
Grazie e saluti!