等值简单但很难找到班级代表的例子


25

假设我们有一类对象(例如图形,字符串),并且在这些对象上具有等价关系。对于图,这可能是图同构。对于字符串,如果两个字符串彼此相似,则可以声明两个字符串相等。

我对计算等效类的代表感兴趣。也就是说,我想要一个函数f(),以便对于任何两个对象x,y,f(x)= f(y),如果x和y是等效的。(*)

以字谜为例,f(s)可以对字符串中的字母进行排序,即。f('cabac')='aabcc'。对于图同构,我们可以将f(G)设为与G同构的图G',这是词典上第一个具有此特性的图。

现在的问题是:是否存在一个示例,其中确定两个元素是否相等的问题是“容易的”(可解决多时间问题),而寻找代表是困难的(即,没有用于计算满足以下条件的f()的多时间算法: *))。


这个问题可能太笼统了,因为它允许许多“怪异”的构造:考虑一个NP完全问题,并让每个实例形成自己的对等类。对于否定实例s,设置f(s)=0。对于是实例s,定义s的字典序最小的证书。
Gamow

2
@Gamow在您的示例中,您可以仅让f(s)=s。我认为OP需要一个不存在easy 的示例f
比昂·乔斯·汉森(BjørnKjos-Hanssen)

4
搜索的关键字是“规范化”或“规范标记”。
EmilJeřábek

对于像我这样困惑的人来说,这个问题显然是在2018年重新发布的,后来被注意到,答案合并回了这里。
usul

Answers:


25

好的,怎么样:如果x = yxy都具有因式分解x = p qy = p r,则xy相等,其中pqr都是素数,p < min q r 。也就是说:两个素数的乘积共享最小的素数因数就相等;其他数字仅等同于自己。x=yxyx=pqy=prpqrp<min(q,r)

测试两个不同的数字是否相等很容易:计算它们的gcd,测试其是否平凡,测试gcd是否小于辅因子,以及测试gcd及其辅因子是否都是质数。

但是如何在多项式时间内计算代表性函数尚不明显,如果您添加f x 必须等于x的要求,那么任何代表性函数都将允许我们分解两个素数的大多数乘积(每个不是自己的代表)。ff(x)x


关于:“如何计算代表函数f并不明显”:可能是我对您有误解,但是:如果x是两个不同素数的乘积,则:令p为这些素数中的较小者;让小号会后的最小素p ; 选择fx)= ps。如果X两个不同的素数的乘积,则选择˚FX)= X。(所有这些都是回旋的说法:选择fx)= x的等价类的最小元素。)不是吗?
ruakh 2012年

2
@ruakh“让成为这些质数中的较小者”假定您可以分解x(以找到p),但这通常被认为很难。pxp
亚伦·罗斯2012年

@AaronRoth:啊,我明白了。他说:“如何计算一个代表函数并不明显,”他的意思是“如何轻松地计算一个代表函数f并不明显”。符合OP的问题。这是有道理的,谢谢。:-)ff
ruakh 2012年

是的,对不起,这就是我的意思。
David Eppstein 2012年

21

两个整数 MOD Ñ是等价的,如果X 2ý 2 MOD Ñ。如果可以轻松地计算出代表该函数的类,则可以在概率多项式时间内进行分解。x,ynx2y2n

一般情况下,这样的例子将意味着。假设R是在多项式时间内可确定的等价关系。然后,通过使用N P oracle 的字典式搜索,可以在任何字符串的等价类中找到字典上最小的元素。如果P = N P,这将成为多项式时间,因此您可以使用按字典顺序最小等效的字符串作为类的代表。这种观察最初是由于Blass和Gurevich [1]造成的。PNPRNPP=NP

这样的例子还意味着(并且因此,在particluar,P Ú P)。UPBQPPUP

您所问的问题正是我们所说的在我们与兰斯·福尔瑙[2]的纸张。该论文还包括我在这里说明的结果,以及Peter Shor指出的哈希函数示例,其他一些可能的示例以及相关的结果和问题。PEq=?Ker(FP)

[1] Blass,A.和Gurevich,Y. 等价关系,不变式和范式。SIAM J.计算。13(4):682-689,1984。

[2] Fortnow,L.和Grochow,JA 重新讨论了等价问题的复杂度类。通知。和计算。209(4):748-763,2011。也可在arxiv找到


15

“代表”必须在同等级别吗?

如果是这样,则采用具有抗冲突性的任何具有加密功能的哈希函数f

如果˚F X = ˚F Ý xyf(x)=f(y)。测试两件事是否相等很容易,但是如果给定,您可以找到h的规范原像,则可以找到两个字符串xy,使得f x = f y f(x)=hhxyf(x)=f(y)。这应该很难(这就是抗碰撞性的意思)。

当然,计算机科学家无法证明存在具有抗碰撞能力的密码学强哈希函数,但是他们有很多候选对象。


7

首先,您真正要求的通常称为完全不变式。甲规范的或正常的形式也要求f(x)是相当于x的所有x。(要求“代表人”有点模棱两可,因为有些作者可能认为这包括规范形式的条件。)

其次,请原谅无耻的自我提升,但这正是Fortnow和我致力于的问题之一[1]。我们表明,如果可以在P中确定的每个等价关系在FP也具有完全不变性,那么就会发生不好的事情。特别地,这将意味着UPBQP。如果该语句的一个承诺版本成立(见定理4.6)然后NPBQPSZKPH=AM

现在,如果您实际上想要规范形式(也属于等效类的每个等效类的代表),我们将展示更糟糕的情况发生。也就是说,如果在多项式时间内可确定的每个等价关系都具有多项式规范形式,则:

  • 整数可以考虑概率乘积时间
  • 可以在FP评估的无冲突哈希函数不存在。
  • NP=UP=RP(因此PH=BPP

由于我们以及Blass和Gurevich [2],对于有关等价关系的大多数陈述,也有甲骨文采用双向方式。

如果您代替“任何”代表,而要求等价类中的词典上最小的元素,则找到等价类中按词典上最小的元素可以是NP -hard(实际上是PNP -hard)-即使该关系具有多项式时间规范形式[2]。

[1] Lance Fortnow和Joshua A. Grochow。重新讨论了等价问题的复杂性类。通知。和计算。209:4(2011),748-763。也可以作为arXiv:0907.4775v2获得

[2] Andreas Blass和Yuri Gurevich。等价关系,不变式和范式。SIAM J.计算。13:4(1984),24-42。


原来,该问题在2018年发布的版本是垃圾邮件用户对2012年以来一个问题的重新发布。也许可以合并两个答案?他们都提到UP和BQP但在否定的方式......你会失去一些代表,但我会部分缓解,通过upvoting旧的答案:)
比约恩·乔斯-汉森

5

这是另一个答案的尝试,我们放宽了对“代表”的要求;实际上,它不一定是等效类的成员,而只是一个标识等效类的函数。

假设您有一个可以进行子组成员资格测试的组。也就是说,给定g1,g2,,gk,可以检查是否在由g 1... g k生成的子组中。hg1,,gk

将等价类作为元素集生成相同子 1g 2g k的。检查两个集合是否生成相同的子组很容易。但是,目前还不清楚如何为每个子组找到唯一的标识符。我怀疑如果您假设黑盒组具有子组成员资格测试,那么这确实是一个示例。但是,我不知道是否有任何非Oracle组似乎很难解决此问题。g1,g2,,gk


4

这是一个人为的例子。对象是对(H,X),其中H是SAT公式,X是建议的变量分配。如果H = H '并且(a)XX '都满足分配,或者(b)XX '都不满足分配,则(H,X)(H,X)。这是自反的,对称的和可传递的。每个不满意H=HXXXXH具有一个由所有(H,X)组成的等价类。每个可满足的H都具有所有(H,X)的类别,其中X是令人满意的分配,而另一个类别具有不令人满意的类别。

检查是否(H,X)(H,X)是容易的,因为我们只是检查,如果H=H,那么如果X满足H,那么如果X满足H。但是要计算给定H X 类的规范成员(H,X)H满足X似乎太难了(我不确定如何最好地证明硬度)。我们可以轻松地为SAT实例添加一个额外的解决方案,因此知道一个解决方案通常不会帮助我们找到任何其他解决方案,更不用说选择典型的解决方案了。(编辑:我的意思是,在给定第一个解决方案的情况下,我不希望有任何有效的算法来找到其他解决方案。因为我们可以通过首先将“额外”解决方案“植入”问题,然后将其提供给问题来使用它来解决SAT问题。算法(请参阅注释。)


“植物”,你的意思是这样:给定一个SAT实例在CNF,让我们添加一个新的变量p中不存在的^ h,并让ķ = φ p H=iφipHK=i(φip)
比约恩·科斯·汉森(BjørnKjos-Hanssen)

@BjørnKjos-Hanssen,是的,像这样。理想情况下,我们将创建另外一种解决方案。所以我觉得这个作品(不CNF虽然):给定一个通用的公式SAT ,让ķ = ^ h ¬ p p X 1X ñ,其中{ X }是原始变量。因此,为了澄清一下,如果我们有一种算法可以检查/找到SAT实例的第二种解决方案,那么给定任何H,我们就可以构造KHK=(H¬p)(px1xn){xi}HK并将其连同所有真实分配一起馈送到该算法,它将解决原始实例。如果我什么都没错过。
usul

尽管单词“ representative”可能暗示的共域应该是它的域,但解除此限制使其成为非示例。f
jix

1
(1)寻找第二个令人满意的任务仍然是NP难题。(2)寻找在多项式时间给定(H,X)的类的一个典型成员等效,其塌陷PH(Hemaspaandra-奈克-荻原-塞尔曼)。但是,请注意,该问题实际上并没有要求该类的规范成员,因为它不需要x等于f(x),因此实际上仅要求一个完整的不变式。NPMVcNPSV
约书亚·格罗肖

4

这是一个悬而未决的问题,至少对于图形而言。我相信最新的进展是

Babai和Kucera,“线性平均时间图的规范标注”,FOCS,1979年

这给出了一个(预期)线性时间的规范图形算法,该算法是用概率正确112O(n)

您可以在Wikipedia上阅读更多内容。请注意,Babai算法的去随机化版本意味着图不存在此类示例。


2
Also of interest: For worst-case instead of average-case canonical forms, the recent paper by Schweitzer-Wiebking (arxiv.org/abs/1806.07466) gives a technique that gives good canonical forms for many related equivalence relations (code equivalence, permutation group conjugacy, hypergraph iso), and in their final section they suggest that their techniques might apply to Babai's result as well, giving a quasi-poly-time canonical form for GI.
Joshua Grochow

@JoshuaGrochow I didn’t hear about this, but that’s very exciting. Saving to read later.
Stella Biderman

2

Testing whether two circuits of size N circuits are equivalent.

To determine if C1C2 you only need to evaluate at the 2n input points. To determine a class representative, one would probably have to test all 2Ω(NlogN) possible circuits. For N sufficiently large this is exponentially harder than testing circuit equivalence.


Here's a function f that maps each circuit to a representative object (not a circuit) as quickly as equivalence testing: map each circuit to the vector of 2n outputs for each possible input. Probably it would be not difficult to turn this into an explicit crossbar-style circuit.
David Eppstein

I insisted that the circuits had bounded size in order to prevent an easy mapping from 2n outputs to circuit. However, I had assumed that the function f needed to map to a class representative as opposed to an arbitrary string.
David Harris

1

A famous example from descriptive set theory:

Let us define an equivalence relation on R by

rsrsQ.

This is a rather "easy" equivalence relation, in particular it's measurable.

But finding representatives amounts to finding a Vitali set, which requires the Axiom of Choice and cannot be measurable.


0

Let the objects in your universe be the triples (Φ,b,i) where Φ be a Satisfiability problem, on variables x0,,xk1, b is either 0 or 1, and i is a bitstring of length k, where Φ(i)=b. That is, i is an assignment to x0,,xk that satisfies Φ if b is 1 or does not satisfy Φ if b is 0.

Two objects are equivalent if they have the same Φ. Easy to check.

Let the representative object be the lexicographically greatest among all in the equivalence class.

The representative is NP-complete to find: it would solve SAT, since if the lexicographically greatest has b=0, then Φ is unsatisfiable; if it has b=1, it is satisfiable.

Seems that most NP-complete problems can be posed this way; it's a matter of placing the certificate of membership into the encoding of the element.

I thought maybe this was a homework problem, which is why I didn't post the solution earlier. I should have done; I could have used those points that @david-eppstien got. Goodness knows, he doesn't need them.


1
Ah but in this case there is an easy choice of representative: just take i to be anything and b to be Φ(i).
Bjørn Kjos-Hanssen

-3

I suppose you can easily achieve that for virtually any problem of the type you describe.

Trivial example: Suppose objects are strings, and any x is equivalent to only itself. Determining whether two elements are equivalent is always easy (it is simply equality). However, you can define f() as your favorite injective hard function.


3
But in the case you describe, there is a different f that is easy to compute: the identity function.
David Eppstein

From the question, it's not clear whether the hardness is required from all f, rather than some f.
MCH

3
@MCH I think it's perfectly clear, since otherwise there would be no doubt at all and the question would be silly.
Random832
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.