OK, so for any x,y in the big interval [0,1], let's write Δ(x,y)=+f(y)−f(x) for convenience. Then we can nicely rewrite the "telescoping" property above as
Δ(a,b)=Δ(a,c)+Δ(c,b).
We want to keep splitting into smaller and smaller intervals like this, until we can use the always-0-derivative condition. For example, if we had a=0, b=1, then we could decompose
Δ(0,1)=Δ(0.0,0.1)+Δ(0.1,0.2)+⋯+Δ(0.9,1.0).
We want to be able to say that each of these 10 (or however many we end up decomposing into) terms are small, and this is where the derivative condition comes into play.
The technical details
"Smallness" is relative, so let's fix a concrete threshold ϵ>0 that we can refer to. Recall that f′(t)=0 just means that Δ([t,x])=o(∣x−t∣), so for our ϵ>0, there exists δ>0 such that ∣Δ([t,x])∣<ϵ∣x−t∣ for all x within δ=δ(t) of t. (Here δ may depend on t and ϵ.)
Let Bt be the interval ("ball") where we can apply the inequality in the previous paragraph: that is, Bt=(t−δ(t),t+δ(t)). Of course, as we vary over all t∈[0,1], all of [0,1] is "covered" by the Bt. In fact, the "completeness/compactness" (this is technical: don't worry about it) of the reals tells us that we only need finitely many of these balls: the interval [0,1] can be covered by finitely many balls Bt1,Bt2,…,Btn, say with 0≤t1<t2<⋯<tn≤1, and Bti having radius ri=δ(ti).
In other words, every point in [0,1] is now under the control/jurisdiction (in the territory of) one of these n balls.
Now we can assume without loss of generality that these balls form a "chain from 0 to 1" going from left to right, so that 0 lies in Bt1, Bt1 intersects Bt2 somewhere between t1 and t2, Bt2 intersect Bt3 somewhere between t2 and t3, etc., and 1 lies in Btn. This is hopefully intuitive, so don't worry about the details, but the idea is that the only way two neighboring balls could ever not intersect is if one of the balls were "redundant" (contained in a larger ball, so then we could remove the redundant/smaller ball).
Now that we know all the balls "interweave" in this nice fashion, let u1 be any point in both the neighboring balls Bt1,Bt2 (between t1 and t2). Similarly define u2,u3,…,un−1. Also, for convenience, let u0=0 and un=1; by assumption we know u0 lies in Bt1 and un lies in Btn.
Implementing the key "telescoping" idea
Instead of breaking up the interval [0,1] at the points 0.1,0.2,…,0.9, we'll break it up at the points we just constructed:
0=u0,t1,u1,t2,u2,t3,…,tn−1,un−1,tn,un=1.
Then neighboring points are either of the form ui−1,ti or ti,ui. In the former case, we have
∣Δ(ui−1,ti)∣<ϵ∣ui−1−ti∣=ϵ(ti−ui−1),
since ui−1 lies in the territory Bti of ti, and ui−1<ti. Similarly, in the latter case, we have
∣Δ(ti,ui)∣<ϵ∣ui−ti∣=ϵ(ui−ti),
since ui also lies in the territory Bti of ti, and ti<ui.
But we also have the telescoping property
Δ(0,1)=Δ(0=u0,t1)+Δ(t1,u1)+⋯+Δ(un−1,tn)+Δ(tn,un=1).
Finally, by the triangle inequality, we have
∣Δ(0,1)∣≤∣Δ(0=u0,t1)∣+∣Δ(t1,u1)∣+⋯+∣Δ(un−1,tn)∣+∣Δ(tn,un=1)∣<ϵ(t1−u0)+ϵ(u1−t1)+⋯+ϵ(tn−un−1)+ϵ(un−tn)=ϵ(un−tn+tn−un−1+⋯+u1−t1+t1−u0)=ϵ(un−u0)=ϵ(1−0)=ϵ.
(Intuition: the t1−u0, u1−t1, etc. terms are just the lengths of the intervals we broke up [0,1] into, so their total length is just the length 1−0 of [0,1]. In fact, this is another "telescoping" sum, with the t1,u1,…,un−1,tn all canceling out: everything but the endpoints un=1 and u0=0.)
So ∣Δ(0,1)∣<ϵ. But remember how we said smallness was relative? Well, ϵ>0 was an arbitrary reference threshold: we can make it as small as we like, so Δ(0,1)=0, as desired.