arXiv · 1404.2183
Algorithms for determining integer complexity
Abstract
We present three algorithms to compute the complexity $\Vert n\Vert$ of all natural numbers $ n\le N$. The first of them is a brute force algorithm, computing all these complexities in time $O(N^2)$ and space $O(N\log^2 N)$. The main problem of this algorithm is the time needed for the computation. In 2008 there appeared three independent solutions to this problem: V. V. Srinivas and B. R. Shankar [11], M. N. Fuller [7], and J. Arias de Reyna and J. van de Lune [3]. All three are very similar. Only [11] gives an estimation of the performance of its algorithm, proving that the algorithm computes the complexities in time $O(N^{1+β})$, where $1+β=\log3/\log2\approx1.584963$. The other two algorithms, presented in [7] and [3], were very similar but both superior to the one in [11]. In Section 2 we present a version of these algorithms and in Section 4 it is shown that they run in time $O(N^α)$ and space $O(N\log\log N)$. (Here $α= 1.230175$). In Section 2 we present the algorithm of [7] and [3]. The main advantage of this algorithm with respect to that in [11] is the definition of kMax in Section 2.7. This explains the difference in performance from $O(N^{1+β})$ to $O(N^α)$. In Section 3 we present a detailed description a space-improved algorithm of Fuller and in Section 5 we prove that it runs in time $O(N^α)$ and space $O(N^{(1+β)/2}\log\log N)$, where $α=1.230175$ and $(1+β)/2\approx0.792481$.
Explore related subjects
Keep this discovery
J. Arias de Reyna, J. van de Lune. 2014-04-20. Algorithms for determining integer complexity. https://arxiv.org/abs/1404.2183
Cite the original work for its findings. Save a collection to share your selection of sources.