Рассмотрим задачу максимизации числа удовлетворенных линейных уравнений над некоторым кольцом R , которое часто является NP-сложным, например, в случае R = ZMAX-LIN(R)RR=Z
Возьмем пример этой проблемы: где A - матрица n × m . Пусть k = m + 1 . Построить новую линейная система ~ ~ х = ~ Ь , где ~ является к п × ( к п + т ) матрица, ~ хAx=bAn×mk=m+1A~x~=b~A~kn×(kn+m)x~ теперь мерный вектор, а ~ Ь(kn+m)b~является мерным вектором:kn
гдеяпявляетсяп×пединичная матрица.
A~=⎡⎣⎢⎢⎢⎢⎢⎢⎢AInIn−InIn−In⋱⋱In−In⎤⎦⎥⎥⎥⎥⎥⎥⎥,b~=⎡⎣⎢⎢⎢⎢b0⋮0⎤⎦⎥⎥⎥⎥
Inn×n
Следует отметить , что эта система всегда выполняется вектором . На самом деле, первые м запись о ~ х может быть произвольной, и есть некоторый вектор решения с префиксом.x~=(0bb⋯b)Tmx~
Теперь я утверждаю, что доля уравнений A x = b выполнима тогда и только тогда, когда существует разреженное решение ˜ A ˜ x = ˜ b, которое имеет не менее δ n k нулей. Это потому, что каждая удовлетворенная строка A x = b дает kδAx=bA~x~=b~δnkAx=bk потенциальных нулей, когда продолжается до ˜ xxx~
Таким образом, если мы найдем разреженность разреженного решения для , мы также развернутыйб, путем деления разреженности путемк.A~x~=b~δk
Поэтому я считаю, что ваша проблема NP-трудна.