P의 결정 불가능한 속성이 P 대 NP를 결정하는 데 방해가됩니까? (답변)


20

5 개의 관련 질문이 있으며 단일 통합 답변이 필요합니다.

  • Q1 : 마 언어의 존재 L 인식 전적으로 에서 그 튜링 기계에 의해  런타임 지수 결정 불가능하다을 ?P
  • Q2 : 이 튜링 기계의 예를 유한하게 구성 할 수 있습니까?
  • Q3 : 이 튜링 기계를 구체적으로 인스턴스화 할 수 있습니까? ( 예를 들어 , 그것들을 유한하게 구성하기보다는 "추측"하는 오라클에 의해).
  • Q4 : 현재 런타임 지수 외에 P의 다른 어떤 속성 이 결정 불가능한 것으로 알려져 있습니까? 이 질문이 어떤 속성에 P대해 열려 있습니까?
  • Q5 : 의 결정 불가능한 속성 P N P 의 결정 가능성을P 방해 합니까?PNP

Q1 에서 "단독"이라는 단어를주의 깊게보십시오 (Lance Fortnow의 제안 된 답변은 제외).


결론 및 커뮤니티 위키로의 전환

  • "P의 결정 불가능한 속성이 P 대 NP를 결정하는 데 방해가 되는가?"라는 질문은 자연스럽게 관련되어있는 수많은 특정 질문들 (위의 Q1-4)과 같이 개방적이고 어려운 것으로 여겨진다.

  • Juris Hartmanis의 1978 년 논문 타당성있는 계산 및 입증 가능한 복잡성 속성 은 문헌에 대한 좋은 정보를 제공하며 Hartmanis 이후로 리뷰가 공개되지 않았습니다.

  • 이러한 종류의 질문은 엄격한 증거를 찾는 데 어려움이 좋은 출발 정의를 선택해야하는 어려움과 밀접하게 혼합되어 있다는 점에서 충분히 연구되지 않았습니다.

  • Travis Service와 Alex ten Brink가 제공 한 신중한 의견과 통찰력있는 증거 스케치를 인정하고 높이 평가합니다.

질문이 공개되어 있고 여러 수학 웹 로그 스레드 ( 1 , 2 , 3 , 4 , 5 , 6 )에서 논의되고 있기 때문에이 질문은 커뮤니티 위키로의 변환으로 표시되었습니다.


업데이트 II 및 요약

저는 Juris Harmanis의 1978 년 논문 실행 가능한 계산 및 가능한 복잡성 속성Q1–5에 대한 심층적 인 응답으로 읽을 수 있음을 알고 있습니다. 또한 아래 Travis ServiceAlex ten Brink가 제공 한 (우수한) Q1Q4 증명 스케치 는 Hartmanis의 전반적인 결론을 현대적으로 확인하고 확장합니다.

공식적으로 입증 될 수있는 계산의 속성 만 고려하면 계산의 복잡성에 대한 결과가 상당히 급격히 변합니다 (Hartmanis가 강조) ...

따라서 우리는 주어진 프로그램과 동일한 기능을 계산하는 모든 프로그램의 최적성에 대한 결과가 주어진 프로그램과 동등한 것으로 공식적으로 입증 될 수있는 모든 프로그램에 대한 최적 성 결과와 다를 것으로 예상해야합니다. ...

우리는이 유명한 문제 [ P=?NP ]는 세트 이론과 같은 공식화 된 수학적 이론에서 해결할 수 없을 수 있습니다.

결국 저는 공식적인 TCS StackExchange "답변"으로 Hartmanis (놀랍게도 예견된 ) 논문의 추가 인용문 을 게시하고 싶습니다 .

Hartmanis의 논문과 Travis와 Alex가 제공 한 답변에서 Q1–5 는 복잡한 이론에서 현재의 최첨단 기술을 상당히 능가 한다는 것이 분명 합니다. 더욱이 이러한 질문 / 답변은 신중한 정의 조정이 필요하고 논문 길이의 설명을 정당화하기에 충분히 미묘합니다. :)

추가 기술 토론 은 문제에 대한 MathOverflow 에 대한 Joel David Hamkins의 답변을 참조하십시오 . 문제는 다항식 시간이고 결정 불가능할 수 있습니까? (Alex ten Brink가 추천 함).

Hartmanis의 논문에서“함수 계산”을“동역학 시뮬레이션”이라는 문구로 대체 할 경우, 시스템 공학에 대한 복잡성 이론 한계에 대한 논문으로 결과를 읽을 수 있습니다. 문제.

Oded Goldreich는 Hartmanis에 대한 대조적 인 의견을 최근 CACM 편집자에게 "On Computational Complexity" 라는 제목으로 썼습니다 .

불행히도, 우리는 현재 효율적인 계산에 관한 가장 자연스러운 질문에 대한 좋은 이론적 대답이 부족합니다. 이것은 우리가 잘못된 질문을하기 때문이 아니라 이러한 질문이 매우 어렵 기 때문입니다.

물론 Hartmanis와 Goldreich의 의견이 모두 정확하다는 것이 완벽하게 생각 될 수 있습니다.


업데이트 I

트래비스 서비스와 알렉스 열 직전에 의해 (아래) 사려 깊은 의견에 있음 (효과) 제안 Q1 "결정 불가능"라는 문구가 "검증 가능한 decidable하지"과에 대한 답변 있음과 동의어되지 않습니다 Q2-5는 이러한 구분에 따라 달라질 수 있습니다. 어떤 정의 적 선택이 가장 강력한 정리를 이끌어 낼 것인지, 또한 P 등급에 대한 우리의 직관을 가장 잘 포착하는 것은 분명하지 않습니다.이 질문에 대한 답변과 의견은 환영합니다.

Felix Klein 의 고급 견해 : 기본 기하학 (1939)의 기초 수학에서 다음과 같은 말이 오릅니다.

공간의 순진한 지각에서 다소 정밀하게 발생하는 개념의 또 다른 예는, 우리의 지오메트리 시스템을 보완하기 위해 추가해야하는 (임의) 곡선 개념입니다 . 모든 사람은 자신이 셀 수없이 많은 비정상을 혼동 할 정도로 많은 수학을 배울 때까지 곡선이 무엇인지 알고 있다고 생각합니다.

곡선과 마찬가지로 에서 튜링 머신에 의해 허용 된 언어와 마찬가지로  ... 모든 복잡성 클래스 중에서 가장 단순하고 가장 자연스러워 보이는 것처럼 보이는 것은 이제는 (수 많은?) 검증 할 수없는 특성 및 / 또는 결정 불가능한 속성으로 인해 나를 혼란스럽게합니다. . Q1–5 에 대한 폭 넓은 동기는 이 혼란스러운 덤불을 통해 길을 찾는 것이었지만 지금까지 (트래비스 서비스와 알렉스 텐 브 링크 (Alex ten Brink)에 의해) 답변은 혼란에 대한 추가 근거를 제공했습니다!P

클라인의 수학자들은 곡선과 세트 이론, 기하학 및 분석의 다른 기본 요소에 대한 좋은 정의를 찾기 위해 힘 썼습니다. 초등학교 수준의 개요는 Alexander Horned Sphere 에 대한 Wikipedia 토론에서 찾을 수 있습니다.

      Alexander의 Horned Sphere 이미지
      R3에 구 임베딩

20 세기 동안 Alexander 구체와 같은 "야생 매니 폴드"의 분석은 토폴로지 매니 폴드, 조각 연속 매니 폴드 및 차동 매니 폴드의 차이점을 명확히하는 데 도움이되었습니다. 마찬가지로 21 세기에 관련된 정의의 아마 개선 순종 도움이 될 것입니다 P를 적절한 개선을 지정하는 것은 쉬운 일이 없을 것입니다하지만 ... 야생 언어와 야생 튜링 기계 S '이 (가) 있습니다.PP


배경

이러한 관련 질문은 MathOverflow 커뮤니티 위키 질문 " 수학에서 가장 매력적인 튜링 결정 불가능한 문제는 무엇입니까 ? "및 " 현대 수학 에서는 어떤 개념이 사용되지만 명확하게 정의되어 있지 않은가? "에서 발생합니다. 특히 Colin Tan 은 위의 질문은 별도의 질문으로 게시.

기술적 배경에 대해서는 TCS StackExchange 질문 " P는 런타임 범위를 결정할 수 있습니까? ", 특히 답변이 "아니오"라는 Emanuele Viola의 간결한 증거 를 참조하십시오. Juris Hartmanis는 그의 논문 타당성있는 계산과 증명할 수있는 복잡성 특성 (1978) 에서도 비슷한 결과가 증명된다는 점에 주목하십시오 .

이번 주 랜스 포트 노우 / 빌 GASARCH는 웹 로그 계산 복잡도가 자신의 수십 년 설문 조사 호스팅 " 합니까 ?하거나하지를P=NP " - 다섯 번째이자 마지막 질문은 Fortnow / GASARCH 질문에 초대 논평을 요청했다.


1
@Alex ten Brink가 지적했듯이 Q1에서 이야기하는 Turing 기계는 잘 정의되어 있지 않습니다. 비올라의 증거가 아닌 귀하의 질문에 에 대해 생각해야한다고 생각합니다 .
Sasho Nikolov

@Shasho, 감사합니다 ... Alex의 포인트 (및 Travis Service의 포인트)에 대한 승인과 요약이 질문에 추가되었습니다.
John Sidles

1
참고 에마 비올라의 증거가 적용되는 것이 매우 문제 광범위한 : 일반화 된 버전은 임의의 시간 - 작도 기능 증명 F ( N ) = ω ( N 로그 N )g ( N ) = ω ( Ff,gf(n)=ω(nlogn)t ( n ) 시간안에 정지한다고 약속 된 TM은 불가능하며 t ( n ) = O (g(n)=ω(f(n))t(n) , t ( n ) = ω ( f ( n ) ) t ( n ) = O ( g ( n ) ) 여부를 결정합니다. 나는여기서 P N P에 대한 링크를 실제로 보지 못한다. t(n)=O(f(n))t(n)=ω(f(n))t(n)=O(g(n))PNP
Alex ten Brink

2
나에게 PNP 의 연결 은 기하학과 유사합니다. 연속체의 개념을 공식화하는 정의는 Kahler 매니 폴드에서 Riemann 매니 폴드에 이르기까지 광범위하게 계층화되어 매니 폴드를 토폴로지 매니 폴드에서 포인트 세트까지 (많은 추가 구별이 있음) 매끄럽게하는데, 이러한 구별을 공식화하는 것은 수학의 발전에 필수적이었습니다. 마찬가지로 P 의 튜링 머신 세트와이 머신 이 허용하는 언어 세트에는 복잡도 이론에서의 역할이 형상 및 토폴로지의 "이국적인"포인트 세트와 광범위하게 유사한 "와일드"알고리즘이 포함 된 것 같습니다.
John Sidles

1
@ 존, 나는 당신의 (다양한 초기 .. 아마도 훨씬 이전) 블로그 의견에서 이러한 생각의 힌트를 보았으며, 당신이 그것에 대해 얼마나 진전했는지를 매우 기쁘게 생각합니다. 시원한!
Daniel Apon

답변:


15

질문 1의 답은 '아니요'입니다. 하자 에서 언어 P를 하고하자 M은 어떤 다항식 시간에 튜링 기계 인식 할 수 L (누구의 런타임 가정 결정 불가능 예정). 각 들어 K N은 하자 M의 K가 입력 된 해당 튜링 머신 일 X 길이 N 에 대한 제 루프 N의 k 개의 단계 후 실행 M을XN의 K + K 경우 단계 및 허용 M은 허용 X를 그 내부 ( N 개의 K + KLPMLkNMkxnnkMxnk+kMxnk+k그렇지 않으면 거부합니다. 의 실행 Θ ( N 개의 K ) 각각을위한 K .MkΘ(nk)k

이후 다항식 시간에 실행이 일부입니다 K 'N 하도록 M이 에서 실행 O ( N K ' ) (우리가 모르는 경우에도 k는 ' 이다) 모든 그러므로위한 K 충분 M의 k는 인식 L을 하고있다 결정 가능한 런타임.MkNMO(nk)kkMkL

편집하다

다음 답변은 원래 포스터가 질문 1과 의도 한 바에 더 부합한다고 생각합니다.

정리 : NL 을 결정하는 Turing Machine 이면 다음 중 하나 이상에 해당 하는 언어 가 있습니다.LPNL

1) L을 수락 한다는 증거가 없거나NL

2) f ( n ) 단계 에서 정지 한다는 증거는 없습니다 (기능 f ( n )에 대해 ).Nf(n)f(n)

증명 스케치 : Let M 빈 테이프에 멈추지 않고 이 빈 테이프에 멈추지 않았다는 증거가없는 튜링 머신이라고 (Hartmanis와 Hopcroft의 컴퓨터 과학의 독립 결과는 그러한 M 캔을 보여줍니다) 효과적으로 발견).MM

하자 .L={n:nn s.t. M halts in n steps when run blank tape}

M 이후M 은 멈추지 은 실제로 빈 언어이지만 그 증거는 없습니다 ( M 이 멈추지 않았 음을 증명할 수 있습니다 ).LM

튜링 머신 이라고합시다 . NL을 결정 하는 증명과 Nf ( n ) 단계로 실행 된다는 증거가 모두 존재하는 경우 입력 1에서 실행될 때 N 을 실행 하면 M이 중지 (즉, N이 수락하는 경우 )하거나 M 이 수행 하는 증거를 제공합니다. 중단되지 않습니다 (즉, N이 거부하는 경우 ). 따라서 N이 L을 결정 하면NNLNf(n)N1MNMNNL 다음 의 런타임 decidable 역도 마찬가지 아니다.N


5
Travis는 답을 구한 질문에 대답하지만, 이것은 입증 가능한 지수가 있지만 기계 만 문제를 해결할 수없는 이상한 상황입니다.
랜스 포트 노우

이것은 Q1에 대한 좋은 대답입니다 ... 그리고 나는이 알고리즘이 클래스 P의 매우 이상한 멤버라는 Lance에 완전히 동의합니다. 질문의 동기 중 일부는 직관을 포착하는 것이 었습니다 (정리 증명에 좋은 정의를 통해) ) 우리가 "중요한"(어떤 의미에서) P의 알고리즘은 (어떤 의미에서) 우리가 "확인"할 수있는 알고리즘 인 알고리즘이다. 좋은 대답입니다! :)
John Sidles

펠릭스 클라인의 말 : "우리가 생각하고있는이 훌륭한 설명은 공간의 순진한 인식에서 다소 정밀하게 발생하는 개념입니다. (임의) 곡선의 . 모든 사람은 자신이 셀 수없이 많은 수 이상이 혼동 것을 그는 너무 많은 수학을 배울 때까지 곡선이 무엇인지 알고 있다고 생각합니다. " 요점은 P 대 NP를 진전시키기 위해 아마도 중요한 단계는 "무수한 가능한 이상"을 배제하기 위해 P의 정의를 구체화하는 것입니다.
John Sidles

2
당신의 대답은 매우 흥미 롭습니다. 그러나 술어 1은 ' 아래 정의에서 시작하여 L을 수락 한다는 증거가 없습니다'라고보다 정확하게 설명 될 수 있습니다 .TM을 결정하는 L (빈 언어)을 쉽게 구성 하고 항상 증명할 수 있기 때문에 빈 언어를 정지시키고 결정합니다. 나는 다시 한 번 좋은 것을 배웠고, 당신이 언급 한 참조를 확인하려고합니다 : DNLL
Alex ten Brink

트래비스의 이미 좋은 답변을 편집하면 더 많은 생각을 할 수 있습니다. 이 과정은 시간이 좀 걸리기 때문에 (저는) Travis (서비스)와 Alex (10 Brink) 모두에게 감사의 말을 전하고 싶습니다. 비록 학생들이지만 그들의 의견 (IMHO)은 성숙하고 흥미로웠다. Alan Turing 은 자신의 21 년에서 23 년 사이에 " Entscheidungs ​​문제에 대한 응용 프로그램으로 그의 계산 가능 숫자"를 고안 한 것으로 잘 알려져 있습니다 . 따라서 학생들은 성공과 비슷한 문제를 겪었습니다 ... Alex & Travis도 마찬가지입니다.
John Sidles

13

예, 시간이 걸리는 기계를 만들 수 있습니다. DTIME ( ) -DTIME ( n i ) 여기서 i 는 특정 Turing 기계가 빈 테이프에서 정지하기 위해 수행 한 단계 수입니다. 구성이 쉽고 유사한 구조는 P의 사소한 측면을 그대로 유지합니다. P v NP를 결정할 수 없는지에 대한 정보는 거의 없습니다 . 동일한 문제에도 불구하고 P EXP를 입증 하는 문제가 없습니다.ni+1nii


예 ... 그 트릭은 P의 런타임 결정 불가능성에 대한 Emanuele Viola와 Juris Harmanis의 증거의 본질입니다 (예 :). 한편,이 트릭으로 구성하는 튜링 기계가 모두 언어 L 인식하는 경우 하찮게입니다 또한 그 런타임 P에서 튜링 기계에 의해 인식 이다 decidable가. 그렇기 때문에 튜링 머신보다는 언어에 대한 질문으로 Q1이 (신중하게!) 표현되는 이유는 ... Hartmanis / Viola 구성 을 배제 하기 위해 ... (의견에 따라) P \ ne 경험치
존 사이들

... 그리고 언급하면, 런타임 지수를 결정할 수없는 Turing 머신에 의해서만 인식 되는 언어 L 은 복잡하고 이론적 인 (그리고 암호 학적) 관점에서 흥미로운 언어입니다. 알고리즘 적으로 압축 가능하지만 (정의 적으로 그렇게 정의 할 수없는) 압축 불가능한 (그리고 그 클래스에 속하지 않은 정의) 사이의 -esque "회색 영역".
존 사이들

8

주제에 대해 더 많이 생각한 후 Q4에 대한 (가능한) 답변을 찾았습니다. .

  • Q4 : 현재 런타임 지수 외에 다른 어떤 속성 이 결정 불가능한 것으로 알려져 있습니까? P의 어떤 속성에 대해PP이 질문이 대해 열려 있습니까?

나는 대부분의 속성에 대한 당신의 질문에 답하는 라이스 정리의 변형을 증명했습니다 . 이번에는 더 명확하게 설명하려고합니다 (Travis Service의 답변은 이전 답변보다 훨씬 명확하고 일반적이었습니다).

정리 : decidable 무한한 언어의 일부 비어 있지 않은 세트에있는 모든 부동산 보유에 대한 (하지만 유한 한 언어), 주어진 튜링 기계 여부를 결정 불가능하다 약속을 해당 속성과 언어를 결정하는 E 에서 항상 정지하는 O ( F ( N ) ) 시간, 여기서 F ( N ) = Ω ( N 로그 N )F ( N ) = Ω ( g ( N ) ) , g ( NEEO(f(n))f(n)=Ω(nlogn)f(n)=Ω(g(n)) 는 일부 Turing Machine이 해당 속성으로 언어를 결정하는 실행 시간입니다.g(n)

Turing Machine (TM부터)은 언어의 모든 문자열을 허용하고 언어 외부의 모든 문자열을 거부하면 언어를 결정합니다. 참고 우리가 취할 수있는 정리 단지보다 더 일반적이다, 그래서 다항식이 아닌 다른 뭔가하는 Pf(n)P .

우리는 '속성'의 개념을 '그 속성을 가진'자유롭게 선택할 수있는 언어 세트 로 공식화한다 . 언어에 속성이 있는지 여부를 결정하는 것은 언어가 S 의 멤버인지를 결정하는 것과 같습니다 . Rice의 정리에서와 같이 입력 TM에 의해 결정된 언어에 지정된 속성이 있고 S에 있는지 여부를 결정할 수 있는지 조사합니다 . S R이 필요합니다 . 즉 S 에는 결정 가능한 언어 만 포함되어 있습니다.SSSSRS

우리는 TM이 아닌 언어의 속성에 대해 이야기하고 있습니다 . 런타임 지수에 대한 귀하의 질문은이 정리의 특별한 경우가 아닙니다. 의 속성은 말할 복용하여 studyable을, S P를PSP 다항식 시간에 실행 개의 TM의 속성보다 더 관심있다. 정확성과 실행 시간을 유지하면서 모든 종류의 잔인한 것을 TM에 수행 할 수 있지만 언어에 대해서도 동일한 작업을 수행 할 수 없습니다.

모든 언어 가 무한해야 한다는 요구 사항 은 증거에 필요한 기술이지만 모든 유한 언어는 일정한 시간에 결정 가능하므로 일반적으로 무관심하기 때문에 이것이 주요 언어라고 생각하지 않습니다. 유한 한 언어도 가능하게하는 일반화 된 버전을 기대합니다.S

정리 증명 . 우리는 몇 가지 TM 주어진 가정하자 TM을 함께 E , 매개 변수 등이 P 항상은 정지 및 IFF에 받아 E는 몇 가지 언어를 결정 S를 , 어디 E가 약속되어 항상 위와 같이 시간을 실행하는 중지합니다. 하자 ( A는 , 내가 ) 중단 문제에 대한 인스턴스가, 즉, A는 TM을하고 에 대한 입력 , 우리는 이제 여부를 결정 할 에가 정지를 내가P(E)EPESE(A,i)AiAAi .

우리가 가정 때문에 비어 있지 않은했다, 우리는 몇 가지가 S S . 이후 S는 단지 decidable 언어를 포함, 일부 TM 존재 C 결정 . 특히 정리에서 가정 한대로 실행 시간 g ( n )C 를 선택합니다 . 이제 다음 TM을 고려합니다.SsSSCsCg(n)

function H(x)
h := simulate A on i for |X| steps and return whether it halted
if h == 'halted' then
    reject
else
    if C(x) accepts then
        accept
    else
        reject
    fi
fi

TM이 O ( n log n ) 로 시뮬레이션 될 수 있기 때문에이 TM의 실행 시간이 정리 요구 사항을 충족 함을 쉽게 알 수 있습니다.O(nlogn) 시간.

우리는 i에서 A 정지를 멈추지 않는다고 주장한다 . t 단계 후에 Ai 에서 정지 한다고 가정 하십시오. H는 그러므로 어떤 거부 X를 함께 | X | t . 따라서 우리는 대부분의 유한 한 언어에서 결정하고, 따라서 H는 에서 어떤 언어를 결정하지 SP ( H를 ) 때문에 반환 없음 .P(H)AiAitHX|X|tHSP(H)

이제 i에서 멈추지 않는다고 가정하십시오 . 그런 다음 변수 중단은 우리가 같은 언어를 결정할 수 있도록, '중단'값을 얻을하지 않습니다 C 정확하게, S S , 그래서 P ( H ) true를 반환됩니다. 이것은 P ( H ) 가 Halting Problem을 해결할 수 있음을 증명하며, 이는 정리를 증명합니다.AiCsSP(H)P(H)


This is a very powerful and flexible argument, and it will take awhile for me to grasp it ... there's a saying among farmers in the central USA "I feel like a pig being shown a wristwatch!" It appears (by your argument) that P is richly endowed with undecidable attributes; what I am having trouble grasping is whether the languages L recognized by P similarly are richly endowed with undecidable attributes ... the exercise of constructing concrete example languages having natural undecidable attributes is particularly frustrating (for me). Thank you for an excellent, thought-provoking answer.
John Sidles

1
I think you believe P to be the set of TMs running in polynomial time. This is not the definition: P is the set of languages decidable by some TM running in polynomial time.
Alex ten Brink

Alex, I definitely confess to being confused ... but not about that! What I would like to construct, or (less desirably) prove the existence/nonexistence of, would be (for example) a language L in P having the property that every Turing machine that accepts L either is not verifiably in P or does not verifiably accept L. These languages L would belong to P "oracularly" ... the possibility that P includes purely oracular languages is confusing to me ... especially since it is at all not obvious (to me) how such purely oracular languages could ever be concretely sampled and exhibited.
John Sidles

Oh yeah ... and to ask the converse (also confusing) question ... for a given language L in NP that possibly is accepted solely by oracular Turing machines ... by what proof method could we possibly establish that L is not recognized by any of P's oracular Turing machines ... and thus separate P from NP? Or suppose that we did prove the existence of a language L in NP not recognized by any Turing machine in P ... with the restriction that L was purely oracular ... and we could not exhibit that language ... should we be satisfied that P != NP? These questions are confusing!
John Sidles

4

나는 네거티브에 당신의 Q1 에 대답 할 수 있고 , 또한 네거티브에 Q2Q3 에 대답 할 수 있습니다 . Q4 또는 Q5 에 대해서는 확실하지 않습니다 .

  • LP

에마누엘레 비올라가 당신이 연결 한 그의 훌륭한 증거로 증명 한 것을 정확하게 이해하지 못한 것 같습니다 . 그는 단일 Turing Machine 이 없음을 보여주었습니다.M capable of computing the runtime exponent for any Turing Machine T presented to M, even under the promise that T runs in polynomial time.

However, for any given Turing Machine T running in polynomial time, there exists some k such that T has a running time of O(nk), and hence the Turing Machine M returning k (and nothing more) is able to 'tell' the running time exponent of T, even without having to look at T! Hence, M decides (in constant time even) what k is for this given Turing Machine T. We may not know which Turing Machine decides it, but we know one exists.

Coming back to your question, if we are given a language L in P, then there is some Turing Machine T running in O(nk) for some k that decides L, and hence there is the Turing Machine M returning k that decides the runtime exponent for T. This answers your question in the negative.

You might instead wonder about a different problem for a given language L in P: given Turing Machine T promised to run in polynomial time and promised to decide L, is it decidable to find the runtime exponent of T?

Unfortunately, this is also undecidable. Suppose we are given a language L in P and a TM (Turing Machine) M capable of deciding for a given TM T promised to run in polynomial time and promised to decide L, what the runtime exponent of T is. We can prove this to be undecidable in a very similar way to what Emanuele Viola did: we use the exact TM he defined, and change it slightly: we now want this TM to decide L.

Since L is in P, there is some TM deciding L in O(nk) time. Our new TM M first starts exactly as in Emanuele Viola's proof, running the (Halting Problem) TM for n steps. It then loops either for nk+1 steps or nk+2 steps similarly to Emanuele Viola's TM. Finally, it solves L on the given input and returns the answer.

M is in P, decides L, and if we know the runtime exponent, we can decide the Halting Problem, so the above problem is also undecidable (for any language L). Note that we do not need to know k, we don't actually have to construct M, all we have to do is know it exists!

This kind of thinking about undecidability is quite common apparently, I remember a (blog?) post about a very similar issue: the question was "is it decidable whether Pi has a 'last zero'", so whether Pi stops having zeroes in its decimal representation if you go down far enough that representation. We currently don't know whether this is the case. We might not even be able to prove it, ever, or it might even be independent from our axiom systems (and thereby unprovable). But, since the answer is either true or false, a TM returning true and a TM returning false decide the issue either case and therefore the problem is decidable.

I'll see if I can find that post on the internet somewhere.

Edit:

I found it on Mathoverflow.


your comment and Travis Service' account both are excellent. It appears that in Q1 the phrase "undecidable" is not synonymous with "not verifiably decidable" ... and it is not at all clear (to me) which definition (a) leads to the best theorems and (b) best captures our intuition of the class P. Remarks on this question are welcome.
John Sidles

Thank you Alex for the link (to the MOF question "Can a problem be simultaneously polynomial time and undecidable?") ... I have edited the main post to include that link.
John Sidles
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.