Jakie istnieją algorytmy rozwiązywania układów liniowych z liczbami naturalnymi?

9

Patrzę na następujący problem:

Biorąc pod uwagę wymiarowe wektory liczb naturalnych i niektóre wektory wejściowe , czy jest liniową kombinacją z współczynnikami liczb naturalnych?nv1,,vmuuvi

tzn. czy są jakieś gdzie ?t1,,tmNu=t1v1++tmvm

Oczywiście rzeczywistą wersję tego problemu można rozwiązać za pomocą eliminacji Gaussa. Zastanawiam się, czy zbadano całkowitą wersję tego problemu? Jakie algorytmy istnieją, aby go rozwiązać?

Zauważ, że używa to liczb naturalnych, ale nie modułowej arytmetyki, więc jest to nieco odrębne od chińskiego twierdzenia o pozostałych elementach i podobnych systemach. Wydaje się również, że jest to związane z równaniami diofantycznymi, ale zastanawiam się, co zrobiono w przypadku, gdy uwzględniane są tylko nieujemne liczby całkowite? Przypomina to również problem wielowymiarowej sumy częściowej, uogólnionej, abyśmy mogli pobrać dowolną liczbę kopii każdego wektora. Wydaje się to również związane z testowaniem, czy jest elementem sieci generowanej przez , z tym wyjątkiem, że tutaj dopuszczamy tylko kombinacje liniowe z nieujemnymi współczynnikami.uv1,,vm

Dla każdego zainteresowanego jest to motywowane przez sprawdzenie, czy wektor Parikha jest w zestawie liniowym, jak w twierdzeniu Parikha .

W szczególności interesuje mnie algorytm, który mógłby rozwiązać problem za pomocą operacji na liczbach naturalnych, unikając wchodzenia w liczby rzeczywiste / zmiennoprzecinkowe.

jmite
źródło
2
Tak, zbadano wersję całkowitą (i różne wersje teoretyczne pierścieniowe). Wersję całkowitą można rozwiązać przez eliminację Gaussa. Wersja z liczbą naturalną to inna bestia. Mam wrażenie, że powinno być kompletne NP.
Thomas Klimpel
Jak może być NP-zupełny, jeśli rozwiązuje go eliminacja Gaussa? Nadal interesują mnie algorytmy, nawet jeśli jest to trudny problem.
jmite
Zauważ też, że w problemie, na który patrzę, system może być niedookreślony, tj. . Nie jestem pewien, jak to się zmienia. m<n
jmite

Odpowiedzi:

9

Twój problem jest NP-zupełny, poprzez redukcję z sumy podzbioru (dotyczy NP, ponieważ fakt, że wszystko jest nieujemne, wystarczająco dobrze ogranicza współczynniki rozwiązania). Biorąc pod uwagę instancję z podzbioru Suma (czy istnieje podzbiór sumujący się do ?), instancję twojego problem w następujący sposób. Dla każdego , stawiamy jako wektor z dwoma niezerowymi wpisami: oraz oraz być wektorem z unikalnym niezerowym wpisem . Wektorem docelowym jestS={s1,,sn},TSTv1,,v2n,u1invivi,i=1vi,n+1=sivn+ivn+i,i=1u=1,,1,T. Każda naturalna kombinacja równa musi wybrać dokładnie jeden z każdego z , a zatem koduje podzbiór którego suma jest równa wartość ostatniego składnika.v1,,v2n1,,1,vi,vn+iS

Yuval Filmus
źródło
Ciekawy. Czy wymyśliłeś ten dowód, czy masz referencję, którą mógłbym zacytować? Tak czy inaczej, dzięki!
jmite
1
@jmite Właśnie wymyśliłem dowód, choć nie mogę wykluczyć, że go widziałem.
Yuval Filmus