Motivated by the quantum speedup for dynamic programming on the Boolean hypercube by Ambainis et al. (2019), we investigate which graphs admit a similar quantum advantage. In this paper, we examine a generalization of the Boolean hypercube graph, the $n$-dimensional lattice graph $Q(D,n)$ with vertices in $\{0,1,\ldots,D\}^n$. We study the complexity of the following problem: given a subgraph $G$ of $Q(D,n)$ via query access to the edges, determine whether there is a path from $0^n$ to $D^n$. While the classical query complexity is $\widetilde{\Theta}((D+1)^n)$, we show a quantum algorithm with complexity $\widetilde O(T_D^n)$, where $T_D < D+1$. The first few values of $T_D$ are $T_1 \approx 1.817$, $T_2 \approx 2.660$, $T_3 \approx 3.529$, $T_4 \approx 4.421$, $T_5 \approx 5.332$. We also prove that $T_D \geq \frac{D+1}{\mathrm e}$, thus for general $D$, this algorithm does not provide, for example, a speedup, polynomial in the size of the lattice. While the presented quantum algorithm is a natural generalization of the known quantum algorithm for $D=1$ by Ambainis et al., the analysis of complexity is rather complicated. For the precise analysis, we use the saddle-point method, which is a common tool in analytic combinatorics, but has not been widely used in this field. We then show an implementation of this algorithm with time complexity $\text{poly}(n)^{\log n} T_D^n$, and apply it to the Set Multicover problem. In this problem, $m$ subsets of $[n]$ are given, and the task is to find the smallest number of these subsets that cover each element of $[n]$ at least $D$ times. While the time complexity of the best known classical algorithm is $O(m(D+1)^n)$, the time complexity of our quantum algorithm is $\text{poly}(m,n)^{\log n} T_D^n$.
翻译:由 Ambainis 等人 (2019年) 对 Boolean 超立方的动态编程的量子加速 { 量子加速 { 由 Ambainis 等人 (2019年) 驱动。 我们调查的是哪个图表认可了类似的量子优势。 在本文中, 我们检查了 Boolean 超立方图的概观化 $(D,n) Q(美元) $ ($ G$ Q(D,n) 。 我们研究了以下问题的复杂性 : 如果通过对边缘的查询访问, 以 $ Q(美元) 的速率 $(美元), 以 美元(美元) 美元(美元) 美元(美元) 美元(美元) 美元(美元) 美元(美元) 。 经典查询的复杂性(美元) 美元(D), 以美元(美元) 美元(美元) 的量(美元) 的量(美元(美元) 美元(美元) 美元(美元) =xx 美元(美元) 美元(美元) 美元) 美元(美元) 美元(美元) (美元) (美元) (美元) (美元) (美元) 美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (