anchor.diff:      let removeDominated (cg: T) = 
           let dom = dominators' cg cg.Start Down
           let domRev = dominators' cg cg.End Up
  -        (* Remove dominated edges *)
  +        // Remove dominated edges
           cg.Graph.RemoveEdgeIf (fun (e: TaggedEdge<CgState,unit>) -> 
               let ies = cg.Graph.OutEdges e.Target
               match Seq.tryFind (fun (ie: TaggedEdge<CgState,unit>) -> ie.Target = e.Source) ies with 
  
positive.code:                 assert (ie.Target = e.Source)
                  (Set.contains e.Target (dom.[e.Source]) || Set.contains e.Source (domRev.[e.Target])) &&
                  not (e.Target = e.Source) ) |> ignore
          (* Remove nodes dominated by a similar location *)
          cg.Graph.RemoveVertexIf (fun v -> 
              dom.[v]
              |> Set.exists (fun u -> u <> v && u.Node.Loc = v.Node.Loc)) |> ignore
          (* Remove edges where the outgoing is dominated by a similar location *)
          cg.Graph.RemoveEdgeIf (fun e ->
              let x = e.Source
              let y = e.Target
              Set.exists (fun x' -> x'.Node.Loc = x.Node.Loc && x' <> x) domRev.[y]
          ) |> ignore
  
      let removeDeadEdgesHeuristic (cg: T) =
          cg.Graph.RemoveEdgeIf (fun (e: TaggedEdge<CgState,unit>) -> 
  
negative.code:         while changed do 
              changed <- false 
              for b, i in postorder do
                  if b <> root then 
                      let preds = f cg b
                      let mutable newIDom = Seq.find (fun x -> postorderMap.[x] < i) preds
                      for p in preds do
                          if p <> newIDom then 
                              if dom.[p] <> None then 
                                  newIDom <- inter postorderMap dom p newIDom
                      let x = dom.[b]
                      if Option.isNone x || Option.get x <> newIDom then
                          dom.[b] <- Some newIDom
                          changed <- true
          let res = Dictionary()
          for v in cg.Graph.Vertices do 
              res.[v] <- dominators dom v
  