A cut containing at least half of the edges
Statement
Let be a graph with edges. Prove that its vertices can be split into two sets so that at least edges join to . Give two proofs: one by averaging and one by moving vertices.
Hint
(a) Assign each vertex to or by a fair coin flip and compute the expected number of crossing edges. (b) If a vertex has more neighbours on its own side than on the other, move it.
Show solutionHide solution
Solution
Proof 1 (average). Put each vertex independently in or with probability . A fixed edge crosses iff land on different sides, which has probability . By linearity of expectation the expected number of crossing edges is . A random variable cannot always be below its mean, so some choice of gives at least crossing edges.
Proof 2 (local improvement). Start with any split. While some vertex has strictly more neighbours on its own side than on the other, move to the other side. This replaces the non-crossing edges at by crossing ones and the crossing edges by non-crossing ones, so the number of crossing edges increases by . It cannot exceed , so the process stops. At the end, each vertex has at least half of its edges crossing; summing over all vertices, every crossing edge is counted twice: , so crossing .
Remark. For the best possible cut has edges, a proportion slightly above .
Lesson. When you need an object at least as good as average, compute the average (probabilistic method), or run a monovariant that improves a counter.