void CreateGraphAndRemoveCycles() { //edges in the graph go from a smaller value to a bigger value graph = new BasicGraphOnEdges <IntPair>(constraints, varList.Count + boundsToInt.Count); //removing cycles var feedbackSet = CycleRemoval <IntPair> .GetFeedbackSet(graph); if (feedbackSet != null) { foreach (var edge in feedbackSet) { graph.RemoveEdge(edge as IntPair); } } }