Existem milhares de problemas de NP completos na literatura, e a maioria dos pares não possui reduções explícitas. Como muitas reduções de uma em tempo polinomial são compostas, basta que os pesquisadores parem quando o gráfico de reduções publicadas está fortemente conectado, tornando a pesquisa sobre a completude da PN uma atividade muito mais escalável.
Embora eu realmente não entenda o motivo, eu vou lhe dar um humor, reduzindo razoavelmente simples de 3-PARTITION para BALANCED PARTITION, com algumas dicas sobre como é a prova de correção.
Deixe a entrada para a redução ser , uma instância de 3-PARTITION. Verificar que Σ i ∈ [ 3 N ] x i = n B . Seja β um número grande para ser escolhido mais tarde. Para todo i ∈ [ 3 n ] e todo j ∈ [ n ] , produza dois números
x i β j + β n +x1,…,x3n, B ∈Z∑i ∈ [ 3 n ]xEu= n Bβi∈[3n]j∈[n]
Intuitivamente, o primeiro meio de números que x i é atribuído a 3-partição j , e o segundo número indica o contrário. Otermo x i β j é usado para rastrear a soma das 3 partições j . O β n + j termo é usado para controlar a cardinalidade de 3-partição j . Otermo β 2 n + i é usado para garantir que cada x i seja designado exatamente uma vez. O β (
xiβj+βn+j+β2n+i+β(i+4)n+jβ(i+4)n+j.
xEujxEuβjjβn + jjβ2 n + ixEu termo
n + j é usado para forçar esses números em diferentes partições balanceadas.
β( i + 4 ) n + j
Emita mais dois números
O primeiro número identifica sua partição balanceada como "true" e o outro como "false". Otermo 1 é usado para forçar esses números em diferentes partições balanceadas. Os outros termos de compensar a diferença entre a soma de a-divisória 3 e a soma do seu complemento e o tamanho de uma partição-3 e o tamanho do seu complemento e o número de vezes x i é atribuído.
1 + ∑j ∈ [ n ]( (n-2)Bβj+ ( 3 n - 6 ) βn + j) +∑i ∈ [ 3 n ]( n - 2 ) β2 n + i1
1xEu
deve ser escolhido grande o suficiente para garantir que “transbordamento” não possa ocorrer.β