The cycle lemma turns a constraint at every prefix into a choice of where to start reading a circular sequence. Think of a lattice path whose vertical increments record votes for two candidates: for one candidate and for the other. Its partial sums are the running lead. Rotating the increments preserves the final lead, but changes whether that lead stays strictly positive throughout. This makes rotation useful for counting lattice paths subject to prefix constraints; the sum-one cycle lemma also supplies the cyclic prefix condition in the cyclic Turán covering construction.
The sum-one form. Let be any nonempty sequence of integers with . A starting position means reading the rotated sequenceCall good when every nonempty partial sum of is strictly positive, including the full sum:The cycle lemma says there is exactly one good starting position. Negative entries, zero entries and positive entries larger than one are all allowed in this sum-one form. The empty partial sum is zero and is excluded from the positivity requirement. Douglas West's exercise 1.3.46(a) states a stronger result for arbitrary integer entries: take its case with all partial sums positive. [ref]
https://api.pageplace.de/preview/DT0400.9781108889520_A49236431/preview-9781108889520_A49236431.pdf#page=72. West, Combinatorial Mathematics, exercise 1.3.46(a), p. 50
A worked sum-one example. For , the partial sums starting at zero are . Starts fail: they have, respectively, a zero second partial sum, a negative first partial sum, and a zero first partial sum. Start reads and has nonempty partial sums , all positive. This example both allows an increment larger than one and shows why touching zero fails.
Why the last minimum works. Put and . Choose the last index attaining the minimum of the proper partial sums : include and exclude . After that index, later proper partial sums are strictly larger than ; also , since . Before wrapping, the new partial sums are therefore positive differences . After wrapping, they are . In the worked example the last minimum is at ; choosing the first minimum at would fail. Uniqueness takes one further observation: two good starts would split the circle into two nonempty arcs, each having a positive integer sum, yet their sum would be one.
New to topics? Read the docs here!