IN general setting, a combinatorial network is

Similar documents
9.1 Cook-Levin Theorem

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

Number Theory and Graph Theory

Matching Theory. Figure 1: Is this graph bipartite?

Theorem 2.9: nearest addition algorithm

W4231: Analysis of Algorithms

1. Suppose you are given a magic black box that somehow answers the following decision problem in polynomial time:

Paths, Flowers and Vertex Cover

Chapter 8. NP-complete problems

1 The Traveling Salesperson Problem (TSP)

The Complexity of Minimizing Certain Cost Metrics for k-source Spanning Trees

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

CPS 102: Discrete Mathematics. Quiz 3 Date: Wednesday November 30, Instructor: Bruce Maggs NAME: Prob # Score. Total 60

12.1 Formulation of General Perfect Matching

The NP-Completeness of Some Edge-Partition Problems

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

2SAT Andreas Klappenecker

NP-Hardness. We start by defining types of problem, and then move on to defining the polynomial-time reductions.

3 No-Wait Job Shops with Variable Processing Times

ptimum Clustering r Delay Minimization

K 4,4 e Has No Finite Planar Cover

PACKING DIGRAPHS WITH DIRECTED CLOSED TRAILS

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W.

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

arxiv: v1 [cs.cc] 2 Sep 2017

6. Lecture notes on matroid intersection

Eulerian disjoint paths problem in grid graphs is NP-complete

Notes on Minimum Cuts and Modular Functions

Discrete Applied Mathematics. A revision and extension of results on 4-regular, 4-connected, claw-free graphs

DO NOT RE-DISTRIBUTE THIS SOLUTION FILE

Beyond the Combinatorial Limit in Depth Minimization for LUT-Based FPGA Designs

Solutions for the Exam 6 January 2014

Recognizing Interval Bigraphs by Forbidden Patterns

Computability Theory

NP-Completeness of 3SAT, 1-IN-3SAT and MAX 2SAT

Vertex 3-colorability of claw-free graphs

2386 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 52, NO. 6, JUNE 2006

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

2. CONNECTIVITY Connectivity

CMPSCI611: The SUBSET-SUM Problem Lecture 18

Definition: A graph G = (V, E) is called a tree if G is connected and acyclic. The following theorem captures many important facts about trees.

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

1 Definition of Reduction

NP-Complete Reductions 2

Paths, Flowers and Vertex Cover

On Nominal Delay Minimization in LUT-Based FPGA Technology Mapping

Topic: Local Search: Max-Cut, Facility Location Date: 2/13/2007

The strong chromatic number of a graph

On Covering a Graph Optimally with Induced Subgraphs

ALGORITHMS EXAMINATION Department of Computer Science New York University December 17, 2007

MC 302 GRAPH THEORY 10/1/13 Solutions to HW #2 50 points + 6 XC points

Lecture 2: NP-Completeness

Assignment 4 Solutions of graph problems

FINAL EXAM SOLUTIONS

Fundamental Properties of Graphs

Approximation Algorithms: The Primal-Dual Method. My T. Thai

Homework 4 Solutions

PAIRED-DOMINATION. S. Fitzpatrick. Dalhousie University, Halifax, Canada, B3H 3J5. and B. Hartnell. Saint Mary s University, Halifax, Canada, B3H 3C3

Advanced Combinatorial Optimization September 17, Lecture 3. Sketch some results regarding ear-decompositions and factor-critical graphs.

General Models for Optimum Arbitrary-Dimension FPGA Switch Box Designs

11. APPROXIMATION ALGORITHMS

Best known solution time is Ω(V!) Check every permutation of vertices to see if there is a graph edge between adjacent vertices

Chapter 10 Part 1: Reduction

Assignment # 4 Selected Solutions

Complexity of Disjoint Π-Vertex Deletion for Disconnected Forbidden Subgraphs

Definition For vertices u, v V (G), the distance from u to v, denoted d(u, v), in G is the length of a shortest u, v-path. 1

Example of a Demonstration that a Problem is NP-Complete by reduction from CNF-SAT

NP-complete Reductions

In this lecture, we ll look at applications of duality to three problems:

Algorithm and Complexity of Disjointed Connected Dominating Set Problem on Trees

PCP and Hardness of Approximation

Clustering Using Graph Connectivity

Feedback Arc Set in Bipartite Tournaments is NP-Complete

On the Rectangle Escape Problem

Rigidity, connectivity and graph decompositions

Partitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths

Modules. 6 Hamilton Graphs (4-8 lectures) Introduction Necessary conditions and sufficient conditions Exercises...

A New Reduction from 3-SAT to Graph K- Colorability for Frequency Assignment Problem

Geometric Unique Set Cover on Unit Disks and Unit Squares

P and NP CISC5835, Algorithms for Big Data CIS, Fordham Univ. Instructor: X. Zhang

P and NP CISC4080, Computer Algorithms CIS, Fordham Univ. Instructor: X. Zhang

Interleaving Schemes on Circulant Graphs with Two Offsets

The Encoding Complexity of Network Coding

On the Rectangle Escape Problem

Figure 1: An example of a hypercube 1: Given that the source and destination addresses are n-bit vectors, consider the following simple choice of rout

Complexity Classes and Polynomial-time Reductions

Mathematical and Algorithmic Foundations Linear Programming and Matchings

HW Graph Theory SOLUTIONS (hbovik)

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

Some Upper Bounds for Signed Star Domination Number of Graphs. S. Akbari, A. Norouzi-Fard, A. Rezaei, R. Rotabi, S. Sabour.

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14

Notes for Lecture 24

Minimal Dominating Sets in Graphs: Enumeration, Combinatorial Bounds and Graph Classes

NP and computational intractability. Kleinberg and Tardos, chapter 8

Decreasing the Diameter of Bounded Degree Graphs

Progress Towards the Total Domination Game 3 4 -Conjecture

6 Randomized rounding of semidefinite programs

On Approximating Minimum Vertex Cover for Graphs with Perfect Matching

Reductions. Linear Time Reductions. Desiderata. Reduction. Desiderata. Classify problems according to their computational requirements.

Steiner Trees and Forests

Transcription:

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 1 Clustering without replication: approximation and inapproximability Zola Donovan, Vahan Mkrtchyan, and K. Subramani, arxiv:1412.4051v1 [cs.ds] 11 Dec 2014 Abstract We consider the problem of clustering the nodes of directed acyclic graphs when the replication of logic is not allowed. We show that the problem is NP-hard even when the vertices of the DAG are unweighted and the cluster capacity is 2. Moreover, when the vertices of the DAG are weighted, the problem does not admit a (2 ǫ)-approximation algorithm for eachǫ > 0, unless P=NP. On the positive side, we show that in case the vertices of the DAG are unweighted and M = 2, the problem admits a 2-approximation algorithm. Finally, we present some cases when the problem can be solved in polynomial time. Index Terms Clustering without replication, NPcompleteness, approximation, inapproximability. I. INTRODUCTION IN general setting, a combinatorial network is a directed acyclic graph (or DAG), that is, the underlying network can be represented as a directed graph G = (V,E) with vertex set V and edgeset E having no directed cycles. In such networks the elements of E are directed edges or are arcs, and each vertex from V will represent a gate, each arc (u, v) will represent an interconnection between gates u and v. A cluster is defined as a subset of vertices of V. Fanin and fanout of a vertex are the number of arcs of G that enter and leave the vertex, respectively. An input or source is a vertex with fanin 0, Z. Donovan, V. Mkrtchyan and K. Subramani are with the Lane Department of Computer Science and Electrical Engineering, West Virginia University, Morgantown, WV, 26506 USA e-mail: (zdonovan@mix.wvu.edu, vahan.mkrtchyan@mail.wvu.edu, K.Subramani@mail.wvu.edu). V. Mkrtchyan and K. Subramani are supported in part by the Air Force of Scientific Research through Award FA9550-12-1-0199. K. Subramani is also supported by the National Science Foundation through Award CCF-1305054 Manuscript received April 19, 2005; revised December 27, 2012. and the output or sink is a vertex with fanout 0. As the example from figure 1 shows, a network may have more than one source and sink. a b c Fig. 1. DAG representing a combinatorial network. It contains two sources and two sinks. Let I and O be the set of inputs and outputs of G, respectively. In this example I = {a,b} and O = {e,f}. Moreover C 1 = {a,c,d} and C 2 = {b,e,f} represent a pair of disjoint clusters in the network. The gates and their interconnections in the DAG represent the implementations of one or more boolean functions. A realization of a boolean function is the assignment of the gates to chips. Observe that due to fabrication and capacity constraints, it is not possible in the general case to realize all the gates in the same chip. Consequently, the nodes of the DAG need to be partitioned into clusters, with each cluster representing a chip in the realization of the overall design. The gates in the circuit have a delay associated with them, which represents the propagation time d f e

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 2 for a signal from its input to its output. An edge of the DAG can suffer one of two types of delay, viz. (1) if the edge connects two nodes in the same cluster, then it suffers an intra-modular delay d, (2) if the edge connects two nodes in different clusters, then it suffers an inter-modular delay D. Traditionally, the inter-modular delay tends to dominate in all delay calculations, since D >> d. The delay of the circuit is the longest delay on any path between a source and a sink. Technology and design paradigms impose a number of constraints on the clustering of the circuit. A clustering is feasible if all clusters obey the imposed constraints. Constraints can be either monotone or non-monotone. In [5] the following definition is given: Definition 1.1: A constraint is said to be monotone if and only if any connected subset of nodes in a feasible cluster is also feasible. Typical constraints include capacity, that is, the weight of a cluster is bounded by M, a fixed constant (which is an example of a monotone constraint) and pin-limitations (which is an example of a non-monotone constraint), that is the total degree of a cluster is bounded by P a fixed constant. A clustering partitions the vertex set into a number of subsets, which may or may not be disjoint (depending whether or not replication is allowed). The edges of the underlying graph that connect a node in one cluster to a node in another cluster are called cut-edges. A clustering algorithm tries to achieve one or both of the following goals, subject to a combination of one or more constraints. (1) Delay minimization through the circuit [8], [7], [1], [5] (2) Minimize the total number of cut-edges. [3], [4], [6], [9], [10], [2] The rest of the paper is organized as follows. In section II we give the formal statement of the problem. The related work is surveyed in section III. In section IV we present a hardness result for the clustering problem, then in section V we observe that this result already implies an inapproximability result for the problem. In section VI we present an approximation algorithm for solving the clustering problem, when the vertices of the DAG are unweighted and the cluster capacity is 2. In section VII we present some cases when the problem can be solved exactly. Finally, we conclude the paper in section VIII, where we present a summary of the main results that are obtained in the paper. mds December 27, 2012 II. STATEMENT OF THE PROBLEM In the paper we will study a clustering problem under a delay model, where replication of the logic is not allowed. The delay model is the following. 1) Associated with every gate v of the network there is a delay δ(v) and a weight w(v). 2) The delay encountered on an interconnection between two gates in a cluster is d. 3) An interconnection between gates in different clusters suffers a delay of D >> d. The weight of a cluster is the sum of the weights of the nodes in the cluster. The delay of the network is the maximum delay suffered on a path from a source to any of the sinks. The precise mathematical formulation of the problem can now be specified as follows: given a network G = (V,E), with weights on the nodes, partition nodes into clusters so that 1) The weight of the cluster is bounded by W. 2) The delay of the network is minimized. In the figure below we consider a simple example of a clustering of a network where replication of the logic is not allowed. In this example, weights and delays are equal to one, the upper bound for the weight of the cluster is M = 2, d = 1, D = 2. It can be easily seen that the partition Σ = {{s,a},{b,d},{c,t}} forms a feasible clustering whose weight is 8. Moreover, it can be checked that this clustering is optimal. III. RELATED WORK In [5] a polynomial-time optimal solution to the clustering problem is given assuming the unit delay model. In this model, there is no delay that is associated with any gate or with any edge linking two gates within a cluster. A delay of one unit

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 3 Fig. 2. s s a b a b An example of a network and its clustering of time is assumed along any edge crossing a cluster boundary. Let us note that in that paper replication of the logic is allowed, that is, a node may be present in many clusters. The more general delay model considered in this paper is presented in [7]. In that paper an algorithm is given that constructs a clustering that aims to minimize the delay under the general delay model. Let us note that the algorithm achieves optimum delay under some specific conditions. In [8] another clustering algorithm is presented, and in the same paper it is proved that the algorithm always finds the optimum clustering. IV. COMPUTATIONAL COMPLEXITY OF THE c d c d CLUSTERING PROBLEM It turns out that it is NP-hard to find an optimal clustering in case replication of the logic is not t t allowed. Below we prove this. Theorem 4.1: The problem of finding the optimal clustering in case replication of the nodes is not allowed is NP-hard. Proof: We will present a reduction from the partition problem. Recall that in an instance of this problem, we are given a set S = {a 1,a 2,...,a n }, and the goal is to check whether there is a set S 1 S, such that i S 1 a i = j S S 1 a j. Observe that without loss of generality, we can assume that B = i S a i is even, or else the problem is trivial. We now construct an instance of Exact Clustering as shown in the Figure 3. There is a source s connected to a sink t through n nodes labeled a 1 through a n. None of the a i nodes are connected to each other. Each of the a i nodes has a weight a i and s and t have weights equal to B 2. We set the inter-cluster delay to be 1 i.e. an edge has a weight 1 if it connects nodes in different clusters and it has a weight of 0 if it connects nodes in the same cluster. All nodes are given a delay of 0. The packing size is set to B. The description of the reduction is completed. To complete the proof of the theorem, let us make the following observation: if there exists a partition of S into S 1 and S S 1 such that i S 1 a i = j S S 1 a j = B 2, then we can group the nodes corresponding to the elements in S 1 with s and the remaining nodes with t in G. The packing constraint is met and the maximum delay from s to t is 1. Likewise, if we are able to pack the nodes in G into clusters such that the maximum delay from s to t is 1, then we observe that: 1) Every node must be packed with either s or t, or else the maximum delay will have to be 2 going through that node, 2) w(s)+w(s i )+w(t)+w(t i ) = 2 B, where, w(s) is the weight of node s, w(s i ) is the sum of the weights of nodes packed with s and likewise for t, 3) Since w(s) + w(s i ),w(t) + w(t i ) B, we have thatw(s i ),w(t i ) B 2, which implies that w(s i ) = B 2 and we have obtained the desired partition.

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 4 s k b e h a j a 1 a 2 a n c f i t g Fig. 3. Reduction from partition problem to clustering Fig. 4. The DAG that helps to bridge the 4-cycles. We have also focused on the unweighted case of the problem, which is the case when the weights of vertices of the input DAG are 1. We also assumed that the vertices have no delays, and that the cluster capacity M = 2. For this case, observe that the following simple lemma holds: Lemma 4.1: There is always an optimal clustering of the vertices of DAG G, such that any two vertices lying in the same cluster are adjacent, and these edges form a maximal matching in the underlying simple graph of G. Recall that a matching of a graph is called maximal, if it does not lie in a larger matching. For this case we were able to strengthen Theorem 4.1 by proving Theorem 4.2. The proof of the latter requires the following: Lemma 4.2: For any maximal matching of d- edges of the DAG in Figure IV, there exists no path with delay 4D, and there is at least one path of delay (d+3d). Proof: Choose a maximal matching of Figure IV. First, observe that either arc ab, or arc ac must have delay D (it may be the case that they both have a delay of D, but of course they cannot both have a delay of d since they are both incident from vertex a). So, without loss of generality, suppose arc ac has a delay of D. Likewise, observe that either arc hj, or arc ij must have delay D (it may be the case that they both have a delay of D, but of course they cannot both have a delay of d since they are both incident to vertex j). So, without loss of generality, suppose arc ij has a delay of D. Now, observe that either arc cf, or arc cg must have delay D, but not both since it would violate the fact that we have chosen a maximal matching. So, suppose cf has delay D, then cg must have delay d. This also means that gi must have delay D, and fi must have delay d since we have chosen a maximal matching. Notice that if ab and hj both have D delays, then an argument similar to the previous one holds for the internal arcs in the upper half of the DAG, and all paths have delay d + 3D, with no path having delay 4D. If ab and hj both have delay d, then the internal arcs in the upper half of the DAG would all have delays of D, so that the delay along the paths starting at vertex a and ending at vertex j would be 2d+2D. If ab or hj (and not both) arcs have a delay of d, then exactly one of the internal arcs in the upper half of the DAG must have a delay of d (the one with an endpoint not incident with an arc having delay d). In this case, one (a,j)-path in the upper half of the DAG has delay 2d+2D, while the other (a,j)-path has delay d+3d. Finally, suppose ac and hj both have a delay of D, and ab and ij both have a delay of d. Then, exactly one of the internal arcs in both the upper and lower halves of the DAG must have a delay of

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 5 d (namely, the arcs that do not have vertices b or i as endpoints). In this case, an (a,j)-path in both the upper and lower halves of the DAG have delay 2d + 2D, while the other (a,j)-path in the upper and lower halves have delay d+3d. The argument is similar if arcs ab and ij both have delay D, when arcs ac and hj both have delay d. In every case, there is at least one d+3d-path, and no 4D-paths. This means that the maximum delay of the DAG is d+3d. Theorem 4.2: The clustering problem is NPhard even when M = 2 and the maximum degree of each vertex in the underlying simple graph of the input DAG G is at most 3. Proof: The reduction, from 3-SAT, is formulated as follows: 3-SAT: Given a 3-CNF formula K(x 1,,x n ) = D 1 D s, the goal is to check whether the boolean variables, x 1,,x n, have a truth assignment such that all clauses are satisfied. A clause is said to be satisfied under the truth assignment if its value is true. Figure 5 shows the DAG which corresponds to a literal which is a boolean variable. Notice that the underlying simple graph of this DAG contains two perfect matchings. If this DAG is clustered with respect to perfect matchings of G, then it can be shown that the maximum delay is either 2 d+d or 2 D+d. Let us interpret the clustering as follows: if horizontal edges of the 4-cycle are taken, then the value of the variable should be taken as true; and if the vertical edges are taken, then the value of the variable should be taken as false. The variable is satisfied if and only if the corresponding DAG is clustered in such a way that the delay is at most 2 d+d (this is directly verifiable). Thus, this DAG simulates a boolean variable. Figure 6 shows the DAG which corresponds to a literal which is the negation of a boolean variable. Notice that the underlying simple graph of this DAG also contains two perfect matchings. If this DAG is clustered with respect to the perfect matchings of G, then it can be shown that the maximum delay is either 2 d + D or 2 D + d. Let us interpret the clustering as follows: if horizontal edges of the 4-cycle are taken, then the value of the variable Fig. 5. The DAG corresponding to the boolean variable whose truth assignment is true. Fig. 6. The DAG corresponding to the negated boolean variable. should be taken as true; and if the vertical edges are taken, then the value of the variable should be taken as false. The negated variable is satisfied if and only if the corresponding DAG is clustered in such a way that the delay is at most 2 d+d (this is directly verifiable). Thus, this DAG simulates a negated boolean variable. Now, suppose we are given a disjunction of literals. For simplicity s sake, assume the disjunction is one consisting of three boolean variables denoted by x, y and z. The DAG corresponding to such a disjunction can be found in Figure 7. It can be shown that the underlying simple graph of this DAG contains a perfect matching. Let us interpret the clustering as follows: if horizontal edges of the 4-

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 6 Fig. 7. The DAG corresponding to a disjunction x y z. cycle are taken, then the value of the corresponding variable should be taken as true; and if the vertical edges are taken, then the value of the corresponding variable should be taken as false. The disjunction is satisfied if and only if the corresponding DAG is clustered in such a way that the delay is at most 8 d + 13 D (this is directly verifiable). Thus, this DAG simulates a disjunction of three boolean variables. One main observation is that if the first arc of a 2-path leading out of, or the second arc of a 2-path leading into a 4-cycle has delay d, then the delay can always be swapped so that the other arc in the 2-path has delay d instead. This swapping technique is also supported by the lemma, since the max delay of the DAG that helps to bridge the 4- cycles will never be impacted (i.e., the max delay is always d+ 3D). So, notice that one can always take a perfect matching and not some arbitrary matching. Finally, assume we are given a 3-CNF formula K(x 1,,x n ) = D 1 D s. Suppose that DAGs corresponding to each of the clauses are already constructed. For each of the variables x i (1 i n), take the four-cycles corresponding to them, and join them cyclically, as shown in Figure 8. The resulting DAG is the one corresponding to the original conjunctive normal form K(x 1,,x n ) = D 1 D s. Observe that the number of vertices of the resulting DAG is 38 s, hence the described reduction is linear. It is a matter of direct verification that K(x 1,,x n ) = D 1 D s is satisfiable, if and only if the resulting DAG has a clustering which corresponds to a maximum matching where two d edges from each 4-cycle are taken, and whose delay is at most 8 d+13 D.. Fig. 8. The four-cycles corresponding to the same variable are joined cyclically. V. AN INAPPROXIMABILITY RESULT OVER THE CLUSTERING PROBLEM In this section we show that there is no approximation algorithm that can achieve a delay which is less than twice the optimal. Theorem 5.1: For each ǫ > 0 the problem of finding the optimal clustering in case replication of the vertices is not allowed does not admit a (2 ǫ)- approximation algorithm unless P=NP. Proof: Consider the reduction from partition problem described in the proof of theorem 4.1. Observe that in any approximate solution of the clustering problem, there must exist at least one node which is not packed with either s or t. This means that s and t do not belong to the same cluster. Hence the approximation algorithm can be used to solve the partition problem exactly.

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 7 VI. POSITIVE APPROXIMATION RESULT Theorem 6.1: The clustering problem when M = 2 admits a 2-approximation algorithm. 1: Input: a DAG G; 2: Output: a clustering of vertices of G; 3: Take a longest path P in DAG; 4: Declare the central edge e of P as a d-edge. 5: The edges adjacent to e are declared as D- edges. 6: Remove the edge e together with edges incident to it. 7: Continue this process till all edges of G are exhausted. Algorithm VI.1: A 2-approximation algorithm for the clustering problem Proof: For a path P, let l(p) be the length of P, that is, the number of edges of P. Moreover, let l = max P l(p), that is, l denotes the length of a longest path of G. We proved the following lower bound for OPTthe delay of the optimal clustering of G when M = 2. OPT l(p) 2 d+ l(p) 2 D. Here P is any path, so particularly this bound implies that: OPT l 2 d+ l 2 D. Now, let us estimate ALG-the delay of the clustering found of the algorithm. Let P be an optimal path with respect to this clustering. We will consider three cases. Case 1: l(p) < l. Then one has the following chain of inequalities: ALG (l 1) D 2 ( l 2 d+ l 2 D) 2 OPT. Case 2: l(p) = l and P contains at least one d-edge. Then one has the following chain of inequalities: ALG d+(l 1) D 2 ( l 2 d+ l 2 D) 2 OPT. Case 3: l(p) = l and all edges of P are D-edges. We will consider two sub-cases of this case. Sub-case (3a): l is even. Then one has the following chain of inequalities: ALG l D 2 ( l 2 d+ l 2 D) 2 OPT. Sub-case (3b): l is odd. Assume that l = 2 k+1. Let us show that in this case, one has: OPT l 2 d+ l 2 D. Clearly, we need to rule out the case, when OPT = l 2 d+ l 2 D = (k +1) d+k D, which is equivalent to saying that in any optimal path, which is of odd length l, the edges with odd number of indices, are d-edges. This particularly means that all central edges of longest paths are d-edges, hence it is impossible to have adjacent central edges of longest paths unless they are the same. Since we are in case 3, all edges of P are D- edges, particularly the central, (k + 1)-edge e = (u,v) of P. Now, since this edge is also D-edge, it means that there is an edge e adjacent to e, so that the algorithm has declared e as a d-edge. Clearly, this means that e is a central edge of some other path P of length l contradicting our conclusion

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 8 made above. We are ready to complete the consideration of this case as well. Observe that one has the following chain of inequalities: ALG l D 2 ( l 2 d+ l 2 D) 2 OPT. The proof of the theorem is completed. Again, there is an example of a DAG, for which the algorithm achieves the bound 2. Fig. 9. The DAG achieving the bound 2 Observe that in this example, OPT = 2 d+d. However, the algorithm picks up the central edge first, then the delay of the resulting clustering would be ALG = 2 D +d, which shows that the bound 2 cannot be improved for this algorithm. Finally observe that one can construct infinite sequence of DAGs, such that the algorithm achieves the bound2 (simply take vertex disjoint copies of three-paths). VII. EXACT RESULT Theorem 7.1: There is a polynomial-time algorithm for solving the clustering problem form = 2, when the underlying simple graph of the input DAG G is a tree. Proof: The problem is easy to solve when V(T) 3. Now, by induction assume that we can solve the problem for all trees T with V(T ) < V(T), and let us consider the tree T with V(T) 4. Let V(0) and V(1) be the set of vertices of degree one in T and T V(0), respectively. Since V(T) 4, we have that T V(0). Let x be a vertex with x T V(0). Observe that since x is pendant in T V(0), we have that x has all its neighbours in V(0), except may be one. We will consider three cases. Case 1: d T (x) 4. Then x is incident to at least three pendant vertices in V(0), hence at least two of them, say y 1 and y 2, are either a source or a sink. Since M = 2, we cannot put x, y 1 and y 2 in the same cluster, hence in any optimal clustering either y 1 or y 2 lies in a cluster that x does not lie. Taking into account that y 1 and y 2, are either a source or a sink at the same time, there is no difference which of them should be put in the different cluster. Hence we can remove the vertex y 2 from T, cluster the resulting DAG, optimally, and put y 2 back as an isolated cluster. This will result into an optimal clustering of G by the argumentation given above. Case 2: d T (x) = 3. In this case, x is adjacent to two pendant verticesy 1 andy 2. If both of them are a source or both of them are a sink, then we can come up with this exactly by the same argumentation given in case 1, hence without loss of generality, we can assume that y 1 is a source, and y 2 is a sink. Moreover, we can assume that the other edge e (the edge, not incident to y 1 and y 2 ), that is incident to x, is oriented so that it goes out of x. The other case can be handled similarly. Observe that OPT d+d. This is follows from the existence of a path of length two connecting y 1 and y 2. Now, we remove y 1 and y 2, and by induction we get an optimal clustering of the resulting DAG. Now, if the delay of e is D, then we put x and y 1 in the same cluster, and y 2 as an isolated cluster. Observe that the resulting clustering of G is optimal. On the other hand, if the delay of e is d, then we remove x from its old cluster, and put x and y 1 in the same cluster, and y 2 as an isolated cluster. Observe that the resulting clustering of G is again optimal. Case 3: d T (x) = 2. Let y be the only pendant neighbor of x. Now, if x is a source or a sink, then we can remove y, cluster the resulting DAG optimally by induction, and add y as an isolated cluster. Clearly, we are going to get an optimal clustering of G. Thus we can assume that x is neither a source nor a sink. Observe that without loss of generality we can assume that y is a source. The other case

JOURNAL OF L A TEX CLASS FILES, VOL. 11, NO. 4, DECEMBER 2012 9 can be handled similarly. Now, we remove x and y from G, and apply the induction hypothesis to the resulting DAG. By induction we have an optimal clustering of the smaller DAG. Now, we add x and y as a new cluster. Clearly, we are going to get an optimal clustering of G. The proof of the theorem is completed. VIII. CONCLUSION In this paper, we considered the problem of clustering the nodes of DAG when the replication of the logic is not allowed. We showed that the problem is NP-hard. Our reduction was from the well-known partition problem. The strategy developed for the proof allows us to prove that the problem does not admit a (2 ǫ)-approximation algorithm for each ǫ > 0 unless P=NP. We also showed that the problem remains NP-hard even when the vertices of the DAG are unweighted, their degree in the underlying simple graph of the DAG is at most three and the cluster capacity M = 2. On the positive side, we have designed a 2-approximation algorithm for the unweighted case of the problem when M = 2. Finally, we have shown that there is a polynomial algorithm for the problem when the underlying simple graph of the DAG is a tree. [7] R. K. Brayton R. Murgai and A. Sangiovanni-Vincentelli, On clustering for minimum delay/area. In International Conference on Computer Aided Design, pages 617 November 1991. [8] Rajmohan Rajaraman and D. F. Wong, Optimal clustering for delay minimization. In Proceedings of the 30th ACM/IEEE Design Automation Conference, pages 309174, Washington, DC, June 1993. IEEE Computer Society. [9] W. Deng, and Sh. Dutt, Vlsi circuit partitioning by clusterremoval using iterative improvement techniques. In Proceedings of the IEEE International Conference on CAD, pages 194170, 1996. [10] D. F. Wong and W.-K. Mak. Minimum replication mincut partitioning. In Proceedings of the IEEE International Conference on CAD, pages 205170, 1996. Zola Donovan Biography text here. REFERENCES [1] J. Cong and Y. Ding, An optimal technology mapping algorithm for delay optimization in lookup-table based fpga designs., In Proceedings of the IEEE International Conference on Computer-Aided Design, pages 4817, November 1992. [2] E. Barke, D. Behrens, and K. Hebrich, Heirarchical partitioning. In Proceedings of the IEEE International Conference on CAD, pages 470177, 1997. [3] L. J. Hwang and A. E. Gamal, Min-cut replication in partitioned networks. In IEEE Transactions on Computer- Aided Design of Integrated Circuits and Systems, volume 14, January 1995. [4] Ch.-K. Cheng L. T. Liu, M.-T. Kuo, A replication cut for two-way partitioning. In IEEE Transactions on Computer- Aided Design of Integrated Circuits and Systems, volume 14, May 1995. [5] E. L. Lawler, K. N. Levitt, and J. Turner, Module clustering to minimize delay in digital networks. IEEE Transactions on Computers, C-18(1):4717, January 1966. [6] E. S. Kuh and M. Shih. Circuit partitioning under capacity and i/o constraints. In IEEE Custom Integrated Circuits Conference, number 28.5.1, 1994. Vahan Mkrtchyan Biography text here. K. Subramani Biography text here.