clusters on ${{\mathcal X}}$. Then, for every fixed $k \geq 0$, it is possible to determine in polynomial time whether a level-$k$ network exists that represents ${{\mathcal C}}$, and if so to construct such a network.

Recall that all tangled cluster sets are separating. It was shown in [@cass] that the existence of a polynomial-time algorithm for constructing a level-$\leq k$ network from a tangled cluster set, is sufficient to give a polynomial-time algorithm for constructing level-$k$ networks from general cluster sets. (Specifically, several tangled cluster sets are obtained by processing each non-trivial connected component of the incompatibility graph of the original cluster set [@cass; @HusonRuppScornavacca10]). Hence we can assume without loss of generality that ${{\mathcal C}}$ is tangled. Lemma \[lem:core\] is thus sufficient, and we are done.

Rooted triplets
---------------

It is interesting to note that the proof technique used in Lemma \[lem:core\] leads to a simplified proof, presented in the following corollary, of a complexity result that was first proven in [@simplicityAlgorithmica]. (The algorithm in [@simplicityAlgorithmica] yielded a much faster running time, however). Let us first recall several definitions related to rooted triplets. A *(rooted) triplet* on ${{\mathcal X}}$ is a binary phylogenetic tree on a size-3 subset 