Przykład, w którym równoważność jest łatwa, ale znalezienie reprezentanta klasy jest trudne


25

Załóżmy, że mamy klasę obiektów (np. Wykresy, ciągi) i relację równoważności tych obiektów. W przypadku wykresów może to być izomorfizm wykresów. W przypadku ciągów moglibyśmy zadeklarować dwa równoważne ciągi, jeśli są one wzajemnie anagramami.

Jestem zainteresowany obliczeniem przedstawiciela dla klasy równoważności. To znaczy, chcę funkcję f () taką, że dla dowolnych dwóch obiektów x, y, f (x) = f (y) iff x i y są równoważne. (*)

Na przykład anagramów, f (s) może sortować litery w ciągu, tj. f („cabac”) = „aabcc”. W przypadku izomorfizmu grafów możemy przyjąć, że f (G) jest wykresem G ', który jest izomorficzny w stosunku do G i jest pierwszym leksykorficznym wykresem posiadającym tę właściwość.

Teraz pytanie: czy istnieje przykład, w którym problem ustalenia, czy dwa elementy są równoważne, jest „łatwy” (rozwiązany w czasie wielorakim), podczas gdy znalezienie reprezentatywnego jest trudne (tzn. Nie ma algorytmu obliczania czasu f (), który spełnia ( *)).


Pytanie może być zbyt ogólne, ponieważ pozwala na wiele „dziwnych” konstrukcji: weź problem NP-zupełny i pozwól każdej instancji utworzyć własną klasę równoważności. Dla nie-instancji , zestaw . Przez przykład TAK- , określa jako leksykograficznie najmniejszej certyfikatu. f ( s ) = 0 s ssf(s)=0ss
Gamow

2
@Gamow W twoim przykładzie możesz po prostu pozwolić . Myślę, że OP chce przykładu, w którym nie ma łatwego . ff(s)=sf
Bjørn Kjos-Hanssen

4
Szukanymi słowami kluczowymi są „kanonizacja” lub „kanoniczne etykietowanie”.
Emil Jeřábek wspiera Monikę

Dla osób zdezorientowanych, takich jak ja, najwyraźniej to pytanie zostało ponownie opublikowane w 2018 r., A następnie zostało to zauważone i odpowiedzi połączyły się tutaj.
usul

Odpowiedzi:


25

Ok, a co powiesz na: liczby i są równoważne, jeśli albo , albo oba i mają faktoryzacje i gdzie , i są wszystkie pierwsze, a . To znaczy: produkty dwóch liczb pierwszych są równoważne, gdy dzielą ich najmniejszy czynnik pierwszy; inne liczby są sobie równe.xyx=yxyx=pqy=prpqrp<min(q,r)

Łatwo jest sprawdzić, czy dwie różne liczby są równoważne: obliczyć ich gcd, przetestować, czy nie jest to łatwe, przetestować, czy gcd jest mniejszy niż kofaktory i przetestować, czy wszystkie gcd i jego kofaktory są pierwsze.

Ale nie jest oczywiste, jak obliczyć funkcję reprezentatywną czasie wielomianowym, a jeśli dodasz wymóg, że musi być równoważny to każda funkcja reprezentatywna pozwoliłaby nam na uwzględnienie większości produktów dwóch liczb pierwszych (każda, która nie jest to jego własny przedstawiciel).f ( x ) xff(x)x


Re: „nie jest oczywiste, jak obliczyć reprezentatywną funkcję f ”: Prawdopodobnie źle cię rozumiem, ale: jeśli x jest iloczynem dwóch różnych liczb pierwszych, to: niech p będzie mniejszą z tych liczb pierwszych; daj e być co najmniej pierwsza po p ; wybierz f ( x ) = ps . Jeśli x nie jest iloczynem dwóch różnych liczb pierwszych, wybierz f ( x ) = x . (Wszystko to jest okrężnym sposobem powiedzenia: wybierz f ( x ) = najmniejszy element klasy równoważności x .) Nie?
ruakh

2
@ruakh „Niech będzie mniejszą z tych liczb pierwszych” zakłada, że ​​możesz dodać (aby znaleźć ), ale zwykle przyjmuje się, że jest to trudne. x ppxp
Aaron Roth

@AaronRoth: Ach, rozumiem. Przez „nie jest oczywiste, jak obliczyć funkcję reprezentatywną ”, musiał mieć na myśli coś w rodzaju „nie jest oczywiste, jak łatwo obliczyć funkcję reprezentatywną ”. Co pasuje do pytania PO. To ma sens, dziękuję. :-)fff
ruakh

Tak, przepraszam, o to mi chodziło.
David Eppstein

21

Dwie liczby całkowite mod są równoważne, jeśli mod . Jeśli można łatwo obliczyć przedstawiciela klasy dla tej funkcji, faktoryzację można przeprowadzić w probabilistycznym czasie wielomianowym.n x 2y 2 nx,ynx2y2n

Ogólnie taki przykład sugerowałby, że . Załóżmy, że jest relacją równoważności, która jest rozstrzygalna w czasie wielomianowym. Następnie, poprzez wyszukiwanie leksykograficzne przy użyciu wyroczni , można znaleźć najmniej leksykograficzny element w klasie równoważności dowolnego łańcucha. Jeśli , staje się to czasem wielomianowym, więc możesz użyć leksykograficznie najmniej równoważnego łańcucha jako reprezentanta klasy. Ta obserwacja jest pierwotnie spowodowana przez Blassa i Gurewicza [1].R N P P = N PPNPRNPP=NP

Taki przykład sugerowałby także (a zatem w szczególności ).P U PUPBQPPUP

Pytanie, które zadałeś, jest dokładnie tym, co oznaczaliśmy w naszym artykule z Lance Fortnow [2]. Ten artykuł zawiera również wyniki, które tu przedstawiłem, a także przykład funkcji skrótu wskazanych przez Petera Shora, kilka innych możliwych przykładów oraz powiązane wyniki i pytania.PEq=?Ker(FP)

[1] Blass, A. i Gurevich, Y. Relacje równoważności, niezmienniki i formy normalne . SIAM J. Comput. 13 (4): 682–689, 1984.

[2] Fortnow, L. i Grochow, JA ponownie omówiono klasy złożoności problemów równoważności . Poinformować. i Comput. 209 (4): 748–763, 2011. Dostępne również na arxiv .


15

Czy „przedstawiciel” musi należeć do klasy równoważności?

Jeśli tak, weź jakąkolwiek kryptograficznie silną funkcję skrótu o odporności na kolizję.f

Niech jeśli . Łatwo jest sprawdzić, czy dwie rzeczy są równoważne, ale jeśli biorąc pod uwagę , można znaleźć kanoniczne preimage , to można znaleźć dwa łańcuchy i takie, że . To ma być trudne (to właśnie oznacza odporność na kolizje).f ( x ) = f ( y )xyf(x)=f(y)h x y f ( x ) = f ( y )f(x)=hhxyf(x)=f(y)

Oczywiście informatycy nie mogą udowodnić, że istnieją kryptograficznie silne funkcje skrótu z odpornością na zderzenia, ale mają wielu kandydatów.


7

Po pierwsze, to, o co tak naprawdę prosisz, nazywa się zwykle niezmiennikiem. Forma kanoniczna lub normalna wymaga również, aby był równoważny dla wszystkich . (Pytanie o „przedstawiciela” jest nieco dwuznaczne, ponieważ niektórzy autorzy mogą oznaczać, że obejmuje to warunek formy kanonicznej).f(x)xx

Po drugie, proszę wybaczyć bezwstydną autopromocję, ale to jest dokładnie jedno z pytań, nad którymi pracowaliśmy z Fortnow [1]. Pokazaliśmy, że jeśli każda relacja równoważności, o której można zadecydować w ma również całkowitą niezmienność w , to zdarzają się złe rzeczy. W szczególności oznaczałoby to . Jeśli obowiązuje obietnica w wersji tego oświadczenia (patrz Twierdzenie 4.6), to i .PFPUPBQPNPBQPSZKPH=AM

Teraz, jeśli naprawdę chcesz postaci kanonicznej (reprezentanta każdej klasy równoważności, która również należy do klasy równoważności), pokazujemy, że dzieje się jeszcze gorzej. Oznacza to, że jeśli każda relacja równoważności rozstrzygalna w czasie wielomianowym ma postać kanoniczną wielomianową, to:

  • Liczby całkowite mogą być uwzględniane w probabilistycznym czasie wieloczynnościowym
  • Bezkolizyjne funkcje skrótu, które można ocenić w , nie istnieją.FP
  • NP=UP=RP (stąd )PH=BPP

Istnieją również wyrocznie idące w obie strony dla większości tych stwierdzeń na temat relacji równoważności, zarówno nam, jak i Blassowi i Gurewiczowi [2].

Jeśli zamiast „dowolnego” przedstawiciela, poprosisz o element leksykograficznie najmniejszy w klasie równoważności, znalezienie najmniejszego elementu leksykograficznego w klasie równoważności może być twarde (w rzeczywistości -twarde) - nawet jeśli związek ma postać kanoniczną o czasie wielomianowym [2].NPPNP

[1] Lance Fortnow i Joshua A. Grochow. Ponownie omówiono klasy złożoności problemów równoważności . Poinformować. i Comput. 209: 4 (2011), 748–763. Dostępny również jako arXiv: 0907.4775v2 .

[2] Andreas Blass i Jurij Gurewicz. Relacje równoważności, niezmienniki i formy normalne . SIAM J. Comput. 13: 4 (1984), 24–42.


Okazało się, że wersja tego pytania opublikowana w 2018 roku była postem od użytkownika spamu pytania z 2012 roku. Może scalisz dwie odpowiedzi? Obaj wspominają o UP i BQP, ale w negowany sposób ... straciłbyś trochę przedstawicieli, ale częściowo złagodziłbym to, poprawiając twoją starą odpowiedź :)
Bjørn Kjos-Hanssen

5

Oto próba innej odpowiedzi, w której poluzowujemy wymóg dotyczący „przedstawiciela”; w rzeczywistości nie musi to być członek klasy równoważności, ale tylko funkcja identyfikująca klasę równoważności.

Załóżmy, że masz grupę, w której możesz przeprowadzać testy członkostwa w podgrupach. To znaczy, biorąc pod uwagę , możesz sprawdzić, czy znajduje się w podgrupie wygenerowanej przez . h g 1 , , g kg1,g2,,gkhg1,,gk

Weź swoje klasy równoważności jako zestawy elementów które generują tę samą podgrupę. Łatwo jest sprawdzić, czy dwa zestawy generują tę samą podgrupę. Jednak nie jest wcale jasne, jak znaleźć unikalny identyfikator dla każdej podgrupy. Podejrzewam, że to naprawdę przykład, jeśli zakładasz grupy czarnych skrzynek z testami członkostwa w podgrupach. Jednak nie wiem, czy jest jakaś grupa, która nie jest wyrocznią, w której problem wydaje się być trudny.g1,g2,,gk


4

Oto wymyślony przykład. Obiektami są pary których jest wzorem SAT, a jest proponowanym przypisaniem do zmiennych. Powiedz jeśli i albo (a) i są zadaniami spełniającymi, lub (b) i są zadaniami zadowalającymi. Jest to zwrotne, symetryczne i przechodnie. Każda niezadowalająca ma jedną klasę równoważności składającą się ze wszystkich . Każdy zadowalający ma klasę wszystkich gdzie(H,X)HX(H,X)(H,X)H=HXXXXH(H,X)H(H,X)X jest zadowalającym zadaniem, a kolejna klasa z tymi niezadowalającymi.

Sprawdzanie, czy jest proste, gdyż po prostu sprawdzić, czy , a następnie, jeśli spełnia , a następnie, jeśli spełnia . Ale aby obliczyć element kanoniczny danej klasy z spełnionym przez(H,X)(H,X)H=HXHXH(H,X)HXwydaje się zbyt trudne (nie jestem pewien, jak najlepiej udowodnić twardość). Możemy łatwo umieścić dodatkowe rozwiązanie dla instancji SAT, więc znajomość jednego rozwiązania zasadniczo nie pomoże nam znaleźć żadnego innego rozwiązania, nie mówiąc już o wyborze rozwiązania kanonicznego. (Edycja: Mam na myśli to, że nie oczekuję wydajnego algorytmu znajdowania dodatkowych rozwiązań przy pierwszym rozwiązaniu. Ponieważ moglibyśmy go użyć do rozwiązania problemów SAT, najpierw „zasadzając” dodatkowe rozwiązanie problemu, a następnie karmiąc go algorytm. Zobacz komentarze.)


Przez „roślinę” masz na myśli coś takiego: biorąc pod uwagę instancję SAT w CNF, dodajmy nową zmienną nie występującą w , i pozwólmy ? p H K = i ( φ ip )H=iφipHK=i(φip)
Bjørn Kjos-Hanssen

@ BjørnKjos-Hanssen, tak, coś takiego. Idealnie byłoby stworzyć dokładnie jedno dodatkowe rozwiązanie. Więc myślę, że to zadziała (nie w CNF choć): podany ogólny SAT formuła , niech , gdzie są oryginalne zmienne. Aby to wyjaśnić, gdybyśmy mieli algorytm do sprawdzania / znajdowania drugiego rozwiązania dla instancji SAT, to biorąc pod uwagę dowolne , skonstruowalibyśmy i podawali go do tego algorytmu wraz z całkowicie prawdziwym przypisaniem, i rozwiązałoby to oryginalną instancję . Jeśli niczego nie przeoczyłem. HK=(H¬p)(px1xn){xi}HK
usul

Chociaż słowo „reprezentatywny” może sugerować, że domena powinna być jego domeną, zniesienie tego ograniczenia czyni z tego przykład. f
jix

1
(1) Znalezienie drugiego zadowalającego zadania jest wciąż trudne NP. (2) Znalezienie członu kanonicznego klasy podanej (H, X) w czasie wielomianowym jest równoważne , który zapada PH (Hemaspaandra-Naik-Ogihara-Selman). Zauważ jednak, że pytanie w rzeczywistości nie wymaga kanonicznego członka klasy, ponieważ nie wymaga, aby x był równoważny f (x), w rzeczywistości wymaga jedynie pełnego niezmiennika. NPMVcNPSV
Joshua Grochow

4

To pytanie otwarte, przynajmniej w przypadku wykresów. Uważam, że najnowszy postęp

Babai i Kucera, „Kanoniczne etykietowanie wykresów w średnim czasie liniowym”, FOCS, 1979

który daje (oczekiwany) liniowy algorytm czasu dla wykresu kanonicznego, który jest poprawny z prawdopodobieństwem112O(n)

Możesz przeczytać więcej na Wikipedii . Zauważ, że zdegenerowana wersja algorytmu Babai oznaczałaby, że nie ma takiego przykładu dla grafów.


2
Interesujące: W przypadku najgorszych przypadków zamiast form kanonicznych o średniej wielkości, najnowszy artykuł Schweitzera-Wiebkinga ( arxiv.org/abs/1806.07466 ) podaje technikę, która daje dobre formy kanoniczne dla wielu powiązanych relacji równoważności (równoważność kodu, permutacja koniugacja grupowa, hypergraph iso), aw końcowej części sugerują, że ich techniki mogą również odnosić się do wyniku Babai, dając quasi-czasową kanoniczną formę dla GI.
Joshua Grochow

@JoshuaGrochow Nie słyszałem o tym, ale to bardzo ekscytujące. Zapisywanie do przeczytania później.
Stella Biderman

2

Testowanie, czy dwa obwody o rozmiarze są równoważne.N

Aby ustalić, czy , musisz ocenić tylko w punktach wejściowych. Aby określić przedstawiciela klasy, prawdopodobnie należałoby przetestować wszystkie możliwe obwody . Dla odpowiednio dużej jest to wykładniczo trudniejsze niż testowanie równoważności obwodu.C1C22n2Ω(NlogN)N


Oto funkcja która odwzorowuje każdy obwód na reprezentatywny obiekt (nie obwód) tak szybko, jak badanie równoważności: odwzoruj każdy obwód na wektor wyjść dla każdego możliwego wejścia. Prawdopodobnie nie byłoby trudno zamienić to w wyraźny obwód w stylu poprzeczki. f2n
David Eppstein

Upierałem się, że obwody mają ograniczony rozmiar, aby zapobiec łatwemu mapowaniu z wyjść na obwód. Jednak założyłem, że funkcja musi być odwzorowana na przedstawiciela klasy, a nie na dowolny ciąg. 2nf
David Harris

1

Słynny przykład z opisowej teorii zbiorów:

Zdefiniujmy relację równoważności na przez R

rsrsQ.

Jest to raczej „łatwa” relacja równoważności, w szczególności jest mierzalna.

Ale znalezienie przedstawicieli sprowadza się do znalezienia zbioru Vitali , który wymaga Aksjomatu Wyboru i nie może być mierzalny.


0

Niech obiekty we wszechświecie będą potrójnymi ( gdzie będzie problemem satysfakcji, dla zmiennych , jest albo 0 albo 1, a jest a łańcuch bitów o długości , gdzie . Oznacza to, że jest przypisaniem do który spełnia jeśli wynosi 1 lub nie spełnia jeśli wynosi 0. Φ,b,i)Φx0,,xk1bikΦ(i)=bix0,,xkΦbΦb

Dwa obiekty są równoważne, jeśli mają takie same . Łatwy do sprawdzenia.Φ

Niech reprezentatywny obiekt będzie największym leksykograficznie ze wszystkich w klasie równoważności.

Przedstawiciel jest NP-kompletny do znalezienia: rozwiązałby SAT, ponieważ jeśli największy leksykograficznie ma , to jest niezadowalająca; jeśli ma , jest zadowalające.b=0Φb=1

Wydaje się, że większość problemów NP-zupełnych można postawić w ten sposób; chodzi o umieszczenie certyfikatu członkostwa w kodowaniu elementu.

Pomyślałem, że może to był problem z pracą domową, dlatego wcześniej nie opublikowałem rozwiązania. Powinienem był to zrobić; Mógłbym wykorzystać te punkty, które dostał @ David-Eppstien. Dobroć wie, że ich nie potrzebuje.


1
Ach, ale w tym przypadku nie jest łatwym wyborem przedstawiciel: wystarczy wziąć być cokolwiek i być . b Φ ( i )ibΦ(i)
Bjørn Kjos-Hanssen

-3

Podejrzewam, że możesz to łatwo osiągnąć praktycznie dla każdego opisanego rodzaju problemu.

Trywialny przykład: Załóżmy, że obiekty są łańcuchami, a każdy jest równoważny tylko samemu sobie. Ustalenie, czy dwa elementy są równoważne, jest zawsze łatwe (to po prostu równość). Można jednak zdefiniować jako ulubioną funkcję twardego wstrzykiwania.f ( )xf()


3
Ale w przypadku, który opisujesz, istnieje inny który jest łatwy do obliczenia: funkcja tożsamości. f
David Eppstein,

Z pytania nie wynika, czy twardość jest wymagana od wszystkich , a nie od niektórych . fff
MCH

3
@MCH Myślę, że jest to całkowicie jasne, ponieważ w przeciwnym razie nie byłoby żadnych wątpliwości, a pytanie byłoby głupie.
Random832
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.