Page 1
Polynomial Time Approximation Schemes for Dense
Instances of NP-Hard Problems
Sanjeev Arora∗
David Karger†
Marek Karpinski‡
Abstract
We present a unified framework for designing polynomial time approximation schemes
(PTASs) for “dense” instances of many NP-hard optimization problems, including
maximum cut, graph bisection, graph separation, minimum k-way cut with and with-
out 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 sim-
ilarly. 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.
1Introduction
Approximation algorithms, whenever they can be found, are a way to deal with the NP-
hardness 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 the optimum 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 = NP, 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(logn). No inapproximability results are known for them. MAX-SNP 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 running time 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: http://www.cs.princeton.edu/~arora
†MIT Laboratory for Computer Science.Work done at AT&T Bell Laboratories.
karger@lcs.mit.edu URL: http://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: http://theory.cs.uni-bonn.de/~marek.
email:
1
Page 2
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 ?= NP, then PTASs do not
exist for many NP-hard problems. In particular, this is is true for every MAX-SNP-hard
problem. (The class of MAX-SNP-hard problems includes VERTEX COVER, MAX-3-
SAT, MAX-CUT, METRIC TSP, MULTIWAY CUTS, and many others [PY91].)
Note that the inapproximability results mentioned above, like all NP-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 point of our research.
This paper gives PTASs for a large class of NP-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 PTAS’s 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.1Applicable 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 k-
satisfiability, are MAX-SNP-complete. Thus they do not have PTASs on general (that is,
non-dense) instances [ALM+92], but they can all be approximated within 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(logn) 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(logn) (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
Page 3
of [LR88]) yield separators whose capacity is within a factor O(logn) 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/18was 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-SNP: 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-SNP appears in Section 4.4, where we also describe a
PTAS for them.) Exact optimization on dense instances is NP-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 SEP-
ARATOR.
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-SNPproblem.
Theorem 1.4. Exact algorithms exist on everywhere-dense graphs for MIN-k-CUT when
k = o(n) and for 3-COLORING.
Remark. The 3-COLORING result is not new—see [Edw86]—but does follow from a direct
application of our general technique
1.2Our Methods
Our heuristics are based upon two main ideas: exhaustive sampling and its use in approxima-
tion 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 sides—so as to maximize the number of edges with an endpoint
3
Page 4
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(logn) 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 sampled vertices 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 xifor 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
xi
?
(i,j)∈E
(1 − xj)
.
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 to approximately 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 com-
pute an additive approximation (see Section 1.3). For example, our algorithm for MAX-CUT
computes, for every graph, a cut of capacity at least OPT − ǫ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 OPT = Ω(n2) for such graphs (this
follows from our earlier observation that in an optimum cut, every vertex is on the oppo-
site side from a majority of its neighbors). However, our algorithms for BISECTION and
SEPARATOR are not additive approximation algorithms.
1.3Smooth 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 the true nature of many other problems—in 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 PTAS’s 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
Page 5
Definition 1.5. A polynomial integer program (or PIP) is of the form
maximize
subject to
p0(x1,... ,xn)
li≤ pi(x) ≤ ui
xi∈ {0,1}
(1)
(2)
(3)
(i = 1,...,m)
∀i ≤ n
where p0,... ,pmare polynomials. (The PIP could involve minimization instead of maxi-
mization.)
When all pihave 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 0–1 integrality of xican 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
?
aijxixj+
?
bixi+ 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 xifor each vertex vi. Then, assign 0,1 values to the xi(in other
words, find a cut) so as to maximize
?
{i,j}∈E
(xi(1 − xj) + xj(1 − xi)).
(Notice that an edge {i,j} 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) ≤ uito within an
additive error δ if li− δ ≤ pi(a) ≤ ui+ δ.
Theorem 1.10. There is a randomized polynomial-time algorithm that approximately solves
smooth PIPs, in the following sense. Given a feasible c-smooth degree d PIP with n variables,
objective function p0and K constraints, the algorithm finds a 0/1 solution z satisfying
p0(z1,... ,zn) ≥ OPT − ǫnd,
5
Page 6
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(ǫ√nlogn).
The running time of the algorithm is O((dKnd)t), where t = 4c2e2d2/ǫ2= O(1/ǫ2).
The algorithm can be derandomized (i.e., made deterministic), while increasing the run-
ning 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`76] and approximate the number of perfect matchings [JS89]. In
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 everywhere-
dense 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 con-
ceptually; 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 polyno-
mial 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.5Paper Organization
In Section 2 we give details of the main ideas of our approach, exhaustive sampling and
transforming polynomial constraints into linear constraints, 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 SEPA-
RATOR 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.
2Our 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
Page 7
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?
s.t. xi∈ {0,1}
ixi· ri(x)
∀i
The above formulation looks a lot like an integer linear program, for which numerous ap-
proximation techniques are known. Unfortunately, the “coefficients” ri(x) in the objective
function are not constants—the program is actually a quadratic program. However, exhaus-
tive 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 riby 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:
real numbers, as a shorthand for the interval [a − b,a + b].
Throughout the paper, we will use a ± b where a and b are
2.1Estimating 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 solution to the following
integer linear program:
MAX-CUT =max?
s.t. xi∈ {0,1}
ri(x) = ρi
ixi· ρi
∀i
∀i
Of course, the usefulness of this observation is unclear, since we don’t know the values
ρi. We show, however, that it is possible to compute an additive error estimate of the ρiin
polynomial time, in other words, a set of numbers eisuch that
ρi− ǫn ≤ ei≤ ρi+ ǫn
∀i.(4)
This can be done using our exhaustive sampling approach. We take a random sample of
O(logn) 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, Θ(logn) of its neighbors are part
7
Page 8
of the random sample (high probability means probability 1−n−Ω(1)). A moment’s 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 logn of the ai
at random (with replacement), then their sum q satisfies
qn
s
∈
?
i
ai± nM
?
f
g
with probability at least 1 − n−f.
Proof. Let s = g logn. For j = 1,... ,s let Xjbe the random variable denoting the number
picked in the jthdraw. Since the numbers are drawn with replacement, the values Xjare
identically distributed, and
E[Xj] =1
n
n
?
j=1
aj.
Since |Xj| ≤ M by hypothesis, the lemma now follows from the standard H¨ offding bound
[H64].
For MAX-CUT, our goal is to estimate the values ρiof the form?
we randomly choose (with replacement) g logn 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/n2that the following happen (i) Ω(logn/ǫ2) of the sampled vertices lie in N(i)
(note that the conditional distribution of these vertices is uniform) and (ii) the estimate for
ρiproduced using this sample is accurate to within ǫn.
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,
2.2Linearizing the Quadratic Integer Program
Now we use the coefficient estimates to define an integer linear program whose solutions are
near-optima for MAX-CUT. Given the estimates eijust 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
?
ixi· ei
s.t. xi∈ {0,1}
ei− ǫn ≤ ri(x) ≤ ei− ǫn
∀i
∀i(5)
(Recall that each ri(x) is a linear function of x, so the given constraints are linear con-
straints.)
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
Page 9
?
ziri(z) ≥
?
?
?
?
?
zi(ei− ǫn)
ziei− ǫn2
aiei− ǫn2
ai(ρi− ǫn) − ǫn2
aiρi− 2ǫn2
= MAX-CUT − 2ǫn2
By the constraints (5)
≥
≥
≥
≥
Since z is integer optimum
from (4)
In other words, the optimum of the integer program is a near-optimum solution to MAX-
CUT.
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 aTy = b, where each |ai| ≤ c. Construct
a vector z = (zi) randomly by setting zi= 1 with probability yiand 0 with probability 1−yi.
Then with probability at least 1 − n−f, we have
aTz ∈ b ± c
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,
ri(y) ± O(√nlnn)
?
Specifically, to derive Equations (6) and (7) from Lemma 2.2, note that each ri(x) is a
linear function with 0–1 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,
?
fnlnn
ri(z)
∈
∈
(6)
ziri(y)
?
yiri(y) ± O(n3/2lnn)(7)
?
yiri(y) ≥ MAX-CUT − 2ǫn2.
We now use our randomized rounding lemma. We have that
?
ziri(z) ≥
?
?
?
zi(ri(y) − O(√nlnn))
ziri(y) − O(n3/2lnn)
yiri(y) − O(n3/2lnn)
≥ MAX-CUT − (2ǫ + o(1))n2
From (6)
≥
≥
From (7)
This finishes the overview of our algorithm for MAX-CUT.
9
Page 10
3Approximating 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 PIP—that 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 of polynomials.
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 +
?
xipi(x)
where t is a constant and each piis 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 xiwas extracted into pi. Every degree d′term in picorresponds to
a degree d′+ 1 term in p, and thus has coefficient at most cnd−(d′+1)= cn(d−1)−d′. Thus,
since pihas 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 +
?
xipi(xi,... ,xn),
that is, where each pidepends only on variables with index i or greater.
10
Page 11
The decomposition of a degree d polynomial into degree d − 1 polynomials gives us a
natural recursion through which we can generalize our quadratic programming techniques.
By computing an estimate ρiof the value of pi(x) at the optimum solution, we replace the
degree-d constraint p with a single constraint on?xiρitogether with a family of constraints
until all of our constraints are linear.
To estimate the values pi(x), we again rely on the expansion above: we expand pi in
terms of degree d − 2 polynomials, writing pi(x) =?xjpij(x), recursively estimate 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 decomposition—we show that
each pi(x) is roughly preserved by rounding, and deduce that?xipi(x) is also preserved.
3.1.2 Reducing Optimization to Feasibility
on the values pi(x). We then recursively expand these degree d − 1 constraints, continuing
values, and then use exhaustive sampling to estimate p based on the values of the pij.
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]nis at most 2cend(where lne = 1).
Proof. For 0 ≤ i ≤ d the polynomial has at most?n+i
[0,1]nis
i
?terms of degree i, and each has a
coefficient in [−cnd−i,cnd−i]. Thus an upper bound on the absolute value at any point in
d
?
i=0
cnd−i·
?n + i
i
?
≤
d
?
i=0
cnd−i·
?n + d
i
?
≤
cnd
d
?
i=0
(n + d
n
)i1
i !
≤
cnde1+d/n
which is at most cend(1 + 2d/n) < 2cendfor n > 5d.
3.2Rounding 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]nis 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. Given fractional values (yi) such that p(y1,... ,yn) = b, suppose ran-
domized rounding is performed on the yias in Lemma 2.2 to yield a 0,1 vector (zi). Then
with probability at least 1 − nd−f, we have
p(z1,... ,zn) ∈
?
b ± gdnd−1
2√
lnn
?
,
11
Page 12
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
p(x1,... ,xn) =
n
?
i=1
xi· pi(x1,... ,xn) + t, (8)
where t is a constant and piis a c-smooth polynomial of degree at most d − 1.
Let ρidenote the value pi(y1,... ,yn). Then
b=p(y1,... ,yn)
n
?
=t +
i=1
ρi· yi.
Let (z1,... ,zn) ∈ {0,1}nbe obtained by randomized rounding on (y1,... ,yn). Our
proof consists of noticing that with high probability, (zi) satisfies both b ≈?
realize that any such (zi) also satisfies b ≈ p(z1,... ,zn).
Let us formalize this idea. Note that |ρi| ≤ 2cend−1by 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
?
Furthermore, the inductive hypothesis implies that for each i ≤ n, the probability is at
least 1 − nd−f−1that
pi(zi,... ,zn) ∈ ρi± g(d − 1)nd−1−1
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:
iρizi (by
Lemma 2.2) and ∀i ≤ n : ρi ≈ pi(z1,... ,zn) (by induction for degree d − 1). Then we
i=1
ρi· zi∈ b ± gnd−1√
nlnn. (9)
2√
lnn (10)
p(z1,... ,zn) = t +
n
?
?
?
i=1
zi· pi(z1,... ,zn)
zi(ρi± g(d − 1)nd−1−1/2√
ziρi± g(d − 1)nd−1/2√
= b ± gnd−1√
= [b ± gdnd−1
∈ t +
⊆ t +
lnn)
by (10)
lnn
nlnn ± g(d − 1)nd−1/2√
lnn]
lnn
by (9)
2√
Hence we have shown that p(z1,... ,zn) ∈ [b ± gdnd−1
1 − nd−f.
2√lnn] 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
Page 13
estimating the values at the optimum a of the coefficients pi(a) in the expansion p(a) =
?aipi(a). In this section, we show how this estimation can be accomplished by exhaustive
of a c-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 aifor
O(logn) 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 ⊆ {1,... ,n}.
sampling. We describe a procedure Eval in Figure 3.3 that can approximate the value
Algorithm Eval(p,S,{ai: i ∈ S})
Input:polynomial p of degree at most d,
set of variables indices S,
aifor 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 +?xipi(x1,... ,xn)
for each i ∈ S
ei←Eval(pi,S,{ai: i ∈ S})
return
t +
|S|
i∈S
where t is a constant and each pihas degree at most d − 1
n
?
aiei
Figure 1: The approximate evaluation algorithm
Note that if S = {1,... ,n} 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(logn). 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∈
{0,1}. Let S be a set of O(g logn) indices chosen randomly (with replacement). Then with
probability at least 1 − nd−f, set S is such that Eval(p,S,{ai: i ∈ 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
p(a1,... ,an) = t +
n
?
i=1
ai· ρi
(11)
The intuition for why Eval’s output should approximate p(a1,... ,an) is as follows. Each
pihas degree at most d−1, so the inductive hypothesis implies that ei≈ ρi. Thus the output
13
Page 14
of eval is
t +
n
|S|·
?
i∈S
ai· ei≈ t +
n
|S|·
?
?
ai· ρi
i∈S
ai· ρi
(by the inductive hypothesis)
≈ t +
i
(by the Sampling Lemma)
It remains to fill in the details, and to deal with the complication that the errors in our
recursive estimates of the ρiaccumulate into the error for our estimate of p(a1,... ,an).
Our sample has size g logn. By Lemma 3.2, each |ρi| ≤ 2cend−1. Hence the Sampling
Lemma implies that with probability 1 − n−fthe set S is such that
n
|S|
?
i∈S
aiρi∈
?
i
aiρi±
?
2ce
?
f
g
?
nd
(12)
Of course, we do not have the values ρi. However, we do have the values ei=Eval(pi,S,{ai:
i ∈ S}). To see the impact of using them instead, let ǫddenote the smallest number such
that for every c-smooth degree d polynomial p and point a ∈ {0,1}n
Pr[Eval computes an estimate within p(a) ± ǫdnd] ≥ 1 − nd−f
We get an recurrence for ǫdas follows. By definition, Eval estimates any particular ρito
within ǫd−1nd−1with probability 1−n(d−1)−f. Thus all n values ρiare 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
|S|
i∈Si∈S
?
|S|
i∈S
??
?
t +
?
ai· ei∈ t +
n
|S|
?
n
ai·?ρi± ǫd−1nd−1?
?
⊆ t +
ai· ρi
?
± ǫd−1nd−1n
|S|
⊆ t +
i
ai· ρi± 2ce
?
f
gnd
?
±ǫd−1
|S|nd
?
by (12)
⊆ t +
?
i
ai· ρi±
2ce
?
f
g+ǫd−1
|S|
nd
= p(a1,... ,an) ±
?
2ce
?
f
g+ǫd−1
|S|
?
nd.
It follows that
ǫd≤ 2ce
?
?
?
f
g+ǫd−1
|S|
≤ 2ce
f
g(1 + |S|−1+ ··· + |S|−d)
≤ 4ce
f
g
for |S| > 1.
14
Page 15
Corollary 3.5. With probability 1−nd−fover 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.4Transforming Degree d Constraints to Linear Constraints
Using the estimates produced by Procedure Eval of Section 3.3 we can transform 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) ∈ {0,1}nto the input
constraint.
Algorithm Linearize(“L ≤ p(x1,... ,xn) ≤ U”, S, {ai: i ∈ S}, ǫ)
Input:constraint involving polynomial p of degree d,
lower bound L and upper bound U
multiset of variable indices S
ai∈ {0,1} 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 +?xipi(x1,... ,xn)
for i = 1 to n
ei← Eval(pi,S,{ai: i ∈ S})
li← ei− ǫnd−1
ui← ei+ ǫnd−1
Linearize(“li≤ pi(x1,... ,xn) ≤ ui”, S, {ai: i ∈ S}, ǫ)
output the constraint
“L − ǫnd≤ t +?xiei≤ U + ǫnd”
where t is a constant and each pihas degree at most d − 1
Figure 2: Linearizing a Polynomial Constraint
A simple induction shows that the Procedure in Figure 3.4, when given a degree d con-
straint, 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 high probability, 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 param-
eter ǫ = 4ce?f/g and a constraint involving a c-smooth polynomial of degree d.
of g logn variables (picked with replacement), then with probability at least 1 − dnd−fPro-
cedure Linearize outputs a set of linear constraints that are satisfied by (a1,... ,an).
Let
(a1,... ,an) ∈ {0,1}nbe a feasible solution to the constraint. If S is a random sample
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
Page 16
p′. The boundaries liand uifor this constraint are determined by a call to Eval involving
polynomial p′. Vector a satisfies this constraint so long as liand uisatisfy 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 to within 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]nto 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 con-
straints 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 liand uiwe get
pi(y) ∈ ei± (2d − 1)ǫnd−1
Therefore,
p(y)=t +
?
?
??
yipi(yi,... ,yn)
∈
⊆
⊆
⊆
t +yi(ei± (2d − 1)ǫnd−1)
yiei
?
[L,U] ± ǫnd± (2d − 1)ǫnd
[L,U] ± 2dǫnd
t +
± (2d − 1)ǫnd
(13)
where Equation (13) follows from the fact that y is feasible for the constraint that was
output before recursion, namely
t +
?
xiei∈ [L,U] ± ǫnd.
Thus the inductive step is complete.
3.5Proof of the main theorem
The proof of Theorem 1.10 now follows 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
Page 17
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 = 16c2e2fd2/ǫ2= O(/ǫ2).
We pick a random multiset S of O(g logn) variables and guess (by exhaustive enumeration
in 2g log ntime) the values of aifor 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−fK > 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/2lnn) = 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 nexhaustive 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)4c2e2d2/ǫ2≈ (2Knd)4c2e2d2/ǫ2,
we conclude that this term dominates the running time.
3.6 Derandomization
Derandomizing the algorithm in Theorem 1.10 involves derandomizing its components, Pro-
cedures Eval and Linearize. Those depend upon two randomized procedures: Random-
ized Rounding (used in Lemma 3.3) and the Sampling Lemma. Raghavan [Rag88] deran-
domized 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(logn/ǫ2) variables independently, it suffices to pick the variables whose indices are
encountered on a random walk of length O(logn/ǫ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
is nO(1/ǫ2)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 pro-
grams to construct PTASs for (dense instances of) many problems.
require approximating quadratic programs. Approximating dense MAX-k-SAT requires ap-
proximating 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.
Most applications
4.1MAX-CUT, MAX-DICUT, MAX-HYPERCUT
Note that a δ-dense graph has at least δn2edges. 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
Page 18
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
can in time nO(1/ǫ2δ2)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 pro-
gram 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 prob-
lems as a smooth degree-d PIP. For a given edge (set of vertices) S, we use the term
1 −?
4.2DENSE-k-SUBGRAPH
i∈Sxi−?
i∈S(1 − xi). This term is 1 if S is cut and zero otherwise.
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
?
?n
{i,j}∈Exixj
xi∈ {0,1}
i=1xi= k
subject to
Clearly this PIP is 1-smooth. From Theorem 1.10 we know how to find an approximately
optimal 0,1 vector x satisfying?n
subgraph by at most gn√nlnn = o(n2).
The reader may wonder if our 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]).
i=1xi∈ [k ± g√nlnn]. Now we move at most g√nlnn
vertices in or out to get a subset of size k; this affects the number of edges included in the
4.3MAX-k-SAT
A standard “arithmetization” method can be used to represent MAX-k-SAT as a degree-k
smooth IP. Let y1,... ,ynbe the variables and m be the number of clauses. Introduce 0–1
valued variables x1,... ,xn. For each i, 1 ≤ i ≤ n, replace each unnegated occurrence of
variable yiby 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 xiwith truth assignments to the boolean variables yi. Clearly, an assignment
of values to the ximakes the term 1 if the corresponding assignment to the yimakes 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≤mtj(x1,... ,xn)
xi∈ {0,1}∀i
18
Page 19
Now suppose the number 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(n24k/ǫ2) find an assignment that satisfies
OPT −
ǫ
2knk≥ (1 − ǫ)OPT clauses.
4.4Dense MAX-SNP
As pointed out in [PY91], problems such as MAX-CUT, MAX-k-SAT and MAX-HYPERCUT(d)
lie in a class called MAX-SNP, and actually in a subclass called MAX-SNP0in [Pap94].
MAX-SNP0was defined using model theory, and it is unclear how to define denseness for
MAX-SNP0problems. In fact, problems such as vertex cover are in MAX-SNP 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-SNP0problems 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 fias possible. As is
well-known (see [Pap94], Theorem 13.8), a MAX-SNP0problem can be viewed as a MAX-
k-FUNCTION-SAT problem for some fixed integer k. (An alternative name for MAX-k-
FUNCTION-SAT is “constraint satisfaction problems” [KSW97].)
We call an instance of a MAX-SNP0problem dense if the instance of MAX-k-FUNCTION-
SAT 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-SNP 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-FUNCTION-
SAT can be represented by a smooth degree-k integer program, so it follows that dense
MAX-k-FUNCTION-SAT has a PTAS.
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, and places 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.1Large Bisections
The algorithm for k ≥ αn2is 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 xithat
makes the objective function less than k + ǫn2≤ k(1 + ǫ/α).
19
Page 20
There is one small problem: this 0,1 assignment might not induce a bisection, since it
only approximately satisfies the constraint?xi = n/2. However, randomized rounding
we need to move only O(√nlogn) vertices from one side to another in order to balance the
cut. This affects the bisection value by at most O(n1.5logn) = o(n2).
does guarantee there will be n/2 ± (√nlogn) vertices on each side of the solution. Hence
5.2Small Bisections
The case k ≤ αn2is 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 that
has more than the allowed neighbors on the other side, and switching them.
Let Loptand Roptdenote 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 ran-
domized 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((logn)/δ) 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 S special. 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 Roptand contains
every radical right vertex.
20
Page 21
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((logn)/δ) contains Θ(logn) 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 Θ(logn) neighbors of v, the
probability that more than 5/8 of them are in Roptis n−Ω(1). Hence the probability that
v ∈ T is n−Ω(1).
Now suppose v ∈ Ropthas more than 3/4 of its neighbors in Ropt. An application of the
Sampling Lemma shows that in a random sample of O(logn) neighbors of v, the probability
that less than 5/8 of them are in Ropt is n−Ω(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
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.
2−4k
δn.
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).
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 the cut. 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 Roptand let Uactualbe the set of s vertices that
the algorithm actually picks to extend R.
Since Uoptminimizes 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 < αn2the 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.
(14)
Proof. From Lemma 5.3, there are O(1) vertices in Ropt− T.
exhaustive search.
These can be found by
21
Page 22
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 (by trying 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 de-
scribe two other problems, multiway cuts and 3-coloring. (The latter was already solved by
Edwards [Edw86].)
6.1MIN-k-CUT
First we consider the k-terminal cut problem. Let δn denote the minimum degree. Let OPT
be the capacity of the optimum cut. Note that OPT ≤ 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))OPT 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,... ,Skare 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,... ,Skhas 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
?
Since |Si| = O(k) = o(n), the second term is o(·) of the first term. Now consider moving all
nonterminals from St+1,... ,Skto S1,... ,St; this increases the capacity of the cut by at
most
k
?
which —as already noted— is o(·) of?k
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
i=t+1
(|Si|δn
2
−
?|Si|
2
?
).
i=t+1
?|Si|
2
?
,
i=t+1(|Si|δn/2).
22
Page 23
from its own. Let s be the number of nodes that are not ordinary. Clearly, OPT(1+o(1)) ≥
sδn/4, thus implying
s ≤ 4k(1 + o(1))/δ = o(n).
First we exhaustively try all k2/δ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(logn) 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
OPT(1 + o(1)) +
?s
2
?
.
Since OPT(1 + o(1)) ≥ sδn/4, and s = o(n), the cut has capacity OPT(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.23-COLORING
Random sampling also 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((logn))/ǫ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 vihas a neighbor
with color ciand no neighbors of other colors. Now set up an instance of 2-SAT as follows.
Assign a variable xito vertex vithat is true if vihas color ci+ 1 (mod 3) in the optimal
coloring, and false otherwise (i.e., vihas color ci− 1 (mod 3)). For each edge (vi,vj), add
constraints on the variables xiand xj that prevent viand 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
NP-completeness results
Thus far, we have described PTASs for dense instances of many NP-hard problems. Now
we show that computing optimal solutions in all these cases remains NP-hard, justifying
the search for approximation schemes.
For MAX-SNP 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
2
easier than exact optimization on the old instance. A similar idea works for MAX-k-SAT,
MAX-DICUT, etc.
2
?edges, and is 1/2-dense. Furthermore, the new
optimum of MAX-CUT is OPT +?n
?/2. Thus exact optimization on the new instance is no
23
Page 24
Everywhere–dense BISECTION is also NP-hard. In fact, the standard reduction that
shows the NP-completeness of BISECTION produces such instances. It starts from in-
stances of MAX-50-50-CUT that have constant degree — this is a known N P-hard re-
striction 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-VERTEX-
COVER. 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,
add to 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-VERTEX-
COVER, then P = NP. We rely on the result of [PY91, ALM+92] that P = NP 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.
8Conclusion
We suspect that our technique of approximately reducing quadratic programs to linear pro-
grams 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 the error 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.5logn) 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 NP-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-SNP hard (and therefore has no PTAS), one
is tempted to try to use this connection to prove the MAX-SNP-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-SNP-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] extend our exhaustive sampling idea to design additive ap-
proximation schemes for problems in which feasible solutions are permutations (such as the
0-1 Quadratic Assignment problem). Frieze and Kannan [FK96] and independently, Gol-
dreich, 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 ad-
ditive approximation schemes for most of the problems we have considered here. Frieze
24
Page 25
and Kannan also point out connections to constructive versions of Szemeredi’s 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 assign-
ment problem with applications to dense graph arrangement problems. In 37th
Annual Symposium on Foundations of Computer Science, pages 21–30, IEEE
Computer Society Press, 1996.
[AFW94] 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.
[ALM+92] S. Arora, C. Lund, R. Motwani, M. Sudan, and M. Szegedy. Proof verification
and hardness of approximation problems. In Proceedings of the 33rdAnnual
Symposium on the Foundations of Computer Science [IEE92], pages 14–23.
[AS92] S. Arora and S. Safra. Probabilistic checking of proofs: A new characterization
of NP. JACM 45(1):70–122, 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 25thAnnual Symposium
on the Foundations of Computer Science, pages 181–192. IEEE, IEEE Computer
Society Press, 1984.
[BGG93]M. Bellare, O. Goldreich, and S. Goldwasser. Randomness in interactive proofs.
Computational Complexity, 3:319–354, 1993. Abstract in IEEE FOCS 1990.
[B87] R. B. Boppana. Eigenvalues and graph bisection: an average-case analysis Pro-
ceedings of the 28th Annual IEEE Symposium on Foundations of Computer Sci-
ence, pages 280-285, IEEE Computer Society Press, 1987.
[BR94] M. Bellare and J. Rompel. Randomness-efficient oblivious sampling. In Proceed-
ings of the 35thAnnual Symposium on the Foundations of Computer Science
[IEE94], pages 276–287.
[DFK91] 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:1–17,
1991.
[DJP+94] E. Dahlhaus, D. S. Johnson, C. H. Papadimitriou, P. D. Seymour, and M. Yan-
nakakis. The complexity of multiterminal cuts. SIAM Journal on Computing,
23(4):864–894, 1994. A preliminary version appeared in ACM STOC 1992.
[Edw86]K. Edwards. The complexity of colouring problems on dense graphs. Theoretical
Computer Science, 43:337–343, 1986.
25
Page 26
[FG95]U. Feige and M. X. Goemans. Approximating the value of 2-prover proof sys-
tems, with applications to max-2sat and max-dicut. In Proceedings of theIsraeli
Symposium on Theoretical Computer Science, pages 182–189, 1995.
[FGL+91] U. Feige, S. Goldwasser, L. Lov´ asz, S. Safra, and M. Szegedy. Approximating
clique is almost NP-complete. In Proceedings of the 32ndAnnual Symposium
on the Foundations of Computer Science, pages 2–12. 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.
[FL81] W. Fernandez de la Vega and G. S. Lueker. Bin packing can be solved within
1+ǫ in linear time. Combinatorica:1(4), 349–355, 1981.
[FK96]A. Frieze and R. Kannan. The regularity lemma and approximation schemes for
dense problems. In Proceedings of the 37thAnnual Symposium on the Founda-
tions of Computer Science, pages 12–20. IEEE, IEEE Computer Society Press,
October 1996.
[GGR96] O. Goldreich, S. Goldwasser, and D. Ron. Property testing and its connection
to learning and approximation. In 37th Annual Symposium on Foundations of
Computer Science, pages 339–348, IEEE Computer Society Press, 1996.
[Gil93]D. Gillman. A Chernoff bound for random walks on expanders. In Proceedings of
the 34thAnnual Symposium on the Foundations of Computer Science [IEE93],
pages 680–691.
[GJ79]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.
[GW94] 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 422–431. ACM, ACM Press,
May 1994.
[H96]J. H˚ astad. Clique is hard to approximate within n1−ǫ. Proceedings of the 37th
Annual Symposium on the Foundations of Computer Science, pages 627–636.
IEEE Computer Society Press, 1996.
[H97]J. H˚ astad. Some optimal inapproximability results. Proceedings of the 28thACM
Symposium on Theory of Computing pages 1–10, 1997.
[H64] W. H¨ offding. Probability inequalities for sums of bounded random variables.
Journal of the American Stastical Association, 58(301):13–30, 1964.
[IEE92]IEEE. Proceedings of the 33rdAnnual Symposium on the Foundations of Com-
puter Science. IEEE Computer Society Press, October 1992.
[IEE93]IEEE. Proceedings of the 34thAnnual Symposium on the Foundations of Com-
puter Science. IEEE Computer Society Press, November 1993.
[IEE94]IEEE. Proceedings of the 35thAnnual Symposium on the Foundations of Com-
puter Science. IEEE Computer Society Press, November 1994.
26
Page 27
[IK75]O. H. Ibarra and C. E. Kim. Fast approximation algorithms for the knapsack
and sum of subsets problems. Journal of the ACM, 22(4):463–468, 1975.
[JS89]M. Jerrum and A. Sinclair. Approximating the permanent. SIAM Journal on
Computing, 18(6):1149–1178, 1989.
[JS93]M. Jerrum and G. B. Sorkin. Simulated annealing for graph bisection. In Pro-
ceedings of the 34thAnnual Symposium on the Foundations of Computer Science
[IEE93], pages 94–103.
[KZ97]H. Karloff and U. Zwick. A 7/8−ǫ approximation for MAX-3SAT? In Proceedings
of the 37thAnnual Symposium on the Foundations of Computer Science 1997.
[K84] N. Karmarkar. A new polynomial-time algorithm for linear programming. Com-
binatorica, 4(4):373-395, 1984.
[KK82]N. Karmakar and R. M. Karp. An efficient approximation scheme for the one-
dimensional bin-packing problem. In Proceedings of the 23rdAnnual Symposium
on the Foundations of Computer Science, pages 312–320. IEEE, IEEE Computer
Society Press, 1982.
[KLM89] R. M. Karp, M. Luby, and N. Madras. Monte-Carlo approximation algorithms
for enumeration problems. Journal of Algorithms, 10(3):429–448, 1989.
[KSW97]S. Khanna, M. Sudan, and D. Williamson. A complete classification of the
approximability of maximization problems derived from boolean constraint sat-
isfaction. In Proceedings of the 29th Annual ACM Symposium on Theory of
Computing, pages 11-20, 1997.
[KP92] E. Koutsoupias and C. H. Papadimitriou. On the greedy heuristic for satisfia-
bility. Information Processing Letters, 43(1):53–55, 1992.
[KP93]G. Kortsarz and D. Peleg. On choosing a dense subgraph. In Proceedings of
the 34thAnnual Symposium on the Foundations of Computer Science [IEE93],
pages 692–701.
[LR88] 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 29thAnnual Symposium on the Foundations of Computer
Science, pages 422–431. IEEE, IEEE Computer Society Press, October 1988.
[LY93]C. Lund and M. Yannakakis. On the hardness of approximating minimization
problems. In Proceedings of the 25thACM Symposium on Theory of Computing,
pages 286–293. ACM, ACM Press, May 1993.
[P`76]
L. P` osa. Hamiltonian circuits in random graphs. Discrete Mathematics, 14:359–
364, 1976.
[Pap94]C. H. Papadimitriou. Computational Complexity. Addison-Wesley, 1994.
[PY91]C. H. Papadimitriou and M. Yannakakis.
complexity classes. JCSS, 43(3):425–440, 1991. A preliminary version appeared
in STOC 1988.
Optimization, approximation and
[Rag88]P. Raghavan. Probabilistic construction of deterministic algorithms: Approx-
imate packing integer programs. Journal of Computer and System Sciences,
37(2):130–43, October 1988.
27
Page 28
[RT87] P. Raghavan and C. D. Thompson.
provably good algorithms and algorithmic proofs. Combinatorica, 7(4):365–374,
1987.
Randomized rounding: a technique for
[S75] S. Sahni. Approximate algorithms for the 0/1 knapsack problem. Journal of the
ACM, 22(1):115–124, 1975.
[SV91]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 743–751, San Juan, Porto Rico, October 1991. IEEE Computer
Society Press.
[Shm94]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.
[Yan92]M. Yannakakis. On the approximation of maximum satisfiability. In Proceedings
of the 3rdAnnual ACM-SIAM Symposium on Discrete Algorithms, pages 1–9.
ACM-SIAM, January 1992.
28
Download full-text