Engel expansion
The Engel expansion of a positive real number x is the unique non-decreasing sequence of positive integers such that
Rational numbers have a finite Engel expansion, while irrational numbers have an infinite Engel expansion. If x is rational, its Engel expansion provides a representation of x as an Egyptian fraction. Engel expansions are named after Friedrich Engel, who studied them in 1913.
An expansion analogous to an Engel expansion, in which alternating terms are negative, is called a Pierce expansion.
Contents
Engel expansions, continued fractions, and Fibonacci
Kraaikamp & Wu (2004) observe that an Engel expansion can also be written as an ascending variant of a continued fraction:
They claim that ascending continued fractions such as this have been studied as early as Fibonacci's Liber Abaci (1202). This claim appears to refer to Fibonacci's compound fraction notation in which a sequence of numerators and denominators sharing the same fraction bar represents an ascending continued fraction:
If such a notation has all numerators 0 or 1, as occurs in several instances in Liber Abaci, the result is an Engel expansion. However, Engel expansion as a general technique does not seem to be described by Fibonacci.
Algorithm for computing Engel expansions
To find the Engel expansion of x, let
and
where is the ceiling function (the smallest integer not less than r).
If for any i, halt the algorithm.
Example
To find the Engel expansion of 1.175, we perform the following steps.
The series ends here. Thus,
and the Engel expansion of 1.175 is {1, 6, 20}.
Engel expansions of rational numbers
Every positive rational number has a unique finite Engel expansion. In the algorithm for Engel expansion, if ui is a rational number x/y, then ui+1 = (−y mod x)/y. Therefore, at each step, the numerator in the remaining fraction ui decreases and the process of constructing the Engel expansion must terminate in a finite number of steps. Every rational number also has a unique infinite Engel expansion: using the identity
the final digit n in a finite Engel expansion can be replaced by an infinite sequence of (n + 1)s without changing its value. For example
This is analogous to the fact that any rational number with a finite decimal representation also has an infinite decimal representation (see 0.999...). An infinite Engel expansion in which all terms are equal is a geometric series.
Erdős, Rényi, and Szüsz asked for nontrivial bounds on the length of the finite Engel expansion of a rational number x/y; this question was answered by Erdős and Shallit, who proved that the number of terms in the expansion is O(y1/3 + ε) for any ε > 0.[1]
Engel expansions for some well-known constants
And in general,
More Engel expansions for constants can be found here.
Growth rate of the expansion terms
The coefficients ai of the Engel expansion typically exhibit exponential growth; more precisely, for almost all numbers in the interval (0,1], the limit exists and is equal to e. However, the subset of the interval for which this is not the case is still large enough that its Hausdorff dimension is one.[2]
The same typical growth rate applies to the terms in expansion generated by the greedy algorithm for Egyptian fractions. However, the set of real numbers in the interval (0,1] whose Engel expansions coincide with their greedy expansions has measure zero, and Hausdorff dimension 1/2.[3]
Notes
- ↑ Erdős, Rényi & Szüsz (1958); Erdős & Shallit (1991).
- ↑ Wu (2000). Wu credits the result that the limit is almost always e to Janos Galambos.
- ↑ Wu (2003).
References
- Lua error in package.lua at line 80: module 'strict' not found..
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found..
- Lua error in package.lua at line 80: module 'strict' not found..
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found..
- Lua error in package.lua at line 80: module 'strict' not found..
- Lua error in package.lua at line 80: module 'strict' not found..
External links
- Lua error in package.lua at line 80: module 'strict' not found.