This paper presents the first study of the complexity of the optimization problem for integer linear-exponential programs which extend classical integer linear programs with the exponential function $x \mapsto 2^x$ and the remainder function ${(x,y) \mapsto (x \bmod 2^y)}$. The problem of deciding if such a program has a solution was recently shown to be NP-complete in [Chistikov et al., ICALP'24]. The optimization problem instead asks for a solution that maximizes (or minimizes) a linear-exponential objective function, subject to the constraints of an integer linear-exponential program. We establish the following results: 1. If an optimal solution exists, then one of them can be succinctly represented as an integer linear-exponential straight-line program (ILESLP): an arithmetic circuit whose gates always output an integer value (by construction) and implement the operations of addition, exponentiation, and multiplication by rational numbers. 2. There is an algorithm that runs in polynomial time, given access to an integer factoring oracle, which determines whether an ILESLP encodes a solution to an integer linear-exponential program. This algorithm can also be used to compare the values taken by the objective function on two given solutions. Building on these results, we place the optimization problem for integer linear-exponential programs within an extension of the optimization class $\text{NPO}$ that lies within $\text{FNP}^{\text{NP}}$. In essence, this extension forgoes determining the optimal solution via binary search.
翻译:本文首次研究了整数线性指数规划优化问题的复杂度,该规划在经典整数线性规划的基础上扩展了指数函数 $x \mapsto 2^x$ 和余数函数 ${(x,y) \mapsto (x \bmod 2^y)}$。判断此类规划是否存在解的问题最近已被证明是 NP 完全的 [Chistikov et al., ICALP'24]。而优化问题则要求在满足整数线性指数规划约束的条件下,找到最大化(或最小化)线性指数目标函数的解。我们建立了以下结果:1. 若存在最优解,则其中至少有一个解可以简洁地表示为整数线性指数直线程序:一种算术电路,其门电路始终输出整数值(通过构造实现),并实现了加法、指数运算以及与有理数的乘法运算。2. 在给定整数分解预言机访问权限的条件下,存在一个多项式时间算法,用于判断一个 ILESLP 是否编码了整数线性指数规划的一个解。该算法也可用于比较目标函数在两个给定解上的取值。基于这些结果,我们将整数线性指数规划的优化问题归入优化类 $\text{NPO}$ 的一个扩展类中,该扩展类位于 $\text{FNP}^{\text{NP}}$ 内。本质上,该扩展类避免了通过二分搜索来确定最优解。