1. A method implemented by a network device to simplify a topology graph of a network and to generate a multicast distribution tree, the method to reduce complexity of the topology graph such that a computational complexity of generating the multicast distribution tree is reduced, the method comprising: computing a shortest path to all nodes of the topology graph rooted at a source node S; determining a metric for each adjacency on each shortest path of the topology graph for a multicast group G; constructing an (S, G) graph with only source node S, leaves and candidate replication points; and pruning the (S, G) graph using a first set of pruning processes to fully resolve the multicast distribution tree, where full resolution can be determined, and the first set of pruning processes are known to produce a minimum cost tree.