成员资格的复杂性-有限的阿贝尔群的测试


12

考虑以下阿贝尔亚组成员资格测试问题

输入:

  1. 具有任意大的有限阿贝尔群并具有任意大的。G=Zd1×Zd1×Zdmdi

  2. 子组的生成集。{h1,,hn}HG

  3. 的元素。bG

输出:如果 'yes',其他地方为'no'。bH

问题:可以在传统计算机中有效解决此问题吗?如果在传统图灵机的通常意义上使用时间和内存资源,我认为该算法有效。注意,对于任何子组,我们都可以假设。此问题的输入大小为。O(polylog|G|)n=O(log|G|)Hlog|G|

有点动力。从直觉上看,似乎可以使用算法来解决同余线性系统或线性双色子方程组(请参阅下文)。但是,似乎在使用整数进行计算时会使用不同的计算效率概念,例如:强多项式时间与弱多项式时间,代数与位复杂度。我不是这些定义的专家,我找不到明显解决此问题的参考。

更新:问题的答案是“是”。

  • 在一个较晚的答案中,我提出了一种基于史密斯范式的方法,该方法对于具有规定格式的任何组都是有效的。

  • Blondin的答案表明,在所有都为且的形式的特殊情况下是“微小整数”,那么问题就属于。微小的整数随输入大小呈指数减小。ð = Ñ Ë Ñ ë NC 3P ø 日志的日志||didi=NieiNi,eiNC3PO(loglog|A|)

在我的回答中,我使用“正交子组”来解决此问题,但是我认为这不是必需的。将来,我将基于我正在阅读的连续梯形表格方法,尝试提供更直接的答案。


一些可能的方法

该问题与求解全等线性系统和/或线性双色子方程密切相关。为了简单起见,我简要总结了这些连接。

以为矩阵,其生成集的元素 。以下方程组{ h 1h n }A{h1,,hn}

AxT=(h1(1)h2(1)hn(1)h1(2)h2(2)hn(2)h1(m)h2(m)hn(m))(x(1)x(2)x(n))=(b(1)b(2)b(m))modd1modd2moddm

当且仅当有一个解。bH

如果所有循环因子都具有相同的维数,则存在一种基于Smith范式的算法,可以解决多项式时间内的问题。在这种情况下,[1]中的高效算法 找到了的史密斯范式 :它返回对角矩阵以及两个可逆矩阵和,使得。这减少了解决具有对角线的等效系统。我们可以有效地决定系统是否具有使用欧几里得算法的解决方案。 A D U V D = U A V D Y = U bd=diADUVD=UAVDDY=UbmoddD

上面的示例表明,在一般情况下,可以使用类似的技术有效地解决问题。我们可以尝试将系统求解为模块化运算,或者将系统转换为更大的线性双色子方程组。解决我能想到的问题的一些可能技术是:

  1. 计算的Smith范式。A
  2. 计算的行梯形形式。A
  3. 整数高斯消除。


2
看来您同时提出了这个问题。虽然我们不介意被质疑转贴,我们网站的政策是允许重新发布后才有足够的时间已经过去了,你没有在其他地方获得所需的答案,因为同时crossposting复制努力和骨折的讨论。您可以将该问题标记为立即关闭,然后在总结其他站点的相关讨论之后,如有必要,将其标记为打开。
Suresh Venkat

1
应原始海报要求关闭(由于在MO上重复)。
戴夫·克拉克

1
我在帖子关闭之前发布了答案。我认为,此问题比Mathoverflow更适合此处,因为在复杂性理论文献中对此问题进行了广泛的研究。
迈克尔·布朗丹

1
根据OP请求重新开放;专注于复杂性使其非常适合这里。
Suresh Venkat

Answers:


10

验证(其中是根据OP的注释的向量)是否等效于验证此系统是否存在解决方案: ħ ħ 11 ħ Ñ1 d Ë 1 1 0 0bh1,,hnhi

(h1(1)hn(1)d1e100h1(m)hn(m)00dmeN)(x(1)x(n)y(1)y(m))(b(1)b(m))

在您的情况下,是很小的数字(即,它们的值在输入大小中为对数)。不幸的是,似乎我们不能假设很小。d 1... d ne1,,eNd1,,dn

如果是这样,则可以从McKenzie&Cook [1]的结果中找到系统的解决方案。本文表明,在以小因子(LCON)为模来求解线性同余。此外,此问题是等效于阿贝尔排列组成员资格问题(AGM)。麦肯齐的博士论文完全致力于这些问题[1]。最近,Arvind&Vijayaraghavan [3]考虑了这些问题。NC 3 NC 1NC3NC3NC1

[1] Pierre McKenzie和Stephen A. Cook。Abelian置换群问题的并行复杂性。1987年。

[2]皮埃尔·麦肯齐(Pierre McKenzie)。并行复杂度和排列组。1984年。

[3] V. Arvind和TC Vijayaraghavan。使用Logspace计数类对线性同余和Abelian置换组的问题进行分类。2010。


谢谢,不幸的是,直到星期一我才可以查阅这些论文。令我惊讶的是,这种方法适用于任何阿贝尔族。对于,确定是否属于涉及确定是否具有解。我在这里看到两个问题:1)传统上很难计算Euler上的函数2)它是离散对数的决策版本。如果给出循环分解,问题将减少到求解模方程。您如何解决这个问题?我在这里错过了重要的事情吗? b 一个b = 一个ZNbab=aimodφ(N)
Juan Bermejo Vega

实际上,它适用于任何阿贝尔排列组合。
迈克尔·布朗丹

我将看一下这些论文,并尝试对所有内容进行整理。谢谢。
Juan Bermejo Vega

您能否提供有关输入编码的更多详细信息?这样,我也许可以改善答案。
迈克尔·布朗丹

作为输入的组分解作为输入(这些是具有多个数字和我猜的长度)。这样,组中的每个元素都具有的形式并且可以由一个数字元组表示。要存储它,您需要位。这会回答吗?1... ÑÑ = ö 2 | A | A=Zd1×Zd1×ZdN(g1,,gn)n:=log2|A|
Juan Bermejo Vega

4

一段时间后,我设法找到了一个也许不是最佳但简单的算法,证明了问题的复杂性是多项式。

算法

(a)所述正交子组的计算发电集的。HH

(b)检查元素是否正交于。ħ bH

对于问题(a)和(b)有有效的分类算法(请参阅下面的分析)。这提供了有效的隶属度测试,因为当且仅当元素与正交。ħ ħ ħbHhH


分析

通过的字符组将正交子组 定义为: 主要属性: ģ ħ = { ģ χ ħ = 1HG

H:={gG:χg(h)=1hH}
  1. ģH是的子组。G
  2. H=H

(a)的算法:

我遵循[ 1 ]中的算法,并做了些微改动。属于,当且仅当对于所有,但是,通过线性它是足以显示对于每个生成器。根据指数扩展字符(这里我隐式使用循环因子分解),此条件等效于 解这些方程,请计算使用欧几里得算法和数字gHχg(h)=1hHχb(hi)=1H

exp{2πi(g(1)hi(1)d1++g(m)hi(m)dm)}=1
M:=lcm(N1,,Nd)αi:=M/di。我们可以将上述每个的条件重写为线性模块化方程组。i

(α1h1(1)α2h1(2)αmh1(m)α1h2(1)α2h2(2)αmh2(m)α1hn(1)α2hn(2)αmhn(m))(g(1)g(2)g(n))=(000)modMmodMmodM
正如在1中所证明的,如果我们采样该系统的随机解在方程组中,我们将获得的生成集,其概率指数地接近一个。t+log|G|Hp11/2tAX=0(modM)。在此,是一个整数模的矩形矩阵,对于该矩阵,采用2中给出的算法可以有效地计算其Smith正态分解。该算法返回对角矩阵和两个可逆矩阵,,使得。使用该公式,方程组可以写为其中。现在可以使用Euclid算法随机计算的解,因为这是形式的方程组。最后,计算AMDUVD=UAVDY=0(modM)X=VYDY=0(modM)diyi=0(modM)X=VY根据需要获得正交组的随机元素。H

(b)的算法:

既然我们已经知道如何计算发电集的,很容易检查,如果给定元素属于。首先计算生成集的。然后,通过定义,属于当且仅当对于所有的发电机。由于它们有O(polylog())个数,因此可以使用模块化算法高效地完成。 b ħ 1... 小号ħ b ħ χ b= 1 ħ | G |HbHg1,,gsHbHχb(gi)=1H|G|


1
如果您同时发现了发现,可以添加自己的答案。但是,在决定接受哪个答案之前,您似乎需要做一些进一步的调查(基于您的评论)。
Suresh Venkat

谢谢。我想进一步讨论一下,看看我们是否将所有内容合而为一。另外,我认为可能会出现一种更实用的算法。
Juan Bermejo Vega
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.