Just to clarify, today in lecture we only showed that for every **non-negative** cost function, there is an optimal solution to the LP that is an r-arborescence. It is not true if we allow negative costs, because nothing in our LP prevents us from picking multiple edges and reducing the costs further. Recall we were using the LP:

for all “interesting” sets

If we add in Adam’s proposed constraint, we get

for all “interesting” sets

Then with this stronger LP we can indeed show that for **all** cost-functions, there is an optimal integer solution. Let’s sketch why. Now the dual looks like:

for all

The variables should be the same as before. What would you set the dual variables to? Easy: set it to the amount you’d have to raise the costs on edges going out of in order to make them all non-negative.