정리. 게시물의 문제는 Subset-Sum을 줄임으로써 NP-hard입니다.
당연히 문제가 op에 의해 요청 된 폴리-시간 알고리즘을 갖지 않을 가능성이있다.
여기 직감이 있습니다. 게시물의 문제는
- 주어진 행렬 집합의 범위에 순열 행렬이 있습니까?
이것은 본질적으로
- 행렬을 벡터로 생각하면 주어진 선형 제약 조건을 만족시키는 순열 행렬이 있습니까?
이것은 차례로
- 발생 벡터가 주어진 선형 제약 조건을 만족시키는 완벽한 일치 (완전한 이분 그래프에서)가 있습니까?
후자의 문제로 부분 집합을 줄이는 것이 표준 연습입니다.
자세한 증거는 다음과 같습니다.
다음 중간 문제를 정의하십시오.
일치하는 합계 :
입력 : 음이 아닌 정수 간선 가중치와 음이 아닌 정수 목표 T를 갖는 완전, 이분 그래프 .G = ( U, V, E)티
출력 : G 는 정확히 T 와 정확히 일치하는 가중치를 포함 합니까 ?지티
렘마 1 . 부분 집합 합 폴리 시간이 일치 합으로 줄어 듭니다.
이것이 표준 숙제 연습임을 증명합니다. 증거는 끝났습니다.
Lemma 2. Matching-Sum poly-time은 게시물의 문제를 줄입니다.
Lemma 증명 2. Matching-Sum 입력 수정 : 음이 아닌 정수 간선 가중치 w : U × V → N +를 포함한 완전한 이분 그래프 및 대상 T ∈ N + , 여기서 U = { u 1 , … , u n } 및 V = { v 1 , … , v n } . 각각의 나는G = ( U, V, E)w : U× V→ N+티∈ N+유= { u1, … , u엔}V= { v1, … , v엔} , M ( i j ) 을 R ( n + 1 ) × ( n + 1 ) 의 행렬로 정의하십시오. 여기서 M ( i j ) i j = T 및 M ( i j ) n + 1 , n + 1 = w ( ui , j ∈ { 1 , 2 , … , n }엠( i j )아르 자형( n + 1 ) × ( n + 1 )엠( i j )나는 j= T 및 기타 모든 항목은 0입니다. 축소는 다음 행렬 세트를 출력합니다.
{ M ( i j ) : i , j ∈ { 1 , … , n } } .
이것은 감소를 정의합니다.엠( i j )n + 1 , n + 1= w ( U나는, vj)
{ 남( i j ): i , j ∈ { 1 , … , n } } .
청구. 행렬들의 세트의 범위는 이러한 매트릭스 구성 선형 제약 조건을 만족하는 M의 H , N + 1 = M , N + 1 , H = 0 모두 H ≤ N 및 선형 구속 조건 엠∈ R( n + 1 ) × ( n + 1 )엠h , n + 1= Mn + 1 , 시간= 0h ≤ n
∑엔나는 = 1∑엔j = 1엠나는 jw ( U나는, vj) = T엠n + 1 , n + 1.
( 제 증명. 검사 행렬 각각에 의해 의 설정을 만족 이러한 제약 때문에, 그 행렬의 모든 선형 조합한다. 반대로, 만일 M ∈ R ( N + 1 ) × ( N + 1 ) 를 만족 제약 그런 다음 M 은 선형 조합 M ' = ∑ n i = 1 ∑ n j = 1 α i j M ( i j엠( i j )엠∈ R( n + 1 ) × ( n + 1 )엠 의 행렬, 여기서 α i j = M i j / M ( i j ) i j = M i j / T입니다. 특히 참고하여 설명 된 다양한 정의 선형 제약함으로써
M ' N + 1 , N + 1 = Σ I J α I J w ( U I , V의 J ) = Σ I J M엠'= ∑엔나는 = 1∑엔j = 1α나는 j엠( i j )α나는 j= M나는 j/ M( i j )나는 j= M나는 j/ T
이것은 주장을 증명합니다.)
엠'n + 1 , n + 1= ∑나는 jα나는 jw ( U나는, vj) = ∑나는 j엠나는 jw ( U나는, vj) / T= ( T엠n + 1 , n + 1) / T= Mn + 1 , n + 1.
이제 축소가 올바른지 보여줍니다. 즉, 주어진 그래프 는 행렬 세트가 순열 행렬에 걸쳐있는 경우에만 가중치 -T 매칭을 갖는다 .지티
( 경우에만. ) 먼저 주어진 가정 그래프 체중 갖는 T의 완벽한 매칭 M을 ' . 하자 M ∈ { 0 , 1 } ( N + 1 ) × ( N + 1 ) 해당 될 N × N 되도록 첨가 추가 로우 및 컬럼 순열 행렬, M , N + 1 , N + 1 = 1 과 M의 H , n +지티엠'엠∈ { 0 , 1 }( n + 1 ) × ( n + 1 )n × n엠n + 1 , n + 1= 1모두H≤N. 이어서 Σ N 난 = 1 Σ를 N J = 1 M I J w( U I , V의 j는 )의 무게 M ' 이며,T및 M , N + 1 , N + 1 =1엠h , n + 1= Mn + 1 , 시간= 0h ≤ n∑엔나는 = 1∑엔j = 1엠나는 jw ( U나는, vj)엠'티엠n + 1 , n + 1= 1따라서 청구항의 선형 구속 조건이 유지되고 주어진 행렬 세트의 범위는 순열 행렬 포함합니다 .엠
( 경우. ) 역은 스팬 모든 순열 행렬 포함 가정 . 주장에 따르면, 행 n + 1 또는 열 n + 1의 0이 아닌 유일한 항목 은 M n + 1 , n + 1 이므로 ( M 은 순열 행렬이므로) M n + 1 , n + 1 = 1 입니다. 따라서 마지막 행과 열을 삭제하면 n × n 순열 행렬이 제공됩니다. M '을 완벽하게 일치 시키십시오.엠n + 1n + 1엠n + 1 , n + 1엠엠n + 1 , n + 1= 1n × n엠'그 n × n 순열 행렬에대응하는 G. 의 중량 M은 ' 인 Σ N 난 = 1 Σ를 N J = 1 M I J w ( U I , V의 J ) (청구항에 의한)이고, T M N + 1 , N + 1 = T . 주어진 그래프 있도록 체중 갖는 T의 보조 정리 2를 증명 매칭 ◻지n × n엠'∑엔나는 = 1∑엔j = 1엠나는 jw ( U나는, vj)티엠n + 1 , n + 1= T티 □
Lemma 1의 지연된 증거는 다음과 같습니다.
Lemma의 증명 1. 서브 세트 합계 인스턴스 주어지면 축소는 Matching-Sum 인스턴스 ( G = ( U , V , E ) , T )를 출력합니다. 여기서 U = { u 1 , u 2 , … , u 2 n } , V = { v 1 , v 2 ,( w , T) ∈ N엔+× N+( G = ( U,V,E) , T)유= { u1, U2, … , u2 N} , 각 i ∈ { 1 , … , n } 에 대해 edge ( u i , v i )의 가중치는 w i 이고 나머지 모든 모서리의 가중치는 0입니다.V= { v1, v2, … , v2 N}나는 ∈ { 1 , … , n }( u나는, v나는)승나는
합산 된 엣지 가중치와 완벽하게 일치하는 경우 S = { i : ( u i , v i ) ∈ M , i ≤ n } 세트는 주어진 Subset-Sum 인스턴스에 대한 솔루션입니다. M의 무게가 0 인 가장자리 ).티에스= { i : ( u나는, v나는) ∈ M, i ≤ n }엠
반대로 말하는 부분 합 인스턴스에 대한 해결책 주어진 와 Σ I ∈ S 승 난 = T , 에지들의 집합을 { ( U 난 , V I ) : I ∈ S는 } 이고 가중치 T 와 부분적으로 일치하며 , 예를 들어 다음과 같은 (제로 가중치) 모서리 세트를 추가 하여 가중치 -T 완벽한 일치로 쉽게 확장됩니다 .에스⊆ { 1 , … , n }∑나는 ∈ S승나는= T{ ( u나는, v나는) : 나는 ∈ S}티티
{ ( u나는 + n, v나는 + n) : 나는 ∈ S} ∪ ⋃i ∈ { 1 , … , n } ∖ S{ ( u나는, v나는 + n) , ( u나는 + n, v나는) } .
이것은 정리 1을 증명합니다. 정리는 정리 1과 2에서 따릅니다. □
ps 따로, 이 답변 에 따르면 폴리 노미 바운드 엣지 가중치가있는 인스턴스에 대한 Matching-Sum 제한은 P입니다. 그러나 폴리 노미 바운드가있는 행렬에 대한 게시물의 문제 제한은 정수 ) 항목은 NP 하드 상태로 유지됩니다.