Conditional Lower Bounds for All-Pairs Max-Flow
Robert Krauthgamer, Ohad Trabelsi

TL;DR
This paper establishes strong computational lower bounds for the All-Pairs Max-Flow problem in directed graphs, indicating it likely cannot be solved significantly faster than cubic time, and connects this difficulty to the hardness of solving MAX-CNF-SAT, thus supporting the SETH conjecture.
Contribution
It provides the first evidence that All-Pairs Max-Flow cannot be solved in strongly subcubic time, linking its complexity to the hardness of MAX-CNF-SAT and settling a conjecture about the problem's difficulty.
Findings
All-Pairs Max-Flow likely requires near cubic time in directed graphs.
A faster solution would imply a breakthrough in solving MAX-CNF-SAT.
The results support the Strong Exponential Time Hypothesis (SETH).
Abstract
We provide evidence that computing the maximum flow value between every pair of nodes in a directed graph on nodes, edges,and capacities in the range , which we call the All-Pairs Max-Flow problem, cannot be solved in time that is significantly faster (i.e., by a polynomial factor) than even for sparse graphs. Since a single maximum -flow can be solved in time [Lee and Sidford, FOCS 2014], we conclude that the all-pairs version might require time equivalent to computations of maximum -flow,which strongly separates the directed case from the undirected one. Moreover, if maximum -flow can be solved in time ,then the runtime of computations is needed. The latter settles a conjecture of Lacki, Nussbaum, Sankowski, and Wulf-Nilsen [FOCS 2012] negatively. Specifically, we…
| Directed | Class | Problem | Runtime | Reference |
|---|---|---|---|---|
| No | General | All-Pairs (G-H Tree) | [GH61] | |
| No | Uncapacitated Networks | All-Pairs (G-H Tree) | [KL02], [BHKP07] | |
| No | Genus bounded by | All-Pairs (G-H Tree) | [BENW16] | |
| Yes | Sparse | All-Pairs | [ACZ98] | |
| Yes | Constant Treewidth | All-Pairs | [ACZ98] | |
| Yes | Uncapacitated | All-Pairs | [CLL11] | |
| Yes | Uncapacitated DAG | Single-Source | [CLL11] | |
| Yes | Planar | Single-Source | [LNSW12] |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Conditional Lower Bounds for All-Pairs Max-Flow111This work was partially supported by the Israel Science Foundation grant #897/13 and by a Minerva Foundation grant. An extended abstract of this article appears in Proceedings of ICALP 2017 and is also available at
arXiv:1702.05805. The most significant difference is the addition of Section 4.
Robert Krauthgamer222Email: [email protected] Ohad Trabelsi333Email: [email protected]
Weizmann Institute of Science
Abstract
We provide evidence that computing the maximum flow value between every pair of nodes in a directed graph on nodes, edges, and capacities in the range , which we call the All-Pairs Max-Flow problem, cannot be solved in time that is significantly faster (i.e., by a polynomial factor) than even for sparse graphs, namely ; thus for general , it cannot be solved significantly faster than . Since a single maximum -flow can be solved in time [Lee and Sidford, FOCS 2014], we conclude that the all-pairs version might require time equivalent to computations of maximum -flow, which strongly separates the directed case from the undirected one. Moreover, if maximum -flow can be solved in time , then the runtime of computations is needed. This is in contrast to a conjecture of Lacki, Nussbaum, Sankowski, and Wulff-Nilsen [FOCS 2012] that All-Pairs Max-Flow in general graphs can be solved faster than the time of computations of maximum -flow.
Specifically, we show that in sparse graphs , if one can compute the maximum -flow from every in an input set of sources to every in an input set of sinks in time , for some , and a constant , then MAX-CNF-SAT (maximum satisfiability of conjunctive normal form formulas) with variables and clauses can be solved in time for a constant , a problem for which not even algorithms are known. Such running time for MAX-CNF-SAT would in particular refute the Strong Exponential Time Hypothesis (SETH). Hence, we improve the lower bound of Abboud, Vassilevska-Williams, and Yu [STOC 2015], who showed that for every fixed and , if the above problem can be solved in time , then some incomparable (and intuitively weaker) conjecture is false. Furthermore, a larger lower bound than ours implies strictly super-linear time for maximum -flow problem, which would be an amazing breakthrough.
In addition, we show that All-Pairs Max-Flow in uncapacitated networks with every edge-density , cannot be computed in time significantly faster than , even for acyclic networks. The gap to the fastest known algorithm by Cheung, Lau, and Leung [FOCS 2011] is a factor of , and for acyclic networks it is , where is the matrix multiplication exponent.
Finally, we extend our lower bounds to the version that asks only for the maximum-flow values below a given threshold (over all source-sink pairs).
1 Introduction
The maximum flow problem is one of the most fundamental problems in combinatorial optimization. This classic problem and its variations such as minimum-cost flow, integral flow, and minimum-cost circulation, were studied extensively over the past decades, and have become key algorithmic tools with numerous applications, in theory and in practice. Moreover, techniques developed for flow problems were generalized or adapted to other problems, see for example [BJS10, AMO93, AHK12]. The maximum -flow problem, which we shall denote Max-Flow, asks to ship the maximum amount of flow from a source node to a sink node in a directed edge-capacitated graph , where throughout, we denote and , and assume integer capacities bounded by . After this problem was introduced in 1954 by Harris and Ross (see [Sch02] for a historical account), Ford and Fulkerson [FF56] devised the first algorithm for Max-Flow, which runs in time , where is the maximum value of a feasible flow. Ever since, a long line of generalizations and improvements was studied, and the current fastest algorithm for Max-Flow with arbitrary capacities is by Lee and Sidford [LS14], which takes time. For the case of small capacities and sufficiently sparse graphs, the fastest algorithm, due to Mądry [Mąd16], has a running time . Here and throughout, denotes for unspecified constant .
A very natural problem is to compute the maximum -flow for multiple source-sink pairs in the same graph . The seminal work of Gomory and Hu [GH61] shows that in undirected graphs, Max-Flow for all source-sink pairs requires at most executions of Max-Flow (see also [Gus90], where the computations are all on the input graph), and a lot of research aimed to extend this result to directed graphs, with several partial successes, see details in Section 1.1. However, it is still not known how to solve Max-Flow for multiple source-sink pairs faster than solving it separately for each pair, even in special cases like a single source and all possible sinks. We shall consider the following problems involving multiple source-sink pairs, where the goal is always to report the value of each flow (and not an actual flow attaining it).
Definition 1.1**.**
(Single-Source Max-Flow) Given a directed edge-capacitated graph and a source node , output, for every , the maximum flow that can be shipped in from to .
Definition 1.2**.**
(All-Pairs Max-Flow) Given a directed edge-capacitated graph , output, for every pair of nodes , the maximum flow that can be shipped in from to .
Definition 1.3**.**
(ST-Max-Flow) Given a directed edge-capacitated graph and two subsets of nodes , output, for every pair of nodes and , the maximum flow that can be shipped in from to .
Definition 1.4**.**
(Global Max-Flow) Given a directed edge capacitated graph , output the maximum among all pairs , of the maximum flow value that can be shipped in from to .
Definition 1.5**.**
(Maximum Local Edge Connectivity) Given a directed graph , output the maximum among all pairs , of the maximum number of edge-disjoint -paths in .
Note that in a graph with all edge capacities equal to , the problem of finding the maximum local edge connectivity is equivalent to finding the global maximum flow.
1.1 Prior Work
We start with undirected graphs, where the All-Pairs Max-Flow values can be represented in a very succint manner, called nowdays a Gomory-Hu tree [GH61]. In addition to being very succint, it allows the flow values and the corresponding cuts (vertex partitions) to be quickly retrieved. For a list of previous algorithms for multiple pairs maximum -flow, see Table 1. For directed graphs, no current algorithm computes the maximum flow between any given pairs of nodes faster than the time of separate Max-Flow computations. However, some results are known in special settings. It is possible to compute Max-Flow for pairs in the time it takes for a single Max-Flow computation [HO94] and this result is used to find a global minimum cut. However, these pairs cannot be specified in the input.
For directed planar graphs, there is an time algorithm for the Single-Source Max-Flow problem [LNSW12], which immediately yields an time algorithm for the All-Pairs version, that is much faster than the time of computations of planar Max-Flow, a problem that can be solved in time [BK09]. Based on these results, it was conjectured in [LNSW12] that also in general graphs, All-Pairs Max-Flow can be solved faster than the time required for computing separate maximum -flows.
Several hardness results are known for multiple-pairs variants of Max-Flow [AVY15]. For ST-Max-Flow in sparse graphs () and , there is an lower bound assuming at least one of the Strong Exponential Time Hypothesis (SETH), 3SUM, and All-Pairs Shortest-Paths (APSP) conjectures is correct (for comprehensive surveys on them, see [Vas15, Vas18]). In addition, they show that Single-Source Max-Flow on sparse graphs requires time, unless MAX-CNF-SAT can be solved in time for some fixed , and in particular SETH is false.
We will rely on SETH, a conjecture introduced by [IP01], and on some weaker assumption related to its maximization version, MAX-CNF-SAT. In more detail, SETH states that for every fixed there is an integer such that kSAT on variables and clauses cannot be solved in time , where refers to for unspecified constant . By the sparsification lemma [IPZ01], in order to refute SETH it can be assumed that the number of clauses is . The MAX-CNF-SAT problem asks for the maximum number of clauses that can be satisfied in an input CNF formula. Most of our conditional lower bounds are based on the assumption that for every fixed , MAX-CNF-SAT cannot be solved in time , where currently even algorithms are not known for this problem [AVY15]. Note that this is a weaker assumption than SETH, since a faster algorithm for MAX-CNF-SAT would imply a faster algorithm for CNF-SAT and refute SETH. Different assumptions regarding the hardness of CNF-SAT have been the basis for many lower bounds, including for the runtime of solving NP-hard problems exactly, parametrized complexity, and problems in P. See the Introduction in [ABHS17] and the references therein.
1.2 Our Contribution
We present conditional runtime lower bounds for both uncapacitated and capacitated networks. The proofs appear in sections 2 and 3, respectively, where the order reflects increasing level of complication. All our lower bounds hold even when the input is a DAG and has a constant diameter, and in the case of general capacities, they can be easily modified to apply also for graphs with constant maximum degree. In addition, for integer we use to denote the range .
Capacitated Networks
Our main result is that for every set sizes and , the ST-Max-Flow cannot be solved significantly faster than (i.e., polynomially smaller runtime), unless a breakthrough in MAX-CNF-SAT is achieved, and consequently in SETH.
Theorem 1.6**.**
If for some fixed constants , , ST-Max-Flow on graphs with nodes, , , edges, and capacities in can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
This result improves the aforementioned lower bound of [AVY15], as for their setting of our lower bound is , although their lower bound is based on an incomparable (and intuitively weaker) conjecture, that at least one of the SETH, 3SUM, and APSP conjectures is correct. In fact, if there was a reduction from SETH that implied a larger runtime lower bound for ST-Max-Flow, then the (single-pair) Max-Flow problem would require a strictly super-linear time under it, but such a reduction is not possible unless the non-deterministic version of SETH (abbreviated NSETH) is false [CGI*+*16]. And anyway, such a lower bound for Max-Flow would be an amazing breakthrough.
The next theorem is an immediate corollary of Theorem 1.6, by assigning .
Theorem 1.7**.**
If for some fixed , All-Pairs Max-Flow in graphs with nodes, edges, and capacities in can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
This conditional lower bound (see Figure 1) shows that All-Pairs Max-Flow requires time that is equivalent to computations of Max-Flow, which strongly separates the directed case from the undirected one (where a Gomory-Hu tree can be constructed in the time of computations). If Max-Flow takes time, which is currently open but plausible, then the running time of computations of Max-Flow is needed. This is in contrast to the aforementioned conjecture of Lacki, Nussbaum, Sankowski, and Wulf-Nilsen [LNSW12] that All-Pairs Max-Flow in general graphs can be solved faster than the time of computations of maximum -flow.
Uncapacitated Networks
For the case of uncapacitated networks, we show that for every , All-Pairs Max-Flow cannot be solved significantly faster than . Here we introduce a new technique to design reductions from SETH to graphs with varying edge densities, rather than the usual reductions that only deal with sparse graphs.
Theorem 1.8**.**
If for some fixed and , All-Pairs Max-Flow in uncapacitated graphs with nodes and edges can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
Hence, a certain additional improvement to the time algorithm of [CLL11] (and similarly to the time for DAGs, where our lower bounds apply too) is not likely. We now present conditional lower bounds for ST-Max-Flow, which are functions of and .
Theorem 1.9**.**
If for some fixed constants , , ST-Max-Flow on uncapacitated graphs with nodes, , , and edges can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
In addition, we present a conditional lower bound for computing the Maximum Local Edge Connectivity of sparse graphs, which is the same as Global Max-Flow if all the capacities are , that is indeed the case in our reduction. The next result, proved in Section 5, was obtained together with Bundit Laekhanukit and Rajesh Chitnis, and we thank them for their permission to include it here.
Theorem 1.10**.**
If for some fixed , the Maximum Local Edge Connectivity in graphs with nodes and edges can be found in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
Generalization to Bounded Cuts
Finally, we show in Section 4 that our lower bounds extend to the version that requires to output the maximum-flow value only for source-sink pairs for which this value is at most some given threshold .
Connection to the Orthogonal Vectors Problem
Our techniques are based on partitioning the variable set of CNF-SAT to sets of different sizes, and constructing graphs with the property that certain pairs of nodes would have smaller maximum flow between them if and only if they correspond to a satisfying assignment. This approach is inspired by results of Williams [Wil05].
We remark that all of our theorems can also be proved assuming that for the appropriate , the -Orthogonal Vectors (OV) problem cannot be solved in time for a fixed constant , in what is called the OV Hypothesis (see [Vas15, Vas18]). In the OV problem the input is sets , each of vectors from , and the goal is to find vectors , one from each set, such that (for it means that are orthogonal). An equivalent version of the problem has . Solving OV in time can be done easily by exhaustive search, while the fastest known algorithm for the problem runs in time [AWY15, CW16]. Williams [Wil05] proved that SETH implies the non-existence of an -time algorithm.
2 Reduction to Multiple-Pairs Max-Flow with Unit Capacity
In this section we prove Theorems 1.8 and 1.9. We start with a general lemma which is the heart of the proofs.
Lemma 2.1**.**
Let and . Then MAX-CNF-SAT on variables and clauses can be reduced to instances of ST-Max-Flow with and in graphs with nodes, edges, and capacities in .
Proof.
Given a CNF-formula on variables and clauses as input for MAX-CNF-SAT, , and , we split the variables into three sets , , and , where is of size , is of size , and is of size , and enumerate all their , , and partial assignments (with respect to ), respectively, when the objective is to find a triple of assignments to , , and respectively, that satisfies the maximal number of clauses. We will have an instance of ST-Max-Flow for each value , in which by one call to ST-Max-Flow we check if there exists a triple , , and that satisfies at least clauses, as follows.
We construct a graph for every on nodes , where contains a node for every assignment to , contains nodes for every assignment to , that are and for every , , and the set , and contains a node for every assignment to . We use the notation for nodes in and for assignments to , for assignments to , and for nodes in and assignments to . However, it will be clear from the context. Now, we have to describe the edges in the network. In order to simplify the reduction, we partition the edges into blue and red colors, as follows.
For every , , and , we add a blue edge from to if both of and do not satisfy the clause (do not set any of the literals to true), and otherwise we add a red edge from to . We further add, for every , , and , a blue edge from to if does not satisfy . For every , , and , we add a red edge from every to every . For every and , we add a red edge from to and from to , and finally for every and , we add a red edge from to , where all edges are of capacity .
The graph we built has nodes, edges, with capacities in (see Figure 2), and its construction time is asymptotically the same as the time it takes to output its edge set.
For every , , and , we denote by the graph induced from on the nodes
[TABLE]
We claim that for every and , the maximum flow from to can be bounded by the sum, over all , of the maximum flow between them in . This claim follow easily because the intersection for is exactly the source and the sink , no edge passes between these two graphs, and \Big{(}\bigcup_{\begin{subarray}{c}\beta\end{subarray}}G_{i}^{\alpha,\beta,\gamma}\Big{)} consists of all nodes that are both reachable from and is reachable from them.
We now prove that if there is an assignment to that satisfies at least clauses then the graph we built has a triple with maximum flow from to in at most . Since for every , is the number of outgoing edges from in , is also an upper bound for the maximum flow from to in it, and hence in it is at most . Otherwise, we will show that every triple has a maximum flow from to in of size at least , and so in it is at least . Hence, by simply picking the maximal such that the maximum flow in of some pair is at most , and then by iterating over all assignments to with and fixed as the assignments to and , we can also find the required triple .
For the first direction, assume that has an assignment that satisfies at least clauses, and denote such assignment by . Let , , and be the assignments to , , and , respectively, that are induced from . Since a blue path from through for some to corresponds to , , and all do not satisfy , in there are at most (internally) disjoint blue paths from to . As the only way to ship flow in that is not through a blue path is through the node , and the total number of edges going out of this node is , we conclude that the total maximum flow in from to is bounded by . Since for every , the maximum amount of flow that can be shipped in from to is at most , summing over all we get that the total flow in from to is bounded by , as required.
For the second direction, assume that every assignment to satisfies at most clauses. In order to show that the maximum flow from every to every is at least , we first fix , , and . Then, by passing flow in two phases we show that units of flow can be passed in from to . As this argument applies for every , we can add up the respective flows without violating capacities, concluding the proof. By the assumption, there exist ’s, such that , , and do not satisfy , and we denote a set with this amount of such ’s by . Each of these ’s induces a blue path from to in , and so we ship a unit of flow through every one of them according to , in what we call the first phase. In the second phase, we ship additional units in the following way. Let , and , where denotes that the assignment satisfies (as defined earlier), and denotes that it does not satisfy . Let be a bijective function such that the range of is and the range of is . Clearly, there exists such bijection and it is easy to find one. For every we ship flow through the path , and for every through the path , in both cases with .
Since we defined the flow in paths, we only need to show that the capacity requirements hold, and we start with blue edges. Indeed, edges of the form are used in the first phase, with flow that is determined uniquely by and , and in the second phase uniquely according to and , and so they cannot be used twice. Edges of the form are only used in the first phase, and their flow is uniquely determined according to and , and so are good too. We now proceed to red edges, which were used only in the second phase.
Edges of the forms , and have flow that is uniquely determined by and , and so are not used more than once. Edges of the form have flow that is uniquely determined by and , and since is a bijection, every has at most one such that , and so these edges are also used at most once. As a byproduct, and since every edge of the form has only the edge as its source for flow, edges of the form are also used at most once. Altogether, we have bounded the total flow in all edges that were used in both phases, and so the capacity requirements follow, which completes the proof of the second direction and of Lemma 2.1. ∎
Proof of Theorem 1.8.
We apply Lemma 2.1 in as follows. For every setting of we get graphs with ( if ) and . Hence, and so in order to get any we can pick such that additionally , and Theorem 1.8 follows. ∎
Proof of Theorem 1.9.
Here we apply Lemma 2.1 a bit differently. For every setting of such that we get graphs with and . Hence, in order to get any , we can pick and , which clearly satisfy the required conditions. Now, observe that and , thus and , we get our lower bound for , and Theorem 1.9 follows. ∎
3 Reduction to Multiple-Pairs Max-Flow in Capacitated Networks
In this section we prove Theorems 1.6 and 1.7. We proceed to prove our main technical lemma.
Lemma 3.1**.**
Let and . Then MAX-CNF-SAT on variables and clauses can be reduced to instances of ST-Max-Flow with and in graphs with nodes, edges, and with capacities in .
Proof.
Given a CNF-formula on variables and clauses as input for MAX-CNF-SAT, , and , we begin similarly to before by splitting the variables into three sets , , and where is of size , is of size , and is of size , and enumerate all their , , and partial assignments (with respect to ), respectively, when the objective is to find a triple of assignments to , , and , that satisfy the maximal number of clauses. We will have an instance of ST-Max-Flow for each value , in which by one call to ST-Max-Flow we check if there exists a triple that satisfies at least clauses, as follows.
We construct the graph on nodes , where contains a node for every assignment to , contains nodes for every assignment to , that are , , , for every , and , contains a node for every assignment to , contains two nodes and for every clause , and contains a node for every clause . We use the notation for nodes in and assignments to , to assignments to , for nodes in and assignments to , and for nodes in and clauses. However, it will be clear from the context. Now, we have to describe the edges in the network. In order to simplify the reduction, we partition the edges into red and blue colors, as follows.
For every and we add a red edge of capacity from to if , and a blue edge of the same capacity from to otherwise. We further add, for every , a red edge of capacity from to , a blue edge of capacity from to , a blue edge of capacity from to if , a red edge of capacity from to , and a blue edge of capacity from to . For every we add a red edge of capacity from to . For every we add a red edge of capacity from to , and finally, for every and we add a blue edge of capacity from to if .
The graph we built has nodes, at most edges, all of its capacities are in , and its construction time is (see Figure 3).
We proceed to prove that if there is an assignment to that satisfies at least clauses then the graph we built has a pair with maximum flow from to at most , and otherwise, every has a maximum flow of size at least . Hence, by simply picking the maximal such that the maximum flow in of some pair is at most , and then by iterating over all assignments to with and fixed as the assignments to and , we can also find the required triple .
For the first direction, assume that has an assignment that satisfies at least clauses, and denote such assignment by . Let , , and be the assignments to , , and , respectively, that are induced from . We will show that there exists an cut whose capacity is at most , hence by the Min-Cut Max-Flow theorem, the maximum flow from to is bounded by this number, concluding the proof of the first direction. We define the cut in a way that for every , the cut will have cut edges that are contributed from nodes related to , and nodes related to will be carefully added to either side of the cut, so that they will contribute capacity of only to the cut. This is done by exploiting the fact that there are at most blue paths from to through nodes associated with . To be more precise, we define a suitable cut as follows. 444In previous versions including the journal version (TALG 2018), was erroneously not included in the set .
[TABLE]
[TABLE]
Claim 3.2**.**
The cut has capacity at most .
Proof of Claim.
We will go over all the nodes in , and count the total capacity leaving to nodes in for each of them. and all nodes and that are adjacent to it are in too, hence it does not contribute anything. For every , we have two cases for nodes in . If then and hence does not contribute anything. However, has outgoing edges, where all except are in . Hence, it contributes to the cut. Else, if then and hence does not contribute anything. But has outgoing edges, of which are cut edges as their targets are in , and the one incoming to is a cut edge if and only if and also (equivalently, ), and in our current case it means that . Hence, for every , the nodes in contribute to the cut if , and otherwise. Since there are at most clauses that are not satisfied by , summing over all would yield a total of at most cut edges for vertices with origin in .
For every , all nodes in that are associated with , , and , are in and hence will not contribute anything to the cut. However, the node is always in , with its sole target, and hence the edge is in the cut and contributes an additional amount of , to a current total of at most . In addition, is the only target of , and thus will not contribute to the cut.
We will show that the rest of the nodes, i.e., nodes in that are of the forms and , and the nodes in , contribute nothing to the cut. For every , if and only if either or , so we assume that. It always happens that , and if and only if , but in such case, by our assumption it must be that , which implies that the edge is not in the graph, thus the total contribution of is zero. Continuing to nodes of the forms and , it is easy to verify that the following four statements are either all true or all false: , , , and the edge is not in the graph. In the case where they all false, in particular and are in and it is clear that they do not contribute anything, so we will focus on the remaining case. Since is in and is the only target of , will not increase the cut capacity. In addition, since the edge is not in the graph and also all nodes are in , does not increase the capacity of the cut either. Altogether we have bounded the total capacity of the cut by , finishing the proof of Claim 3.2. ∎
Proceeding with the proof of Lemma 3.1, we now focus on the second direction. Assume that every assignment to satisfies at most clauses. We remind that we need to prove that the maximum flow from every to every is at least , and to do this we first fix and . By the assumption, for every there exist ’s, such that , , and do not satisfy , and we denote a set with this amount of such ’s by . Each of these ’s induces a blue path from to , and so we pass a unit of flow through every one of them according to , and for all , in what we call the first phase. We note that so far, the flow sums up to , and so we carry on with shipping the second phase of flow through paths that are not entirely blue.
We claim that for every , we can pass an additional amount of units through , which would add up to a total flow of , concluding the proof. Indeed, for every , we ship flow in the following way. For every , if then send a unit through , and otherwise send a unit through .
Since we defined the flow in paths, we only need to show that the capacity constraints are satisfied, starting with edges of color blue. Edges of the forms , , and are only used in the first phase, where the flow in the first two is uniquely determined by and , and so at most unit of flow is passed through them, and the flow in the latter kind is determined by , and the same can have at most units of flow passing in , and so the flow in it is also bounded. The flow in edges of the form in the first phase is uniquely determined by and , and in the second phase uniquely according to and , and so will not be used twice, and the flow in edges of the form is determined in the first phase by and in the second phase by , and so will be used at most times.
We now proceed to prove that red edges too do not have more flow than their capacity, and for this we only need to consider the second phase. Edges of the forms , , and have flow that is uniquely determined by and and so are not used more than once, edges of the form have flow that is determined by and thus have flow , and edges of the form have flow of size , and hence are properly bounded. Finally, edges of the form have flow that is determined by and so are used at most times. Altogether, we have bounded the total flow in all the edges that were used in both phases, and so the capacity requirements follow, which completes the proof of the second direction and of Lemma 3.1. ∎
Proof of Theorem 1.6.
We apply Lemma 3.1 in the following way. For every setting of such that we get graphs with and . Hence, in order to get any , we can pick and , which clearly satisfy the required conditions. Now, observe that and , thus and , and our claimed lower bound and Theorem 1.6 follow.
∎
4 Generalization to Bounded Cuts
Our lower bounds extend to the version where we only care about vertex-pairs with maximum flow bounded by a given , which we refer to as kPMF.
Definition 4.1**.**
(kPMF) Given a directed edge-capacitated graph and an integer , for every pair of nodes where the maximum flow that can be shipped in from to is of size at most , output this pair and its maximum flow value.
Theorem 4.2** (Generalization of Theorem 1.8).**
If for some fixed constants and , kPMF in uncapacitated graphs with nodes, , and edges can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
Proof.
We apply Lemma 2.1 as follows. For every setting of we get graphs with ( if ), and . The main idea is that the middle layer bound the flow from every to every , which are the only pairs that we need to find the maximum flow for. To be more precise, for every and we show a cut of capacity separating them, by considering
[TABLE]
Clearly, the only outgoing edges from are from and from vertices of the form . has an outgoing degree at most , and for each and , vertices of the form have a total outgoing degree at most . Hence, the total capacity of the cut is bounded by . The claimed range of is attained because setting yields , and letting approach yields tending to . Note that , and , and finally in order to get any we can pick such that additionally , and Theorem 4.2 holds. ∎
Theorem 4.3** (Generalization of Theorem 1.7).**
If for some fixed constants and , kPMF in graphs with nodes, , edges, and capacities in can be solved in time , then for some , MAX-CNF-SAT on variables and clauses can be solved in time , and in particular SETH is false.
Proof.
We apply Lemma 3.1 in a similar fashion to the application of Lemma 2.1 in the proof of Theorem 4.2, where the choices of and are done in exactly the same way as before, also allowing again a free choice of . However, now , and we choose the cut as follows. For every and we show a cut of capacity separating them, by considering
[TABLE]
Clearly, the only outgoing edges from are of capacity , from and from vertices of the forms and . For each and , these vertices have a total of at most edges going out to the rest of the graph. Hence, the size of the cut is bounded by , and the range of is similar to the proof of Theorem 4.2, and so Theorem 4.3 holds.
∎
Known algorithms solve kPMF in directed graphs in time , which is bigger than the lower bound in Theorem 4.3 by a factor that is roughly between and for sparse graphs, leaving a gap that is not too big even for relatively small values of . This running time can be achieved by computations of either the aforementioned time algorithm of [FF56] (actually, a slightly modified version that halts when the total flow exceeds ), or the time algorithm of [LS14].
It is interesting to note that in graphs that are undirected and uncapacitated, an algorithm for kPMF with running time was shown in [BHKP07]. This shows a separation between the directed and the undirected cases also for uncapacitated graphs, roughly by a factor , since our relevant conditional lower bound is proved for . Their algorithm actually builds in time a partial Gomory-Hu tree that succinctly represents the values required by kPMF, and then it is easy to extract all the relevant values in time , as required by our definition of kPMF. For instance, when and their upper bound for the undirected and uncapacitated case is , while our lower bound for the directed case is .
5 Global Max-Flow
Proof of Theorem 1.10.
Given a CNF-formula on variables and clauses as input for MAX-CNF-SAT, we split the variables into two sets and of size each and enumerate all partial assignments (with respect to ) to each of them, when the objective is to find a pair of assignments to and that satisfy the maximal number of clauses. We construct a graph such that as follows. contains a node for every assignment to , contains a node for every assignment to , and contains three nodes , , and for every clause . We use the notation for nodes in and assignments to , for nodes in and assignments to . However, it will be clear from the context. For every assignment to and clause , we add an edge from to and if , and an edge from to otherwise. Similarly, for every assignment to and clause , we add an edge from to and if , and an edge from to otherwise. This graph has nodes and at most edges. For every pair of assignments and and clause there is exactly one path (of length ) from to through nodes associated with if and only if or , and no paths through them otherwise. Hence, the number of edge disjoint paths from to is exactly the number of clauses that are satisfied by both of the assignments and , and so an algorithm for Maximum Local Edge Connectivity with running time implies an algorithm for MAX-CNF-SAT with running time , completing the proof for . ∎
Acknowledgements
We thank Rajesh Chitnis and Bundit Laekhanukit for some useful conversations, and for their part in achieving the result on Global Max-Flow.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[ABHS 17] A. Abboud, K. Bringmann, D. Hermelin, and D. Shabtay. SETH-based lower bounds for subset sum and bicriteria path. Co RR , 2017. Available from: http://arxiv.org/abs/1704.04546 .
- 2[ACZ 98] S. R. Arikati, S. Chaudhuri, and C. D. Zaroliagis. All-pairs min-cut in sparse networks. J. Algorithms , 29(1):82–110, 1998. doi:10.1006/jagm.1998.0961 . · doi ↗
- 3[AHK 12] S. Arora, E. Hazan, and S. Kale. The multiplicative weights update method: a meta-algorithm and applications. Theory of Computing , 8(1):121–164, 2012. doi:10.4086/toc.2012.v 008a 006 . · doi ↗
- 4[AMO 93] R. K. Ahuja, T. L. Magnanti, and J. B. Orlin. Network flows - theory, algorithms and applications . Prentice Hall, 1993.
- 5[AVY 15] A. Abboud, V. Vassilevska-Williams, and H. Yu. Matching triangles and basing hardness on an extremely popular conjecture. In Proceedings of the Forty-seventh Annual ACM Symposium on Theory of Computing , STOC ’15, pages 41–50. ACM, 2015. doi:10.1145/2746539.2746594 . · doi ↗
- 6[AWY 15] A. Abboud, R. Williams, and H. Yu. More applications of the polynomial method to algorithm design. In Proceedings of the Twenty-sixth Annual ACM-SIAM Symposium on Discrete Algorithms , SODA ’15, pages 218–230, 2015. doi:10.1145/2722129.2722146 . · doi ↗
- 7[BENW 16] G. Borradaile, D. Eppstein, A. Nayyeri, and C. Wulff-Nilsen. All-pairs minimum cuts in near-linear time for surface-embedded graphs. In 32nd International Symposium on Computational Geometry (So CG 2016) , volume 51 of Leibniz International Proceedings in Informatics (LIP Ics) , pages 22:1–22:16. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, 2016. doi:10.4230/LIP Ics.So CG.2016.22 . · doi ↗
- 8[BHKP 07] A. Bhalgat, R. Hariharan, T. Kavitha, and D. Panigrahi. An O ~ ( m n ) ~ 𝑂 𝑚 𝑛 \tilde{O}(mn) Gomory-Hu tree construction algorithm for unweighted graphs. In 39th Annual ACM Symposium on Theory of Computing , STOC’07, pages 605–614. ACM, 2007. doi:10.1145/1250790.1250879 . · doi ↗
