I am considering the following problem.
We are given a Directed Acyclic Graph. In general, there would be some number of subgraphs that, contracted into one node, would make it a tree. For example, in this graph:
If I contract the nodes $b$ and $c$ into a single node, I obtain a tree (quite a trivial one in this case):
In this example, only one subgraph had to be contracted, but in general more than one subgraph can be required. Note that this is not the only possibility, as contracting $c$ and $d$ would have been also fine. Also, trivially the entire graph could be contracted to obtain a trivial tree of a single node, so we have to look for a minimal solution.
So, the problem I am considering is: Given a DAG, find a set of minimal subgraphs which contractions would turn the DAG into a tree.
Is this problem $NP$-hard? Has it got a specific known name?

