Remove transitive edges. */
| 670 | |
| 671 | /** Remove transitive edges. */ |
| 672 | static void |
| 673 | removeTransitiveEdges(PathGraph& pathGraph) |
| 674 | { |
| 675 | unsigned nbefore = num_edges(pathGraph); |
| 676 | unsigned nremoved = remove_transitive_edges(pathGraph); |
| 677 | unsigned nafter = num_edges(pathGraph); |
| 678 | if (opt::verbose > 0) |
| 679 | cout << "Removed " << nremoved << " transitive edges of " << nbefore << " edges leaving " |
| 680 | << nafter << " edges.\n"; |
| 681 | assert(nbefore - nremoved == nafter); |
| 682 | if (!opt::db.empty()) { |
| 683 | addToDb(db, "Edges_init", nbefore); |
| 684 | addToDb(db, "Edges_removed_transitive", nremoved); |
| 685 | } |
| 686 | } |
| 687 | |
| 688 | /** Remove ambiguous edges that overlap by only a small amount. |
| 689 | * Remove the edge (u,v) if deg+(u) > 1 and deg-(v) > 1 and the |
no test coverage detected