Hyperplanes Avoiding Problem and Integer Points Counting in Polyhedra
Grigorii Dakhno, Dmitry Gribanov, Nikita Kasianov, Anastasiia Kats, Andrey Kupavskii, Nikita Kuz'min
TL;DR
The paper introduces the Hyperplanes Avoiding Problem and shows it as a key subroutine in Barvinok-type counting of integer points in polyhedra. It provides a deterministic $O(nm)$-time algorithm achieving $\|x\|_1 \le (m+n)/2$ for $p=1$, and proves NP-hardness for all $p \ge 1$, highlighting intrinsic computational limits. The authors connect the problem to counting, deriving refined complexity bounds $O(\nu^2 \cdot n^3 \cdot \Delta^3)$ for counting points in polytopes and discuss implications for bounded codimension and unbounded Subset-Sum, with practical gains in numerical stability and performance. An approximate, constructive variant of the Combinatorial Nullstellensatz underpins the algorithmic approach, while experimental results demonstrate lower-norm solutions than random sampling. These results yield both theoretical improvements and practical benefits for Barvinok-type counting algorithms in integer programming and polyhedral combinatorics.
Abstract
In our work, we consider the problem of computing a vector $x \in Z^n$ of minimum $\|\cdot\|_p$-norm such that $a^\top x \not= a_0$, for any vector $(a,a_0)$ from a given subset of $Z^n$ of size $m$. In other words, we search for a vector of minimum norm that avoids a given finite set of hyperplanes, which is natural to call as the $\textit{Hyperplanes Avoiding Problem}$. This problem naturally appears as a subproblem in Barvinok-type algorithms for counting integer points in polyhedra. We show that: 1) With respect to $\|\cdot\|_1$, the problem admits a feasible solution $x$ with $\|x\|_1 \leq (m+n)/2$, and show that such solution can be constructed by a deterministic polynomial-time algorithm with $O(n \cdot m)$ operations. Moreover, this inequality is the best possible. This is a significant improvement over the previous randomized algorithm, which computes $x$ with a guaranty $\|x\|_{1} \leq n \cdot m$. The original approach of A.~Barvinok can guarantee only $\|x\|_1 = O\bigl((n \cdot m)^n\bigr)$. To prove this result, we use a newly established algorithmic variant of the Combinatorial Nullstellensatz; 2) The problem is NP-hard with respect to any norm $\|\cdot\|_p$, for $p \in \bigl(R_{\geq 1} \cup \{\infty\}\bigr)$. 3) As an application, we show that the problem to count integer points in a polytope $P = \{x \in R^n \colon A x \leq b\}$, for given $A \in Z^{m \times n}$ and $b \in Q^m$, can be solved by an algorithm with $O\bigl(ν^2 \cdot n^3 \cdot Δ^3 \bigr)$ operations, where $ν$ is the maximum size of a normal fan triangulation of $P$, and $Δ$ is the maximum value of rank-order subdeterminants of $A$. As a further application, it provides a refined complexity bound for the counting problem in polyhedra of bounded codimension. For example, in the polyhedra of the Unbounded Subset-Sum problem.
