We consider the following problem: given $d \times d$ rational matrices $A_1, \ldots, A_k$ and a polyhedral cone $\mathcal{C} \subset \mathbb{R}^d$, decide whether there exists a non-zero vector whose orbit under multiplication by $A_1, \ldots, A_k$ is contained in $\mathcal{C}$. This problem can be interpreted as verifying the termination of multi-path while loops with linear updates and linear guard conditions. We show that this problem is decidable for commuting invertible matrices $A_1, \ldots, A_k$. The key to our decision procedure is to reinterpret this problem in a purely algebraic manner. Namely, we discover its connection with modules over the polynomial ring $\mathbb{R}[X_1, \ldots, X_k]$ as well as the polynomial semiring $\mathbb{R}_{\geq 0}[X_1, \ldots, X_k]$. The loop termination problem is then reduced to deciding whether a submodule of $\left(\mathbb{R}[X_1, \ldots, X_k]\right)^n$ contains a ``positive'' element.
翻译:我们考虑以下问题: 给 $d dtime dd 理性基质 $A_ 1,\ ldots, A_k$ 和 a 多元螺旋锥 $\ mathcal{C}}\ subset\ mathb{R ⁇ d$D$, 确定是否存在一个非零矢量, 其轨道在乘以$A_ 1,\ldots, A_k$ 包含在$\mathcal{C} 中。 这个问题可以被解释为核查多路路的终止, 而环绕则有线性更新和线性守卫条件。 我们显示, 无法将一个不可逆矩阵 $_ 1,\ ldots, A_kots, A_kot。 我们决定程序的关键是以纯代数方式重新解释这一问题。 也就是说, 我们发现它与多面环 $\ mathb{R} [X_loods, max_right} X_maxx_max_ mill a subildroma) sub_ a.