Work through the LPExamples, then do the following problems.

1. Given an undirected graph G=(V,E), an independent set in G is a set of vertices no two of which share an edge.

- a. Describe an integer linear program (IP) for finding a maximum-size independent set in G.
- b. Describe the linear programming relaxation (LP).
- c. Describe the dual of LP.
- d. Give an example of a graph with N vertices where the LP and dual have solutions of size N/2 but the maximum independent set has size O(1).
- e. Is there any hope of using this IP, and either the direct rounding technique (rounding a fractional solution to an integer solution directly) or using the dual technique (constructing an integer solution whose cost is related to some dual solution cost) to prove that there is a c-approximation algorithm for independent set, as we did for vertex cover?

2. optional challenge problem: Given an edge-weighted, directed graph G=(V,E), let mc(G) denote the mean cost of the minimum-mean-cost cycle in G. (The mean cost of a cycle is the sum of the edge weights on the cycle, divided by the number of edges on the cycle.)

- a. Given G, describe a linear program for computing mc(G).
- b. Prove that the value of your linear program equals the cost of the min-mean-cost cycle.
- c. Describe the dual.

- First person (or group of people working together) to e-mail me a correct solution to the challenge problem wins a copy of "Feynman lectures on computation" (by Feynman) or "Neuromancer" by William Gibson.
- Hint (feel free to disregard): first try for an LP that has a feasible solution only if the graph has a zero-cost cycle. (The graph may have negative edge weights.)