Let’s look at a proof of the three-gap theorem given by F. M. Liang and restated more clearly by Schiu [paywall].
We’re going to look for gaps that are “rigid”, by which we mean this: A rigid gap is one that, if shifted (right) by X, does not coincide with another gap.
Think about the gap from F to G (the leftmost blue gap). If you shift it (right) by X, you get the gap from C to D. Shift gap CD by X and you get the gap GA; shift that by X and you get the gap DE. But if you shift DE by X you don’t get a gap: you get a segment from A to where B would be if there were a B. The gap DE is rigid. EF (the purple gap) is rigid too, because shifting it by X doesn’t give you a gap (it goes from where B would be to C). And AC (orange) is rigid, because shifting it by X gives you the segment EG, which is two adjacent gaps (EF and FG), not one.
Generally, there are only two ways a gap can be rigid. One is if when you do the shift one or the other of its end notes doesn’t map to a note. That happens only when one or the other of the end notes is the last note added (A in this case), in which case there isn’t a note X to the right of it. We’ll call this a Type I rigid gap.
The other way is if when you do the shift there is a note, or more than one note, in the middle of the shifted segment. But that happens only if the note(s) in the middle have no notes X to the left of them. Otherwise there’d be one or more notes in the middle of the unshifted gap, and by the definition of a gap, there isn’t. And the only note with no note X to its left is the first note (F in this case), so there can be only one note in the middle of the shifted gap and there can be only one rigid gap of this sort. This is a Type II rigid gap.
And that means there are no more than three rigid gaps: two Type I gaps that start or end on the last point, and one Type II whose shifted version contains the first point. All the other gaps are nonrigid. By shifting any one of them one or more times, you can make it coincide with one of the rigid gaps, and so it must be the same size as one of the rigid gaps. Therefore there can be at most three gap sizes.
That’s the first part of the theorem. Second part, coming up soon.