Tight complexity lower bounds for integer linear programming with few constraints
We consider the ILP Feasibility problem: given an integer linear program {Ax = b, x≥ 0}, where A is an integer matrix with k rows and ℓ columns and b is a vector of k integers, we ask whether there exists x∈N^ℓ that satisfies Ax = b. Our goal is to study the complexity of ILP Feasibility when both k, the number of constraints (rows of A), and A_∞, the largest absolute value in A, are small. Papadimitriou [J. ACM, 1981] was the first to give a fixed-parameter algorithm for ILP Feasibility in this setting, with running time ((A| b_∞) · k)^O(k^2). This was very recently improved by Eisenbrand and Weismantel [SODA 2018], who used the Steinitz lemma to design an algorithm with running time (kA_∞)^O(k)·b_∞^2, and subsequently by Jansen and Rohwedder [2018] to O(kA_∞)^k·b_∞. We prove that for {0,1}-matrices A, the dependency on k is probably optimal: an algorithm with running time 2^o(k k)· (ℓ+b_∞)^o(k) would contradict ETH. This improves previous non-tight lower bounds of Fomin et al. [ESA 2018]. We then consider ILPs with many constraints, but structured in a shallow way. Precisely, we consider the dual treedepth of the matrix A, which is the treedepth of the graph over the rows of A, with two rows adjacent if in some column they both contain a non-zero entry. It was recently shown by Koutecký et al. [ICALP 2018] that ILP Feasibility can be solved in time A_∞^2^O(td(A))· (k+ℓ+b_∞)^O(1). We present a streamlined proof of this fact and prove optimality: even assuming that all entries of A and b are in {-1,0,1}, the existence of an algorithm with running time 2^2^o(td(A))· (k+ℓ)^O(1) would contradict ETH.
READ FULL TEXT