Cantor function
I have sometimes liked to learn math from textbooks by doing all, or most, of the exercises. This can be really engaging when it is going well.
A problem I have often run into is that I will get stuck. Sometimes talking about the problem unsticks it. Maybe writing about the problem will, too?
Currently the problem is the "Cantor Function" problem from chapter 6 of Understanding Analysis. Part (a) is easy. Part (b) though feels like it is just on the edge of sight. It feels like it "should" be simple once I figure out how to write it down. The general idea is: Once an interval \([a, b]\) is flattened out at say \(y_0 = f_N(x)\) for \(x \in [a, b]\), it stays flattened out for good: For all \(n \geq N\) we have \(f_n(x) = f_N(x) = y_0\). The plateaus "get closer together." Furthermore, the \(f_n\)s are increasing functions. We should be able to use these two facts to "force" the values to get closer together in a uniform convergence sort of way.
What I'd like to do is say: We can "trap" the values where the sequence of functions is not eventually constant. (Those should turn out to be the points of the Cantor set, but I don't feel like proving it.) Given some \(\epsilon > 0\) I think we can force points to be close together by looking at the plateaus only. We only need an \(N\) such that any consecutive pair of boundary points (that is 0 and 1) or plateaus is closer than \(\epsilon\). Every function \(f_n\) is increasing, and the plateaus in \(f_N\) will remain in every \(f_n\) with \(n \geq N\). That means that if we can force the plateaus to be close enough in \(f_N\), then for all \(n \geq N\), the values of \(f_n\) in between the plateaus/boundaries must be trapped between the \(f_N\) values on the consecutive plateaus/boundaries.
This feels like it should work, but it sounds like a pain to formalize if you can do so at al. Unfortunately I expect the formalization to be important for figuring out (c). So... 🤷♂️
I suspect it might be possible to rescue this argument by finding an explicit formula for points inside the plateaus. I have my candidate points, namely those of the form \(k/2^n\) where \(k, n \in \mathbb{Z_{\geq 0}}\) and \(k \leq 2^n\). In fact I think \(f_n\) is constant at exactly the points \(k/2^n\) with its value at such points being... \(k/2^n\). This would be convenient, because if true, then it is obvious which \(N\) will work: The distance between consecutive boundary points/plateaus would be \(1/2^N\), so just take \(N\) such that \(2^{-N} < \epsilon\).
I'd have to prove that these candidate points work, though. That means writing down the recursion explicitly and probably doing an induction argument, which... eh. Maybe later.