Constructing a tree from disjoint graphs
The reverse direction is relatively straight forward, as we start with disjoint vertices, and at each step only add edges to a new vertex, we cannot introduce a cycle, furthermore at each step we connect the "graph so far", so we finish with a connected graph.

For the forward direction, we just need to consider how we could construct a tree in such a manner. The key observation being that a subtree is also a tree. Thus we can recursively break down a tree (the construction is then a series of applications of adding a new node and some edges) by picking a vertex in the tree, and taking each of its subtrees as the sets $X_{1},X_{2},\ldots$. Each of these is a tree (and hence "valid"), so we can construct them in the same manner. Eventually we reach a set of leaves (individual vertices) which are by definition "valid".



The diagram gives a little sketch of this, with the "valid" components $X_{1}$, $X_{2}$ and $X_{3}$ all representing trees, with a new vertex added, and a single edge from each component to this new vertex.