Dear Henrik,
thank you very much for your kind words. You are quite right: your images do indeed visualise the idea very nicely. Very often one illustrates chaotic systems with a metaphor of stretching and folding. In the map
$$x_{n+1}=2 x_n \mod 1$$
the
$2 x_n$ is a sort of stretching. Points that have a certain distance will basically double that distance after the iteration. This exponentially increases the distance between neighbouring points and thereby "magnifies" the initial conditions, which are random. One can understand that the randomness of the initial conditions becomes a dominating factor for the evolution of the system.
The
$\mod 1$ is a kind of folding the it cuts the line in half and merges the two like so:
Export["~/Desktop/strechingfolding.gif",
Join[Table[
Graphics[{Line[{{0, 0}, {t, 0}}]},
PlotRange -> {{-0.5, 2.5}, {-1, 1}}], {t, 1, 2, 0.1}],
Table[Graphics[{Line[{{0, 0}, {1, 0}}], Red ,
Line[{{1, t}, {2, t}}]},
PlotRange -> {{-0.5, 2.5}, {-1, 1}}], {t, 0, 0.2, 0.05}],
Table[Graphics[{Line[{{0, 0}, {1, 0}}], Red,
Line[{{1 - t, 0.2}, {2 - t, 0.2}}]},
PlotRange -> {{-0.5, 2.5}, {-1, 1}}], {t, 0, 1, 0.1}],
Table[Graphics[{Line[{{0, 0}, {1, 0}}], Red,
Line[{{0, t}, {1, t}}]},
PlotRange -> {{-0.5, 2.5}, {-1, 1}}], {t, 0.2, 0, -0.05}]]]
So I stretch and fold intervals of points here. The whole thing is not invertable, because when I fold different points are identified. I can imagine the random ones and zeros to "choose" the branch they came from. I can also interpret this as learning more about the initial conditions (that I cannot observe with infinite precision) from the trajectory. Small changes in the initial conditions lead to large (observable) differences in the trajectories, which allow me to infer with higher and higher precision what the initial conditions must have been.
Some time ago I attended a talk by Jim Yorke who highlighted the problem of, for example, predicting the weather due to the problem of the sensitive dependence on initial conditions. He suggested that it might be more valuable to calculate backwards and try to "post-dict" the initial conditions that must have led to this situation.
It is quite fascinating that the "infinite precision" calculations that the Wolfram language can do are particularly useful here. A scientifically very senior colleague of mine here at Aberdeen studied finite precision issue in chaotic systems in the 80's. The Wolfram Language is quite convenient to study these issues.
Thank you very much again for your encouragement.
Cheers,
Marco