DOUBLE-SAT가 NP 완료임을 증명


13

잘 알려진 SAT 문제는 참고 용으로 여기 에 정의되어 있습니다 .

DOUBLE-SAT 문제는 다음과 같이 정의됩니다.

DOUBLE-SAT={ϕϕ has at least two satisfying assignments}

NP가 완전하다는 것을 어떻게 증명합니까?

증명하는 방법은 여러 가지가 있습니다.

답변:


27

여기에 하나의 해결책이 있습니다.

분명히 더블 SAT가 속하는 부울 입력 화학식 켜짐 : NTM 다음과 같이 두 SAT를 결정할 수 있기 때문에, φ ( X 1 , ... , X에 N을 ) nondeterministically 2 개 과제를 추측 모두 충족 된 것인지 확인 φ .NPϕ(x1,,xn)ϕ

Double-SAT가 -Complete 임을 나타 내기 위해 다음과 같이 SAT를 Double-SAT로 줄입니다.NP

입력 :ϕ(x1,,xn)

  1. 새로운 변수 소개합니다 .y
  2. 출력 공식 .ϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯)

한다면 SAT에 속하고 φ 적어도 1 만족 할당을 가지며, 따라서, φ ' ( X 1 , ...는 , X N , Y가 ) 우리는를 만족시킬 수있는 바와 같이, 적어도 2 개 만족하는 과제를 가지고 새로운 항 ( Y ˉ Y ) 중 하나를 지정하여 Y = 1 또는 Y = 0 새로운 변수로 Y를 하므로, φ ' ( Xϕ(x1,,xn)ϕϕ(x1,,xn,y)yy¯y=1y=0yϕ , ..., x n , y ) Double-SAT.x1xny

반면에 인 경우 ϕ ( x 1 , , x n , y ) = ϕ ( x 1 , , x n ) ( y ˉ y ) 대입도 만족스럽지 않으므로 ϕ ( x 1 , , xϕ(x1,,xn)SATϕ(x1,,xn,y)=ϕ(x1,,xn)(yy¯) .ϕ(x1,,xn,y)Double-SAT

따라서 이므로 Double-SAT는 N P -Complete입니다.SATpDouble-SATNP


내 제안보다 좋네요
Raphael

10

SATSATDOUBLE-SAT

φφf(φ)φf

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.