시맨틱 대 구문 복잡성 클래스


35

그의 "전산 복잡성"책에서 Papadimitriou는 다음과 같이 썼다.

RP 는 어떤 의미에서는 새롭고 특이한 종류의 복잡성 클래스입니다. 폴리 노미 바운드 비 결정적 튜링 머신은 RP에서 언어를 정의하는 기초가 될 수 없습니다. 머신 NRP 로 언어를 정의 하려면 모든 입력에서 만장일치로 거부 하거나 대다수가 받아들이 는 놀라운 특성을 가져야합니다 . 대부분의 비 결정적 기계는 적어도 일부 입력에 대해 다른 방식으로 작동합니다 ... 기계가 항상 인증 된 출력으로 정지하는지 여부를 쉽게 알 수있는 방법은 없습니다. 우리는 PNP 와 같은 구문 클래스 와는 반대로 비공식적으로 이러한 클래스를 의미 클래스 라고 부릅니다.여기서 적절하게 표준화 된 기계가 실제로 수업에서 언어를 정의하는지 여부를 피상적 인 검사로 알 수 있습니다.

여러 페이지 후에 그는 다음과 같이 지적합니다.

언어 L는 클래스에 PP 결정적 다항식 경계 튜링 기계가 있다면 N 모든 입력에 대해, X,되도록 의 계산의 절반 이상 IFF N 입력에 X 결국 수용. 우리는 N 이 L 을 대다수 로 결정 한다고 말합니다 .xL

질문 1 : 왜 Papadimitriou가 PP 가 구문 클래스 라고 결론을 내리는 반면, 그 정의는 RP 의 정의와 약간 다릅니다 .

질문 2 : 복잡성 클래스에 대해 "의미 적 (semantic)"상태가 완전한 문제를 갖지 않는 것과 동등한 지, 또는 완전한 문제가없는 것은 우리가 의미 적 클래스를 소유하는 속성으로 생각됩니까?

편집 : 관련 항목 참조 모든 복잡성 클래스에 리프 언어 특성이 있습니까?


2
INI의 Anuj Davar의 최근 강연 : 구문 및 시맨틱 복잡성 클래스
Kaveh

@Kaveh : 감사합니다! 내가 살펴볼 게
MS Dousti

답변:


31

RP는 입력이 무엇이든 0 개의 경로가 허용하거나 절반 이상을 수락한다는 약속을 포함합니다. PP에게는 그러한 약속이 없습니다. 경로의 절반 이상이 허용되면 이고, 그렇지 않으면 입니다. (PP는 허용 기준이 각각 및 가되도록 정의 할 수 있습니다 .)X L 1 / 2 < 1 / 2xLxL1/2<1/2

나는 당신이 어떤 언어를 결정하는 보호 프로파일의 기계 주장하는 확률 TM을 제공하는 경우 또는 다른 말로, 당신은 확실히 그것을 결정하는 것이 될 수 있습니다 어떤 언어를. 분명히 결정하는 언어는 다음과 같습니다 . 입력 시도하십시오 . 경로의 1/2 이상이 허용되는지 (또는 1/2 이상의 임의의 문자열로 인해 허용) 확인하십시오. 그렇다면 입니다. 그렇지 않으면 입니다. 이 TM을 사용하여 언어를 정의했습니다.x L x LxxLxL

반면에, 내가 어떤 언어를 결정하는 RP 기계라고 주장하는 확률 론적 TM을 제공하면 어떤 언어가 결정되는지 확신 할 수 없습니다. 문제는 몇 가지 경로 만 받아들이면 가 인지 아닌지 알 수 없다는 것입니다. RP 기계를 주면 그냥 내 말을 들어야합니다. 실제로,이 기계가 언어를 정의하는지 확인하는 것은 계산할 수 없습니다.LxL

두 번째 질문에 관해서는, 구문 클래스의 경우 일반적으로 "G 머신 머신, 입력 x에 대해 시간 T를 허용하는지 결정"과 같은 명백한 완전한 문제가 있습니다. 결정적이지 않은 기계가 주어지면이 문제는 NP 완료이며 PP 기계이면 PP 완료입니다. 시맨틱 클래스의 명백한 완전한 문제는 언급 할 수 없습니다. 따라서 우리는 의미 클래스에 대해 무료로 완전한 문제를 얻지 못합니다. 그러나 시맨틱 클래스에는 완전한 문제가있을 수 있습니다. 예를 들어, P = BPP (넓게 생각되는 경우)이면 BPP는 구문 특성을 갖습니다.

편집 : 의미 및 구문 클래스 를 정의 하는 방법에 대한 토론이 있기 때문에 Papadimitriou가 리프 언어에 대해 이야기 할 때 그의 책에서 정의를 제공한다고 지적하고 싶습니다. ( 일부 참조를 위해 리프 언어에 대한 내 질문을 참조하십시오 .)

그는 구문 클래스는 리프 언어 기술을 사용하여 클래스를 정의하는 언어가 존재하는 클래스라고 말한다. 시맨틱 클래스는 이러한 모든 특성화에 약속 문제가 필요한 클래스입니다. 이것은 엄격한 정의이지만 리프 언어 특성이있는 언어에서만 작동합니다.


3
글쎄, 내가 방금 페이지를 다시로드했다면 지난 20 분 동안 답변을 쓰는 ​​데 낭비하지 않았을 것입니다 ... :) 도움이되는 경우를 대비하여 남겨 두겠습니다.
Ryan Williams

그래, 그럴 때 나는 싫어. 때로는 답변을 작성하는 중에 "새로운 답변이 게시되었습니다"라는 알림이 표시됩니다.
Robin Kothari

6
@Robin : 구문 적으로 밝혀지는 강렬한 의미 론적 클래스의 예를 위해 입증되지 않았지만 널리 알려져있는 주장 "P = BPP"에 의존 할 필요는 없습니다 : IP = PSPACE. (현재 QIP도 마찬가지입니다.)
Joshua Grochow

3
@Joshua : 맞습니다. IP = PSPACE가 작동합니다.
Robin Kothari

1
@Joshua : IP = PSPACE 결과를 언급 해 주셔서 감사합니다. 나는이 관점에서 본 적이 없다!
MS Dousti

28

첫 번째 질문에 대한 답은 정의에서 와 같이 기계가 만족할 "약속"이 없다는 것입니다 . 모든 랜덤 폴리 타임 머신은 일부 언어를 정의 합니다. 각 입력에서 머신은 적절한 입력에서 랜덤 계산 경로의 을 허용 하거나 그렇지 않습니다. 첫 번째 경우는 가 언어로되어 있고 두 번째 경우는 언어로되어 있지 않다는 것을 의미합니다.R P P P > 1 / 2 (X)PPRP PP>1/2x

따라서 및 의 경우와 마찬가지로 모든 랜덤 폴리 타임 머신을 간단히 나열하여 모든 머신 의 재귀 목록을 제공 할 수 있습니다. 대조적으로 기계가 하나의 조건을 만족하지 않는 경우 (예를 들어) 수락 무작위 시스템의 입력에서 임의의 문자열 정확히 하나있다 : 그것은에 동의하지 않는 의 그것 임의의 문자열이며 모든 문자열을 거부하지는 않습니다. 따라서이 무작위 기계는 하지 -machine는 입력의 어떤 부분 집합에 동작을 "정의되지 않은"것을 의미에서. 이것은 의 정의로 이어진다N P P P R P R P > 1 / 2 R P P의 R O m I 전자 - R PPNPPPRPRP>1/2RPPromiseRP일부 문자열에서 임의의 동작을 허용하는 "문제 약속"을 고려합니다. 자세한 내용은 Complexity Zoo를 참조하십시오.

이것은 "의미있는 클래스"개념의 문제점은 클래스를 정의하는 데 사용하는 기계에 따라 달라 지므로 올바르게 정의하는 것이 매우 미묘하다는 것입니다. (완전히 만족스러운 정의가 주어 졌는지 확실하지 않습니다.) "의미 적 등급"이되는 것은 위에서 언급 한 속성과 거의 동일합니다. (모든 기계 목록에있는) 모든 기계가 필요한 합격 / 거부 조건을 충족하지는 않습니다. 수업에 적합하므로 수업에서 언어를 정확히 받아들이는 기계 목록을 얻는 것은 "열심히"어렵습니다. 하지만 , 다음이 일부 의 쉽게 계산할 수 목록 일부P = B P PP=BPP다항식 시간 계산 가능한 기계의 목록과 같은 클래스의 언어를 정확하게 받아들이는 기계. 따라서 밝혀지면 시맨틱 클래스를 구문 클래스로 바꾼 것으로 보입니다 .P=BPP

단순히 없다는 것을 진정 경우라면 정확히 클래스를 동의 (합리적인 종류의) 기계의 계산 가능한 목록은 쉽게, 다음 네, 나는 수업이 가능한 완전한 언어를 가질 수 있다고 생각하지 않습니다. 그러나 그것은 증명할뿐 아니라 제대로 공식화하기가 매우 어려워 보입니다.


라이언 안녕 Church-Turing Thesis와 같은 것을 가정하여 구문 성을 정의하는 것이 가능하다고 생각하십니까?
Kaveh

1
구문 을 정의 하는 방법에 대한 질문을 해결하기 위해 지금 답변을 편집했습니다 .
Robin Kothari
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.