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. 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. For instance for sequences of length $4096$, our algorithm is about $83$ times faster than the trivial algorithm on typical worst-case sequences and about $5947$ times faster on easy cases.
翻译:我们开发了一种新的算法, 用来计算由限定字段的限定长度序列构成的所有可能的汉德尔矩阵的决定因素。 我们的算法符合动态编程模式, 利用关于汉克尔矩阵决定因素的新的累回关系, 连同关于零决定因素在原始序列长度允许的可能的矩阵大小之间分配的新观察。 该算法可以用来分离隐藏在随机前缀和随机后缀等字符串中的有效线性转移反馈登记册, 从而恢复生成最短的矢量。 我们用经验来比较我们的结果和由每个可能的汉克尔矩阵的计算决定因素组成的微小算法, 由特定限定长度序列组成。 例如, 长度为4096美元的序列, 我们的算法比典型最坏序列的微小算法快大约83美元, 比典型最容易案例的普通算法快5 947美元。