Niech być skierowany acykliczny wykres i pozwolić λ być funkcją znakowania mapowanie każdego wierzchołka v ∈ V do naklejania Î ( v ) w pewnym skończonym alfabetu L . Zapisywanie n : = | V | , A topologiczna sortowania z G jest bijection σ z { 1 , ... , N } do V (tj zamawiania w sekwencji) tak, że ilekroć ( v , v ′ ) ∈ E, a następnie σ - 1 ( v ) < σ - 1 ( v ′ ) (tj. Jeśli istnieje krawędź od v do v ′, wówczas v występuje przed v ′ w sekwencji). Etykietaz Ď jest słowo σ ( 1 ) ⋯ σ ( n ) w L .
Biorąc pod uwagę , chciałbym efektywnie wyliczyć etykiety topologicznych rodzajów G. Jaka jest złożoność wyliczania etykiet rodzajów topologicznych? Oczywiście, ponieważ może być ich wykładniczo wiele, chcę zbadać złożoność w zależności od wielkości wyniku lub pod względem opóźnienia. W szczególności, czy można wyliczyć z opóźnieniem wielomianowym? (czy nawet stałe opóźnienie?)
W przypadku, gdy wszystkie wierzchołki mają odrębne etykiety (lub, równoważnie, wierzchołki mają same oznaczenia { 1 , … , n } ), wiem, że etykiety można wyliczyć w stałym czasie zamortyzowanym, dzięki temu przy wyliczaniu rozszerzeń liniowych posetów (co jest tym samym, co wyliczenie topologicznych rodzajów DAG). Jednak gdy wierzchołki są arbitralnie etykietowane, może się zdarzyć, że bardzo duża liczba rodzajów topologicznych ma tę samą etykietę, więc nie można po prostu wyliczyć topologicznych rodzajów G i obliczyć ich etykiety, aby uzyskać skuteczny sposób wyliczenia etykiet . W terminologii posetowej oznaczony DAG ( G , można postrzegać jako zestaw zetykietąi nie mogłem znaleźć wyników wyliczeń na ich temat.
Znam już twardość niektórych powiązanych problemów dzięki odpowiedziom na moje inne pytania tutaj. W szczególności wiem, że znalezienie leksykograficznie minimalnej etykiety jest trudne NP . Wiem także, że podjęcie decyzji, czy dany znacznik można osiągnąć jakimś rodzajem topologicznym, jest trudne do przeprowadzenia na podstawie NP (od stopnia trudności tego problemu : biorąc pod uwagę sekwencję znacznika kandydata , poproś o rodzaj topologiczny G, w którym każdy wierzchołek musi wystąpić w pozycji gdzie właściwa etykieta występuje w s). Nie sądzę jednak, aby cokolwiek z tego sugerowało twardość wyliczania, ponieważ można wyliczyć w dowolnej kolejności (niekoniecznie leksykograficznej), a algorytmu wyliczenia nie można użyć do skutecznego ustalenia, czy etykieta jest możliwa do osiągnięcia, nawet ze stałym opóźnieniem (ponieważ może być wykładniczo wiele sekwencji do wyliczenia w pierwszej kolejności).
, co można wyraźnie zrobić w PTIME. Ale kiedy generujesz coraz więcej etykiet, nie jestem pewien, jak uogólnić to podejście.