Definitioncore
Iterated logarithm
Also called Iterated logarithm (log*), iterated logarithm, log*, log-star, log-star function.
The number of times the logarithm must be applied before the value drops to at most one; it grows extremely slowly.
The iterated logarithm is the number of times the binary logarithm must be applied to before the result is at most 1. It grows more slowly than , and every fixed number of nested logarithms. For each input size that occurs in practice, . It appears in the cost of coloring a cycle in a distributed system and in an old bound for union-find.
Definition
Let and , defined as long as . For a real number , the iterated logarithm is
Do not confuse , the -fold composition, with , a power.
The minimum exists for each real . If , the set contains , so . Else the steps stay defined, because a value gives . Two facts show that the values reach 1. First, for we have , because is concave and equals at and , so it is below this line for . Second, for we have . So while the value is above 2, each step lowers it by more than 1, and after at most steps it is at most 2. One more step makes it at most 1. The site uses the function for integers .
The definition gives the recurrence
Compare this with the tower function , . Then , , , , . For and each real :
Proof. Induction on . For : means and , that is . For the step, let . Both sides need : the left side because for , the right side because . For , the recurrence gives exactly when . By the hypothesis this holds exactly when . Since is increasing and for , this is the same as .
So is the inverse of the tower function. For the value is 0.
Examples and non-examples
| 1 | 0 |
| 2 | 1 |
| 3, 4 | 2 |
| 5 to 16 | 3 |
| 17 to 65536 | 4 |
| 65537 to | 5 |
The number has 19729 decimal digits. The number of atoms in the observable universe is often estimated as about , a number with 81 digits. So no input with more than items or bits can be stored, and for each input size that occurs in practice. A single stored number can be larger: needs only 65538 bits, and .
Examples of the computation:
- : , three steps. So .
- : , four steps.
- : since , the rule gives . By steps: , which is above , so four more steps are necessary.
Comparison with . At , and , but . At , and (as ), so for small the two can be close. As grows, grows without bound much faster: , and the same holds for for each fixed . Proof: if , then , so . Since , the ratio is more than , which tends to infinity with .
Non-examples. The iterated logarithm is not the iterated power , and it is not . It is also not the inverse Ackermann function : grows even more slowly than (see below).
Related definitions
- Where appears.
- Coloring a cycle. Cole and Vishkin gave a deterministic method for a cycle (or a linked list) of nodes with distinct identifiers from in which each node knows its successor. In each synchronous round, a node compares its color with its successor's color, and finds the lowest bit where they differ. The new color is a function of the position of this bit and its value. A color with bits is replaced by a color with about bits, so after rounds only a constant number of colors remain. A few more rounds give 3 colors. Cole and Vishkin used this step for parallel list ranking. Linial (1992) proved that each deterministic distributed algorithm that 3-colors a cycle of nodes needs rounds, so the bound of Cole and Vishkin is tight up to a constant factor.
- Integer multiplication. Fürer (2007) multiplied two -bit integers in bit operations. Harvey and van der Hoeven (2021) later removed the factor and reached . See integer multiplication.
- Union-find. Hopcroft and Ullman (1973) proved that a sequence of operations on elements takes time when the structure links trees by size and uses path compression. The same bound holds for union by rank (see union by rank and disjoint-set forest).
- The bound of Tarjan. Tarjan (1975) gave a tighter bound for the same structure: , where is the inverse Ackermann function. The function grows more slowly than , so the bound with is stronger, and the bound with is the older and weaker one. Both bounds are for the same data structure. The Ackermann function page has the definitions of , and the page on the amortized bound of union-find has the details.
- Not a constant, but nearly. The function is unbounded, so . A bound with is therefore not linear. But the factor is at most 5 for each practical , so the bound is linear up to a small constant factor.
References
- Cormen, Leiserson, Rivest and Stein, Introduction to Algorithms, fourth edition, Chapter 3, standard notations and common functions (iterated logarithm)
- Hopcroft and Ullman, Set merging algorithms, SIAM Journal on Computing 2 (1973), the O(m lg* n) bound for union by rank with path compression
- Cole and Vishkin, Deterministic coin tossing with applications to optimal parallel list ranking, Information and Control 70 (1986), the coloring of a cycle in O(lg* n) rounds
- Tarjan, Efficiency of a good but not linear set union algorithm, Journal of the ACM 22 (1975), the bound with the inverse Ackermann function
- Nathan Linial, Locality in distributed graph algorithms, SIAM Journal on Computing 21 (1992), the lower bound for coloring a cycle
- Martin Fürer, Faster integer multiplication, STOC 2007, the main theorem
- David Harvey and Joris van der Hoeven, Integer multiplication in time O(n log n), Annals of Mathematics 193 (2021), the main theorem
About this page
The build computes these levels from the evidence in the repository. Each row says what the next level needs. Read what the levels mean.
| Ladder | Level | What the next level needs |
|---|---|---|
| Human proof | H0 no proof |
|
| Lean | L0 no Lean part |
|
| Visual | V0 none |
|
| Writing | W4 complete |
|
Tag 44165W Edit this page History Report an error Markdown JSON