Skip to main content
Springer logoLink to Springer
. 2020 Apr 25;183(1):359–377. doi: 10.1007/s10107-020-01499-w

An efficient characterization of submodular spanning tree games

Zhuan Khye Koh 1,, Laura Sanità 2,3
PMCID: PMC7441531  PMID: 32863434

Abstract

Cooperative games form an important class of problems in game theory, where a key goal is to distribute a value among a set of players who are allowed to cooperate by forming coalitions. An outcome of the game is given by an allocation vector that assigns a value share to each player. A crucial aspect of such games is submodularity (or convexity). Indeed, convex instances of cooperative games exhibit several nice properties, e.g. regarding the existence and computation of allocations realizing some of the most important solution concepts proposed in the literature. For this reason, a relevant question is whether one can give a polynomial-time characterization of submodular instances, for prominent cooperative games that are in general non-convex. In this paper, we focus on a fundamental and widely studied cooperative game, namely the spanning tree game. An efficient recognition of submodular instances of this game was not known so far, and explicitly mentioned as an open question in the literature. We here settle this open problem by giving a polynomial-time characterization of submodular spanning tree games.

Mathematics Subject Classification: 05C05 Trees, 05C57 Games on graphs (graph-theoretic aspects), 91A12 Cooperative games

Introduction

Cooperative games are among the most studied classes of problems in game theory, with plenty of applications in economics, mathematics, and computer science. In such games, a central question is how to distribute cost (or revenue) among a set of participants, usually called players, who are allowed to cooperate. Formally, we are given a set N of players, and a characteristic function ν:2NR, with ν()=0. Here, ν(S) represents the cost paid (revenue received) by the subset S of players if they choose to form a coalition. An outcome of the game is given by an allocation yRN such that vNyv=ν(N), which assigns a cost (revenue) share to each player. Of course, there are a number of criteria for evaluating how “good” an allocation is, such as stability, fairness, and so on.

Probably the most popular solution concept for cooperative games is the core. It is the set of stable outcomes where no subset of players has an incentive to form a coalition to deviate. In a cooperative cost game, this translates naturally to the following constraint: vSyvν(S), for all SN. Intuitively, if this constraint is violated for some set S, the total cost currently paid by the players in S is more than the total cost ν(S) they would have to pay if they form a coalition—this incentivizes these players to deviate from the current allocation. Besides the core, there are several other crucial solution concepts which have been defined in the literature, e.g. the Shapley value, the nucleolus, the kernel, the bargaining set, and the von Neumann-Morgenstern solution sets (we refer to [2] for details). Many fundamental questions involving such solution concepts have been investigated in the past few decades: Which cooperative game instances admit an allocation realizing a particular solution concept? Can we efficiently compute it? Can we test whether a given allocation belongs to such sets?

Submodularity (or convexity) is a crucial property which yields interesting answers to some of the questions above. An instance of a cooperative cost game is called submodular if the characteristic function ν is submodular, meaning that

A,BN,ν(A)+ν(B)ν(AB)+ν(AB). *

Submodular games exhibit a large number of desirable properties. In particular, (1) the core is always non-empty and an allocation in the core can be computed in polynomial time [13]; (2) testing whether an allocation belongs to the core is equivalent to separating over the extended polymatroid of ν, which can be performed efficiently [8]; (3) computing the nucleolus can be done efficiently [10]; (4) there is a nice “snowballing” effect that arises when the game is played cooperatively, meaning that joining a coalition becomes more attractive as the coalition grows, and so the value of the so-called grand coalition ν(N) is always reached [13]. We refer to [11, 13] for other interesting properties of submodular games involving other crucial solution concepts. Given these observations, it is not surprising that some researchers have investigated whether it is possible to give an efficient characterization of submodular instances, for prominent cooperative games that are in general non-convex. Such characterizations are known, for example, for the minimum coloring game and the minimum vertex cover game [12], as well as for some communication games [15].

This paper focuses on one of the most fundamental cooperative games, namely the spanning tree game. This game was introduced more than 40 years ago [1, 3], and since then it has been widely studied in the literature. To get an intuition about the problem, consider the following setting. A set N of clients would like to be connected to a central source r which can provide a service to them. The clients wish to build a network connecting them to the source r, at minimum cost. An obvious way to solve this problem is to compute a minimum spanning tree connecting Nr. But how should the clients fairly split the cost of the tree among them? Formally, an instance of the spanning tree game is described by an edge-weighted complete graph G=(V,E) where V=Nr. The set of players is given by N, and the value ν(S) of the characteristic function is equal to the cost of a minimum spanning tree in the subgraph induced by S{r}.

Despite being one of the most studied cooperative games, the existence of an efficient characterization of submodularity for the spanning tree game has remained elusive so far. Granot and Huberman [7] proved that spanning tree games are permutationally convex (which is a generalization of submodularity). Their result implies that the core is always non-empty for such games, despite being non-convex in general (this was first proven by the same authors in [6]). However, other nice properties of submodular games do not generalize: for general spanning tree games, testing core membership is coNP-hard [4], and computing the nucleolus is NP-hard [5]. Trudeau [14] gave a sufficient condition for an instance of the game to be submodular. An important step forward was made by Kobayashi and Okamoto [9], who gave a characterization of submodularity for instances of the spanning tree game where the edge weights are restricted to take only two values. For general weights, they stated some necessary (but not always sufficient) as well as some sufficient (but not always necessary) conditions for an instance to be submodular. Whether a polynomial-time characterization of submodularity exists for spanning tree games is left as an open question. In fact, they stated twice in their paper:

“We feel that recognizing a submodular minimum-cost spanning tree game is coNP-complete, but we are still far from proving such a result.”

Our results and techniques. In this paper, we finally settle this open question: we give a polynomial-time characterization of submodular spanning tree games.

Our characterization uses combinatorial techniques and it is based on two main ingredients. The first one, described in Sect. 3, is a generalization of Kobayashi and Okamoto’s result [9]. When the edges can have only two distinct weights, they proved that the only obstruction to submodularity comes from the presence of certain cycles in the graph induced by the cheaper edges. When dealing with more weight values, say w1<w2<<wk, things become necessarily more complicated. We can still prove that an obstruction to submodularity is given by certain cycles, which we call violated, but (a) our definition of violated cycles is more involved than the one in [9], and (b) we have to look for such cycles not just in one induced graph, but in each graph induced by the edges of weight at most wi, for all i<k.

Furthermore, the presence of violated cycles is not anymore the only obstruction to submodularity. Roughly speaking, violated cycles capture how the edges of a certain weight should relate to the cheaper ones, but we still need a condition that takes into account the “magnitude” of distinct weight values, when k>2. This leads to the second main ingredient of our characterization, described in Sect. 4. We show that, under the assumption of not having violated cycles, we can identify polynomially many subsets of vertices which could yield the highest possible violation to the submodularity inequality (*). We can then efficiently test the submodularity of our instance by checking whether the inequality (*) is satisfied on this family of subsets of vertices. Combining these two ingredients yields a polynomial-time characterization of submodularity for spanning tree games, as described in Sect. 5.

We conclude our paper with an additional result. As previously mentioned, the authors of [9] gave a necessary condition for submodularity of the spanning tree game. They also stated that they do not know whether their condition can be verified in polynomial time. We answer this question affirmatively in Sect. 6.

Preliminaries and notation

For a subset SV, denote mst(S) as the weight of a minimum spanning tree in G[S], where G[S] is the subgraph of G induced by S. For a subset FE, denote w(F) as the sum of edge weights in F, i.e. w(F):=eFw(e). Let H be a subgraph of G. For a vertex uV and an edge eE, the subgraphs H\u and H\e are defined as H\u:=H[V(H)\u] and H\e:=(V(H),E(H)\e). Given a vertex uV, NH(u) is the neighborhood of u in H, while δH(u) is the set of edges incident to u in H. Note that uNH(u). For any positive integer k, [k] represents the set 1,2,,k. Given a pair of vertices u,vN, let Suv denote the family of vertex subsets which contain r but not u or v, i.e. Suv:=SV:rSandu,vS. Define the function fuv:SuvR as

fuv(S):=mst(Su)+mst(Sv)-mst(S)-mst(Su,v).

It is easy to see that the spanning tree game on G is submodular if and only if fuv(S)0 for all u,vN and SSuv. Let w1<w2<<wk be the edge weights of G. For each i[k], define the graph Gi:=(V,Ei) where Ei:=eE:w(e)wi. Note that Gk=G. For a vertex uV, denote Ni(u) as the neighborhood of u in Gi. For an edge uvE, define the neighborhood of uv in Gi as

Ni(uv):=Ni(u)Ni(v).

It represents the set of vertices whose edges to u and v have weight at most wi. Notice that u,vNi(uv). We will also need the following graph theory terminology. A hole is an induced cycle with at least four vertices. A diamond is the complete graph K4 minus one edge. We will refer to the vertices of degree 2 in a diamond as tips. Lastly, the following property of minimum spanning trees will be useful to us.

Lemma 1

Let T be a minimum spanning tree of G. For every subset SV, there exists a minimum spanning tree of G[S] which contains E(T[S]).

Proof

Let TS be a minimum spanning tree of G[S]. We proceed by induction on E(T[S])\E(TS). For the base case, if E(T[S])\E(TS)=0, then TS contains all the edges in E(T[S]). For the inductive step, assume E(T[S])\E(TS)>0. Then, there exists an edge eE(T[S]) where eE(TS). Adding e to TS creates a cycle C in G[S]. So there exists an edge fE(C) which is not an edge of T. Pick an appropriate f such that when added to T creates a cycle containing e. Since T+f-e is a spanning tree of G, we have w(f)w(e). On the other hand, since TS+e-f is a spanning tree of G[S], we also have w(e)w(f). This implies w(e)=w(f), so TS+e-f is a minimum spanning tree of G[S]. As E(T[S])\E(TS+e-f)=E(T[S])\E(TS)-1, by the induction hypothesis we are done.

Violated cycles

In this section, we will prove that a submodular spanning tree game does not contain violated cycles, which will be defined later. First, we need to introduce the concept of well-covered cycles.

Definition 1

Given a cycle C and a chord f=uv, let P1 and P2 denote the two u-v paths in C. The cycles P1+f and P2+f are called the subcycles of C formed by f. We say that f covers C if w(f)w(e) for all eE(P1) or for all eE(P2). If C is covered by all of its chords, then it is well-covered.

Next, we define the following two simple structures (see Fig. 1 for some examples). We then proceed to show that a submodular spanning tree game does not contain either of them.

Fig. 1.

Fig. 1

The first two graphs are examples of bad holes, whereas the last two graphs are examples of bad induced diamonds. The tips of the diamonds are shaded. Every edge here has the same weight

Definition 2

A hole is bad if at least one of its vertices is not adjacent to r. An induced diamond is bad if its Hamiltonian cycle is well-covered but at least one of its tips is not adjacent to r.

Lemma 2

If the spanning tree game on G is submodular, then there are no (a) bad holes or (b) bad induced diamonds in Gi for any i<k.

The lemma will be proved via contrapositive separately for (a) and (b). Before jumping into the details, it is instructive to have an overview of the arguments, as they revolve around the same idea. The proof starts by assuming the existence of a bad hole or a bad induced diamond in Gi for some i<k. Then, from this bad structure, a subset of vertices Sr and two additional vertices uv will be identified such that they violate the submodularity inequality, i.e. fuv(S)<0.

Proof of Lemma 2(a)

Let C be a bad hole in Gi for some i<k. Consider the following two cases.

Case 1: C contains r. Let uv be the vertices adjacent to r in C. Define the set S:=V(C)\u,v. To prove that the instance is not submodular, it suffices to show that fuv(S)<0. Let P be the path obtained by deleting ruv from C. Let u,v be the endpoints of P where uu,vvE(C) (see Fig. 2). Note that u=v if P is a singleton. It is easy to see that

mst(S)w(P)+wi+1,mst(Su)=w(P)+w(ru)+w(uu),mst(Sv)=w(P)+w(rv)+w(vv).

Next, deleting the most expensive edge from C creates a minimum spanning tree of G[Su,v]. Since this edge has weight at most wi, we obtain

mst(Su,v)w(P)+w(ru)+w(uu)+w(rv)+w(vv)-wi.

Combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Fig. 2.

Fig. 2

An example of the subgraph Gi[Su,v] in Case 1 and Subcases 2.1–2.2 respectively. The shaded region represents the set S

Case 2: C does not contain r. We first show that if r is adjacent in Gi to two non-adjacent vertices of C, then we are done. Since C is a bad hole in Gi, there exists a vertex tV(C) such that rtEi. Starting from t, traverse the hole C in both directions until we encounter the first vertices p and q such that rp,rqEi respectively. Since r is adjacent to two non-adjacent vertices of C, we have pq and pqE(C). Let Q be the p-q path in C which contains t. Then, by our choice of p and q, the cycle Q+rp+rq is a bad hole in Gi which contains r. It follows that the instance is not submodular by Case 1.

Thus, we may assume that r can only be adjacent to adjacent vertices of C. Pick a vertex sV(C) with the cheapest edge to r, i.e. w(rs)w(rx) for all xV(C). Let uv be the vertices adjacent to s in C. Define the set S:=(V(C)r)\u,v. As with the previous case, it suffices to show that fuv(S)<0. Let P be the path obtained by deleting suv from C. Let u,v be the endpoints of P where uu,vvE(C) (see Fig. 2). We are left with the following two subcases.

Subcase 2.1: r is adjacent to at most one vertex of C. Since s was chosen to be the vertex in C with the cheapest edge to r, we have

mst(S)w(P)+w(rs)+wi+1,mst(Su)=w(P)+w(rs)+w(su)+w(uu),mst(Sv)=w(P)+w(rs)+w(sv)+w(vv).

Next, deleting the most expensive edge from C and adding rs creates a minimum spanning tree of G[Su,v]. Since the deleted edge has weight at most wi, we obtain

mst(Su,v)w(P)+w(rs)+w(su)+w(uu)+w(sv)+w(vv)-wi.

Combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Subcase 2.2: r is adjacent to two vertices of C. Since we assumed that r can only be adjacent to adjacent vertices of C, it follows that r is adjacent to s and either u or v in Gi. Without loss of generality, suppose that rs,ruEi. Since s was chosen to be the vertex in C with the cheapest edge to r, we have

mst(S)w(P)+w(rs)+wi+1,mst(Su)=w(P)+w(rs)+minw(ru),w(su)+w(uu),mst(Sv)=w(P)+w(rs)+w(sv)+w(vv).

Next, deleting the most expensive edge from the triangle rs,ru,su does not increase the weight of a minimum spanning tree in G[Su,v]. In fact, a minimum spanning tree can be obtained by deleting one more edge from Gi[Su,v]. So,

mst(Su,v)w(P)+w(rs)+minw(ru),w(su)+w(uu)+w(sv)+w(vv)-wi.

Combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Proof of Lemma 2(b)

Let D be a bad induced diamond in Gi for some i<k. Consider the following two cases.

Case 1: D contains r. Observe that r is a tip of D. Let s be the other tip and uv be the non-tip vertices of D. Define the set S:=r,s (see Fig. 3). To prove that the instance is not submodular, it suffices to show that fuv(S)<0. It is easy to see that

mst(S)wi+1,mst(Su)=w(ru)+w(su),mst(Sv)=w(rv)+w(sv).

Since the Hamiltonian cycle of D is well-covered, its chord uv can be deleted without increasing the weight of a minimum spanning tree in G[Su,v]. We are now left with the Hamiltonian cycle of D, so a minimum spanning tree can be obtained by removing the most expensive edge. This gives

mst(Su,v)w(ru)+w(su)+w(rv)+w(sv)-wi.

Then, combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Fig. 3.

Fig. 3

An example of the subgraph Gi[Su,v] in Case 1 and Subcases 2.1–2.3 respectively. The shaded region represents the set S. For Subcase 2.1, the picture assumes that w(rs)<w(ru)

Case 2: D does not contain r. Let s and t be the tips of D where w(rs)w(rt). Note that rtEi because D is a bad induced diamond in Gi. Let u and v be the non-tip vertices of D where w(ru)w(rv). Define the set S:=r,s,t (see Fig. 3). As with the previous case, it suffices to show that fuv(S)<0. Consider the following three subcases.

Subcase 2.1: r is adjacent to at most one vertex of D. Note that rvEi. It is also easy to see that

mst(S)w(rs)+wi+1,mst(Su)=minw(rs),w(ru)+w(su)+w(tu),mst(Sv)=minw(rs),w(rv)+w(sv)+w(tv).

Next, observe that we can delete uv and the most expensive edge in the Hamiltonian cycle of D without increasing the weight of a minimum spanning tree in G[Su,v]. Therefore,

mst(Su,v)minw(rs),w(ru)+w(su)+w(tu)+w(sv)+w(tv)-wi.

Then, combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Subcase 2.2: r is adjacent to two vertices of D. We claim that if ru,rvEi, then we are done. Note that this implies rs,rtEi. So, if w(uv)maxw(su),w(sv), then G[r,s,u,v] is a bad induced diamond in Gi. Otherwise, w(uv)maxw(tu),w(tv) because D\uv is a well-covered cycle in Gi. Hence, G[r,t,u,v] is a bad induced diamond in Gi. Since both diamonds contain r, the instance is not submodular by Case 1. Thus, we may assume that rs,ruEi. Additionally, we may assume that w(su)<maxw(rs),w(ru). Otherwise, G[r,s,u,v] is a bad induced diamond in Gi, and we are done again by Case 1. With these two assumptions, it is then easy to see that

mst(S)w(rs)+wi+1,mst(Su)=minw(rs),w(ru)+w(su)+w(tu),mst(Sv)=w(rs)+w(sv)+w(tv).

Since argmaxw(rs),w(ru) is the most expensive edge in the cycle rs,ru,su by our assumption, it can be deleted without increasing the weight of a minimum spanning tree in G[Su,v]. By a similar reasoning, uv and the most expensive edge in the Hamiltonian cycle of D can also be deleted. Therefore,

mst(Su,v)minw(rs),w(ru)+w(su)+w(tu)+w(sv)+w(tv)-wi.

Finally, combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

Subcase 2.3: r is adjacent to three vertices of D. Let w(rv)=wj for some ji, and consider the induced diamond G[r,t,u,v]. If its Hamiltonian cycle is well-covered, then we are done by Case 1 because rtEi. So we may assume that maxw(su),w(sv)w(uv)<w(rv). Additionally, we may assume that w(su)<maxw(rs),w(ru). Otherwise, from the previous assumption, the five edges rs,ru,su,sv,uv have strictly smaller weights than w(rv)=wj. Thus, G[r,s,u,v] is a bad induced diamond in Gj-1, and we are done again by Case 1. With these two assumptions, it is then easy to see that

mst(S)w(rs)+wi+1,mst(Su)=minw(rs),w(ru)+w(su)+w(tu),mst(Sv)=minw(rs),w(rv)+w(sv)+w(tv).

Since rv is the most expensive edge in the cycle ru,rv,su,sv by our assumption, it can be deleted without increasing the weight of a minimum spanning tree in G[Su,v]. By a similar reasoning, argmaxrs,ru, uv and the most expensive edge in the Hamiltonian cycle of D can also be deleted. Hence,

mst(Su,v)minw(rs),w(ru)+w(su)+w(tu)+w(sv)+w(tv)-wi.

Finally, combining the equations and inequalities above yields

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)wi-wi+1<0.

We are now ready to define the main object of study in this section.

Definition 3

A violated cycle is a well-covered cycle which contains at least one pair of non-adjacent vertices u,vV and at least one vertex wN not adjacent to r.

In the definition above, w can be equal to u or v. For example, if rV(C), then the pair r,w already certifies that C is a violated cycle because it can be used to satisfy both conditions. Observe that bad holes and Hamiltonian cycles of bad induced diamonds are examples of violated cycles (we consider a hole to be well-covered). The next lemma extends the scope of Lemma 2 to include violated cycles. When k=2, this coincides with the condition given by Kobayashi and Okamoto [9] because every cycle in G1 is well-covered.

Lemma 3

If the spanning tree game on G is submodular, then there are no violated cycles in Gi for any i<k.

Proof

We will prove the contrapositive. Let j be the smallest integer such that Gj contains a violated cycle. By our choice of j, there are no violated cycles in Gi for all i<j. Let C be a smallest violated cycle in Gj. Then, maxeE(C)w(e)=wj. We first prove the following claim.

Claim 1

For any chord f, the subcycles of C formed by f are well-covered.

Proof

Let C1 and C2 denote the subcycles of C formed by f. For the purpose of contradiction, suppose that C2 is not well-covered. Let g=uv be the cheapest chord in C2 such that w(g)<w(f) and w(g)<w(h) for some edge hE(C2), where f and h lie in different subcycles of C2 formed by g (see Fig. 4 for an example). This chord exists because C is well-covered but C2 is not. Consider the subcycles C3 and C4 of C formed by g, where f is a chord of the former. Observe that any chord of C3 covers C3 because C is well-covered and w(g)<w(h). So, the subcycle C3 is well-covered. In addition, the subcycle C4 is well-covered because g was chosen to be the cheapest chord preventing C2 from being well-covered.

Fig. 4.

Fig. 4

The ellipse represents the violated cycle C in Claim 1. The shaded region highlights the smaller violated cycle D. The dashed edge indicates rsEj

Let w(g)=w for some <j. We claim that the subcycle C3 is present in G. To see this, recall that C is well-covered and w(g)<w(h). Hence, it follows that w(g)w(e) for all eE(C3), which proves the claim. On the other hand, notice that the chord f is absent from G because w(f)>w(g). Since the subcycle C3 is well-covered, its vertices are adjacent to r in G because there are no violated cycles in G. Next, recall that C is a violated cycle in Gj, so there exists a vertex sV(C4)\V(C3) such that rsEj. Since the subcycle C4 is well-covered, its vertices are pairwise adjacent in Gj, as otherwise it is a smaller violated cycle than C. Note that this also implies rV(C4). Thus, we have ru,rvE and su,svEj.

Now, consider the 4-cycle D defined by E(D):=ru,rv,su,sv. It is well-covered because w(g)=w and ru,rvE. Since rsEj, it is also a violated cycle in Gj. However, it is smaller than C. Indeed, C has at least 5 vertices because f is a chord in C3 while g is a chord in C2. We have arrived at a contradiction.

Our goal is to show the existence of a bad hole or a bad induced diamond in Gj. Then, we can invoke Lemma 2 to conclude that the game is not submodular. We may assume that C has a chord, otherwise it is trivially a bad hole. First, consider the case when rV(C). Let sV(C) where rsEj. For any chord f in C, observe that r and s lie in different subcycles of C formed by f. This is because the subcycles are well-covered by the previous claim, so the one which contains both r and s will contradict the minimality of C. Now, let g be a chord of C. Let Cr and Cs denote the subcycles of C formed by g where rV(Cr) and sV(Cs). Observe that the vertices of Cr are adjacent to r due to the minimality of C. Thus, Cr is a triangle. Otherwise, there is a chord in Cr incident to r, and it forms a subcycle of C which contains both r and s. On the other hand, the vertices of Cs are pairwise adjacent due to the minimality of C. Hence, Cs is also a triangle. Otherwise, there exists a chord in Cs incident to s, and it forms a subcycle of C which contains both r and s. Therefore, C is a bad induced diamond in Gj.

Next, consider the case when rV(C). From this point forward, we may assume that every smallest violated cycle in Gj does not contain r. Otherwise, we are back in the first case again. With this additional assumption, non-adjacency within C implies non-adjacency with r, as shown by the following claim.

Claim 2

For any pair of vertices u,vV(C) such that uvEj, we have ruEj or rvEj.

Proof

For the purpose of contradiction, suppose that ru,rvEj. Let sV(C) such that rsEj. Let Psu and Psv denote the edge-disjoint s-u and s-v paths in C respectively. Let u and v be the closest vertex to s on Psu and Psv respectively such that ru,rvEj (see Fig. 5 for an example). Without loss of generality, let w(ru)w(rv). Denote Psu and Psv as the s-u and s-v subpaths of Psu and Psv respectively. Now, consider the cycle D:=Psu+Psv+ru+rv. Observe that it contains r and is no bigger than C. Furthermore, it does not contain a chord incident to r by our choice of u and v. To arrive at a contradiction, it is left to show that D is well-covered, as this would imply D is violated. Suppose for a contradiction, that D is not well-covered. Then, there exists a chord g in D such that w(g)<w(ru) and w(g)<w(h) for some hE(D), where ru and h lie in different subcycles of D formed by g. This chord exists because C is well-covered but D is not. Let C1 and C2 denote the subcycles of C formed by g, where hE(C2). Note that any chord of C1 covers C1 because C is well-covered and w(g)<w(h). Hence, the subcycle C1 is well-covered. Moreover, we also have w(g)w(e) for all eE(C1) because C is well-covered and w(g)<w(h). Let w(g)=w for some <j. Then, C1 is still present in G but ru is not. Since C1 also contains u and v but uvE because uvEj, it is a violated cycle in G. However, this is a contradiction because there are no violated cycles in G.

Fig. 5.

Fig. 5

The ellipse represents the violated cycle C in Claim 2. The shaded region highlights the violated cycle D. The dashed edges indicate non-adjacency in Gj. In this example, u=u and v=v

The remaining proof proceeds in a similar fashion to the first case. Let u,vV(C) be such that uvEj. By the claim above, we know that ruEj or rvEj. For any chord f in C, observe that u and v lie in different subcycles of C formed by f. This is because the subcycles are well-covered by Claim 1, so the one which contains both u and v will contradict the minimality of C. Now, let g be a chord of C. Let Cu and Cv denote the subcycles of C formed by g where uV(Cu) and vV(Cv). The vertices of Cu are pairwise adjacent due to the minimality of C. Thus, Cu is a triangle. Otherwise, there exists a chord in Cu incident to u, and it forms a subcycle of C which contains both u and v. By an analogous argument, Cv is also a triangle. Therefore, C is a bad induced diamond in Gj.

Notice that we have proven something stronger. Namely, if Gj contains a violated cycle, then there exists an index ij such that Gi contains a bad hole or a bad induced diamond. Moreover, as mentioned earlier, bad holes and Hamiltonian cycles of bad induced diamonds are violated cycles themselves. Thus, we obtain the following corollary.

Corollary 1

There are no bad holes or bad induced diamonds in Gi for any i<k if and only if there are no violated cycles in Gi for any i<k.

Candidate edges and expensive neighborhood

In the previous section, we showed that violated cycles are an obstruction to submodularity. In light of this fact, we now focus on graphs G whose subgraphs Gi do not contain violated cycles. The goal of this section is to study the behaviour of fuv on these graphs. As a first step, the following lemma sheds light on how a minimum spanning tree changes under vertex removal.

Lemma 4

Assume that there are no violated cycles in Gi for any i<k. Let T be a minimum spanning tree of G[S] where rSV. For any sr, there exists a minimum spanning tree of G[S\s] which contains E(T\s) and additionally, only uses edges from G[NT(s)r].

Proof

Pick a vertex sS\r. By Lemma 1, there exists a minimum spanning tree of G[S\s] which contains E(T\s). Let T be such a tree which uses the most edges from G[NT(s)r]. We will show that T is our desired tree. For the purpose of contradiction, suppose T has an edge uv such that uvE(T) and uNT(s)r. Note that u and v lie in different components of T\s. Let Psu and Psv denote the unique s-u and s-v paths in T respectively. We claim that C:=Psu+Psv+uv is a well-covered cycle in Gi, where wi=w(uv). First, observe that uv is the most expensive edge in C because Psu+Psv is part of the minimum spanning tree T. Hence, the cycle C is present in Gi. Let f=xy be any chord of C in Gi, and denote Pxy as the unique x-y path in T. Then, Pxy+f is a subcycle of C formed by f. Moreover, we have w(f)w(e) for all eE(Pxy) because Pxy is part of the minimum spanning tree T. Hence, the chord f covers C, which proves the claim.

Let u and v be the vertices adjacent to s in Psu and Psv respectively. By our choice of T, we have w(uv)>w(uv)=wi, which implies that u and v are not adjacent in Gi. Since there are no violated cycles in Gi, it follows that the vertices of C are adjacent to r in Gi. However, note that adding ru or rv to T creates a fundamental cycle which uses the edge uv. Swapping it with uv creates another minimum spanning tree of G[S\s] which contains E(T\s) and uses more edges from G[NT(s)r]. We have arrived at a contradiction.

Given a pair of vertices u,vN where w(uv)=wi, the following definition distinguishes the neighbours of uv in G from the neighbours of uv in Gi.

Definition 4

For an edge uvE, if w(uv)=wi, the expensive neighborhood of uv is defined as

N^(uv):=Nk(uv)\Ni(uv).

In other words, the expensive neighborhood of an edge uv is the set of vertices su,v such that maxw(su),w(sv)>w(uv). It turns out that the function fuv always returns zero when evaluated on a set which does not lie entirely in the expensive neighborhood of uv.

Lemma 5

Assume that there are no violated cycles in Gi for any i<k. Let u,vN and SSuv. If SN^(uv), then fuv(S)=0.

Proof

Let T be a minimum spanning tree of G[Su,v]. First, we show that we can assume uvE(T). Since SN^(uv), there exists a vertex sS such that maxw(su),w(sv)w(uv). If uvE(T), then by rooting T at s, u is either a child or a parent of v. Adding su to T in the former and sv in the latter creates a fundamental cycle which contains uv. Thus, we can replace uv with this new edge to obtain the desired tree.

Since there are no violated cycles in Gi for any i<k, by Lemma 4, there exists a minimum spanning tree T of G[Sv] which contains E(T\u) and additionally, only uses edges from G[NT(u)r]. Recall that we assumed uvE(T), or equivalently, vNT(u). Therefore, the neighborhood of v is identical in both trees, i.e. NT(v)=NT(v).

Consider the forest T\v. Let pNT(v) such that p and r lie in the same component of T\v (see Fig. 6 for an example). Note that p=r if rNT(v). We claim that p and r also lie in the same component of the forest T\v. We may assume that pr, as otherwise the claim is trivially true. Moreover, we may assume that u lies on the unique p-r path in T. Otherwise, we are done because the same path is present in T\v. Let Cr denote the component of T\v which contains pr and u. By Lemma 4, the endpoints of every edge in E(T)\E(T\u) lie in Cr. This proves the claim.

Fig. 6.

Fig. 6

The left image depicts an example of the minimum spanning tree T in G[Su,v]. The right image depicts an example of the minimum spanning tree T in G[Sv]. The solid edges belong to the trees while dashed edges belong to the edge set F

Using Lemma 4, we can construct a minimum spanning tree of G[Su] by deleting v from T and adding a set F of edges from G[NT(v)r]. Note that prF as p and r lie in the same component of T\v. Since p and r also lie in the same component of T\v and NT(v)=NT(v), deleting v from T and adding the same set F of edges produces a minimum spanning tree of G[S]. Thus, we get

fuv(S)=mst(Su)+mst(Sv)-mst(S)-mst(Su,v)=(mst(Su)-w(E(T)))-(mst(S)-w(E(T)))=(w(F)-w(δT(v)))-(w(F)-w(δT(v)))=0

as desired.

We can now focus solely on vertex sets which lie entirely in the expensive neighborhood of uv. Observe that if rN^(uv), then SN^(uv) for all SSuv. Thus, we do not have to check these edges uv as fuv(S)=0 for all SSuv by the previous lemma. This motivates the following definition.

Definition 5

An edge uvE is called a candidate edge if rN^(uv).

With a mild assumption, we can show that the function fuv is inclusion-wise nonincreasing in the expensive neighborhood of uv.

Lemma 6

Assume that there are no violated cycles in Gi for any i<k. Let uv be a candidate edge and SSuv such that SN^(uv). If fxy(N^(xy))0 for every candidate edge xy, then fuv(S)fuv(S\s) for any sr.

Proof

Pick a vertex sS\r. Without loss of generality, assume w(su)w(sv). Then, w(su)>w(uv) because sN^(uv). However, these two inequalities also imply that vN^(su). It follows that the set (S\s)v is not contained in the expensive neighborhood of su. By Lemma 5,

0=fsu((S\s)v)=mst(Sv)+mst((S\s)u,v)-mst((S\s)v)-mst(Su,v).

Rearranging yields

mst(Sv)-mst(Su,v)=mst((S\s)v)-mst((S\s)u,v). 1

Since uv is a candidate edge, let w(uv)=wi for some i<k. We will proceed by induction on i. For the base case i=k-1, we have wk-1=w(uv)<w(su)=wk. Since N^(su)=, the set S\s is not contained in the expensive neighborhood of su because rS\s. By Lemma 5,

0=fsu(S\s)=mst(S)+mst((S\s)u)-mst(S\s)-mst(Su).

Rearranging yields

mst(Su)-mst(S)=mst((S\s)u)-mst(S\s). 2

Adding (1) and (2) gives fuv(S)=fuv(S\s). Now, suppose the lemma is true for all ij for some j<k. For the inductive step, let w(uv)=wj-1. We may assume that S\sN^(su), as otherwise we obtain equality again. This implies that su is a candidate edge because rS\s. Since w(su)>w(uv)=wj-1, we get

0fsu(N^(su))fsu(S\s)=mst(S)+mst((S\s)u)-mst(S\s)-mst(Su)

where the first inequality is due to our assumption while the second inequality is due to the induction hypothesis. Then, rearranging and adding it to (1) yields fuv(S)fuv(S\s) as desired.

Characterization of submodularity

We are finally ready to give an efficient characterization of submodular spanning tree games.

Theorem 1

The spanning tree game on G is submodular if and only if the following two conditions are satisfied.

  • (i)

    There are no violated cycles in Gi for any i<k.

  • (ii)

    For every candidate edge uv, fuv(N^(uv))0.

Furthermore, these conditions can be verified in polynomial time.

Proof

For necessity, assume the game is submodular. Then, Condition (i) is satisfied by Lemma 3 while Condition (ii) is satisfied trivially. For sufficiency, assume Conditions (i) and (ii) hold. Let u,vN and SSuv. If SN^(uv), then fuv(S)=0 by Lemma 5. On the other hand, if SN^(uv), then uv is a candidate edge. By Lemma 6,

fuv(S)fuv(N^(uv))0.

Therefore, the game is submodular.

Checking Condition (ii) can clearly be done in polynomial time. Using Corollary 1, verifying Condition (i) reduces to searching for bad holes and bad induced diamonds in each Gi, which can be done efficiently. To look for bad holes, one could check if there exists a hole through a given vertex v for all vN where rvEi. To look for bad induced diamonds, a naive implementation would involve examining all vertex subsets of size 4, which still runs in polynomial time.

S-wide spanning trees

In this section, we answer another question posed in [9]. There the authors stated a necessary condition for submodularity of the spanning tree game, and left open whether their condition can be verified in polynomial time. We here show that this is indeed the case. While this is not that relevant anymore in order to characterize submodularity (since we have provided Theorem 1), it shows a nice connection with matroid intersection that might still be of interest.

Theorem 2

(Theorem 1.2 in [9]). If the spanning tree game on G is submodular, then every minimum spanning tree T of G possesses the following two properties.

  1. It holds that w(rv)w(ru) for every vertex vN and every vertex uN on the (unique) path connecting r and v in T.

  2. For any pair of vertices u,vN where w(uv)<w(rv), the cycle obtained by adding uv to T does not contain r.

We show that checking Conditions (a) and (b) can be reduced to computing S-wide spanning trees, which are defined as follows. Let G=(V,E) be an undirected graph with edge weights w:ER and a designated root r1V. Let S:=s1,,skV\r1 be a given set of terminals. We say that a spanning tree T of G is S-wide if every component of T\r1 contains at most one terminal. Equivalently, T is S-wide if for every i,j[k] where ij, the unique si-sj path on T contains the root r1. We are interested in the following problem:

Given(G,w,r1,S),compute anS-wide spanningtree ofminimum weight.

Before solving the problem above, let us explain how one can use it to efficiently test Conditions (a) and (b) of Theorem 2. To check Condition (a), consider all pairs of vertices u,vN with w(rv)<w(ru), and do the following. Set r1:=u and S:={v,r}. Compute an S-wide spanning tree T of minimum weight in G. If the weight of T is equal to the weight of a minimum spanning tree in G, then T is a minimum spanning tree of G violating Condition (a), since u is on the unique path from r to v in T. It is not difficult to see that this procedure will eventually find a minimum spanning tree violating Condition (a), if one exists.

Condition (b) can be checked in a similar way. Consider all ordered pairs of vertices u,vN with w(uv)<w(rv), and do the following. Set r1:=r and S:={u,v}. Compute an S-wide spanning tree T of minimum weight in G. If the weight of T is equal to the weight of a minimum spanning tree in G, then T is a minimum spanning tree of G violating Condition (b), since adding uv to T yields a cycle containing r. Once again, it is not difficult to see that this procedure will eventually find a minimum spanning tree violating Condition (b), if one exists.

We will now demonstrate how to compute an S-wide spanning tree of minimum weight using matroid intersection. Let (G,w,r1,S) be a given instance. Without loss of generality, we may assume that there are no edges between any pair of terminals, as every S-wide tree does not use them. We also assume k2, otherwise this reduces trivially to computing an arbitrary minimum spanning tree.

First, construct an auxiliary graph G=(V,E) from G as follows. Create k-1 copies of the root vertex r2,,rk, including its incident edges. Next, let G1 denote the multigraph obtained from G by identifying r1,,rk into a single vertex r. Note that parallel edges are kept. In order to distinguish the k parallel edges between r and some vertex v, they will be denoted riv for all i[k], just like in the graph G. Similarly, let G2 denote the multigraph obtained from G by identifying s1,,sk into a single vertex s. See Fig. 7 for an example.

Fig. 7.

Fig. 7

The graph G and multigraphs G1,G2 respectively for the input graph K5 with 2 terminals

Now, consider the graphic matroids on G1 and G2, denoted M1=(E,I1) and M2=(E,I2) respectively. Observe that the matroids M1 and M2 share the same ground set E due to our notation of the parallel edges, but their independent sets are different. We would like to establish a correspondence between S-wide spanning trees in G and common bases of M1 and M2. Let T be the set of S-wide spanning trees in G. Moreover, let B1 and B2 be the set of bases of M1 and M2 respectively. Construct the function g:2E2E defined by

g(J):=h(e):eJ,

where h:EE is defined as

h(uv):=r1v,ifur1,,rkur1,ifvr1,,rkuv,otherwise.

Lemma 7

For every JB1B2, g(J) induces an S-wide spanning tree in G.

Proof

Let JB1B2. Then, it induces a spanning tree in the multigraphs G1 and G2. Note that g(J) also induces a spanning tree in the multigraph G1. Since the input graph G can be obtained from the multigraph G1 by removing parallel edges, and g(J)E, it follows that g(J) induces a spanning tree T in G. It is left to show that T is S-wide. For the purpose of contradiction, suppose there exist distinct indices i,j[k] such that the unique si-sj path P in T does not contain the root r1. From the definition of h, we know that E(P)J. However, E(P) induces a non-simple walk in G2, which implies that JI2. We have reached a contradiction.

Lemma 8

For every TT, there exists a set JB1B2 such that g(J)=E(T).

Proof

Let T be an S-wide spanning tree in G. For every i[k], let r1vi be the first edge of the r1-si path on T. Replace each r1vi with rivi and call the resulting edge set J. Then, J induces a forest F with k components in the auxiliary graph G, each of which contains ri and si. Since δF(v)1 for all vV, J induces a spanning tree in the multigraph G1, as well as a spanning tree in the multigraph G2. Thus, JB1B2. Moreover, g(J)=E(T).

The last two lemmas imply that g is a surjective mapping from B1B2 to T. It is also cost-preserving because J=g(J) for all JB1. Therefore, we can efficiently compute a minimum-weight S-wide spanning tree by computing a minimum-weight common basis of M1 and M2.

Acknowledgements

The authors would like to thank Kanstantsin Pashkovich for suggesting the connection with matroids in Sect. 6. The authors are also grateful to the anonymous reviewers for their valuable comments, which have helped improve the presentation of this paper.

Footnotes

Z. K. Koh: This work was done while the author was at the University of Waterloo.

A preliminary version of this paper appeared in Proceedings of the 20th Conference on Integer Programming and Combinatorial Optimization, IPCO 2019This work was supported by the NSERC Discovery Grant Program and an Early Researcher Award by the Province of Ontario.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Contributor Information

Zhuan Khye Koh, Email: z.koh3@lse.ac.uk.

Laura Sanità, Email: lsanita@uwaterloo.ca.

References

  • 1.Bird CG. On cost allocation for a spanning tree: a game theoretic approach. Networks. 1976;6(4):335–350. [Google Scholar]
  • 2.Chalkiadakis, G., Elkind, E., Wooldridge, M.: Computational Aspects of Cooperative Game Theory. Synthesis Lectures on Artificial Intelligence and Machine Learning. Morgan & Claypool Publishers (2011)
  • 3.Claus A, Kleitman DJ. Cost allocation for a spanning tree. Networks. 1973;3(4):289–304. [Google Scholar]
  • 4.Faigle U, Kern W, Fekete SP, Hochstättler W. On the complexity of testing membership in the core of min-cost spanning tree games. Int. J. Game Theory. 1997;26(3):361–366. [Google Scholar]
  • 5.Faigle U, Kern W, Kuipers J. Note computing the nucleolus of min-cost spanning tree games is NP-hard. Int. J. Game Theory. 1998;27(3):443–450. [Google Scholar]
  • 6.Granot D, Huberman G. Minimum cost spanning tree games. Math. Program. 1981;21(1):1–18. [Google Scholar]
  • 7.Granot D, Huberman G. The relationship between convex games and minimum cost spanning tree games: a case for permutationally convex games. SIAM J. Algebr. Dis. Methods. 1982;3(3):288–292. [Google Scholar]
  • 8.Grötschel M, Lovász L, Schrijver A. Geometric Algorithms and Combinatorial Optimization, Volume 2 of Algorithms and Combinatorics. Berlin: Springer; 1993. [Google Scholar]
  • 9.Kobayashi M, Okamoto Y. Submodularity of minimum-cost spanning tree games. Networks. 2014;63(3):231–238. [Google Scholar]
  • 10.Kuipers, J.: A polynomial time algorithm for computing the nucleolus of convex games. Report M, (Maastricht University, 1996). pp. 96–12
  • 11.Maschler M, Peleg B, Shapley LS. The kernel and bargaining set for convex games. Int. J. Game Theory. 1971;1(1):73–93. [Google Scholar]
  • 12.Okamoto Y. Submodularity of some classes of the combinatorial optimization games. Math. Methods Oper. Res. 2003;58(1):131–139. [Google Scholar]
  • 13.Shapley LS. Cores of convex games. Int. J. Game Theory. 1971;1(1):11–26. [Google Scholar]
  • 14.Trudeau C. A new stable and more responsive cost sharing solution for minimum cost spanning tree problems. Games Econ. Behav. 2012;75(1):402–412. [Google Scholar]
  • 15.van den Nouweland A, Borm P. On the convexity of communication games. Int. J. Game Theory. 1991;19(4):421–430. [Google Scholar]

Articles from Mathematical Programming are provided here courtesy of Springer

RESOURCES