It appears that when I use
EdgeContract on an undirected graph, the vertex that is the result of contracting an edge is always named the smaller of the two vertices. So
will no longer contain the vertex
3. Is it guaranteed anywhere in the Mathematica documentation that this will always be the behavior of
EdgeContract (at least on an undirected graph where we contract a single vertex)? I couldn't find any mention of this on the documentation page for
EdgeContract. I would hate to be surprised by some subtly in how
EdgeContract is implemented where it renames the vertices some other way.