Discrete Applied Mathematics xxx (xxxx) xxx
Contents lists available at ScienceDirect
Discrete Applied Mathematics journal homepage: www.elsevier.com/locate/dam
Optimization over degree sequences of graphs ∗
Gabriel Deza a , Shmuel Onn b , a b
University of Toronto, Canada Technion - Israel Institute of Technology, Israel
article
info
Article history: Received 31 July 2019 Received in revised form 12 December 2019 Accepted 18 December 2019 Available online xxxx Keywords: Graph Hypergraph Combinatorial optimization Degree sequence Factor Matching
a b s t r a c t We consider the problem of finding a subgraph of a given graph minimizing the sum of given functions at vertices evaluated at their subgraph degrees. While the problem is NP-hard already for bipartite graphs when the functions are convex on one side and concave on the other, we have that when all functions are convex, the problem can be solved in polynomial time for any graph. We also provide polynomial time solutions for bipartite graphs with one side fixed for arbitrary functions, and for arbitrary graphs when all but a fixed number of functions are either nondecreasing or nonincreasing. We note that the general factor problem and the (l,u)-factor problem over a graph are special cases of our problem, as well as the intriguing exact matching problem. The complexity of the problem remains widely open, particularly for arbitrary functions over complete graphs. © 2019 Elsevier B.V. All rights reserved.
1. Introduction The degree sequence of a simple graph G = (V , E) with V = [n] := {1, . . . , n} is the vector d(G) = (d1 (G), . . . , dn (G)), where di (G) := |{e ∈ E : i ∈ e}| is the degree of vertex i for all i ∈ [n]. Degree sequences have been studied by many authors, starting from their celebrated effective characterization by Erdős and Gallai [8], see e.g. [9] and the references therein. In this article we are interested in the following discrete optimization problem. Optimization over Degree Sequences.∑Given a graph H on [n], and for i = 1, . . . , n functions fi : {0, . . . , di (H)} → Z, find n a subgraph G ⊆ H on [n] minimizing i=1 fi (di (G)). (Note that the subgraph consists of the original vertex set and some subset of the edges.) A special case of this is the general factor problem [4], which is to decide, given a graph H on [n] and subsets Bi ⊆ {0, 1, . . . , di (H)} for i ∈ [n], if there is a G ⊆ H with di (G) ∈ Bi for all i, and find one if yes. Indeed, for each i define a function fi by fi (x) := 0 if x ∈ Bi and fi (x) := 1 if x ∈ / Bi . Then the optimal value of the degree sequence problem is zero if and only if there is a factor, in which case any optimal graph G is one. An even more special case is the well studied (l, u)-factor problem introduced by Lovász [11], where each Bi = {li , . . . , ui } is an interval. This reduces to our degree sequence problem even with convex functions, with fi (x) := li − x if 0 ≤ x ≤ li , fi (x) := 0 if li ≤ x ≤ ui , and fi (x) := x − ui if ui ≤ x ≤ di (H). As our problem is an extension of the general factor problem, the (l, u)-factor problem, and the perfect matching problem which is the (1, 1)-factor problem, it lends itself to a variety of applications. Here is one application to scheduling. ∗ Corresponding author. E-mail addresses:
[email protected] (G. Deza),
[email protected] (S. Onn). https://doi.org/10.1016/j.dam.2019.12.016 0166-218X/© 2019 Elsevier B.V. All rights reserved.
Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
2
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
Suppose we are given a set M of machines, a set J of jobs, and a bipartite graph H = (M , J , E), where edge (m, j) ∈ E indicates that machine m can process job j. Suppose the processing cost of machine m is a function fm (x) of the number x of jobs assigned to it. We want to assign each job to some machine so that the total cost is minimized. This can be modeled as a degree sequence problem over H with the given functions fm for m ∈ M and the functions fj (x) := a(x − 1)2 for each j ∈ J for some sufficiently large positive integer a. Then an optimal subgraph G = (M , J , F ) ⊆ H must have dj (G) = 1 for all j ∈ J and gives an optimal job assignment where each machine m ∈ M is assigned the set of jobs {j ∈ J : (m, j) ∈ F }, incurring cost fm (dm (G)). As a concrete example, consider two machines m1 , m2 with cost functions fm1 (x) = 3x2 , fm2 (x) = x(40 − x), a set J = [10] of ten jobs, and H ≃ K2,10 the complete bipartite graph. Then, as can be verified, any optimal solution assigns five jobs to each machine,with total cost 250, so one optimal solution is the subgraph G with F = {(m1 , 1), . . . , (m1 , 5), (m2 , 6), . . . (m2 , 10)}. Another interesting special case is when H = Kn , that is, when the optimization is over any graph G on [n]. This special case was recently shown in [6] to be solvable in polynomial time when all the functions are the same, f1 = · · · = fn , extending an earlier result of [14]. We note right away that the degree sequence problem in its full generality is hard. Proposition 1.1.
Deciding if the optimal value in our problem is zero is NP-complete already:
1. when f1 = · · · = fn = f are identical, with f (0) = f (3) = 0 and f (i) = 1 for i ̸ = 0, 3. 2. when H = (I , J , E) is bipartite and fi is convex for all i ∈ I and concave for all i ∈ J. In contrast, for convex functions, we have the following statement: Theorem 1.2. The optimization problem over degree sequences can be solved in polynomial time for any given n, any given graph H on [n], and any given convex functions f1 , . . . , fn . This in particular allows to solve the (l, u)-factor problem via the reduction described above. After posting this article on arXiv in [7], we learned that this result was independently proved in [1]. But therein a reduction to the (u, u)-factor problem is used, while we reduce it to the simpler matching problem. So we find it useful to include here our proof as well. Next, for unbalanced bipartite graphs, that is, with one side fixed and small, we prove: Theorem 1.3. For any fixed r, the optimization problem over degree sequences can be solved in polynomial time for any given bipartite graph H ⊆ Kr ,n−r and any given functions f1 , . . . , fn . Finally, when most functions are all nondecreasing or all nonincreasing we prove: Theorem 1.4. For any fixed r, our problem is polynomial time solvable for any graph H and any functions f1 , . . . , fr when fr +1 , . . . , fn are either all nondecreasing or all nonincreasing. Optimization over degree sequences naturally extends to hypergraphs, see e.g. [2,6]. But this is harder, since deciding if the optimal value given convex functions fi (x) = (x − di )2 is zero, is equivalent to deciding if there is a hypergraph with degrees d1 , . . . , dn , which was recently shown in [6] to be NP-complete, solving a long standing open problem from [3]. The general factor problem is polynomial time solvable when no Bi has a gap longer than 1, see [4] (B ⊂ Z+ has a gap of length l if there are i, k ∈ B with k − i = l + 1 and j ∈ / B for all i < j < k; for instance, {0, 3, 4, 6} has longest gap 2). This implies that also the degree sequence problem can be solved for the functions associated to such Bi as described above. However, beyond the new results and surveyed results above, the degree sequence problem is still wide open. It would be interesting to determine the complexity of the problem for various classes of input graphs H and various classes of input functions fi . Particularly intriguing is the special case of H = Kn , when the optimization is over any graph G on [n], where it may be that the problem can be solved in polynomial time for any given functions. The article is organized as follows. In Section 2 we prove Proposition 1.1 and also show a simple reduction of the well known and intriguing exact matching problem to our problem. In Section 3 we consider convex functions and prove Theorem 1.2. In Section 4 we consider unbalanced bipartite graphs, that is, with one side fixed and small, and prove Theorem 1.3. In Section 5 we consider nondecreasing or nonincreasing functions and prove Theorem 1.4. 2. Hardness and exact matching We begin by showing that the optimization problem over degree sequence is generally hard. Proposition 1.1. Deciding if the optimal value in our problem is zero is NP-complete already: 1. when f1 = · · · = fn = f are identical, with f (0) = f (3) = 0 and f (i) = 1 for i ̸ = 0, 3. 2. when H = (I , J , E) is bipartite and fi is convex for all i ∈ I and concave for all i ∈ J. Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
3
Proof. 1. The NP-complete cubic subgraph problem [10] is the case of the factor problem with Bi = {0, 3} for all i. Defining fi as described above, our problem is NP-complete too. 2. The general factor problem is NP-complete already when H = (I , J , E) is bipartite with maximum degree 3 and Bi equals {1} for all i ∈ I and {0, 3} for all i ∈ J, see [4]. Define fi (x) := (x − 1)2
i ∈ I,
fi (x) := x(3 − x)
i∈J
.
Then fi is convex for all i ∈ I and concave for all i ∈ J, and the optimal value of the degree sequence problem is zero if and only if there is a factor, proving the claim. □ The exact matching problem is the following. Fix a positive integer r. Given b ∈ Zr+ and a labeling c : [n] × [n] → [r ] of the edges of Kn,n , decide if Kn,n has a perfect matching M ⊂ [n] × [n] such that |{e ∈ M : c(e) = k}| = bk for all k, and find one if yes. This problem has randomized algorithms [12,13] but its deterministic complexity is open already for r = 3. We note that it is a simple special case of the general factor problem and hence of the degree sequence problem over subgraphs. Let b, c be given. Define a graph H = (V , E) by V := {u1 , . . . , un } ⊎ {v1 , . . . , vn } ⊎ {wi,j : 1 ≤ i, j ≤ n} ⊎ {x1 , . . . , xr } , E :=
⨄ {
} {ui , wi,j }, {wi,j , vj }, {wi,j , xc(i,j) } .
1≤i,j≤n
Define sets Bui := Bvj := {1}, Bwi,j := {0, 3}, Bxk := {bk },
1 ≤ i , j ≤ n, 1 ≤ k ≤ r
and corresponding convex and concave functions fui := fvj := (x − 1)2 , fwi,j := x(3 − x), fxk := (x − bk )2 ,
1 ≤ i , j ≤ n, 1 ≤ k ≤ r .
Then it is not hard to verify that there exists an exact matching if and only if the optimal objective value of the degree sequence problem over H and the fi is zero, in which case an optimal graph G ⊆ H is also a factor and M := {(i, j) : dwi,j (G) = 3} is an exact matching. 3. Convex functions Here we consider the situation where all the given functions are convex. Theorem 1.2. The optimization problem over degree sequences can be solved in polynomial time for any given n, any given graph H on [n], and any given convex functions f1 , . . . , fn . Proof. Let the given ∑ graph be H = ([n], E) and let d(H) be its degree sequence. Construct a graph L = (V , F ) with 8|E | n vertices and 4|E | + 2 i=1 d2i edges as follows. For i ∈ [n] let δ (i) = {e ∈ E : i ∈ e}. Introduce the 4di vertices uei , vie for k k e ∈ δ (i) and xi , yi for k ∈ [di ]. Introduce the 2d2i edges {uei , xki }, {vie , yki } for k ∈ [di ] and e ∈ δ (i). Introduce the di edges {xki , yki } for k ∈ [di ]. For e = {i, j} ∈ E introduce the two edges {uei , uej } and {vie , vje }. Next define a cost function c : F → Z on the edges of L as follows. For i ∈ [n] and k ∈ [di ] let c({xki , yki }) := fi (k)−fi (k−1). Let the costs of all other edges in F be zero. We now show that the degree sequence problem over H reduces to the minimum cost perfect matching problem over L and therefore can be solved in polynomial time. d Denote for brevity cik := c({xki , yki }). Then for each i ∈ [n] we have ci1 ≤ · · · ≤ ci i since for each 1 ≤ k < di the convexity of fi implies 2fi (k) ≤ fi (k − 1) + fi (k + 1) and therefore cik = fi (k) − fi (k − 1) ≤ fi (k + 1) − fi (k) = cik+1 . Let f ∗ , c ∗ be the optimal values of the degree sequence and matching problems respectively. Consider first a G ⊆ H optimal for the degree sequence problem with G = ([n], N). Define a perfect matching M ⊂ F of L as follows. For each e = {i, j} ∈ N include in M the two edges {uei , uej } and {vie , vje }. For each i ∈ [n] include in M the edges {xki , yki } for k = 1, . . . , di (G). Next, match the di (H) − di (G) unmatched vertices among the uei for e ∈ δ (i) with the unmatched vertices xki for di (G) < k ≤ di (H), and match the di (H) − di (G) unmatched vertices among the vie for e ∈ δ (i) with the unmatched vertices yki for di (G) < k ≤ di (H). Now we have the inequality c∗ ≤
n di (G) ∑ ∑
cik =
i=1 k=1
n di (G) ∑ ∑
(fi (k) − fi (k − 1))
i=1 k=1 n
=
∑ i=1
(fi (di (G)) − fi (0)) = f ∗ −
(1) n ∑
fi (0) .
i=1
Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
4
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
Next, consider a minimum cost perfect matching M ⊂ F and define a subgraph G ⊆ H with G = ([n], N) where N := {e = {i, j} ∈ E : {uei , uej } ∈ M }. Then di (G) vertices among the uei for e ∈ δ (i) are matched in M with other vertices of the form uhj and therefore the other di (H) − di (G) vertices among uei for e ∈ δ (i) are matched with vertices of the form xki . So for some subset Ki ⊆ [di (H)] with |Ki | = di (G) the vertices xki for k ∈ Ki are matched with the corresponding d vertices yki . Since ci1 ≤ · · · ≤ ci i , we now have the inequality c∗ =
n ∑ ∑ i=1 k∈Ki
cik ≥
n di (G) ∑ ∑
cik =
i=1 k=1
n di (G) ∑ ∑
(fi (k) − fi (k − 1))
(2)
i=1 k=1
=
n ∑
(fi (di (G)) − fi (0)) ≥ f ∗ −
i=1
n ∑
fi (0) .
i=1
∑n
Eqs. (1) and (2) together imply that c ∗ = f ∗ − j=1 fj (0) and so equality holds all along in both equations. This implies in particular that the subgraph G ⊆ H obtained from a minimum cost perfect matching as above is optimal for the degree sequence problem. □ Example 3.1. Let H be the triangle and let f1 (x) = f3 (x) = (x − 1)2 and f2 (x) = (x − 2)2 . The graph L constructed in the proof above is given in Fig. 1 with nonzero costs of edges indicated in blue. A minimum cost perfect matching in L is indicated in red, from which we read off an optimal subgraph G ⊂ H with edge set N = {{1, 2}, {2, 3}} and optimal value 0. 4. Unbalanced bipartite graphs Here we consider our problem over unbalanced bipartite graphs, with one side fixed and small. Theorem 1.3. For any fixed r, the optimization problem over degree sequences can be solved in polynomial time for any given bipartite graph H ⊆ Kr ,n−r and any given functions f1 , . . . , fn . Proof. Let H = (I , J , E) and assume that I = [r ] and J = {r + 1, . . . , r + s} with s := n − r. To find an optimal G ⊆ H we use dynamic programming, namely, we reduce the problem to computing a shortest path in an auxiliary digraph D with arc lengths, with nodes labeled by pairs [v, j] with v ∈ {0, 1, . . . , s}r and j ∈ {0, 1, . . . , s + 1}. More precisely, its node set is
{[0, 0]} ⊎ {[v = (v1 , . . . , vr ), j] : 0 ≤ vi ≤ di (H), i ∈ [r ], j ∈ [s]} ⊎ {[0, s + 1]} . For j ∈ [s] the node [v, j] (state in the dynamic program) indicates that the current degree of i ∈ [r ] = I, after the neighborhoods of {r + 1, . . . , r + j} ⊆ J had been decided, is vi . For j ∈ [s] there is an arc from [u, j − 1] to [v, j] in D (decision in the dynamic program) if v − u indicates an admissible neighborhood in G for r + j ∈ J, that is, if vi − ui ∈ {0, 1} for all i ∑ and vi − ui = 0 if (i, r + j) ∈ / E. Deciding go along such an ∑to r r arc indicates that the degree of r + j ∈ J in G will be dr +j (G) = i=1 (vi − ui )), and so i=1 (vi − ui ), incurring a cost of fr +j ( we define the length of such an arc to be that cost. For each v , the node (state) [v, s] indicates that after all neighborhoods in G of vertices r + j ∈ J had been decided, the degree∑ in G of each i ∈ I is di (G) = vi , and so the arc from [v, s] to [0, s + 1] r in D is included, with length set to be the total cost i=1 fi (vi ) incurred by all vertices in I. 1 s Let [0, 0], [v , 1], . . . , [v , s], [0, s + 1] be a shortest path from [0, 0] to [0, s + 1] in D. Then it is clear that an optimal subgraph G = (I , J , F ) ⊆ H can be read off form it by setting j
j−1
F := {(i, r + j) : i ∈ I , r + j ∈ J , vi − vi
= 1} .
So a shortest path in D indeed gives an optimal G. Now the number of nodes of D is 2+s
r ∏
( ) (di (H) + 1) = O nr +1
i=1
and is polynomial in n. Since a shortest path can be found in linear time we are done.
□
Example 4.1. Let H = (I , J , E) be a given bipartite graph with I = {1, 2}, J = {3, 4}, and E = {(1, 3), (2, 3), (2, 4)}, and let fi (x) = (x − 1)2 for i = 1, 2, 3, 4 be given functions. Fig. 2 illustrates the digraph D in the construction of Theorem 1.3 with edge lengths indicated. A shortest path in D is indicated in the figure in red, from which we read off an optimal subgraph G = (I , J , F ) with F = {(1, 3), (2, 4)} which is the unique perfect matching in H.
Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
5
Fig. 1. The graph L of Example 3.1 with blue costs and red minimum cost perfect matching. (For interpretation of the references to color in this figure legend, the reader is referred to the web version of this article.)
Fig. 2. The digraph D of the dynamic program in Example 4.1.
5. Monotone functions Here we consider the situation when most functions are all nondecreasing or all nonincreasing. Theorem 1.4. For any fixed r, our problem is polynomial time solvable for any graph H and any functions f1 , . . . , fr when fr +1 , . . . , fn are either all nondecreasing or all nonincreasing. Let H = ([n], E) and let I := [r ] and J := {r + 1, . . . , r + s} with s := n − r. For any K ⊆ [n] let (Proof. ) K := {{i, j} : i, j ∈ K , i ̸= j}. Suppose first fr +1 , . . . , fn are nondecreasing. Let G = ([n], F ) ⊆ H be an optimal subgraph, 2 Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
6
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
Fig. 3. The digraph D of the dynamic program applied to H := K3,3 .
∑n
(J )
(J )
that is, attaining minimum such, with q(G) ∑ := |F ∩ 2 | minimal. If there is some e ∈ F ∩ 2 i=1 fi (di (G)), and among ∑ n n then removing it from F results in a subgraph L with f (d (L)) ≤ i i i=1 i=1 fi (di (G)) so L is also optimal with q(L) < q(G) (J ) contradicting the choice of G. So F ∩ 2 = ∅. So our problem reduces to finding a subgraph G = ([n], F ) minimizing (J ) ∑n Let G = ([n], F ) be an optimal subgraph and i=1 fi (di (G)) with F ∩ 2 = ∅.( Now ) suppose fr +1 , . . . , fn are nonincreasing. (J ) J among such, with q(G) := |F ∩ 2 | maximal. If there is some e ∈ E ∩ 2 not in F then adding it to F results in a subgraph L (J ) (J ) ∑n ∑n with i=1 fi (di (L)) ≤ i=1 fi (di (G)) so L is also optimal with q(L) > q(G) contradicting the choice of G. So F ∩ 2 = E ∩ 2 . Now, for j ∈ J let dj (H [J ]) be its degree in the induced subgraph H [J ], and replace the function fj by f¯j (x) := fj (x + dj (H [J ])) ¯ for x ∈ {0, . . . , dj (H) − dj (H [J ])}, and(for ) i ∈ I set fi := fi . Then our problem reduces again to finding a subgraph G = ([n], F ) ∑n ¯i (di (G)) with F ∩ J = ∅. minimizing f i=1 2 (J ) To find an optimal subgraph G = ([n], F ) ⊆ H with F ∩ 2 = ∅, with respect to the fi or the f¯i , we use the construction ¯ := (I , J , E) ¯ with E¯ := {{i, j} ∈ E : i ∈ I , j ∈ J }, and extend it so in the proof of Theorem 1.3, applied to the bipartite graph H (I ) (I ) as to allow also decisions about the existence of edges {i, j} ∈ E ∩ 2 , as follows. Let t := |E ∩ 2 | and let {i1 , j1 }, . . . , {it , jt } (I ) be any ordering of the edges in E ∩ 2 . We add to D the set of nodes
{[v = (v1 , . . . , vr ), {il , jl }] : 0 ≤ vi ≤ di (H), i ∈ [r ], 1 ≤ l ≤ t } . We remove the arcs from nodes [v, s] to [0, s + 1]. We add arcs from [v, s] to [v, {i1 , j1 }] indicating that edge {i1 , j1 } is not selected, and from [v, s] to [v + 1i1 + 1j1 , {i1 , j1 }], where 1l is the lth unit vector in Rr , indicating that edge {i1 , j1 } is
selected. Also, for l = 2, . . . , t, we add arcs from [v, {il−1 , jl−1 }] to [v, {il , jl }] indicating that edge {il , jl } is not selected, and from [v, {il−1 , jl−1 }] to [v + 1il + 1jl , {il , jl }] indicating that edge {il , jl } is selected. To all these arcs ∑ we assign length zero. r Finally, for each v , we add an arc from [v, {it , jt }] to [0, s + 1], with length set to be the total cost i=1 fi (vi ) incurred by all vertices in I. Let
[0, 0], [v 1 , 1], . . . , [v s , s], [v i1 ,j1 , {i1 , j1 }], . . . , [v it ,jt , {it , jt }], [0, s + 1] Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.
G. Deza and S. Onn / Discrete Applied Mathematics xxx (xxxx) xxx
7
be a shortest path from [0, 0] to [0, s + 1] in D. Then an optimal graph is G = ([n], F ) with j
j−1
F := {{i, r + j} : i ∈ I , r + j ∈ J , vi − vi
= 1}
⊎ {{i1 , j1 } : v i1 ,j1 − v s = 1i1 + 1j1 } ⊎ {{il , jl } : v il ,jl − v il−1 ,jl−1 = 1il + 1jl , 2 ≤ l ≤ t }. Now the number of nodes of D is 2 + (s + t )
r ∏
) ( (di (H) + 1) = O nr +1
i=1
and is polynomial in n. Since a shortest path can be found in linear time we are done.
□
Acknowledgments G. Deza was partially supported by an internship from the university of Toronto. S. Onn was partially supported by a grant from the Israel Science Foundation and by the Dresner chair. Appendix The algorithm of Theorem 1.3 has been implemented and is available in [5]. (As far as we know there is no previous computational work on the degree sequence problem.) For instance, when applied to H := K3,3 , the directed graph D of the dynamic program that the algorithm produces is depicted in Fig. 3 (with all vertices unreachable from the source removed).
References [1] N. Apollonio, A. Sebő, Minconvex factors of prescribed size in graphs, SIAM J. Discrete Math. 23 (2009) 1297–1310. [2] D. Billington, Conditions for degree sequences to be realisable by 3-uniform hypergraphs, J. Combin. Math. Combin. Comput. 3 (1988) 71–91. [3] C.J. Colbourn, W.L. W.L. Kocay, D.R. Stinson, Some NP-complete problmes for hypergraph degree sequences, Discrete Appl. Math. 14 (1986) 239–254. [4] G. Cornuéjols, General factors of graphs, J. Combin. Theory Ser. B 45 (1988) 185–198. [5] G. Deza, Implementation of the algorithm of theorem 1.3, 2019, Available online at: https://github.com/GabrielDeza/Degree-SequenceOptimization. [6] A. Deza, A. Levin, S.M. Meesum, S. Onn, Optimization over degree sequences, SIAM J. Discrete Math. 32 (2018) 2067–2079. [7] G. Deza, S. Onn, Optimization over degree sequences of graphs, August 25, 2019, Available online at: https://arxiv.org/abs/190809278. [8] P. Erdős, T. Gallai, Graphs with prescribed degrees of vertices, Mat. Lopak 11 (1960) 264–274 (in Hungarian). [9] P. Erdős, Z. Király, I. Miklós, On the swap-distances of different realizations of a graphical degree sequence, Combin. Probab. Comput. 22 (2013) 366–383. [10] M.R. Garey, D.S. Johnson, Computers and Intractability, Freeman, 1979. [11] L. Lovász, Subgraphs with prescribed valencies, J. Combin. Theory 8 (1970) 391–416. [12] K. Mulmuley, U.V. Vazirani, V.V. Vazirani, Matching is as easy as matrix inversion, Combinatorica 7 (1987) 105–113. [13] S. Onn, Nonlinear Discrete Optimization, in: Zurich Lectures in Advanced Mathematics, European Mathematical Society, 2010, Available online at: http://ie.technion.ac.il/~onn/Book/NDO.pdf. [14] U.N. Peled, R. Petreschi, A. Sterbini, (n, e)-Graphs with maximum sum of squares of degrees, J. Graph Theory 31 (1999) 283–295.
Please cite this article as: G. Deza and S. Onn, Optimization over degree sequences of graphs, Discrete Applied Mathematics (2019), https://doi.org/10.1016/j.dam.2019.12.016.