NP-난해 문서 원본 보기
←
NP-난해
둘러보기로 이동
검색으로 이동
문서 편집 권한이 없습니다. 다음 이유를 확인해주세요:
요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다:
사용자
.
문서의 원본을 보거나 복사할 수 있습니다.
{{위키데이터 속성 추적}} '''NP-난해''', '''NP-hard'''는 [[NP (복잡도)|NP]]에 속하는 모든 [[판정 문제]]를 [[다항 시간 환산|다항 시간에 다대일 환산]]할 수 있는 문제들의 [[집합]]이다. 다시 말하면, NP-난해는 적어도 모든 NP 문제만큼은 어려운 문제들의 집합이다. NP-난해 집합에 속하는 문제가 NP에도 속하면 [[NP-완전]]에 속한다. 즉, NP-완전은 NP와 NP-난해의 교집합이다. 만약 [[P-NP 문제]]가 P=NP로 풀린다면 P=NP=NP-완전이므로 P와 NP는 NP-난해의 부분집합이 되고, P≠NP인 경우는 P와 NP-난해는 [[서로소 집합|서로소]]가 된다. NP-난해 집합은 NP에 속하지는 않는다. NP에 속하지 않는 NP-난해 문제의 한 예로는 [[정지 문제]]가 있다. 또한, NP-난해 집합은 판정 문제 뿐만이 아니라 [[최적화 문제]] 등 다른 형태의 문제가 포함된다. == 정의 == 수학적으로는 다음과 같이 정의한다. :언어 <math>L</math>이 <math>\forall L^\prime\in \mathbf{NP}, L^\prime \leq_p L\!</math>이면 <math>L</math>은 '''NP-난해'''이다. == 예제 == NP-난해 문제에 들어가는 판정 문제 가운데 대표적인 예로 [[부분집합 합 문제]](SUBSET-SUM)가 있다. 이 문제는 정수 집합이 하나 있을 때, 원소를 모두 더하면 0이 되는, 공집합이 아닌 부분집합이 있는지를 묻는 문제이다. 이 문제는 NP에 들어가므로 NP-완전도 된다. NP-난해이지만 NP-완전은 아닌 판정 문제도 있다. 예를 들어 [[정지 문제]]가 있다. "한 프로그램이 있고, 그 프로그램에 대한 입력이 있을 때, 이 프로그램은 영원히 돌 것인가?" 하는 문제이다. 정지 문제가 NP-난해인 것은 NP-완전 문제인 [[충족 가능성 문제]]를 정지 문제로 환산하는 것으로 보일 수 있다. 이때 정지 문제의 입력으로 받는 [[튜링 기계]]는 입력으로 받은 식에 대해서 식을 만족하는 진리값을 발견할 때에만 멈추고 그렇지 않으면 무한 루프에 빠지도록 설계하면 된다. 또한 정지 문제는 NP에 속하지 않는데, 이것은 NP 문제는 유한 번의 연산으로 판정이 가능하지만 정지 문제는 그렇지 않기 때문이다. == 다른 정의 == NP-난해의 정의에서 다항 시간 다대일 환산을 다항 시간 [[튜링 환산]]으로 정의하는 경우도 있다. 이 정의가 앞에서의 정의와 같은지 다른지는 아직 해결되지 않은 문제이다. 이 방식은 판정 문제뿐만이 아니라 [[함수 문제]]에 대해서도 형식화할 수 있다는 장점이 있다. 이 정의에서 어떤 문제 L이 NP-난해라는 것은 L에 대한 신탁을 주는 [[신탁 기계]]를 사용하여 NP에 속하는 모든 판정 문제 <math>L' \in \mathbf{N}</math>를 다항 시간 안에 풀 수 있다는 의미이다. 즉, L을 푸는 함수가 단위 시간만이 걸린다고 가정할 때 <math>L'</math>은 다항 시간 안에 풀 수 있다는 의미이다. == 같이 보기 == * [[환산 (복잡도)]] {{복잡도 종류}} [[분류:NP-난해 문제| ]] [[분류:복잡도 종류]]
이 문서에서 사용한 틀:
틀:복잡도 종류
(
원본 보기
)
틀:위키데이터 속성 추적
(
원본 보기
)
NP-난해
문서로 돌아갑니다.
둘러보기 메뉴
개인 도구
로그인
이름공간
문서
토론
한국어
보기
읽기
원본 보기
역사 보기
더 보기
검색
둘러보기
대문
최근 바뀜
임의의 문서로
미디어위키 도움말
특수 문서 목록
도구
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보