Jak mogę obliczyć węzły?

11

Czy istnieje udokumentowany sposób obliczania węzłów? (obwody osadzone w trójwymiarowej przestrzeni euklidesowej).

Mam na myśli typ danych, który je reprezentuje, oraz algorytm określający, czy dwa wystąpienia typu danych reprezentują ten sam węzeł.

Jeśli odpowiedź jest pozytywna, co ze złożonością tego problemu?

jota.191
źródło
7
Trudne jest nawet sprawdzenie, czy dany diagram reprezentuje rozpakowanie: en.wikipedia.org/wiki/Unknotting_problem
Suresh Venkat
4
Węzły można przedstawiać jako programy: patrz ten artykuł Meredith i Snyder. W tej reprezentacji węzły są izotopowe w otoczeniu, ilekroć ich kodowanie jest słabo bisopodobne.
Martin Berger

Odpowiedzi:

12

Najbardziej naturalnym sposobem przedstawiania węzłów jest albo osadzenie ich fragmentarycznie liniowo w (wystarczy zapisać współrzędne wierzchołków i miejsce, w którym chcesz umieścić segmenty) (dowolny oswojony węzeł można osadzić fragmentarycznie liniowo) lub za pomocą schemat węzła, tj. przechowujący rzut na jako wykres, gdzie przy każdym skrzyżowaniu określasz, która nić jest powyżej.R3R2

Jak zauważył Suresh, sprawdzanie równoważności węzłów jest wysoce nietrywialne (nie wiadomo, że występuje w P), ale wyniki eksperymentalne rozpoznawania węzłów są wielomianowe - równoważność węzłów wygląda jednak znacznie trudniej. Jeśli szukasz oprogramowania, zajrzyj do Reginy .

Arnaud
źródło
10

Tradycyjnym sposobem przedstawiania węzłów są diagramy węzłów. Omówienie diagramów węzłów znajduje się w „Węzłach, ogniwach, warkoczach i 3-rozmaitościach” Prasołowa i Sossinsky'ego

Program SnapPea reprezentuje węzły w trójkuli, przekształcając dany diagram węzłów w triangulację dopełnienia węzła. Techniki uproszczenia triangulacji w SnapPea wydają się rozpoznawać brak węzła w ciągu sekundy, dla wszystkich diagramów węzłów „wielkości człowieka”. Oprogramowanie SnapPy (aktualizacja SnapPea w Pythonie) i wiele innych znajduje się na stronie CompuTop, którą prowadzi Nathan Dunfield.

Ivan Dynnikov w swoim artykule „Trzystronicowe podejście do teorii węzłów” przedstawił nową i bardzo interesującą strukturę danych do reprezentowania węzłów. To także bardzo szybko rozpoznaje węzły i doprowadziło do interesujących zmian w homologii Heegaard Floer - patrz dyskusje na temat linków siatki.

Sam Nead
źródło