Consultar ensayos de calidad


Approximation schemes for densi instances of np-hard problems - Applicable Optimization Problems



Polynomial Time Approximation Schemes for Dense Instances of N P-Hard Problems


Abstract We present a unified framework for designing polynomial time approximation schemes (PTASs) for dense instances of many N P-hard optimization problems, including maximum cut, graph bisection, graph separation, minimum k-way cut with and without specified terminals, and maximum 3-satisfiability. By dense graphs we mean graphs with minimum degree Ω(n), although our algorithms solve most of these problems so long as the average degree is Ω(n). Denseness for non-graph problems is defined similarly. The unified framework begins with the idea of exhaustive sampling: picking a small random set of vertices, guessing where they go on the optimum solution, and then using their placement to determine the placement of everything else. The approach then develops into a PTAS for approximating certain smooth integer programs where the objective function and the constraints are dense polynomials of constant degree.



1

Introduction

Approximation algorithms, whenever they can be found, are a way to deal with the N Phardness of optimization problems. Ideally, they should run in polynomial time and have a small approximation ratio, which is the worst-case ratio of the value of the solution returned by the algorithm to the value of theoptimum solution. (This definition is for minimization problems; for maximization problems the ratio is inverted so that it is always at least 1.) Optimization problems seem to be approximable to different degrees (see [Shm94] for a survey). We know that unless P = N P, problems such as CLIQUE [FGL+ 91, AS92, ALM+ 92] and CHROMATIC NUMBER [LY93] cannot be approximated even to within a factor of nδ in polynomial time, for some fixed δ > 0. (More recently, H˚ astad [H96] showed that if SAT does not have randomized polynomial-time algorithms, then CLIQUE cannot be approximated to within a factor n1−δ , for every δ > 0.) Others problems, such as those related to graph separators [LR88], have algorithms with approximation ratios close to O(log n). No inapproximability results are known for them. MAX-SN P problems, such as MAX-CUT or MAX-3-SAT, can be approximated to within some fixed constant factor but no better [PY91, ALM+ 92]. Only a few problems, such as KNAPSACK [S75] and BIN PACKING [FL81], are known to have polynomial time approximation schemes (PTASs). A PTAS is an algorithm that, for every fixed ǫ > 0, achieves an approximation ratio of 1 + ǫ in time that is polynomial in the input size (but could grow very fast with 1/ǫ, such as O(n1/ǫ )). A PTAS thus allows us to trade off approximation accuracy for running time. (In the previous definition, if the runningtime is polynomial in 1/ǫ as well, then we
Princeton University. Supported by an NSF CAREER Award NSF CCR-9502747 and an Alfred Sloan Fellowship. email: arora@cs.princeton.edu. URL: https://www.cs.princeton.edu/~arora MIT Laboratory for Computer Science. Work done at AT&T Bell Laboratories. email: karger@lcs.mit.edu URL: https://theory.lcs.mit.edu/~karger University of Bonn. Supported in part by the International Computer Science Institute, Berkeley, California, by the DFG Grant KA 673/4-1, ESPRIT BR Grants 7097, 21726, and EC-US 030, and by the Max-Planck Research Prize. Email: marek@cs.bonn.edu , URL: https://theory.cs.uni-bonn.de/~marek.

1


have a fully polynomial time approximation scheme. These are known to exist for a few problems [GJ79, DFK91, KLM89].) Unfortunately, recent results ([ALM+ 92]) show that if P = N P, then PTASs do not exist for many N P-hard problems. In particular, this is is true for every MAX-SN P-hard problem. (The class of MAX-SN P-hard problems includes VERTEX COVER, MAX-3SAT, MAX-CUT, METRIC TSP, MULTIWAY CUTS, and many others [PY91].) Note that the inapproximability results mentioned above, like all N P-hardness results, rule out approximation only on worst case instances of the problem. They do not rule out the existence of algorithms (heuristics) that do well on most instances. This observation is the starting pointof our research. This paper gives PTASs for a large class of N P-hard problems when the problem instance is dense. The definition of denseness depends on the problem; for example, dense graphs are graphs with Ω(n2 ) edges while dense 3-SAT formulas are those with Ω(n3 ) clauses. Note that almost all graphs (asymptotically speaking) are dense, as are almost all 3-SAT instances. The design of many (but not all) of our PTASs relies on the observation that many optimization problems can be phrased as nonlinear integer programs in which the objective function is a low degree polynomial. For dense problems, the optimum value of the objective function is quite large. Thus, to achieve a multiplicative approximation for dense instances it suffices to achieve an additive approximation for the nonlinear integer programming problem. We design such an additive approximation algorithm (see Sections 1.2 and 1.3). In the remainder of this introduction, we describe the problems we solve and sketch our solution techniques.

1.1

Applicable Optimization Problems

We now describe the problems to which we apply our techniques. The reader will note that the problems span a broad spectrum. Some, like maximum cut and maximum ksatisfiability, are MAX-SN P-complete. Thus they do not have PTASs on general (that is, non-dense) instances [ALM+ 92], but they can all be approximatedwithin some constant factor in polynomial time [PY91]. Others, like graph bisection and separation, do not currently have any algorithms with approximation ratios better than O(log n) on general instances. It is an open problem whether they are hard to approximate. MAX-CUT: Partition the vertices of an undirected graph into two groups so as to maximize the number of edges with exactly one endpoint in each group. An algorithm in [GW94] achieves an approximation ratio of 1.13 for the problem. MAX-DICUT: The directed version of the MAX-CUT problem. An algorithm in [FG95] (improving [GW94]) achieves an approximation ratio of 1.15. MAX-HYPERCUT(d): A generalization of MAX-CUT to hypergraphs of dimension d; an edge is considered cut if it has at least one endpoint on each side. SEPARATOR: Partition the vertices of a graph into two groups, each with at least 1/3 of the vertices, so as to minimize the number of edges with exactly one endpoint in each group. An algorithm in [LR88] achieves approximation ratio O(log n) (though it may produce a 1/4 : 3/4 separator instead of a 1/3 : 2/3 separator). BISECTION: Partition the vertices of an undirected graph into two equal halves so as to minimize the number of edges with exactly one endpoint in each half. Some algorithms, for example using eigenvalues [B87] or simulated annealing [JS93] do well on certain random graphs(see also [BCLS84]). For worst-case inputs, no true approximation algorithms are known. Some known bisection approximators (based upon techniques

2


of [LR88]) yield separators whose capacity is within a factor O(log n) of the capacity of the optimum bisection. Our algorithm gives an exact bisection. MAX-k-SAT: Given a conjunctive normal form formula with k variables per clause, find a true-false assignment to the variables making the maximum possible number of clauses true. An algorithm in [Yan92] achieves an approximation ratio of 1.33 for the problem. Improved algorithms have since been given for MAX-3-SAT; an approximation ratio of 8/7 + ǫ is achieved in [KZ97]. It also known that achieving an approximation ratio of 8/7 − ǫ is N P-hard [H97]. MIN-k-CUT: Given an n-vertex graph, remove a minimum set of edges that partitions the graph into k connected components. Saran and Vazirani [SV91] gave a (2 − 2/k)approximation algorithm. The variant k-terminal cut problem specifies k vertices that must all be disconnected from each other by the removal of the edges. Dalhaus et al. [DJP+ 94] give an algorithm that achieves an approximation ratio of (2 − 2/k). DENSE-k-SUBGRAPH: Given a graph, find a subset of k vertices that induces a graph with the most edges. This problem was studied in [KP93], where an approximation algorithm with ratio n7/18 was presented.3-COLORING: Color the vertices of a graph with 3 colors such that no two adjacent vertices have the same color. Application of our techniques to this problem yields a result already shown in [Edw86]. MAX-SN P: The class of constant factor approximable problems defined in [PY91]. We now define a natural notion of dense instance for each problem. (The definition of dense instances for the class MAX-SN P appears in Section 4.4, where we also describe a PTAS for them.) Exact optimization on dense instances is N P-hard for all problems except MIN-k-CUT and 3-COLORING (see Section 7). Definition 1.1. A graph is δ-dense if it has δn2 /2 edges. It is everywhere-δ-dense if the minimum degree is δn. We abbreviate Ω(1)-dense as dense and everywhere-Ω(1)-dense as everywhere-dense. Thus everywhere-dense implies dense, but not vice versa. Similarly, a k-SAT formula is dense if it has Ω(nk ) clauses, and a dimension-d hypergraph if it has Ω(nd ) edges. Theorem 1.2. There are PTASs for everywhere-dense instances of BISECTION and SEPARATOR. Theorem 1.3. There are PTASs for dense instances of the following problems: MAX-CUT, MAX-DICUT, MAX-k-SAT for any constant k, DENSE-k-SUBGRAPH for k = Ω(n), MAX-HYPERCUT(d) for constant d, and any MAX-SN Pproblem. Theorem 1.4. Exact algorithms exist on everywhere-dense graphs for MIN-k-CUT when k = o(n) and for 3-COLORING. Remark. The3-COLORING result is not newsee [Edw86]but does follow from a direct application of our general technique

1.2

Our Methods

Our heuristics are based upon two main ideas: exhaustive sampling and its use in approximation of polynomial integer programs. We discuss these ideas in the context of the maximum cut problem (MAX-CUT), one of the problems to which our techniques apply. The goal in MAX-CUT is to partition the vertices of a given graph into two groups called the left and right sidesso as to maximize the number of edges with an endpoint 3


on each side. Notice that in the optimum solution, every vertex has the majority of its neighbors on the opposite side of the partition (else, it would improve the cut to move the vertex to the other side). Thus, if we knew where the neighbors of each vertex lay, we would know where to put each vertex. This argument may seem circular, but the circularity can be broken (in dense graphs) by the following exhaustive sampling approach. Suppose we take a sample of O(log n) vertices. By exhaustively trying all possible (i.e., 2O(log n) ) placements of the vertices in the sample, we will eventually guess where each vertex of the sample belongs in the optimum cut. Since there are 2O(log n) = nO(1) possibilities, we can afford to try every one of them in polynomial time. So assume we have partitioned the sampledvertices correctly according to the optimal cut. Now consider some unsampled vertex. If a majority of its neighbors belong on the right side of the optimum cut, then we expect that a majority of its sampled neighbors will be from the right side of the optimum cut. This suggests the following scheme: put each unsampled vertex on the side opposite the majority of its sampled neighbors. This scheme works well for vertices whose opposite-side neighbors significantly outnumber their same-side neighbors. More problematic are vertices for which the neighbors split evenly between the two sides; sampling will not typically give us confidence about the majority side. This brings us to the second major idea of our paper: approximately solving nonlinear integer programs. Define a variable xi for vertex i which is 1 if the vertex is on the right side of a cut and 0 otherwise. Then finding a maximum cut corresponds to finding a 0-1 assignment that maximizes the following function (where E is the edge set of the graph):  
i

To see this, note that the formula counts, for every vertex i on the right side of the cut, the number of edges leading from it to neighbors j on the left side of the cut. Of course, solving even linear integer programs is N P-complete, and the above program involves a quadratic objective function. However, we show that exhaustive sampling can be used toapproximately maximize such functions, and more generally, to approximately solve integer programs in which the constraints and objective involve low-degree polynomials instead of linear functions. We state our main approximation result in the next section. Most of our approximation algorithms are more properly viewed as algorithms that compute an additive approximation (see Section 1.3). For example, our algorithm for MAX-CUT computes, for every graph, a cut of capacity at least OP T − ǫn2 , where ǫ is any desired constant. Such an approximation is also within a small multiplicative factor of the optimum in a dense graph (i.e., one with Ω(n2 ) edges) because OP T = Ω(n2 ) for such graphs (this follows from our earlier observation that in an optimum cut, every vertex is on the opposite side from a majority of its neighbors). However, our algorithms for BISECTION and SEPARATOR are not additive approximation algorithms.

xi 

(i,j)
E

(1 − xj ) .

1.3

Smooth Integer Programs

Many existing approximation algorithms for N P-hard problems are based on representation of the problem as a linear integer program (LIP). All problems in N P have such formulations since solving LIPs is N P-complete. Many problems have natural formuations as LIPs that give insight into their structure and lead to approximation algorithms. But formulation as a LIP masks thetrue nature of many other problemsin particular, an approximately optimum solution to the LIP may correspond to a far from optimum solution to the original optimization problem. A more natural formulation involves nonlinear integer program in which the objective function is a low degree polynomial. Most of our PTASs for dense problems are derived from such a representation. We solve a general class of optimization problems in which the objective function and the constraints are polynomials. 4


Definition 1.5. A polynomial integer program (or PIP) is of the form maximize p0 (x1 , . . . , xn ) subject to li ≤ pi (x) ≤ ui xi
(1) (2) (3)

(i = 1, . . . , m)
i ≤ n

where p0 , . . . , pm are polynomials. (The PIP could involve minimization instead of maximization.) When all pi have degree at most d, we call this program a degree d PIP. Since they subsume integer programs, it is clear that solving PIPs is N P-hard. One might hope to define a more tractable class by eliminating the integrality requirement, but this accomplishes nothing since the 01 integrality of xi can be enforced by the quadratic constraint xi (xi − 1) = 0. We now describe a class of PIPs that are easy to approximate. Definition 1.6. An n-variate, degree-d polynomial has smoothness c if the absolute value of each coefficient of each degree i monomial (term) is at most c nd−i .Remark. The reader should think of c and d as being fixed constants, and n as being allowed to grow. We call the resulting family of polynomials a family of c-smooth degree d polynomials. Definition 1.7. A c-smooth degree-d PIP is a PIP in which the objective function and constraints are c-smooth polynomials with degree at most d. Smooth integer programs can represent many combinatorial problems in a natural way. We illustrate this using MAX-CUT as an example. Example 1.8. A degree-2 polynomial with smoothness c has the form aij xi xj + bi xi + d

where each |aij | ≤ c, |bi | ≤ cn, |d| ≤ cn2 . We show how to formulate MAX-CUT on the graph G = (V, E) using a 2-smooth integer program. Define a variable xi for each vertex vi . Then, assign 0, 1 values to the xi (in other words, find a cut) so as to maximize (xi (1 − xj ) + xj (1 − xi )).

E

(Notice that an edge contributes 1 to the sum when xi = xj and 0 otherwise. Thus the sum is equal to the cut value.) Expanding the sum shows that the coefficients of the quadratic terms are 0 and −2 while the coefficients of the linear terms are at most n. Now we can state our general theorem about approximation of smooth integer programs. Definition 1.9. A solution a is said to satisfy a constraint li ≤ pi (x) ≤ ui to within an additive error δ if li − δ ≤ pi (a) ≤ ui + δ. Theorem 1.10. There is a randomizedpolynomial-time algorithm that approximately solves smooth PIPs, in the following sense. Given a feasible c-smooth degree d PIP with n variables, objective function p0 and K constraints, the algorithm finds a 0/1 solution z satisfying p0 (z1 , . . . , zn ) ≥ OP T − ǫnd ,

5


where OPT is the optimum of the PIP. This solution z also satisfies each degree d′ constraint ′ to within an additive factor of ǫnd for d′ > 1, and satisfies each linear constraint to within √ an additive error of O(ǫ n log n). The running time of the algorithm is O((dKnd )t ), where t = 4c2 e2 d2 /ǫ2 = O(1/ǫ2 ). The algorithm can be derandomized (i.e., made deterministic), while increasing the running time by only a polynomial factor. Remark. The statement of the theorem can be stronger: the input PIP does not need to be feasible, but only approximately feasible (that is, there must be a point that satisfies each ′ degree d′ constraint to within an additive error ǫ′ nd for some ǫ′ < ǫ/2.) Theorem 1.10 underlies almost all of our PTASs. However, our PTASs for BISECTION and MIN-k-CUT require some additional ideas since an additive approximation is not good enough.

1.4

Related Work

There are known examples of problems that are seemingly easier to approximate in dense graphs than in general graphs. For instance, in graphs with degree exceeding n/2, one can find Hamiltonian cycles [P`and approximate the number of perfect matchings [JS89]. In 76] everywhere-dense graphs it is easy to approximate the values of the Tutte polynomial and, as a special case, to estimate the reliability of a network [AFW94]. Independent of our work, Fernandez de la Vega [FdlV94] developed a PTAS for everywheredense MAX-CUT using exhaustive sampling principles similar to ours. After sampling and guessing, Fernandez de la Vega replaces our linear-programming solution with a greedy placement procedure. While this procedure is significantly simpler than ours (at least conceptually; the running time is still dominated by the exhaustive sampling procedure and is similar to ours), it is not obvious (and is an interesting open question) whether the procedure can generalize to the other problems we have listed. Edwards [Edw86] shows how to 3-color a 3-colorable everywhere-dense graph in polynomial time. Our sampling approach gives an alternative algorithm. A random-sampling based approach related to ours also appears in [KP92]. In the last section of the paper (Section 8) we describe some results related to our work that have been discovered since the conference presentation of the current paper.

1.5

Paper Organization

In Section 2 we give details of the main ideas of our approach, exhaustive sampling and transforming polynomial constraints into linearconstraints, already sketched in Sections 1.2 and 1.3. We continue to use MAX-CUT as a motivating example. In Section 3 we generalize these techniques to derive our (additive error) approximation algorithm for any smooth polynomial integer program (PIP). In Section 4, we use these PIPs to approximate most of the problems listed in Section 1.1. Solving BISECTION and SEPARATOR requires some additional exhaustive sampling ideas that are explained in Section 5. In Section 6, we describe some problems that can be solved purely by exhaustive sampling, with no recourse to PIPs. Finally, in Section 7, we confirm that all of the problems we are approximating are still N P-complete when restricted to dense instances, demonstrating that an exact solution is unlikely.

2

Our Techniques: An overview

In this section we introduce our two major techniques, exhaustive sampling and reducing degree d constraints to linear constraints (in an approximate sense) to give a PTAS for dense MAX-CUT. 6


First we express MAX-CUT as a quadratic integer program as follows. Let the 0/1 vector x be the characteristic vector of a cut, i.e., xi = 1 iff i is on the right side. Let N (i) be the set of neighbors of vertex i, and let ri (x) =
j
N (i)

(1 − xj )

be the linear function denoting the number of number of neighbors of i that are on the left side of cut x. Then MAX-CUT = max i xi ri (x) s.t. xi
i

The above formulation looks a lot like an integer linear program, for which numerous approximation techniques are known. Unfortunately, the coefficients ri (x) in the objective function are not constantsthe program is actually a quadratic program. However, exhaustive sampling lets us estimate the value these coefficients have in the optimum solution. We arrive at our approximation in three steps: 1. Using exhaustive sampling, we estimate the values of ri (a) at the optimum solution a = (a1 , . . . , an ). See Section 2.1. 2. We replace each function ri by the corresponding estimate of ri (a). This turns the quadratic program into a linear (integer) program. We show that optimum of this linear integer program is near-optimum for the quadratic program. See Section 2.2. 3. We solve the fractional relaxation of the linear integer program, and use randomized rounding to convert the solution into an integer one. We show that this does not dramatically change the solution value. See Section 2.3. A comment on notation: Throughout the paper, we will use a b where a and b are real numbers, as a shorthand for the interval [a − b, a + b].

2.1

Estimating Coefficients

We begin by using exhaustive sampling to estimate the values ri (a) at the optimum solution a. Let a be the optimum cut and let ρi = ri (a). Then a is the solutionto the following integer linear program: MAX-CUT = max i xi ρi s.t. xi
i i ri (x) = ρi

Of course, the usefulness of this observation is unclear, since we dont know the values ρi . We show, however, that it is possible to compute an additive error estimate of the ρi in polynomial time, in other words, a set of numbers ei such that ρi − ǫn ≤ ei ≤ ρi + ǫn
i. (4)

This can be done using our exhaustive sampling approach. We take a random sample of O(log n) vertices. By exhaustively trying all possible (i.e., 2O(log n) = nO(1) ) placements of the vertices in the sample, we will eventually guess a placement wherein each vertex is placed as it would be in the optimum cut. So we can assume that we have guessed the values aj in the optimum cut for all the sampled vertices j. Now consider any unsampled vertex i. If it has |N (i)| = Ω(n) neighbors, then with high probability, Θ(log n) of its neighbors are part 7


of the random sample (high probability means probability 1 − n−Ω(1) ). A moments thought shows that these neighbors form a uniform random sample from N (i). Hence by examining the fraction of sampled neighbors on the left hand side of the cut (namely, neighbors for which aj = 0) we can obtain an estimate of ri (a)/ |N (i)| that is correct to within a small additive factor. This follows from the following sampling lemma. Lemma 2.1(Sampling Lemma). Let (ai ) be a sequence of n numbers, each with absolute value at most M . Let f > 0 be any number. If we choose a multiset of s = g log n of the ai at random (with replacement), then their sum q satisfies qn
s with probability at least 1 − n−f . Proof. Let s = g log n. For j = 1, . . . , s let Xj be the random variable denoting the number picked in the j th draw. Since the numbers are drawn with replacement, the values Xj are identically distributed, and n 1 aj . E[Xj ] = n j=1 Since |Xj | ≤ M by hypothesis, the lemma now follows from the standard Hffding bound o [H64]. For MAX-CUT, our goal is to estimate the values ρi of the form j N (i) (1 − aj ). First, if any |N (i)| ≤ ǫn/10, we use the estimate 0 for ρi . To estimate ρi for the remaining i, we randomly choose (with replacement) g log n indices with g = O(1/ǫ3 ), and guess their values by exhaustively trying all possibilities. Since each aj = 0 or 1, we can take M = 1 in the Sampling Lemma. The Sampling Lemma shows that for each i, the probability is at least 1 − 1/n2 that the following happen (i) Ω(log n/ǫ2 ) of the sampled vertices lie in N (i) (note that the conditional distribution of these vertices is uniform) and (ii) the estimate for ρi produced using this sample is accurate to within ǫn. ai nM f g

i

2.2

Linearizing the Quadratic Integer Program

Now we use thecoefficient estimates to define an integer linear program whose solutions are near-optima for MAX-CUT. Given the estimates ei just derived for the values ρi , we write the following linear integer program. Note that it is feasible, since a satisfies it (assuming our sampling step in the previous section worked). NEW-OPT = max i xi ei s.t. xi
i ei − ǫn ≤ ri (x) ≤ ei − ǫn

i

(5)

(Recall that each ri (x) is a linear function of x, so the given constraints are linear constraints.) We claim that the optimum solution z to this integer linear program is near-optimum for MAX-CUT. This can be seen as follows:

8


zi ri (z) ≥ ≥ ≥ ≥ ≥

zi (ei − ǫn) zi ei − ǫn2 ai ei − ǫn2 ai (ρi − ǫn) − ǫn2 ai ρi − 2ǫn2

By the constraints (5)

Since z is integer optimum from (4)

= MAX-CUT − 2ǫn2 In other words, the optimum of the integer program is a near-optimum solution to MAXCUT.

2.3

Approximating the Linear Integer Program

Of course, we cannot exactly solve the integer linear program just derived. But we can compute an approximate solution to it as follows. We relax the integrality constraints, allowing 0 ≤ xi ≤ 1. We use linear programming to obtain the fractional optimum, say y
[0, 1]n , and then use randomized rounding to convert the fractional solution to an integral one of roughly the same value. The key lemma is the following: Lemma 2.2(Randomized Rounding). If c and f are positive integers and 0 < ǫ < 1, then the following is true for any integers n ≥ 0. Let y = (yi ) be a vector of n variables, 0 ≤ yi ≤ 1, that satisfies a certain linear constraint aT y = b, where each |ai | ≤ c. Construct a vector z = (zi ) randomly by setting zi = 1 with probability yi and 0 with probability 1 − yi . Then with probability at least 1 − n−f , we have aT z b c f n ln n We can apply this lemma to our problem as follows. Give our fractional solution y, let us apply randomized rounding as in the lemma to yield an integral solution z. We claim that with high probability, √ (6) ri (z) ri (y) O( n ln n) zi ri (y) yi ri (y) O(n3/2 ln n) (7) Specifically, to derive Equations (6) and (7) from Lemma 2.2, note that each ri (x) is a linear function with 01 coefficients and that each ri (y) is at most n. We use these equations as follows. The analysis of the previous section showed that the integral optimum of our derived linear program was near the maximum cut value, so the fractional optimum y can only be better. That is, yi ri (y) ≥ MAX-CUT − 2ǫn2 . We now use our randomized rounding lemma. We have that √ zi ri (z) ≥ zi (ri (y) − O( n ln n)) ≥ ≥ zi ri (y) − O(n3/2 ln n) yi ri (y) − O(n3/2 ln n) From (7)
2

From (6)

≥ MAX-CUT − (2ǫ + o(1))n

This finishes the overview of our algorithm for MAX-CUT. 9
3

Approximating Smooth Integer Programs

We now generalize the results of the previous section to handle arbitrary polynomial integer programs (PIPs). We describe an algorithm that computes approximate solutions to smooth PIPs of low degree, thus proving Theorem 1.10. We use the fact that smooth PIPs can be recursively decomposed into smooth lower-degree PIPs. This lets us apply ideas similar to those described in Section 2 for MAX-CUT. In a PIP the objective function and constraints are low degree polynomials (degree 2 in the case of MAX-CUT). We use exhaustive sampling to convert such polynomial integer programs into linear integer programs. Then we use the Raghavan-Thompson technique to approximately solve the linear integer program. We will see shortly that we can assume without loss of generality that we are dealing with the feasibility version of a PIPthat is, we are given a feasible PIP and out goal is to find an approximately feasible integer solution. Our general algorithm has the same three elements as the one for MAX-CUT: 1. We show in Section 3.2 that we can relax the integrality conditions, since we can use randomized rounding to convert every feasible fractional solution of a PIP into a feasible integral solution. 2. In Section 3.3, we generalize the sampling theorem, which applies only to sums, to let us estimate the values ofpolynomials. 3. We show in Section 3.4 that we can use our estimates to convert degree d constraints into linear constraints without affecting feasibility. We begin in Section 3.1 with some basic observations.

3.1

Basic Observations

We begin with a few basic observations that we will use at various times in the proof. 3.1.1 A Polynomial Decomposition

Our PIP algorithms are basically recursive generalizations of the approach for MAX-CUT. They rely on the following key observation that lets us decompose any polynomial into simpler polynomials: Lemma 3.1. A c-smooth polynomial p of degree d can be written as p(x) = t + xi pi (x)

where t is a constant and each pi is a c-smooth polynomial of degree d − 1. Proof. From each monomial term in the expansion of p, pull out one variable xi . Group all monomials from which xi was extracted into pi . Every degree d′ term in pi corresponds to ′ ′ a degree d′ + 1 term in p, and thus has coefficient at most cnd−(d +1) = cn(d−1)−d . Thus, since pi has degree (at most) d − 1, it is a c-smooth degree d − 1 polynomial. Remark. The above analysis also shows that we can express p uniquely as a sum p(x) = t + xi pi (xi , . . . , xn ),

that is, where each pi depends only on variables with index i or greater.

10


The decomposition of a degree d polynomial into degree d − 1 polynomials gives us a natural recursionthrough which we can generalize our quadratic programming techniques. By computing an estimate ρi of the value of pi (x) at the optimum solution, we replace the degree-d constraint p with a single constraint on xi ρi together with a family of constraints on the values pi (x). We then recursively expand these degree d − 1 constraints, continuing until all of our constraints are linear. To estimate the values pi (x), we again rely on the expansion above: we expand pi in xj pij (x), recursively estimate the pij terms of degree d − 2 polynomials, writing pi (x) = values, and then use exhaustive sampling to estimate p based on the values of the pij . After constructing the required linear integer program, we solve its fractional relaxation and use randomized rounding as before to transform the solution into an integral solution. To prove that randomized rounding works, we again use the decompositionwe show that xi pi (x) is also preserved. each pi (x) is roughly preserved by rounding, and deduce that 3.1.2 Reducing Optimization to Feasibility

We can reduce PIP optimization to the corresponding feasibility problem (Is there a feasible solution such that the objective exceeds a given value?) using binary search in the usual way. This uses the fact that the optimum value of a PIP is not too large, as shown in the following lemma (which will also be useful later).Lemma 3.2. If n > d, then the absolute value of a c-smooth polynomial at any point in [0, 1]n is at most 2cend (where ln e = 1). Proof. For 0 ≤ i ≤ d the polynomial has at most n+i terms of degree i, and each has a i coefficient in [−cnd−i , cnd−i ]. Thus an upper bound on the absolute value at any point in [0, 1]n is
d i=0

cnd−i

n+i i

d



i=0

cnd−i
d

n+d i

≤ cnd

(

≤ cn e which is at most cend (1 + 2d/n) < 2cend for n > 5d.

i=0 d 1+d/n

n+d i 1 ) n i!

3.2

Rounding Fractional PIPs

We begin with the final step of our algorithm, rounding a fractional solution to an integral one. We present this section first since it is more straightforward than the following ones but conveys the same ideas. As we saw in Section 2.3, Raghavan and Thompson [RT87] show that given a fractional solution to a linear program, we can round it into an integer solution that is almost as good. We rephrased their result in Lemma 2.2. We now modify the Raghavan-Thompson technique to show in Lemma 3.3 that a similar result is true for low degree polynomials. In other words, we show that the value of a c-smooth polynomial at a point in [0, 1]n is not too different from its value at a nearby integral point obtained by randomized rounding. Lemma 3.3 (Randomized Rounding for degree d polynomials). Let p be a c-smooth degree-d polynomial. Givenfractional values (yi ) such that p(y1 , . . . , yn ) = b, suppose randomized rounding is performed on the yi as in Lemma 2.2 to yield a 0, 1 vector (zi ). Then with probability at least 1 − nd−f , we have 1√ p(z1 , . . . , zn )
b gdnd− 2 ln n , 11

√ where g = 2ce f . Proof. We use induction on the degree. The case d = 1 follows from Lemma 2.2. Now assume we have proved the Lemma for all integers less than d, and p is a degree d polynomial. As argued in Section 3.1, we can express p as
n

p(x1 , . . . , xn ) =
i=1

xi pi (x1 , . . . , xn ) + t,

(8)

where t is a constant and pi is a c-smooth polynomial of degree at most d − 1. Let ρi denote the value pi (y1 , . . . , yn ). Then b = p(y1 , . . . , yn )
n

= t+
i=1

ρi yi .

Let (z1 , . . . , zn )
n be obtained by randomized rounding on (y1 , . . . , yn ). Our proof consists of noticing that with high probability, (zi ) satisfies both b ≈ i ρi zi (by Lemma 2.2) and i ≤ n : ρi ≈ pi (z1 , . . . , zn ) (by induction for degree d − 1). Then we realize that any such (zi ) also satisfies b ≈ p(z1 , . . . , zn ). Let us formalize this idea. Note that |ρi | ≤ 2cend−1 by Lemma 3.2. So we can apply Lemma 2.2 (replacing c by 2cend−1 ). We find that with probability at least 1−n−f (recalling that the notation a b is shorthand for the interval [a − b, a + b]),
n i=1

√ ρi zi
b gnd−1 n ln n.

(9)

Furthermore, the inductive hypothesis implies that for each i ≤ n, the probability is at least 1 − nd−f −1 that 1√ (10) pi (zi , . . . , zn )
ρi g(d − 1)nd−1− 2 ln n Hence we conclude that with probability at least 1 − nd−f − n−f ≈ 1 − nd−f , the event mentioned in Condition (10) happens for each i ≤ n, and so does the event mentioned in Condition (9). Of course, when all these events happen, we have:
n

p(z1 , . . . , zn ) = t +
i=1

zi pi (z1 , . . . , zn ) by (10)

t+

√ zi (ρi g(d − 1)nd−1−1/2 ln n) √
t+ zi ρi g(d − 1)nd−1/2 ln n √ √ = b gnd−1 n ln n g(d − 1)nd−1/2 ln n 1√ = [b gdnd− 2 ln n]
1

by (9)

Hence we have shown that p(z1 , . . . , zn )
[b gdnd− 2 1 − nd−f .



ln n] with probability at least

3.3

Estimating the Value of a Polynomial

Having shown how to round a fractional solution to an integral one, we now show how to find an approximately optimal fractional solution by solving a linear program. As discussed above, our procedure for replacing the constraint on p(x) by linear constraints requires 12


estimating the values at the optimum a of the coefficients pi (a) in the expansion p(a) = ai pi (a). In this section, we show how this estimation can be accomplished by exhaustive sampling. We describe a procedure Eval in Figure 3.3 that can approximate the value of ac-smooth degree d polynomial p(x1 , . . . , xn ) on any unknown 0/1 vector (a1 , . . . , an ), given only partial information about (a1 , . . . , an ). The algorithm is given the values ai for O(log n) randomly-chosen indices i, and outputs an estimate that, with high probability, lies in p(a1 , . . . , an ) ǫnd . To simplify our exposition later we describe the procedure more generally as using a (multi)set of indices S
. Algorithm Eval(p, S, ) polynomial p of degree at most d, set of variables indices S, ai for i S. Output: estimate for p(a1 , . . . , an ). if deg(p) = 0 (i.e., p is a constant) then return p else write p(x1 , . . . , xn ) = t + xi pi (x1 , . . . , xn ) where t is a constant and each pi has degree at most d − 1 for each i S ei ←Eval(pi , S, ) return n ai ei t+ |S|
i
S

Input:

Figure 1: The approximate evaluation algorithm Note that if S = then the procedure returns p(a1 , . . . , an ). We will show that in order to get an additive approximation of the type we are interested in, it suffices to choose S randomly and of size O(log n). We use the Sampling Lemma (2.1) as the base case in our inductive proof of the correctness of Eval. Lemma 3.4. Let p be a c-smooth polynomial of degree d in n variables xi , and let a1 , . . . , an
. Let S be a set of O(g log n) indices chosenrandomly (with replacement). Then with probability at least 1 − nd−f , set S is such that Eval(p, S, ) returns a value in p(a1 , . . . , an ) ǫnd , where ǫ = 4ce f . g

Proof. The proof is by induction on d. The case d = 0 is clear. For the inductive step let ρi = pi (ai , . . . , an ), so we have
n

p(a1 , . . . , an ) = t +
i=1

ai ρi

(11)

The intuition for why Evals output should approximate p(a1 , . . . , an ) is as follows. Each pi has degree at most d−1, so the inductive hypothesis implies that ei ≈ ρi . Thus the output

13


of eval is t+ n |S| ai ei ≈ t + ≈t+ n |S|
i

i
S

i
S

ai ρi

(by the inductive hypothesis) (by the Sampling Lemma)

ai ρi

It remains to fill in the details, and to deal with the complication that the errors in our recursive estimates of the ρi accumulate into the error for our estimate of p(a1 , . . . , an ). Our sample has size g log n. By Lemma 3.2, each |ρi | ≤ 2cend−1 . Hence the Sampling Lemma implies that with probability 1 − n−f the set S is such that n |S| ai ρi
ai ρi 2ce f g nd (12)

i
S

i

Of course, we do not have the values ρi . However, we do have the values ei =Eval(pi , S, ). To see the impact of using them instead, let ǫd denote the smallest number such that for every c-smooth degree d polynomial p and point a
n Pr[Evalcomputes an estimate within p(a) ǫd nd ] ≥ 1 − nd−f We get an recurrence for ǫd as follows. By definition, Eval estimates any particular ρi to within ǫd−1 nd−1 with probability 1 − n(d−1)−f . Thus all n values ρi are estimated to within this bound with probability 1 − n n(d−1)−f = 1 − nd−f . Combining with (12), we conclude that with probability at least 1 − nd−f − n−f ≈ 1 − nd−f , set S is such that the returned value n n ai ei t + ai ρi ǫd−1 nd−1 t+ |S| |S|
i
S i S

t+ t+ t+

n |S|

i
S

ai ρi

ǫd−1 nd−1 f d n g

n |S| ǫd−1 d n |S| nd nd . by (12)

i

ai ρi 2ce 2ce

i

ai ρi

ǫd−1 f + g |S| f ǫd−1 + g |S|

= p(a1 , . . . , an ) It follows that ǫd ≤ 2ce ≤ 2ce ≤ 4ce for |S| > 1. f ǫd−1 + g |S|

2ce

f (1 + |S|−1 + + |S|−d ) g f g

14


Corollary 3.5. With probability 1−nd−f over the choice of S, the Eval procedure accurately estimates the values of all the polynomials arising from the decomposition of polynomial p ′ (that is, estimates every degree-d′ polynomial to within ǫd′ nd ). Proof. This is implicit in the previous proof. Note that the decomposition of p is determined solely by p, independent of the value of the optimum solution a that we are estimating.

3.4

Transforming Degree d Constraints to Linear Constraints

Using the estimates produced by Procedure Eval of Section 3.3 we cantransform any polynomial constraint into a family of linear constraints, so that any feasible solution to the linear constraints will approximately satisfy the polynomial constraint as well. We use algorithm Linearize in Figure 3.4. Just like Eval, the inputs to this procedure contain partial information about some feasible solution vector (a1 , . . . , an )
n to the input constraint. Algorithm Linearize(L ≤ p(x1 , . . . , xn ) ≤ U , S, , ǫ) constraint involving polynomial p of degree d, lower bound L and upper bound U multiset of variable indices S ai for each i S. Error parameter ǫ > 0. Output: A set of linear constraints if p is linear then output the input constraint L ≤ p(x) ≤ U else write p(x1 , . . . , xn ) = t + xi pi (x1 , . . . , xn ) where t is a constant and each pi has degree at most d − 1 for i = 1 to n ei ← Eval(pi , S, ) li ← ei − ǫnd−1 ui ← ei + ǫnd−1 Linearize(li ≤ pi (x1 , . . . , xn ) ≤ ui , S, , ǫ) output the constraint L − ǫnd ≤ t + xi ei ≤ U + ǫnd Figure 2: Linearizing a Polynomial Constraint A simple induction shows that the Procedure in Figure 3.4, when given a degree d constraint, outputs a set of at most 1 + n + + nd−1 = O(nd−1 ) linear constraints. The next two lemmas prove the correctness of this (probabilistic) reduction. The first shows that with highprobability, the replacement equations are jointly feasible. The second shows any feasible solution will be almost feasible for the original constraint. Lemma 3.6. Let f, g, c > 0 be any constants. Let Linearize be given an error parameter ǫ = 4ce f /g and a constraint involving a c-smooth polynomial of degree d. Let (a1 , . . . , an ) n be a feasible solution to the constraint. If S is a random sample of g log n variables (picked with replacement), then with probability at least 1 − dnd−f Procedure Linearize outputs a set of linear constraints that are satisfied by (a1 , . . . , an ). Proof. Calling linearize with polynomial p results in numerous recursive call, each of which (besides making other recursive calls) outputs a constraint on some degree d′ polynomial 15 Input:


p′ . The boundaries li and ui for this constraint are determined by a call to Eval involving polynomial p′ . Vector a satisfies this constraint so long as li and ui satisfy li ≤ p(a) ≤ u, ′ and this happens so long as ei
p′ (a) ǫnd . So Linearize does the right thing so long as every polynomial p′ arising in the recursions is estimated accurately. But these polynomials are just the polynomials arising in the recursive decomposition of the original polynomial p, and are all encountered during a call to Eval(p). Corollary 3.5 says that all of these polynomials are estimated towithin the desired bounds with probability 1 − nd−f . Now we show that in the linear system output by Linearize, every feasible solution is an approximate solution to the input constraint (note that this statement involves no probabilities). The next lemma uses [x, y] a, where x < y and a ≥ 0, as a shorthand for the interval [x − a, y + a]. Lemma 3.7. Every feasible solution (yi ) [0, 1]n to the set of linear constraints output by Linearize satisfies the following (irrespective of what the set S is) p(y) [L, U ] 2dǫnd Proof. By induction on d. The case d = 1 is clear, so consider the inductive step. Since by assumption y is feasible for the entire set of output constraints, it is feasible for the constraints output by each recursive call involving a polynomial pi . It follows by the inductive hypothesis that for each i, pi (yi , . . . , yn ) [li , ui ] 2(d − 1)ǫnd−1 . Substituting the values of li and ui we get pi (y) ei (2d − 1)ǫnd−1 Therefore, p(y) = t+ t+ yi pi (yi , . . . , yn ) yi (ei (2d − 1)ǫnd−1 ) yi ei (2d − 1)ǫnd (13)

t+

[L, U ] ǫnd (2d − 1)ǫnd [L, U ] 2dǫnd

where Equation (13) follows from the fact that y is feasible for the constraint that was output before recursion, namely t+ Thus the inductive step is complete. xi ei
[L, U ] ǫnd .

3.5

Proof of the main theorem

The proof of Theorem 1.10 nowfollows easily. We have a feasible degree d PIP with K constraints, where K = poly(n). Suppose (a1 , . . . , an ) is some (unknown) feasible 0/1 solution and ǫ > 0 is some tolerance parameter. We describe a probabilistic procedure that produces a 0/1 solution z that is approximately feasible. That is, if L ≤ p(x) ≤ U was a degree d′ constraint in the input, then with high probability z satisfies it within an additive

16


error ǫnd , that is, L − ǫnd ≤ p(z) ≤ U + ǫnd . (We indicate below how to derandomize the procedure.) Let f > 0 be such that nf ≈ 2dKnd . We let ǫ′ = ǫ/2d, and g = 16c2 e2 f d2 /ǫ2 = O(/ǫ2 ). We pick a random multiset S of O(g log n) variables and guess (by exhaustive enumeration in 2g log n time) the values of ai for each i
S. Then we use Procedure Linearize with ′ error parameter ǫ′ to replace each degree d′ constraint with O(nd −1 ) linear constraints, thus obtaining a linear system with O(Knd−1 ) constraints. Since (a1 , . . . , an ) is a feasible solution to the PIP, Lemma 3.6 implies that the probability that the new system is feasible is at least 1−dnd−f K > 1/2 . We solve the linear system using a polynomial-time algorithm for linear programming in O((Knd−1 )3 ) time [K84]. Lemma 3.7 implies that the (fractional) solution thus obtained is also a feasible solution for the original PIP, except for an additive error 2dǫ′ nd .Then we randomly round this fractional solution to a 0/1 solution; Lemma 3.3 implies that this increases the additive error by at most O(nd−1/2 ln n) = o(nd ). Hence we have described a probabilistic procedure that, with probability at least 1/2, produces a 0/1 solution that is feasible for the PIP except for an additive error of 2ǫ′ dnd = ǫnd . The procedure explores 2g log n exhaustive sampling possibilities and for each spends at most O((Knd )3 ) time in generating the linear constraints and solving them for each guess. The randomized rounding can be done in nearly linear time. Noting that 2g log n = ng = (nf )4c
2 2 2







e d /ǫ2

≈ (2Knd )4c

2 2 2

e d /ǫ2

,

we conclude that this term dominates the running time.

3.6

Derandomization

Derandomizing the algorithm in Theorem 1.10 involves derandomizing its components, Procedures Eval and Linearize. Those depend upon two randomized procedures: Randomized Rounding (used in Lemma 3.3) and the Sampling Lemma. Raghavan [Rag88] derandomized the former through the method of conditional probabilities. Derandomizations of the Sampling Lemma appear in [BR94] and [BGG93]. For example, instead of picking s = O(log n/ǫ2 ) variables independently, it suffices to pick the variables whose indices are encountered on a random walk of length O(log n/ǫ2 ) on a constant degree expander [Gil93].For any fixed sampling experiment, the probably that such a walk works is 1/nO(1) . Hence our algorithm can deterministically go through all such walks (the number of such walks 2 is nO(1/ǫ ) since the expander has O(1) degree). One of the walks is guaranteed to work correctly for all of the poly(n) sampling experiments that our algorithms is interested in.

4

Applications

In this section we use our theorem on approximating constant-degree smooth integer programs to construct PTASs for (dense instances of) many problems. Most applications require approximating quadratic programs. Approximating dense MAX-k-SAT requires approximating degree-k integer programs. In later sections we will obtain PTASs for graph bisection and minimum k-way cut. These will require some additional ideas, specifically, a different application of exhaustive sampling.

4.1

MAX-CUT, MAX-DICUT, MAX-HYPERCUT

Note that a δ-dense graph has at least δn2 edges. Thus the capacity k of the maximum cut exceeds δn2 /2, since this is the expected size of a cut obtained by randomly assigning each vertex to one side of the graph or the other with equal probability. We already saw in

17


Example 1.8 how to represent MAX-CUT using c-smooth quadratic integer programs with c = O(1). Using the approximation scheme for quadratic programs in Theorem 1.10, we 2 2 can in time nO(1/ǫ δ )find a cut of value at least c − ǫδn2 /2 ≥ (1 − ǫ)k, in other words a (1 − ǫ) approximation to the maximum cut. MAX-DICUT has a similar PTAS. Again, an expectation argument shows that the maximum cut in a δ-dense graph exceeds δn2 /4. The representation by a quadratic program is also similar; in the quadratic program for MAX-CUT in Example 1.8 just replace (xi (1 − xj ) + xj (1 − xi )) in the objective function by (1 − xi )xj . The PTAS for dense MAX-HYPERCUT(d) is similarly obtained by modeling the problems as a smooth degree-d PIP. For a given edge (set of vertices) S, we use the term 1 − i
S xi − i S (1 − xi ). This term is 1 if S is cut and zero otherwise.

4.2

DENSE-k-SUBGRAPH

Let k ≥ αn. If a graph is δ-dense, then a graph induced by a random subset of k vertices contains α2 δn2 /2 edges on average. Hence the densest subgraph contains at least α2 δn2 /2 edges. We can express the DENSEST-k-SUBGRAPH as the optimum of the following quadratic program. maximize subject to xi xj

E

xi
n i=1 xi = k

Clearly this PIP is 1-smooth. From Theorem 1.10 we know how to find an approximately √ √ n optimal 0, 1 vector x satisfying i=1 xi
[k g n ln n]. Now we move at most g n ln n vertices in or out to get √ subset of size k; this affects the number of edges included in the a subgraph by at most gn n ln n = o(n2 ). The reader may wonder ifour algorithm for DENSEST-SUBGRAPH has any application to the CLIQUE problem. We do not see any connection. In fact, approximating CLIQUE in dense graphs is N P-hard (this follows from the fact that approximating INDEPENDENT SET in degree-5 graphs is N P-hard [ALM+ 92]).

4.3

MAX-k-SAT

A standard arithmetization method can be used to represent MAX-k-SAT as a degree-k smooth IP. Let y1 , . . . , yn be the variables and m be the number of clauses. Introduce 01 valued variables x1 , . . . , xn . For each i, 1 ≤ i ≤ n, replace each unnegated occurrence of variable yi by 1 − xi , each negated occurrence by xi , eachlogical
by multiplication (over integers), and for each clause subtract the resulting term from 1. This changes each clause into a degree-k polynomial. To give an example, the clause y1 y2 y3 is replaced by the term 1 − (1 − x1 )x2 (1 − x3 ). Now associate, in the obvious way, 0, 1 assignments to the variables xi with truth assignments to the boolean variables yi . Clearly, an assignment of values to the xi makes the term 1 if the corresponding assignment to the yi makes the clause true, and 0 otherwise. Let tj be the term obtained in this way from the jth clause. The following degree-k program represents the MAX-k-SAT instance, and is smooth. maximize subject to
j≤m tj (x1 , . . .

, xn )
i

xi


18


Now suppose thenumber of clauses is m ≥ δnk . Let OPT be the maximum number of clauses that any assignment can satisfy. Since the number of clauses of size k is m−O(nk−1 ), and a random assignment satisfies each of them with probability 1 − 2−k , we have OPT ≥ (1 − 2−k )(m − O(nk−1 )). By approximating our PIP we can in time O(n2 OPT − 2ǫk nk ≥ (1 − ǫ)OPT clauses.
4k

/ǫ2

) find an assignment that satisfies

4.4

As pointed out in [PY91], problems such as MAX-CUT, MAX-k-SAT and MAX-HYPERCUT(d) lie in a class called MAX-SN P, and actually in a subclass called MAX-SN P 0 in [Pap94]. MAX-SN P 0 was defined using model theory, and it is unclear how to define denseness for MAX-SN P 0 problems. In fact, problems such as vertex cover are in MAX-SN P only if the degree of the graph is bounded. In this section we give a plausible definition of denseness and show that under this definition, all dense MAX-SN P 0 problems have a PTAS. Let MAX-k-FUNCTION-SAT be the problem in which the input consists of m boolean functions f1 , f2 , . . . , fm in n variables, and each fi depends only upon k variables. The objective is to assign values to the variables so as to satisfy as many fi as possible. As is well-known (see [Pap94], Theorem 13.8), a MAX-SN P 0 problem can be viewed as a MAXk-FUNCTION-SAT problem for some fixed integer k. (An alternative name for MAX-kFUNCTION-SAT isconstraint satisfaction problems [KSW97].) We call an instance of a MAX-SN P 0 problem dense if the instance of MAX-k-FUNCTIONSAT produced using it has Ω(nk ) functions. It is easily checked that our earlier definitions of denseness were sub-cases of this definition. Also, not all MAX-SN P problems have a dense version under this definition; for example vertex cover is excluded. A slight modification of the k-SAT technique of Section 4.3 shows that MAX-k-FUNCTIONSAT can be represented by a smooth degree-k integer program, so it follows that dense MAX-k-FUNCTION-SAT has a PTAS.

Dense MAX-SN P

5

BISECTION and SEPARATOR

In this section we describe a PTAS for BISECTION. Small modifications described at the end give a PTAS for SEPARATOR. Consider a graph with minimum degree δn for some δ > 0 and let k denote the capacity of the minimum bisection. The PTAS consists of two different algorithms, one of which is a PTAS when k ≥ αn2 , and the other when k < αn2 , where α is a certain small constant. For k ≥ αn2 , we use our PIP approximation algorithm to achieve an additive error at most ǫαn2 , so that the capacity of the final bisection is at most (1 + ǫ)k. When k ≤ αn2 , such additive approximations do not suffice, and we give a different algorithm. The algorithm uses exhaustive sampling to identify vertices that have many neighbors on one side of the bisection, andplaces them on that side. We show that this leaves only a small number of unplaced neighbors, whose placement can be done greedily without significantly disturbing the value of our solution.

5.1

Large Bisections

The algorithm for k ≥ αn2 is essentially our algorithm for approximating smooth quadratic integer programs. We formulate graph bisection using the same quadratic program as for MAX-CUT (see Example 1.8), except we change maximize to minimize, and add the constraint xi = n/2. Applying our main theorem gives us an assignment to the xi that makes the objective function less than k + ǫn2 ≤ k(1 + ǫ/α). 19


There is one small problem: this 0, 1 assignment might not induce a bisection, since it xi = n/2. However, randomized rounding only approximately satisfies the constraint √ does guarantee there will√ n/2 ( n log n) vertices on each side of the solution. Hence be we need to move only O( n log n) vertices from one side to another in order to balance the cut. This affects the bisection value by at most O(n1.5 log n) = o(n2 ).

5.2

Small Bisections

The case k ≤ αn2 is more difficult. We need the following lemma. Lemma 5.1. In a minimum bisection, there is one side whose every degree-d vertex has at most d/2 + 1 of its neighbors on the other side. Proof. If not, then we can reduce the bisection value by picking from each side a vertex thathas more than the allowed neighbors on the other side, and switching them. Let Lopt and Ropt denote the sets of vertices on the two sides of a particular minimum bisection. Without loss of generality, we will assume that Lopt is the side referred to in Lemma 5.1. We now give a bisection algorithm in Figure 5.2. For simplicity, we describe it as a randomized algorithm, although we can easily derandomize it using the techniques mentioned earlier. Recall that δ is the denseness of the problem.

1. Pick a set S of O((log n)/δ) vertices at random. 2. For each possible partition of S into two sets (SL , SR ), construct a partition (L, R) as follows. (a) Let T be the set of vertices that have more than 5/8 of their sampled neighbors in SR . (b) Put T in R. (c) For each vertex v
T , define bias(v) as #(neighbors of v not in T ) − #(neighbors of v in T ). (d) Put the n/2 − |T | vertices with the smallest bias into R. 3. Of all bisections found in the previous step, output the one with the smallest value. Figure 3: The Bisection Algorithm Now we prove the correctness of the algorithm. Since it exhaustively tries all possible partitions of the vertices in the sample S, it also tries the correct partition, which labels each of the vertices of S according to a minimum bisection (Lopt , Ropt ) of the entire graph. From now on we call this partition (SL , SR ) of Sspecial. We will show that with high probability (over the choice of S) the special partition leads the algorithm to a near-optimum graph bisection. Let T be the set constructed by the first step of the algorithm using the special partition. The next lemma describes some useful properties of T . Call a vertex radical-right if at least 3/4 of its neighbors are in Ropt . Note (from Lemma 5.1) that every radical-right vertex must be in Ropt . Lemma 5.2. With high probability (over the choice of S), T is a subset of Ropt and contains every radical right vertex. 20


Proof. Let v be any vertex. Since its degree exceeds δn, the Sampling Lemma implies that with high probability a random sample of size O((log n)/δ) contains Θ(log n) neighbors of v. Conditioning on the number of neighbors in the sample, these neighbors form an unbiased sample of that many neighbors of v. Suppose v
Lopt , and so has fewer than 1/2 of its neighbors in Ropt . Then an application of the Sampling Lemma shows that in a random sample of Θ(log n) neighbors of v, the probability that more than 5/8 of them are in Ropt is n−Ω(1) . Hence the probability that v T is n−Ω(1) . Now suppose v Ropt has more than 3/4 of its neighbors in Ropt . An application of the Sampling Lemma shows that in a random sample of O(log n) neighbors of v, the probability that less than 5/8 of them are in Ropt isn−Ω(1) . Hence the probability that v T is 1 − n−Ω(1) . The next lemma says that with high probability, T has size close to n/2 and thus contains almost all of Ropt . Lemma 5.3. If T satisfies the two conditions in Lemma 5.2 then |T | ≥
n 2



4k δn .

Proof. Every vertex in Ropt −T must have 1/4 of its neighbors in Lopt . Let s = |Ropt − T | = n/2 − |T |. Then the value of the minimum bisection is at least sδn/4, which by assumption is at most k. Hence s ≤ 4k/(δn). We can now show that with high probability the algorithm produces a bisection close to optimum. Theorem 5.4. Assuming k < αn2 , with high probability (over the choice of S) the bisection produced by the special partition has value at most k(1 + ǫ), where ǫ = 16α2 /δ 2 . Proof. We measure the cost of extending T to a particular set of half the vertices. For any set U
T , let din (U ) be twice the number of edges with both endpoints in U , and let dout (T ) be the number of edges with exactly one endpoint in T . Further, let bias(U ) be the sum of the biases of vertices in U . We claim that the capacity of the bisection whose one side is T U is dout (T ) + bias(U ) − din (U ). (14)

To see this, note that the expression starts by counting all edges leaving T . The bias term then subtracts the edges crossing from U to T while adding the edges crossing from U to the other side of thecut. The bias term also incorrectly adds (twice, once for each endpoint) the number of edges with both endpoints in U , which do not cross the cut; however, this quantity is subtracted by the din (U ) term, resulting in the correct quantity. With high probability, the set T produced in the first phase satisfies the conditions in Lemma 5.2. Hence T
Ropt , and s = n/2 − |T | ≤ 4k/(δn). Let Uopt = Ropt − T be the optimum set of s vertices extending T to Ropt and let Uactual be the set of s vertices that the algorithm actually picks to extend R. Since Uopt minimizes Equation (14), we know k = dout (T ) + bias(Uopt ) − din (Uopt ). On the other hand, Uactual (since it includes the s vertices with the smallest bias) minimizes bias(U ), and thus also the expression dout (T ) + bias(U ). Thus the capacity of the bisection whose one side is T Uactual is at most k + din (Uopt ) − din (Uactual ), which is at most k + s2 ≤ k + (4k/(δn))2 . Since k < αn2 the capacity is at most k(1 + 16α2 /δ 2 ). Corollary 5.5. If a dense graph has bisection value O(n), the optimum bisection can be found in polynomial time. Proof. From Lemma 5.3, there are O(1) vertices in Ropt − T . These can be found by exhaustive search. 21


Corollary 5.6. There is a PTAS for the optimum separator of a dense graph. Proof. Guess the number k of vertices on the left side of the separator (bytrying all n/3 possibilities) and replace n/2 by k in the previous discussion of bisection. If the minimum degree is not constrained, but the average degree is Ω(n), our PIP approach still works for large bisection values, but our other algorithm for small bisection values fails. In fact, as shown in Section 7, approximating the minimum bisection for ǫ-dense graphs is no easier than approximating it on general graphs.

6

Algorithms without PIPs

Occasionally, exhaustive sampling is sufficient to solve or approximately solve a dense problem without recourse to PIPs. This was shown for MAX-CUT by Fernandez de la Vega [FdlV94]. We have also seen this for the case of (small) bisections. Here we describe two other problems, multiway cuts and 3-coloring. (The latter was already solved by Edwards [Edw86].)

6.1

MIN-k-CUT

First we consider the k-terminal cut problem. Let δn denote the minimum degree. Let OP T be the capacity of the optimum cut. Note that OP T ≤ kn, since kn is an upperbound on the capacity of a cut in which k − 1 of the terminals form singleton groups, while all other vertices form the remaining group. The algorithm relies on the following lemma. Lemma 6.1. When k = o(n), there is a k-cut of capacity (1 + o(1))OP T that has a special form: at most 2/δ groups of size Ω(n), and all other groups of size 1 (containing only the terminals).Proof. Suppose S1 , S2 , . . . , Sk (sorted in decreasing order by size) are the k groups in the optimum cut. Let an ordinary vertex be one that in the optimum cut has at most 1/4 of its ≥ δn neighbors in groups different from its own. Note that there are at most 4k/δ vertices that are not ordinary. Let t be the number of groups with at least δn/2 vertices; note that t ≤ 2/δ. Consider the modified cut in which all nonterminals from St+1 , . . . , Sk are moved to one of S1 , S2 , . . . , St . We show that the capacity of this cut is at most (1 + o(1)) times the original capacity; this will prove the lemma. Since each of St+1 , . . . , Sk has size less than δn/2, they can only contain vertices that are not ordinary. Thus they together contain at most 4k/δ vertices. Furthermore, the capacity of the cut is at least k |Si | δn − ). (|Si | 2 2 i=t+1 Since |Si | = O(k) = o(n), the second term is o() of the first term. Now consider moving all nonterminals from St+1 , . . . , Sk to S1 , . . . , St ; this increases the capacity of the cut by at most k |Si | , 2 i=t+1 which as already noted is o() of
k i=t+1 (|Si | δn/2).

Now we describe the algorithm. Imagine fixing a k-cut of the type described in Lemma 6.1 Let an ordinary vertex be one that has at most 1/4 of its ≥ δn neighbors in groups different 22


from its own. Let s be the number of nodes that are notordinary. Clearly, OP T (1 + o(1)) ≥ sδn/4, thus implying s ≤ 4k(1 + o(1))/δ = o(n).

First we exhaustively try all k 2/δ ways of picking terminals that will go into non-singleton groups. One of these ways will be correct. For each of the placements, we try placing the nonterminals using exhaustive sampling. We pick a random sample of O(log n) vertices and by exhaustively trying all partitions of it (just as in the other algorithms), we can identify for each vertex the group (if one exists) that contains more than 2/3 of its sampled neighbors, and assign it to that group. The Sampling Lemma shows that this fails to place or misplaces only vertices that are not ordinary, i.e., at most s vertices. Now place each of the remaining vertices in the group that contains a plurality of its neighbors. This gives almost the desired cut, except it may misplace s vertices. Furthermore, if a misplaced vertex contributed x to the correct cut (i.e., x of its neighbors were in another group) then it contributes at most x + s − 1 to our cut. Thus the cost of our cut is at most OP T (1 + o(1)) + s . 2

Since OP T (1 + o(1)) ≥ sδn/4, and s = o(n), the cut has capacity OP T (1 + o(1)). A similar PTAS can be designed for the problem without terminals, where the goal is simply to find the best partition into k nonempty groups of vertices.

6.2

3-COLORING

Random samplingalso gives a scheme for 3-coloring dense 3-colorable graphs. Since this result replicates that of Edwards [Edw86], details are omitted. Let the colors be 0, 1, 2. Initially, make all vertices uncolored. As before, we pick a random sample of O((log n))/ǫ2 ) vertices and guess their colors. Let us focus on the correct guess. With high probability, at least one neighbor of every vertex is sampled and colored. Now observe that if a vertex has colored neighbors of two different colors, its color is determined. So long as such a vertex exists, color it. When we finish, each remaining uncolored vertex vi has a neighbor with color ci and no neighbors of other colors. Now set up an instance of 2-SAT as follows. Assign a variable xi to vertex vi that is true if vi has color ci + 1 (mod 3) in the optimal coloring, and false otherwise (i.e., vi has color ci − 1 (mod 3)). For each edge (vi , vj ), add constraints on the variables xi and xj that prevent vi and vj from having the same color. Solve the 2-SAT instance in polynomial time, and extract an assignment of colors from the assignment to the variable xi . Note that the algorithm can be derandomized easily.

7

N P-completeness results

Thus far, we have described PTASs for dense instances of many N P-hard problems. Now we show that computing optimal solutions in all these cases remains N P-hard, justifying thesearch for approximation schemes. For MAX-SN P type problems, it is usually easy to reduce non-dense instances to ǫ-dense instances. MAX-CUT provides a good example. Suppose OPT is the optimum value of the MAX-CUT problem on a graph G = (V, E). We add a (disjoint) complete graph on n vertices to G. The new graph has E + n edges, and is 1/2-dense. Furthermore, the new 2 optimum of MAX-CUT is OP T + n /2. Thus exact optimization on the new instance is no 2 easier than exact optimization on the old instance. A similar idea works for MAX-k-SAT, MAX-DICUT, etc.

23


Everywheredense BISECTION is also N P-hard. In fact, the standard reduction that shows the N P-completeness of BISECTION produces such instances. It starts from instances of MAX-50-50-CUT that have constant degree this is a known N P-hard restriction of MAX-50-50-CUT and complements the graph to turn it into an instance of BISECTION. The resulting instance is everywhere-ǫ-dense. Now we indicate two problems for which denseness does not seem to help in designing PTASs: dense instances of BISECTION and everywhere-dense instances of MIN-VERTEXCOVER. We show that if the first problem has a PTAS that then there is a PTAS for general instances of BISECTION (designing such a PTAS is a famous open problem). This follows from the following reduction: Given any instance of BISECTION with n vertices, addto it two disjoint cliques of size 2n each. The resulting instance is 2/5-dense, but the capacity of the minimum bisection is unchanged. Now we show that if there is a PTAS on everywhere-1/2-dense instances of MIN-VERTEXCOVER, then P = N P. We rely on the result of [PY91, ALM+ 92] that P = N P if there is a PTAS for MIN-VERTEX-COVER on the following simple family of graphs: each of the n vertices has degree at most 5, and the smallest vertex cover has size at least n/2. Notice that given such a simple graph we can add a clique on n vertices to the graph and put a complete bipartite graph between the original vertices and the new vertices. This raises the degree of every vertex to n (so the graph becomes everywhere-1/2-dense) and raises the size of the minimum vertex cover by exactly n. Thus a PTAS on the resulting instance is a PTAS on the original instance.

8

Conclusion

We suspect that our technique of approximately reducing quadratic programs to linear programs might be useful in non-dense instances of problems. Of course, the exhaustive random sampling that underlies our work no longer suffices, since an additive approximation is not good enough in that case. But some other approximation method could plausibly replace it. If such an approximation method can be found, it would probably also improve performance on dense instances, by removing theerror due to the sampling lemma. Note that the error introduced by the Raghavan-Thompson technique in our approximation algorithm is much smaller than that introduced by the sampling step (the former error is an additive term of O(n1.5 log n) in the case of quadratic programs; the latter error is Ω(n2 )). Does a good approximation algorithm exist for general BISECTION? What about an inapproximability result? Our results suggest how not to try to prove inapproximability results. Recall that the standard way to prove the N P-completeness of BISECTION uses the fact that 50-50 MAX-CUT is just BISECTION on the complementary graph. Since 50-50 MAX-CUT on degree 5 graphs is MAX-SN P hard (and therefore has no PTAS), one is tempted to try to use this connection to prove the MAX-SN P-hardness of BISECTION. This naive idea does not work, since the complementary graph of a degree 5 graph is a dense graph in which the minimum bisection has capacity Ω(n2 ). This capacity swamps the gap (in the capacity of the optimum cut) of Θ(n) present in the instance of 50-50 MAX-CUT, so the the MAX-SN P-hardness of BISECTION does not follow. Of course, now we know an inherent reason why such approaches are unlikely to succeed: BISECTION has a PTAS on dense graphs. To conclude, we mention some recent research that extends or improves our work. Arora, Frieze, and Kaplan [AFK96] extendour exhaustive sampling idea to design additive approximation schemes for problems in which feasible solutions are permutations (such as the 0-1 Quadratic Assignment problem). Frieze and Kannan [FK96] and independently, Goldreich, Goldwasser, and Ron [GGR96] showed that our techniques apply because of certain regularity properties in dense graphs, and used this observation to design linear time additive approximation schemes for most of the problems we have considered here. Frieze 24


and Kannan also point out connections to constructive versions of Szemeredis Regularity Lemma.

acknowledgedments
We thank the anonymous referee for detailed comments that significantly improved the presentation.

References
[AFK96] S. Arora, A. Frieze, and H. Kaplan. A new rounding procedure for the assignment problem with applications to dense graph arrangement problems. In 37th Annual Symposium on Foundations of Computer Science, pages 2130, IEEE Computer Society Press, 1996. N. Alon, A. Frieze, and D. Welsh. Polynomial time randomized approximation schemes for the tutte polynomial of dense graphs. In Proceedings of the 35th Annual Symposium on the Foundations of Computer Science [IEE94], pages 24 35.

[AFW94]

[ALM+ 92] S. Arora, C. Lund, R. Motwani, M. Sudan, and M. Szegedy. Proof verification and hardness of approximation problems. In Proceedings of the33rd Annual Symposium on the Foundations of Computer Science [IEE92], pages 1423. [AS92] S. Arora and S. Safra. Probabilistic checking of proofs: A new characterization of NP. JACM 45(1):70122, 1998. Prelim. version in Proceedings of the 33rd Annual Symposium on the Foundations of Computer Science [IEE92], pages 2 13.

[BCLS84] T. Bui, S. Chaudhuri, T. Leighton, and M. Sipser. Graph bisection algorithms with good average case behavior. In Proceedings of the 25th Annual Symposium on the Foundations of Computer Science, pages 181192. IEEE, IEEE Computer Society Press, 1984. [BGG93] [B87] M. Bellare, O. Goldreich, and S. Goldwasser. Randomness in interactive proofs. Computational Complexity, 3:319354, 1993. Abstract in IEEE FOCS 1990. R. B. Boppana. Eigenvalues and graph bisection: an average-case analysis Proceedings of the 28th Annual IEEE Symposium on Foundations of Computer Science, pages 280-285, IEEE Computer Society Press, 1987. M. Bellare and J. Rompel. Randomness-efficient oblivious sampling. In Proceedings of the 35th Annual Symposium on the Foundations of Computer Science [IEE94], pages 276287. M. E. Dyer, A. Frieze, and R. Kannan. A random polynomial time algorithm for approximating the volume of convex bodies. Journal of the ACM, 38:117, 1991.

[BR94]

[DFK91]

[DJP+ 94] E. Dahlhaus, D. S. Johnson, C. H. Papadimitriou, P. D. Seymour, andM. Yannakakis. The complexity of multiterminal cuts. SIAM Journal on Computing, 23(4):864894, 1994. A preliminary version appeared in ACM STOC 1992. [Edw86] K. Edwards. The complexity of colouring problems on dense graphs. Theoretical Computer Science, 43:337343, 1986. 25


[FG95]

U. Feige and M. X. Goemans. Approximating the value of 2-prover proof systems, with applications to max-2sat and max-dicut. In Proceedings of theIsraeli Symposium on Theoretical Computer Science, pages 182189, 1995.

[FGL+ 91] U. Feige, S. Goldwasser, L. Lovsz, S. Safra, and M. Szegedy. Approximating a clique is almost NP-complete. In Proceedings of the 32nd Annual Symposium on the Foundations of Computer Science, pages 212. IEEE, IEEE Computer Society Press, October 1991. [FdlV94] W. Fernandez de la Vega. MAXCUT has a randomized approximation scheme in dense graphs. Random Structures & Algorithms, vol. 8(3):187-198, 1996. Prelim. manuscript, October 1994. W. Fernandez de la Vega and G. S. Lueker. Bin packing can be solved within 1+ǫ in linear time. Combinatorica:1(4), 349355, 1981. A. Frieze and R. Kannan. The regularity lemma and approximation schemes for dense problems. In Proceedings of the 37th Annual Symposium on the Foundations of Computer Science, pages 1220. IEEE, IEEE Computer Society Press, October 1996. O. Goldreich, S. Goldwasser, and D. Ron. Propertytesting and its connection to learning and approximation. In 37th Annual Symposium on Foundations of Computer Science, pages 339348, IEEE Computer Society Press, 1996. D. Gillman. A Chernoff bound for random walks on expanders. In Proceedings of the 34th Annual Symposium on the Foundations of Computer Science [IEE93], pages 680691. M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, San Francisco, 1979. M. X. Goemans and D. P. Williamson. Improved Approximation Algorithms for Maximum Cut and Satisfiability Problems Using Semidefinite Programming. JACM 42(6): 1115-1145, 1995. Extended abstract in Proceedings of the 26th ACM Symposium on Theory of Computing, pages 422431. ACM, ACM Press, May 1994. J. H˚ astad. Clique is hard to approximate within n1−ǫ . Proceedings of the 37th Annual Symposium on the Foundations of Computer Science, pages 627636. IEEE Computer Society Press, 1996. J. H˚ astad. Some optimal inapproximability results. Proceedings of the 28th ACM Symposium on Theory of Computing pages 110, 1997. W. Hffding. Probability inequalities for sums of bounded random variables. o Journal of the American Stastical Association, 58(301):1330, 1964. IEEE. Proceedings of the 33rd Annual Symposium on the Foundations of Computer Science. IEEE Computer Society Press, October 1992.IEEE. Proceedings of the 34th Annual Symposium on the Foundations of Computer Science. IEEE Computer Society Press, November 1993. IEEE. Proceedings of the 35th Annual Symposium on the Foundations of Computer Science. IEEE Computer Society Press, November 1994.

[FL81] [FK96]

[GGR96]

[Gil93]

[GJ79]

[GW94]

[H96]

[H97] [H64] [IEE92] [IEE93] [IEE94]

26


[IK75] [JS89] [JS93]

O. H. Ibarra and C. E. Kim. Fast approximation algorithms for the knapsack and sum of subsets problems. Journal of the ACM, 22(4):463468, 1975. M. Jerrum and A. Sinclair. Approximating the permanent. SIAM Journal on Computing, 18(6):11491178, 1989. M. Jerrum and G. B. Sorkin. Simulated annealing for graph bisection. In Proceedings of the 34th Annual Symposium on the Foundations of Computer Science [IEE93], pages 94103. H. Karloff and U. Zwick. A 7/8−ǫ approximation for MAX-3SAT? In Proceedings of the 37th Annual Symposium on the Foundations of Computer Science 1997. N. Karmarkar. A new polynomial-time algorithm for linear programming. Combinatorica, 4(4):373-395, 1984. N. Karmakar and R. M. Karp. An efficient approximation scheme for the onedimensional bin-packing problem. In Proceedings of the 23rd Annual Symposium on the Foundations of Computer Science, pages 312320. IEEE, IEEE Computer Society Press, 1982. R. M. Karp, M. Luby, and N. Madras. Monte-Carloapproximation algorithms for enumeration problems. Journal of Algorithms, 10(3):429448, 1989. S. Khanna, M. Sudan, and D. Williamson. A complete classification of the approximability of maximization problems derived from boolean constraint satisfaction. In Proceedings of the 29th Annual ACM Symposium on Theory of Computing, pages 11-20, 1997. E. Koutsoupias and C. H. Papadimitriou. On the greedy heuristic for satisfiability. Information Processing Letters, 43(1):5355, 1992. G. Kortsarz and D. Peleg. On choosing a dense subgraph. In Proceedings of the 34th Annual Symposium on the Foundations of Computer Science [IEE93], pages 692701. T. Leighton and S. Rao. An approximate max-flow min-cut theorem for uniform multicommodity flow problems with applications to approximation algorithms. In Proceedings of the 29th Annual Symposium on the Foundations of Computer Science, pages 422431. IEEE, IEEE Computer Society Press, October 1988. C. Lund and M. Yannakakis. On the hardness of approximating minimization problems. In Proceedings of the 25th ACM Symposium on Theory of Computing, pages 286293. ACM, ACM Press, May 1993. L. P`sa. Hamiltonian circuits in random graphs. Discrete Mathematics, 14:359 o 364, 1976. C. H. Papadimitriou. Computational Complexity. Addison-Wesley, 1994. C. H. Papadimitriou and M. Yannakakis. Optimization, approximation and complexity classes. JCSS,43(3):425440, 1991. A preliminary version appeared in STOC 1988. P. Raghavan. Probabilistic construction of deterministic algorithms: Approximate packing integer programs. Journal of Computer and System Sciences, 37(2):13043, October 1988.

[KZ97] [K84] [KK82]

[KLM89] [KSW97]

[KP92] [KP93]

[LR88]

[LY93]

76] [P` [Pap94] [PY91]

[Rag88]

27


[RT87]

P. Raghavan and C. D. Thompson. Randomized rounding: a technique for provably good algorithms and algorithmic proofs. Combinatorica, 7(4):365374, 1987. S. Sahni. Approximate algorithms for the 0/1 knapsack problem. Journal of the ACM, 22(1):115124, 1975. H. Saran and V. V. Vazirani. Finding k-cuts within twice the optimal. In IEEE, editor, Proceedings of the 32nd Annual Symposium on Foundations of Computer Science, pages 743751, San Juan, Porto Rico, October 1991. IEEE Computer Society Press. D. Shmoys. Computing near-optimal solutions to combinatorial optimization problems. In Combinatorial Optimization, DIMACS Series in Discrete Math and Theoretical Computer Science, (W. Cook, L. Lovasz, and P.D. Seymour, eds.) AMS, 1995, pages 355-397. M. Yannakakis. On the approximation of maximum satisfiability. In Proceedings of the 3rd Annual ACM-SIAM Symposium on Discrete Algorithms, pages 19. ACM-SIAM, January 1992.

[S75] [SV91]

[Shm94]

[Yan92]

28


Poltica de privacidad