It turns out that each positive real number x∈R+ can be written in the form
x=1a1+1a1a2+1a1a2a3+⋯,
where a1,a2,a3,… is a unique non-decreasing sequence, finite or infinite, of postive integers. This is called the Engel expansion of x, after the German mathematician Friedrich Engel.
Example
One striking sequence is that for the number e. It’s 1,1,2,3,⋯, so
e=11+11+11⋅2+11⋅2⋅3+⋯.
This is simply the well-know infinite sum
e=∞∑n=01n!,
but it’s funny that either π or e often show up in these kinds of things.
Algorithm
The find the values of ai, use the following iterative algorithm. Set
u1=x,
ai=⌈1ui⌉,
where ⌈y⌉ is the ceiling, the smallest integer greater than or equal to y, and
ui+1=uiai−1,
and continue this process until you hit a value of ui that is zero. And that’s it. Finding a value of ui that is zero may or may not happen, since an Engel expansion can be infinite.
As a numerical example, let’s apply this algorithm to x=1.225. We have u1=1.225 and a1=⌈1/1.225⌉=1. Then u2=1.225⋅1−1=0.225 and a2=⌈1/0.225⌉=5. And then u3=0.225⋅5−1=0.125 and a3=⌈1/0.125⌉=8. And then it stops, because u4=0.125⋅8−1=0. Hence,
1.225=11+11⋅5+11⋅5⋅8.
Where Does the Algorithm Come From?
A way to understand where the algorithm comes from, is to start from the original Engel expansion again,
x=1a1+1a1a2+1a1a2a3+⋯.
The obvious value to set a1 to would be 1/x, because then we would be done. However, we want the ais to be integers, so we set a1=⌈1/x⌉. We know that x is now not (necessarily) equal to 1/a1, but we do know that we want to pick the other ais so that the rest of the (possibly infinite) sum is equal to their difference, so
x−1a1=1a1a2+1a1a2a3+⋯.
First we get rid of the a1s in all the remaining terms by multiplying both sides of the equation by a1, so
xa1−1=1a2+1a2a3+1a2a3a4⋯.
It turns out that we then immediately end up in a situation that is very similar to what we started off with, so that we can repeat the whole process by setting u2=xa1−1, which is the next step in the algorithm.
Note that this algorithm leads to a2 (and all further ais) being positive, since x−1/a1≥0, because ⌈1/x⌉≥1/x.
Also note that this doesn’t prove that the algorithm converges to the correct solution (although it actually does). It simply shows where the algorithm comes from.
Add new comment