R COMPUTATIONALLY RELATED PROBLEMS·
Total Page:16
File Type:pdf, Size:1020Kb
1 r ir SIAM J. COMPUT. Vol. 3. No.4, December 1974 COMPUTATIONALLY RELATED PROBLEMS· SARTAJ SAHNIt Abstract. We look at several problems from areas such as network flows, game theory, artificial intelligence, graph theory, integer programming and nonlinear programming and show that they are \. related in that anyone of these problems is solvable in polynomial time iff all the others are, too. At i present, no polynomial time algorithm for these problems is known. These problems extend the equivalence class of problems known as P-Complete. The problem of deciding whether the class of 1 languages accepted by polynomial time nondeterministic Turing machines is the same as that accepted 1 by polynomial time deterministic Turing machines is related to P-Complete problems in that these two classes of languages are the same iff each P-Complete problem has a polynomial deterministic solution. l In view of this, it appears very likely that this equivalence class defines a class of problems that cannot be solved in deterministic polynomial time. Key words. complexity, polynomial reducibility, deterministic and nondeterministic algorithms, network flows, game theory. optimization, AND/OR graphs 1. Introduction. Cook [3J showed that determining whether the class of languages accepted by nondeterministic Turing machines operating in polynomial time was the same as that accepted by deterministic polynomial time bounded Turing machines was as hard as deciding if there was a deterministic polynomial algorithm for the satisfiability problem of propositional calculas (actually, Cook showed that there was a polynomial algorithm for satisfiability iff the determin istic and nondeterministic polynomial time languages were the same). This problem about equivalence of the two classes oflanguages is a long-standing open problem from complexity theory. Intuitively, it seems that the lM'0 classes are not the same. Consequently there may be no polynomial algorithm for the satisfiability problem. Further empirical evidence that the two classes may not be the same was provided by Karp in [5J, where he showed that many other problems like the traveling sales man problem, finding the maximum clique ofa graph, minimal colorings of graphs, minimal set covers, etc., had polynomial algorithms iff the two classes of languages were the same. In view of this relationship amongst all these problems, we can say that there is strong evidence to believe that there is no polynomial algorithm for any of the problems given in Karp [5J. However, no formal proof of this (if this is true) is available at this time. The equivalence class of problems having the property that each member of the class has a polynomial algorithm iff nondeterministic and deterministic poly nomiallanguages are the same is known as P-Complete. In [5J, Karp presents 21 members of this class. The purpose of this paper is to extend the class of known P-Complete problems. Specifically, we show that several important problems from * Received by the editors July 18, 1973, and in revised form April 6, 1974. The research reported here is part of the author's Ph.D. dissertation, Cornell University. An earlier version of these results was presented at the 1972 IEEE Annual Conference on Switching and Automata Theory. This research was supported in part by the National Science Foundation under Grant GJ-33169. t Department of Computer Science, Cornell University, Ithaca. New York. Now at Department of Computer, Information, and Control Sciences, University of Minnesota, Minneapolis, Minnesota 55455. 262 264 SARTAJ SAHNI There are several ways to show that a problem L is P-Complete. For instance, one could show L to be P-Equivalent to M, where M is a problem already known to be P-Complete, or show that L has a polynomial algorithm iff P = NP, etc. Most of the proofs in the next section will adopt the following approach: (i) show that "if P = NP, then L" is polynomial solvable, i.e., L IX (P = NP), and (ii) show M IX L, where M is a problem known to be P-Complete. M will usually be the satisfiability problem of propositional calculus (see Karp [5J for a formal definition of this problem). 2. P-Complete and P-Hard problems. In this section we shall show that several frequently encountered problems in various areas such as network flows, game theory, graph theory, nonlinear and linear optimization are either P Complete or at least P-Hard. The reductions are easily seen to be effective. The polynomial factors involved in the reduction are small (usually a constant or a polynomial of degree 1). 2.1. Some known P-Complete problems. To prove some of the reductions, we shall make use ofsome known members of Pc. A briefdescription ofthese members is given below. (A more exhaustive list may be found in Karp [5J.) (i) Propositional calculus. (a) Satisfiability. Given a formula from the propositional calculus, in conjunctive normal form (CNF), is there an assignment of truth values for which it is "true"? (b) Satisfiability with exactly 3 literals per clause. This is the same as (a), except that each clause of the formula now has exactly 3 literals. (c) Tautology. Given a formula, from the propositional calculus, in dis junctive normal form (DNF), does it have the value "true" for all pos sible assignments of truth values. (ii) Sum of subsets of integers. Given a multiset S = (SI' ... , sr) of positive integers and a positive integer M, does there exist a submultiset of S that sums to M? (This problem is called the Knapsack problem in [5]. However, here we shall denote by "Knapsack problem" a similar integer optimization problem.) Note that a multiset is a collection of elements that may not necessarily be distinct. (iii) Maximum independent set. Let G be a graph with vertices V p V z , ... , vn • A set of vertices is independent if no two members of the set are adjacent in G. A maximum independent set is an independent set that has a maximum number of vertices. (iv) Directed Hamiltonian cycle. Given a directed graph G, does it have a cycle that includes each vertex exactly once? THEOREM 2.1. The following problems are in PC: (i) Satisfiability, satisfiability with exactly three literals per clause, tautology; (ii) Sum of subsets of integers; (iii) Maximum independent set ofa graph; (iv) Directed Hamiltonian cycle. , Proof (i) is proved in Cook [3]. The rest are proved in Karp [5]. I., I Cook [3J actually shows that satisfiability with at most three literals per I clause is P-Comp1ete. From this result one may trivially show that satisfiability I I' I with exactly three literals per clause is P-Complete. We show how to convert a '.. '. , J .... COMPUTAT10NALLY RELATED PROBLEMS 265 two-literal clause into an equivalent pair of three-literal clauses. Let (x I + xz) be the clause and y a variable not occurring in the formula. Then (XI + X z + y) /\ (XI + X z + y) is satisfiable iff the two-literal clause is. All two-literal clauses may be replaced by pairs of three-literal clauses as above. This at most doubles the number of clauses. Clauses with only one literal can be deleted, the literal determin ing the truth assignment to that variable. 2.2. Integer network flows. We define the following network problems. Problem N(i). Network flows with multipliers. Let G be a directed graph with vertices sl' 05 z, VI' •.. , Vn and edges (arcs) e l , ez, ... , em' Let w-(v) be the set of arcs directed into vertex V and w+(v) those arcs directed away from v. G will be said to denote a network with multipliers if: (a) the source SI of the network has no incoming arcs, i.e., W-(SI) = 0; (b) the sink Sz has no outgoing arcs, i.e., w+(sz) = 0; (c) to every vertex Vi (excluding the source and sink) there corresponds an integer hi > 0, called its multiplier. (d) to each edge ei there corresponds an interval [ai' bJ ; Conditions (a)-(d) are said to define a transportation network. We are required to find a flow vector, with integer entries, <I> = (¢I' ¢z, ... , ¢m) such that the following conditions hold. ~ ~ Condition 1. ai ¢i bi ; Condition 2. h(v) LiEW-(V) ¢i = LiEw+(V) ¢i for all V E V(G), V =f. SI V =f. sz; Condition 3. LiEW - (S2) ¢i is maximized. In what follows, we assume ai = 0. Problem N(ii). Multicommodity network .flows. The transportation network is as above, but now h(v) = 1 for all v in V(G). We have, however, several different commodities c l • cz, ... , Cn' and some arcs may be labeled, i.e., they can carry' only certain commodities. Each arc is assigned a capacity, and we wish to know whether a flow R = (r I' rz' ... , rn ), where ri is the quantity of the ith commodity, is feasible in the network. Problem N(iii). Integer .flows with homologous arcs. The transportation network remains the same. Also, h(v) = 1 and there is only one commodity. Certain arcs are paired, and we require that if arcs i, j are paired, then ¢i = ¢j' We wish to know if a flow of at least F is feasible in the network. Problem N(iv). Integer .flows with bundles. The arcs in the network are divided into sets I I' ... , I k (the sets may overlap). Each set is called a bundle, and with each bundle is associated a capacity Ci . We wish to know if a flow ?oF is feasible in the network: ~ I~j~k L ¢i C j , ielj and h(v) = 1 VVE V(G). THEOREM 2.2. Problems N(i)-N(iv) are in Pc.