We develop a new algorithm to compute determinants of all possible Hankel matrices made up from a given finite length sequence over a finite field. Our algorithm fits within the dynamic programming paradigm by exploiting new recursive relations on the determinants of Hankel matrices together with new observations concerning the distribution of zero determinants among the possible matrix sizes allowed by the length of the original sequence. The algorithm can be used to isolate \emph{very} efficiently linear shift feedback registers hidden in strings with random prefix and random postfix for instance and, therefore, recovering the shortest generating vector. Our new mathematical identities can be used also in any other situations involving determinants of Hankel matrices. We also implement a parallel version of our algorithm. We compare our results empirically with the trivial algorithm which consists of computing determinants for each possible Hankel matrices made up from a given finite length sequence. Our new accelerated approach on a single processor is faster than the trivial algorithm on 160 processors for input sequences of length 16384 for instance.
翻译:我们开发了一种新的算法, 用来计算由一定的有限长度序列组成的所有可能的汉德尔矩阵的决定因素。 我们的算法符合动态的编程范式, 利用关于汉克尔矩阵决定因素的新的累回关系, 连同关于零决定因素在原始序列长度允许的可能的矩阵大小之间分配的新观测结果。 该算法可以用来分离以随机前缀和随机后缀等方式隐藏在字符串中的有效线性转移反馈登记册, 从而恢复生成最短的矢量。 我们的新数学身份也可以在涉及汉克尔矩阵决定因素的任何其他情况下使用。 我们还实施平行的算法版本。 我们用经验来比较我们的结果和由给定的有限长度序列构成的每个可能的汉克尔矩阵的计算决定因素的微小算法。 我们在单处理器上的新加速法比160个输入序列的简单算法速度要快, 例如长16384。