Se dice que un algoritmo resuelve un problema "A", si dicho algoritmo se puede aplicar a cualquier instancia "I" de "A", y se garantiza que siempre produce una solución para dicha instancia.