Solution (source code)

= Solution

For a finite <graph> choose a simple path of <maximum> length. Every neighbor of its final <vertex> must already lie on the path, since otherwise that <vertex> could be appended. The final <vertex> has <degree of a vertex>[degree] at least two, so besides its predecessor it has another neighbor earlier on the path. That <edge> together with the intervening path segment makes a <cycle in a graph>.

Finiteness is needed for this assertion in general: the two-sided infinite path has <degree of a vertex>[degree] two at every <vertex> and no <cycle in a graph>. The customary finite-<graph> convention is used here and in the subsequent cube questions.