The Maximum Cut Problem in Co-bipartite Chain GraphsThis work is supported in part by TUBITAK Career Project Grant no: 111M482, and TUBITAK 2221 Program.

# The Maximum Cut Problem in Co-bipartite Chain Graphs††thanks: This work is supported in part by TUBITAK Career Project Grant no: 111M482, and TUBITAK 2221 Program.

Arman Boyacı A. Boyacı Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
22email: arman.boyaci@boun.edu.trT. Ekim Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
44email: tinaz.ekim@boun.edu.trM. Shalom TelHai College, Upper Galilee, 12210, Israel, cmshalom@telhai.ac.il
Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
66email: cmshalom@telhai.ac.il
Tınaz Ekim A. Boyacı Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
22email: arman.boyaci@boun.edu.trT. Ekim Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
44email: tinaz.ekim@boun.edu.trM. Shalom TelHai College, Upper Galilee, 12210, Israel, cmshalom@telhai.ac.il
Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
66email: cmshalom@telhai.ac.il

Mordechai Shalom
A. Boyacı Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
22email: arman.boyaci@boun.edu.trT. Ekim Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
44email: tinaz.ekim@boun.edu.trM. Shalom TelHai College, Upper Galilee, 12210, Israel, cmshalom@telhai.ac.il
Department of Industrial Engineering, Bogaziçi University, Istanbul, Turkey
66email: cmshalom@telhai.ac.il
###### Abstract

A co-bipartite chain graph is a co-bipartite graph in which the neighborhoods of the vertices in each clique can be linearly ordered with respect to inclusion. It is known that the maximum cut problem (MaxCut) is NP-hard in co-bipartite graphs Bodlaender00onthe (). We consider MaxCut in co-bipartite chain graphs. We first consider the twin-free case and present an explicit solution. We then show that MaxCut is polynomial time solvable in this graph class.

###### Keywords:
Maximum Cut Co-bipartite Graphs Dynamic Programming Chain Graph
68R10 05C85

## 1 Introduction

A cut of a graph is a partition of into two subsets where . The cut-set of is the set of edges of with exactly one endpoint in . The (unweighted) maximum cut problem (MaxCut) is to find a cut with a maximum size cut-set, of a given graph. MaxCut has applications in statistical physics and circuit layout design barahona1988application ().

MaxCut is a widely studied problem; it is in fact one of the 21 NP-hard problems of Karp K72 (). It is shown that MaxCut remains NP-hard when restricted to the following graph classes: chordal graphs, undirected path graphs, split graphs, tripartite graphs, co-bipartite graphs Bodlaender00onthe (), unit disk graphs DK2007 () and total graphs Guruswami1999217 (). On the positive side, it was shown that MaxCut can be solved in polynomial-time in planar graphs hadlock1975finding (), in line graphs Guruswami1999217 () and the class of graphs factorable to bounded treewidth graphs Bodlaender00onthe (). The last class includes cographs and bounded treewidth graphs and we describe it in detail in our work.

A co-bipartite chain graph is a co-bipartite graph such that the neighborhoods of the vertices in each clique can be linearly ordered with respect to inclusion. It is first introduced in heggernes2007linear () and in the same paper the authors present a polynomial-time recognition algorithm.

In our recent work BESZ14-2 () we show that every co-bipartite graph contains at most 4 vertices whose removal leave a co-bipartite chain graph.

In this work we first consider the twin-free co-bipartite chain graphs and show that these graphs are not factorable to bounded treewidth graphs. Therefore, the algorithm described in Bodlaender00onthe () is not applicable to these graphs. We present a maximum cut of these graphs having a specific structure. We continue with the general case (allowing twins) and propose a polynomial-time algorithm for MaxCut in co-bipartite chain graphs. We now proceed with definitions and preliminary results.

Graph notations and terms: Given a simple graph (no loops or parallel edges) and a vertex of , denotes an edge between two vertices of . We also denote by the fact that . We denote by the set of neighbors of . Two adjacent (resp. non-adjacent) vertices of are twins (resp. false twins) if . A vertex having degree zero is termed isolated, and a vertex adjacent to all other vertices is termed universal. For a graph and , we denote by the subgraph of induced by , and . For a singleton and a set , and . A vertex set is a clique (resp. stable set) (of ) if every pair of vertices in is adjacent (resp. non-adjacent). An automorphism on a graph is a permutation of , such that if and only if .

Some graph classes: A graph is bipartite if its vertex set can be partitioned into two independent sets . We denote such a graph as where is the edge set. A graph is co-bipartite if it is the complement of a bipartite graph, i.e. can be partitioned into two cliques . We denote such a graph as where is the set of edges that have exactly one endpoint in .

A bipartite chain graph is a bipartite graph where has a nested neighborhood ordering, i.e. its vertices can be ordered as such that . has a nested neighborhood ordering if and only if has one yannakakis1981node (). Theorem 2.3 of HPS90 () implies that if is a bipartite chain graph with no isolated vertices, then the number of distinct degrees in is equal to the number of distinct degrees in .

A co-bipartite graph is a co-bipartite chain (also known as co-chain) graph if has a nested neighborhood ordering heggernes2007linear (). Since for every , the result for chain graphs implies that has a nested neighborhood ordering if and only if has such an ordering.

Cuts: We denote a cut of a graph by one of the subsets of the partition. denotes the cut-set of , i.e. the set of the edges of with exactly one endpoint in , and is termed the cut size of . A maximum cut of is one having the biggest cut size among all cuts of . We refer to this size as the maximum cut size of . Clearly, and are dual; we thus can replace by and by everywhere. In particular, , and . For an automorphism of , is the cut such that if and only if . In other words and are identical up to automorphism. In particular, . Let be a random set of vertices where each vertex of is chosen to with probability , independent of other vertices. It is easy to see that the expected value of is . Therefore, the size of a maximum cut of a graph is at least .

## 2 Twin-free Co-bipartite Chain Graphs

### 2.1 The structure of twin-free co-bipartite chain graphs

Let be a twin-free co-chain graph, and let be the corresponding bipartite (chain) graph. Suppose that does not have isolated vertices and let be the number of distinct degrees of the vertices of , which by Theorem 2.3 of HPS90 () is equal to the number of distinct degrees of the vertices of . By the nested neighbourhood property, two vertices of (resp. ) with the same degree are false twins in , thus twins in . Since is twin-free, (resp. ) consists of exactly vertices with distinct non-zero degrees. Every such degree is between 1 and . By the pigeonhole principle, (resp. ) has exactly one vertex of each possible degree. Let (resp. ) be the unique vertex of (resp. ) with degree in . We observe that (resp. ) is adjacent to all the vertices of (in both and ), and that it is also adjacent to all the vertices of (in ). Therefore, and are universal and twins in , contradicting our assumption. We conclude that at least one of and contains a vertex isolated in . We assume without loss of generality that contains such a vertex. Then, for a given , there are two twin-free co-bipartite chain graphs depending on whether has an isolated vertex in . We denote by (resp. ) the graph containing (resp. lacking) such a vertex. Figure 1 depicts the graph . Therefore, the class of twin-free co-bipartite chain graphs is . Note that is the cardinality of and excluding the isolated vertices of .

Let be the vertex of having degree in and be the vertex of having degree in . Then if and only if . We term the pair as the row of (or ).

###### Observation 1
1. The permutation defined as , is an automorphism on .

2. .

3. is universal in .

4. .

5. The permutation defined as

 π−k(x)={xif~{}x=vkπk−1(x)otherwise.

is an automorphism on .

The last observation follows from the previous two.

We partition the edges of as: a) clique edges of (resp. ), i.e. edges with both endpoints in (resp. ) b) diagonal edges, i.e. edges with . We note that there are clique edges of (resp. ) and diagonal edges. Therefore, , and the size of a maximum cut is at least . On the other hand, any cut may contain at most half of the clique edges and this is achieved when the cut partitions each clique into two sets of equal size. Therefore, every cut contains at most edges. We will show that the maximum cut size of is .

### 2.2 Inapplicability of known algorithms

In this section we show that the known algorithms for line graphs Guruswami1999217 () and the class of graphs factorable to bounded treewidth graphs Bodlaender00onthe () are not applicable to cobipartite chain graphs.

Given a graph , its line graph is a graph such that each vertex of represents an edge of , and two vertices of are adjacent if and only if their corresponding edges share a common endpoint in . It is shown in Beineke1970129 () that , the graph obtained by the removal of an edge of , is a forbidden subgraph of line graphs. It is easy to verify that contains as an induced subgraph whenever . Therefore, cobipartite graphs are not included in the class of line graphs.

In Bodlaender00onthe (), a polynomial-time algorithm for MaxCut is presented for a class of graphs that extends both the class of cographs and the class of bounded treewidth graphs. In this section, we show that twin-free co-bipartite chain graphs are not in this class. Therefore, the algorithm in Bodlaender00onthe () is not applicable to co-bipartite chain graphs. For completeness, we provide a brief definition of the graph classes under consideration.

Cographs are defined inductively as follows:

• A graph with a single vertex () is a cograph.

• If and are cographs then so are their disjoint union and their complete join, i.e the graph obtained by adding the edges to the disjoint union.

For a cograph , the above recursive definition implies a tree termed the cotree of , in which every leaf corresponds to a vertex of and the root of corresponds to .

This definition is extended as follows: Given a graph with vertices and graphs , the graph is built by first taking the disjoint union and then adding all the possible edges for every edge of . The collection of graphs is termed a factorization of . Every graph has a trivial factorization . We are typically interested in factorizations such that is as small as possible. Given a factorization of , one can recursively factorize each of . This recursive definition implies a factor tree for . A leaf of corresponds to a vertex of and the root of corresponds to . For any non-leaf vertex of the factor tree, the graph used in the factorization is termed the label graph of . For a graph class , we denote by the class of graphs that have a factor tree with label graphs taken from . Then, a cotree is a factor tree where a non-leaf vertex is labeled with either or , i.e. the class of cographs is .

For any integer , let be the class of graphs having treewidth at most . It is well known that has treewitdh , thus .111This is the only fact about treewidth used in this work.

For any integer , is the class of graphs having a factor tree with label graphs of treewidth at most . In Bodlaender00onthe (), a polynomial-time algorithm for the class is provided for every constant . We now show that the twin-free co-bipartite chain graphs are not contained in this class.

for every .

###### Proof

Consider the root of a factor tree of . Let , and with . We will show that the vertices are in distinct graphs among . Assume by contradiction that there exist two distinct vertices such that . If some is adjacent to in then . This is because every vertex of is adjacent to . If some is non-adjacent to in then . This is because every vertex of is non-adjacent to . Therefore,

 (∪kℓ=2V(Hℓ))∩K′⊆{v′0,…,v′i−1}∪{v′j,…,v′m+2}.

Then and in particular, . We now use this fact to prove a stronger property. Since every vertex of is adjacent to either or , every vertex of is adjacent to , i.e. is universal in . Therefore, the set of non-neighbours of in considered in our last argument is empty. Then for every and we conclude that . Since contains two distinct vertices of , by symmetry we get .

Suppose that , and let . Let also be the unique graph among containing . Since is universal, is adjacent to in . Then, is adjacent to , implying that , a contradiction. Therefore, and by symmetry . We conclude that implying that , contradicting the definition of factorization. Therefore, does not contain two distinct vertices . Since is chosen arbitrarily, this holds for every graph .

Therefore, there are distinct graphs among each of which contains a vertex . Since these vertices are pairwise adjacent in , the vertices corresponding to these graphs are pairwise adjacent in , i.e. they constitute a clique of size in . Therefore, . Since is chosen as the label of the root of an arbitrary factor tree of , we conclude that . ∎

### 2.3 The structure of maximum cuts

We now analyze the structure of a maximum cut of . Let be such that . Given a cut of , a given row is exactly in one of the sets that we term row types. A row is monochromatic if it is of one of the first two types and bi-chromatic otherwise. A block is a maximal consecutive sequence of rows of the same type. The type of a block is the type of its rows. We denote a monochromatic block as or and a bi-chromatic block as or . The length of a block is the number of its rows.

For a cut , is the cut obtained by exchanging the types of the rows and . Formally, let and . Then a) , b) if and only if , c) if and only if , d) if and only if , and e) if and only if . We note that and , i.e. the swap operation preserves the number of clique edges of . In addition, since , all diagonal edges except possibly are preserved as well. Therefore, the effect of the swap operation is exactly its effect on the diagonal edge . The following lemma summarizes this effect.

###### Lemma 1

Let be a cut and two consecutive rows. Then,

1. if both rows are monochromatic or both are bi-chromatic then .

2. Otherwise, (i.e. if one row is monochromatic and the other is bi-chromatic) there is a vertex that is separated from the other three by the cut . Then

For a cut , let be the cut obtained from by shifting one row down the type of all rows from to and replacing the type of row by the type (before the shift) of row . Formally,

 rot(S,i,j)=swp(swp(swp(swp(S,j−1),j−2)⋯,i−1),i).

Let also be the cut obtained in the opposite way. Formally is the unique cut such that .

###### Lemma 2

Let . There exists a maximum cut of such that

1. contains at most one block from each type, and

2. the (at most four) blocks of follow the pattern where some of the blocks may be empty.

###### Proof

i) Two rows of the same type are termed separated if there is a row of a different type between them. It is sufficient to show that there is a maximum cut with no separated pair of rows. Let be a maximum cut that contains the smallest number of separated row pairs. If this number is zero then is the claimed cut. Otherwise, contains two separated rows and with no other rows of the same type between them. Let , i.e. and let . We observe that is obtained from and is obtained from by the same set of swap operations. Therefore, the effect of these operations on the sizes of the respective cuts is the same. Then

 cs(S)−cs(S1)=cs(S2)−cs(S)

implying . Since is a maximum cut, we conclude that and are maximum cuts too. Both cuts contain at least one separated pair less than , contradicting the way was chosen.

ii) Let be a maximum cut with at most one block of each type. If contains no monochromatic blocks then it follows the pattern with empty monochromatic blocks. Therefore, contains a monochromatic block. Assume that the first monochromatic block is where the opposite case is symmetric. Let be the first row of . All the rows before are bi-chromatic. Consider a row of type . Let . Since all the rows involved in the swap operation are bi-chromatic, by Lemma 1 we have . Row of is of type . Let . Then, by Lemma 1, contradicting the maximality of . Therefore, all the rows before the block are of type . Similarly, we show that all the rows after until the next monochromatic block are of type , and all the rows after are of type . Without loss of generality we assume that . Therefore, if there is only one monochromatic block the only possible block pattern is ; if there are two monochromatic blocks only the patterns and are possible. Clearly, is a special case of where the last block is empty. We now show that is equivalent to , i.e. for every cut that follows pattern , there is a cut with the same size, following pattern . Let be a cut following pattern . If (resp. ) then the dual of (resp. ) follows the pattern . ∎

We are now ready to prove the main theorem of this section.

###### Theorem 2.2

A twin-free co-bipartite chain graph has a maximum cut with block pattern , block lengths respectively, and where

 (x,y,z,t)=(k3,k3,k3,0)+(δx,δy,δz,0)

and .

###### Proof

By Lemma 2, there is a maximum cut following the pattern . We first consider the case . The number of clique edges of is , the number of intra-block diagonal edges is , and the number of inter-block diagonal edges is . By letting the problem boils down to solving the following system consisting of a quadratic objective function with a single linear equality constraint.

 maximizef(x,y,z,t)=(y+z)(x+t)+(x+y)(z+t)+y2(y−1)+t2(t−1)+xy+yz+xz+ztsubject to~{}x+y+z+t=k+1x,y,z,t∈N∪{0}. (1)

We relax the integrality constraints of (1) and calculate the following optimal (fractional) solution of the new system WolframAlphaCCk ().

 v∗=(x∗,y∗,z∗,t∗)=(k3+12, k3, k3+12, 0).

Let . Clearly, . In the rest of the proof we round solution to an optimal integral solution . We show the optimality of by showing that . Since is integral whenever is integral, this will imply the optimality of .

Let for some . Whenever we have , and

 f(v)=f(x,y,z,t)=3x2+4yx+y(y−1)2=h(x,y).

Therefore,

 f(v)−f(v+δ)=h(x,y)−h(x+ε,y−2ε)=ε(2x−2y−1+3ε).

Since and , by substituting in the above equation we get

 f(v∗)−f(v∗+δ)=3ε2.

For we have . Therefore is an optimal integral solution. The value of the optimum is

 cs(S)=f(^v)=⌊f(v∗)⌋=⌊h(x∗,y∗)⌋=⌊56k2−32k+34⌋.

The rest of the proof proceeds similarly for the case of and is given in the appendix. ∎

## 3 The General Case

In this section we consider the general case, i.e. graphs that possibly contain twins. Let be a graph possibly containing twins, and let be a graph obtained from by contracting every set of twins to a single vertex. The instances of a vertex denoted by is the set of twins of contracted to . The multiplicity of a vertex is the number of its instances and denoted by . The graph is uniquely defined (up to isomorphism) by the graph and the multiplicity function .

For a cut of and a vertex , is the number of instances of in , and is the number of instances of in . Clearly, , and the cut is uniquely defined by the cut function .

Through this section is a co-bipartite chain graph, and is a twin-free co-bipartite chain graph obtained from it by contracting its twins. We will assume without loss of generality, that , since if we can set the multiplicity of to zero. We denote by the subgraph of induced by the vertices , and by the subgraph of induced by the instances of the vertices of . Clearly, is a . Furthermore, we use the vectors , , , , , where , , , and , . We represent the cut by the pair of vectors . We denote by the sum of the entries of a vector .

###### Theorem 3.1

The maximum cut size of a co-bipartite chain graph given by multiplicity vectors and is

 max{Fk(x,x′)| 0≤x≤∑m, 0≤x′≤∑m′}, (2)

where is given by:

 F−1(x,x′)= 0, (4) Fi(x,x′)= m′i⋅x′+mi(x+x′)+

with , , , and .

###### Proof

denotes the maximum cut size among all cuts of such that and , i.e.

 Fi(x,x′)=max{cs(S)|S⊆V(GTi),∑s=x,∑s′=x′}.

With this definition it is clear that the maximum cut size of is given by (2). We now provide a recurrence formula for .

In the base case is the empty graph, therefore (4) holds. For the following discussion refer to Figure 2. Consider a cut of the subgraph for some . can be partitioned into a subgraph and two cliques . Therefore the edges of can be partitioned in the following way according to their endpoints:

 E1S =E(S,¯S)∩E(GTi−1), E2S ={uv∈E(S,¯S)|u∈I(v′i)}, E3S ={uv∈E(S,¯S)|u∈I(vi)}.

For every instance of we have and for every instance of we have . Therefore, the size of these sets are

 ∣∣E1S∣∣ =cs(S––) ∣∣E2S∣∣ =s′i(∑m′−x′)+¯si′⋅(x′−s′i)=m′i⋅x′+s′i(i−1∑j=0m′j−2x′+s′i) ∣∣E3S∣∣ =si(∑m−x+i−1∑j=0m′j−x′+s′i)+¯si(x+x′−s′i−si) =mi(x+x′−s′i)+si(i−1∑j=0(mj+m′j)−2(x+x′−s′i)+si)

where is the cut that induces on . Thus and . Then is the maximum over all possible values of of

 Fi−1(x−si,x′−s′i)+∣∣E2S∣∣+∣∣E3S∣∣.

As for the possible values of , recall that and . Similarly, and . Therefore, is given by (4). ∎

###### Theorem 3.2

MaxCut can be solved in time for a co-bipartite chain graph .

###### Proof

Algorithm 1 calculates the recurrence relation described in Theorem 3.1 through dynamic programming. The running time of function CalculateOpt is proportional to the number of its iterations, i.e. . The running time of the algorithm is proportional to . Let . We proceed as follows

 k∑i=0(i∑j=0mj)(i∑j=0m′j)mim′i ≤ (∑m)(∑m′)k∑i=0mim′i≤N24k∑i=0mim′i=N24m⋅m′ ≤ N24∥m∥2⋅∥m′∥2≤N24(∑m)(∑m′)≤N416.