同等性は簡単ですが、クラスの代表を見つけるのは難しい例


25

オブジェクトのクラス(たとえば、グラフ、文字列)、およびこれらのオブジェクトの等価関係があるとします。グラフの場合、これはグラフ同型になります。文字列の場合、互いにアナグラムである場合、2つの文字列を同等に宣言できます。

等価クラスの代表を計算することに興味があります。つまり、xとyが同等である場合、任意の2つのオブジェクトx、y、f(x)= f(y)のような関数f()が必要です。(*)

アナグラムの例では、f(s)は文字列内の文字をソートできます。f( 'cabac')= 'aabcc'。グラフ同型の場合、f(G)を、Gに同型で、このプロパティを持つ語彙的に最初のグラフであるグラフG 'とすることができます。

ここで質問:2つの要素が同等であるかどうかを判断する問題が「簡単」(ポリタイム可解)で、代表を見つけるのが難しい(つまり、f()を計算するポリタイムアルゴリズムが( *))。


多くの「奇妙な」構造を可能にするため、質問は一般的すぎるかもしれません。NP完全問題を取り、すべてのインスタンスが独自の等価クラスを形成するようにします。NOインスタンス場合、設定します。YESインスタンス場合、を辞書編集上最小の証明書として定義します。f s = 0 s ssf(s)=0ss
ガモフ

2
@Gamowあなたの例では、することができます。OPは簡単なが存在しない例を求めていると思います。ff(s)=sf
ビョルンジョス=ハンセン

4
検索のキーワードは、「標準化」または「標準ラベル付け」です。
エミールイェジャベクはモニカをサポートします

私のように混乱している人のために、明らかにこの質問は2018年に再投稿され、これは後で気づかれ、答えはここにマージされました。
-usul

回答:


25

わかりました、どうですか:、またはと両方が分解と場合、数値とは同等です。ここで、、、およびはすべて素数で、。つまり、2つの素数の積は、最小の素因数を共有する場合に同等です。他の番号はそれ自体と同等です。y x = y x y x = p q y = p r p q r p < min q r xyx=yxyx=pqy=prpqrp<min(q,r)

2つの異なる数が等しいかどうかをテストするのは簡単です:gcdを計算し、それが自明でないかどうかをテストし、gcdが補因子よりも小さいかどうかをテストし、gcdとその補因子がすべて素数であるかどうかをテストします。

しかし、多項式時間で代表関数を計算する方法は明らかではなく、がと等しくなければならないという要件を追加すると、代表関数は2つの素数のほとんどの積(すべてのn独自の代表者ではありません)。f x xff(x)x


Re:「代表関数fの計算方法は明らかではない」:おそらく誤解しているかもしれませんが、xが2つの異なる素数の積である場合:これらの素数の小さい方をpとします。てみましょうsが後に少なくともプライムなるのp ; fx)= psを選択します。xが2つの異なる素数の積でない場合、fx)= xを選択します。(これらはすべてラウンドアバウトの言い方です:fx)= xの等価クラスの最小要素を選択してください。)いいえ?
-ruakh

2
@ruakh「をこれらの素数の小さい方にする」ではを因数分解できると仮定していますが(を見つけるため)、これは一般に難しいと考えられています。x ppxp
アーロンロス

@AaronRoth:ああ、なるほど。「代表関数計算方法がわからない」ということは、「代表関数簡単な計算方法はわからない」ということを意味していたに違いありません。これはOPの質問に合っています。それは理にかなっています、ありがとう。:fff
ruakh

はい、申し訳ありませんが、それが私が意図したことです。
デビッドエップシュタイン

21

mod場合 2つの整数 modは同等です。この関数のクラス代表を簡単に計算できれば、確率的多項式時間で因数分解を行うことができます。N X 2Y 2 Nx,ynx2y2n

一般に、このような例は、意味します。仮定多項式時間で決定可能である同値関係です。次に、オラクルを使用した辞書式検索により、任意の文字列の等価クラスで辞書式に最小の要素を見つけることができます。場合、これは多項式時間になるので、辞書式に最も等価な文字列をクラスの代表として使用できます。この観察は、元々はBlassとGurevichによるものです[1]。R N P P = N PPNPRNPP=NP

このような例は、(したがって、特に)も意味します。UPBQPPUP

あなたが尋ねた質問は、まさには、Lance Fortnowの論文[2]で。その論文には、ここで述べた結果、Peter Shorが指摘したハッシュ関数の例、他のいくつかの可能な例、および関連する結果と質問も含まれています。PEq=?Ker(FP)

[1] Blass、A.およびGurevich、Y. 等価関係、不変式、および正規形。SIAM J. Comput。13(4):682-689、1984。

[2] Fortnow、L.およびGrochow、JA 同等性問題の複雑性クラスの再検討。通知する。および計算。209(4):748から763、にも利用できる2011 arXivの


15

「代表」は同値類に属している必要がありますか?

存在する場合は、次に、耐衝突性を備えた暗号的に強力なハッシュ関数します。f

ましょ場合。それは二つのことが等しいかどうかをテストするのは簡単だが、与えられた場合には、あなたが正規のプレイメージ見つけることができる、あなたは見つけることができる二つの文字列とように . これは難しいと思われます(これが衝突抵抗の意味です)。F X = F Y xyf(x)=f(y)h x y f x = f y f(x)=hhxyf(x)=f(y)

もちろん、コンピューター科学者は、耐衝突性を備えた暗号的に強力なハッシュ関数が存在することを証明することはできませんが、多くの候補があります。


7

まず、あなたが本当に求めているのは、通常、完全な不変式と呼ばれます。正規または正規形はまた、その必要と等価であるすべてのため。(「代表者」を要求することは少し曖昧です。一部の著者はこれに標準形式の条件を含めることを意味するかもしれません。)f(x)xx

第二に、恥知らずな自己宣伝はご容赦ください。しかし、これはまさにFortnowと私が取り組んだ質問の1つです[1]。で決定できるすべての同値関係がでも完全な不変式を持つ場合、悪いことが起こることを示しました。特に、を意味します。この文の約束バージョンが成り立つ場合、(定理4.6を参照)と。PFPUPBQPNPBQPSZKPH=AM

ここで、実際に標準形式(等価クラスにもある各等価クラスの代表)が必要な場合、さらに悪いことが起こることを示します。つまり、多項式時間で決定可能なすべての同値関係がポリタイム正準形を持つ場合、次のようになります。

  • 整数は確率的ポリタイムで因数分解できます
  • で評価できる衝突のないハッシュ関数は存在しません。FP
  • NP=UP=RPP H = B P P(したがって)PH=BPP

また、私たちとBlassとGurevichのおかげで、等価関係に関するこれらのステートメントのほとんどについて、両方の方向に進むオラクルもいます[2]。

「任意の」代表の代わりに、同値類の辞書編集的に最小の要素を要求する場合、同値類の辞書編集的に最小の要素を見つけることは、 -hard(実際、 -hard)-関係は、多項式時間正準形[2]です。NPPNP

[1]ランスフォートノウとジョシュアA.グロチョウ。等価性問題の複雑性クラスの再検討。通知する。および計算。209:4(2011)、748-763。arXiv:0907.4775v2としても利用できます。

[2] Andreas BlassとYuri Gurevich。等価関係、不変式、および正規形。SIAM J. Comput。13:4(1984)、24-42。


2018年に投稿されたこの質問のバージョンは、2012年からの質問のスパムユーザーによる再投稿であることが判明しました。これらは両方とも言及UPとBQPが、否定の方法で...あなたは、いくつかの担当者を失うと思いますが、私は部分的にあなたの古い答え:) upvotingであることを軽減したい
ビョルンKjos-ハンセン

5

「代表者」の要件を緩和する別の回答の試みを次に示します。実際には同値類のメンバーである必要はありませんが、同値類を識別する関数だけです。

サブグループのメンバーシップテストを実行できるグループがあるとします。つまり、、がによって生成されたサブグループにあるかどうかを確認できます。 h g 1g kg1,g2,,gkhg1,,gk

同等クラスを、同じサブグループを生成する要素とする。2つのセットが同じサブグループを生成するかどうかを確認するのは簡単です。ただし、すべてのサブグループの一意の識別子を見つける方法はまったく明確ではありません。サブグループのメンバーシップテストでブラックボックスグループを想定している場合、これは本当に例だと思います。ただし、この問題が難しいと思われるオラクル以外のグループがあるかどうかはわかりません。g1,g2,,gk


4

これが不自然な例です。オブジェクトはペアで、はSAT式で、は変数への提案された割り当てです。で(a)と両方が代入を満たす場合、または(b)と両方が代入を満たさない場合言います。これは、再帰的、対称的、推移的です。満たされない各は、すべて構成される1つの等価クラスがあります。各充足可能は、すべてのクラスがあり、(H,X)HX(H,X)(H,X)H=HXXXXH(H,X)H(H,X)X は満足のいく割り当てであり、別のクラスは不満足な割り当てです。

が簡単かどうかをチェックするのは、であるか、がであるか、がかを確認するだけだからです。しかし、与えられたクラスの正規メンバーを計算するとによって満たさ(H,X)(H,X)H=HXHXH(H,X)HX硬すぎるようです(硬さを証明する最善の方法はわかりません)。SATインスタンスに追加のソリューションを簡単に植えることができるので、1つのソリューションを知っていても、通常は他のソリューションを見つけることはできません。(編集:私が言いたいのは、最初の解決策を与えられて追加の解決策を見つけるための効率的なアルゴリズムを期待しないということです。最初に追加の解決策を問題に「植え付け」、それをアルゴリズム。コメントを参照してください。)


SATインスタンス与えられた: "植物"とは、あなたのような平均何かを CNFでは、のは、新しい変数を追加してみましょうにoccuringない、と聞かせて? P H K = Iφ IP H=iφipHK=i(φip)
ビョルンジョス=ハンセン

@BjørnKjos-Hanssen、そう、そのようなもの。理想的には、追加のソリューションを1つだけ作成します。私は(ないがCNFで)この作品だと思うので:一般的なSAT式与えられた、聞かせてどこをです元の変数。明確にするために、SATインスタンスの2番目のソリューションをチェック/検索するアルゴリズムがあれば、与えられた場合、を構築し、それをすべての真の割り当てと共にそのアルゴリズムに送り、元のインスタンスを解決します。何も見逃していないなら。K = H ¬ P P X 1X N{ X I } H KHK=(H¬p)(px1xn){xi}HK
-usul

「代表的な」という言葉は、のコドメインがそのドメインであることを意味するかもしれませんが、この制限を解除すると、これは非例になります。f
jix

1
(1)2番目に満足のいく割り当てを見つけることは、依然としてNP困難です。(2)多項式時間で与えられたクラス(H、X)の正準メンバーを見つけることは、と同等であり、PH(Hemaspaandra-Naik-Ogihara-Selman)を折りたたみます。ただし、xがf(x)と同等である必要はないため、質問は実際にクラスの正規メンバーを要求しないことに注意してください。実際には完全な不変式を要求するだけです。NPMVcNPSV
ジョシュアグロチョウ

4

これは、少なくともグラフに関しては、未解決の問題です。最新の進歩は

ババイとクセラ、「線形平均時間でのグラフの標準的なラベル付け」、FOCS、1979

これは、確率正しい正準グラフの(予想される)線形時間アルゴリズムを提供します112O(n)

ウィキペディアで詳細読むことができます。Babaiのアルゴリズムの非ランダム化バージョンは、グラフにそのような例が存在しないことを意味することに注意してください。


2
また興味深い:平均ケースの正準形ではなく最悪ケースの場合、Schweitzer-Wiebking(arxiv.org/abs/1806.07466)による最近の論文は、多くの関連する同値関係(コードの等価性、順列)に良い正準形を与える手法を提供しますグループ共役、ハイパーグラフiso)、最後のセクションでは、彼らのテクニックがババイの結果にも適用され、GIに準ポリタイム正準形式を与えることを示唆しています。
ジョシュアグロチョウ

@JoshuaGrochow私はこれについて聞いていませんでしたが、それは非常にエキサイティングです。後で読むために保存しています。
ステラ

2

サイズが 2つの回路が同等かどうかをテストします。N

かどうかを判断するには、入力ポイントでのみ評価する必要があります。クラスの代表を決定するには、おそらくすべての可能な回路をテストする必要があり。以下のために十分に大きなこれは指数関数的に硬い回路の等価性をテストよりなります。2 N 2 Ω N ログN NC1C22n2Ω(NlogN)N


等価テストと同じ速さで各回路を代表的なオブジェクト(回路ではない)にマップする関数は次のとおりです。各回路を可能な入力ごとに出力のベクトルにマップします。おそらく、これを明示的なクロスバースタイルの回路に変えることは難しくないでしょう。2 nf2n
デビッドエップシュタイン

出力から回路への簡単なマッピングを防ぐために、回路のサイズが制限されていると主張しました。ただし、関数は、任意の文字列ではなく、クラスの代表にマップする必要があると想定していました。 f2nf
デビッドハリス

1

記述的集合論の有名な例:

により 、に同値関係を定義しますR

rsrsQ.

これはかなり「簡単な」等価関係であり、特に測定可能です。

しかし、代表者を見つけることは、選択の公理を必要とし、測定できないビタリ集合を見つけることになります。


0

ユニバースのオブジェクトをトリプル(、ここでは変数充足可能性の問題であり、は0または1であり、はa長さのビット列、。すなわち、に割り当てている満足すること場合 1であるか、または満たさない場合 0です。 Φ,b,i)Φx0,,xk1bikΦ(i)=bix0,,xkΦbΦb

2つのオブジェクトが同じを持っている場合、2つのオブジェクトは同等です。簡単に確認できます。Φ

代表オブジェクトを、同値類内のすべての中で辞書編集的に最大にします。

代表者はNP完全であり、辞書式に最大のものがである場合、SATを解決します。は不満足です。それが持っている場合、それが充足可能。b=0Φb=1

ほとんどのNP完全問題はこの方法で提起できるようです。それは、メンバーシップの証明書を要素のエンコードに入れることです。

これは宿題の問題かもしれないと思ったので、ソリューションを以前に投稿しなかったのはこのためです。私はやるべきだった。@ david-eppstienが獲得したポイントを使用することもできます。善は知っている、彼はそれらを必要としない。


1
ああ、しかしこの場合、代表者の簡単な選択があります:を何かに、をです。B Φ I ibΦ(i)
ビョルンジョス=ハンセン

-3

あなたが説明するタイプの事実上すべての問題に対して、あなたは簡単にそれを達成できると思います。

些細な例:オブジェクトが文字列であり、任意のがそれ自体と同等であるとします。2つの要素が同等であるかどうかを判断することは、常に簡単です(単に同等です)。ただし、をお気に入りの単射ハード関数として定義できます。f xf()


3
ただし、説明する場合、計算が簡単な別のがあります:恒等関数です。f
デビッドエップシュタイン

質問から、一部のではなく、すべてのから硬度が必要かどうかは明確ではありません。fff
MCH

3
@MCH私はそれが完全に明確だと思います。
Random832
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.