Сокращение от проблемы к другой проблеме B является преобразованием f любого экземпляра a из A в экземпляр f ( a ) из B , так чтоABfaAf(a)B
x∈A ⇔ f(x)∈B(E)
Если - преобразование, сохраняющее интересующую вас сложность (например, f - это полиномиальное преобразование, если вы рассматриваете N P -твердость), то существование алгоритма A B, решающего B, подразумевает существование алгоритма, решающего A : этого достаточно для запустить п , то Б .ffNPABBAfAB
Следовательно, существование такого уменьшения в от до B означает , что B не легче , чем A . Нет необходимости в сокращении другого пути.ABBA
Например, для раскраски графа. Вы можете уменьшить 3 цвета до 4 цветов, но не сразу. Если вы возьмете граф и выберете f ( G ) = G, то у вас будет x ∈ 3 C O L ⇒ f ( x ) ∈ 4 C O L, но у вас нет f ( x ) ∈ 4 C O L ⇒ x ∈ 3 C O L, конечно. Вывод состоит в том, что эквивалентность (Gf(G)=Gx∈3COL ⇒ f(x)∈4COLf(x)∈4COL ⇒ x∈3COL не соблюдается, поэтому е являетсянесокращение.(E)f
Вы можете построить правильное сокращение от 3 C O L до 4 C O L, но это немного сложнее: для любого графа G пусть f ( G ) будет графом G, расширенным другим узлом u , связанным с ребром к каждому другому узлу.f3COL4COLGf(G)Gu
- Преобразование сохраняет сложность (здесь многочлен);
- если в 3 C O L, то f ( G ) в 4 C O L : просто используйте четвертый цвет для u ;G3COLf(G)4COLu
- если в 4 C O L , то вы можете доказать , что все узлы , за исключением функции и имеют цвет , который не у «s, следовательно , G находится в 3 C O L .f(G)4COLuuG3COL
Это доказывает , что является сокращение и что 4 С О л труднее , чем 3 C O L . Вы можете доказать , точно так же , что п C O L тверже м C O L для любого п ≥ м , интересное доказательство бытия того , что 3 C O L тверже любого п C O L .f4COL3COLnCOLmCOLn≥m3COLnCOL