에 일련의 숫자가 있는지 어떻게 알 수 있습니까?


130

우리는 다음과 같은 운동을 받았습니다.

허락하다

f(n)={10n occurs in the decimal representation of π0else

가 계산 가능 하다는 것을 증명하십시오 .f

이것이 어떻게 가능한지? 내가 아는 한, 우리는 가 모든 숫자의 시퀀스 (또는 어떤 숫자)를 포함 하는지 알지 못하며 알고리즘은 일부 시퀀스가 발생 하지 않는다고 확실히 결정할 수 없습니다 . 따라서 기본 문제는 반 결정 가능하기 때문에 는 계산할 수 없다고 생각 합니다.fπf


32
완전히 무지한 것에 대해 용서하십시오. 질문의 근본적인 부분이 분명히 누락되었지만 0 ^ n이 항상 0이 아닙니까? pi가 0이면 소수점 이하 32 번째 자리이므로 f (n)이 항상 1을 반환한다는 의미는 아닙니까?
코리 클라인

68
@CoryKlein : 이것은 공식 언어 표기법입니다. 위 첨자 여기서 배 연결을 의미합니다 ( 예 : . 은 숫자가 아닌 기호 일뿐입니다. n a 5 = a a a a a 0nna5=aaaaa0
Raphael

답변:


133

고려해야 할 두 가지 가능성이 있습니다.

  • 모든 양의 정수 에 대해 문자열 은 의 10 진수 표현으로 나타납니다 . 이 경우 항상 1을 반환하는 알고리즘이 항상 정확합니다.n0nπ

  • 가장 큰 정수가 이되도록 십진수 표기로 표시 . 이 경우 다음 알고리즘 ( 값이 하드 코딩 됨)은 항상 정확합니다.N0NπN

    Zeros-in-pi(n):
     if (n > N) then return 0 else return 1
    

우리는 이러한 가능성 중 어느 것이 올바른지, 두 번째 경우 에 가치가 어떤 것인지 전혀 모른다 . 그럼에도 불구하고 이러한 알고리즘 중 하나가 올바른 것으로 보장됩니다. 따라서, 문자열의 여부를 결정하는 알고리즘가 제로가 나타나는 ; 문제는 결정 가능하다.Nnπ


gallais가 제안한 다음과 같은 증거 스케치로 미묘한 차이점을 확인하십시오 .

  1. 임의의 튜링 기계와 임의의 입력을 취하십시오.
  2. 계산이 영원히 진행되거나 어느 시점에서 중지되며 이러한 각 동작을 설명하는 (일정한) 계산 가능한 함수가 있습니다.
  3. ???
  4. 이익!

Alex ten Brink 는 다음과 같이 설명합니다.

Halting 정리의 상태를 살펴보십시오. 주어진 프로그램의 정지 여부를 결정할 수있는 단일 프로그램이 없다고 말합니다. 하나는 주어진 프로그램이 중단되었는지 여부를 계산하는 두 가지 프로그램을 쉽게 만들 수 있습니다. 첫 번째는 항상 '정지', 두 번째는 '정지하지 않습니다'-하나의 프로그램은 항상 옳습니다. 그들 중!

sepp2k 는 다음을 추가 합니다.

Alex의 예에서는 어떤 알고리즘도 모든 입력에 대해 올바른 결과를 반환하지 않습니다. 이 질문의 경우 그들 중 하나가 될 것입니다. 모든 입력에 대해 올바른 결과를 생성하는 알고리즘이 있다는 것을 알고 있기 때문에 문제를 결정할 수 있다고 주장 할 수 있습니다. 해당 알고리즘이 어느 것인지 아는 것은 중요하지 않습니다. 10


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
Gilles

12
누군가가 "모든 양의 정수 n에 대해, 문자열 0 ^ n은 π의 10 진수 표현으로 나타남"이라는 진술이 불가능하다는 것을 증명한다면 어떻게 될까요? 올바른 알고리즘을 구성 할 수는 없지만이 문제를 결정할 수 있다고 여전히 말할 수 있습니까?
기타

4
@Others 네, 그렇습니다.
JeffE

1
@ 제프 직관 논리에서 증명이 가능합니까? 아니면 여기서 배제 된 중간 법칙이 필요합니까?
기타

@Others 내가 올바르게 이해한다면, 아이디어는 이것입니다 : 우리가 각각의 대해 튜링 머신 을 답의 첫 부분에서와 같이 정의 한다면 , 그것들 중 하나 가이 함수를 계산 한다는 것을 알고 있습니다. 우리는 어느 것을 알지 못하며 (당신의 진술이 입증되면 어떤 것을 알 수 없다는 것을 알 수도 있습니다) 그러나 우리는 여전히 그러한 Turing 기계가 있다는 것을 알고 있으므로 함수는 계산 가능합니다. M NNMN
JiK

14

JeffE의 답변에 약간의 정교함을 게시하십시오.

함수 f (n)을 계산할 수있는 두 가지 함수 / 케이스가 존재한다는 것을 알고 있습니다.

  1. 항상 true를 리턴하는 함수 (모든 n에 대해 n 개의 연속 0이 존재 함)
  2. n이 정수 N보다 작 으면 true를 리턴하는 함수. 여기서 N은 주어진 비이성적 인 수에 존재하는 연속 0의 최대 길이로 정의됩니다 (그렇지 않으면 false를 리턴 함).

이러한 기능 중 하나만 정확할 수 있습니다. 우리는 어느 것을 알지 못하지만 답이 존재한다는 것을 확실히 알고 있습니다. 계산에는 유한 한 단계 내에서 답을 결정할 수있는 함수가 있어야합니다.

경우 1의 단계 수는 단지 1을 반환하는 것으로 간단하게 바인딩됩니다.

2의 경우 단계 수도 유한합니다. 모든 정수 대해 튜링 머신 을 구성하여 경우를 허용 하고 그렇지 않으면 유한 시간 내에 거부합니다. 따라서 의 상한을 아는 것은 중요하지 않습니다. 모든 대해 튜링 머신, 즉 이 존재하여 인지 여부를 정확하게 계산합니다 .T N ( N ) N < N N N T N ( N ) N < NNTN(n)n<NNNTN(n)n<N

두 경우 중 하나를 선택하는 것이 불가능할 수도 있지만 (하나는 다른 것보다 가능성이 높지만) 그 중 하나가 정확해야한다는 것을 알고 있습니다.

참고로, 우리의 솔루션은 어떤 기능이 올바른 값을 이끌어 낼지 결정할 수는 없지만 계산의 본질이 증거의 구성 가능성에 의존하지 않는다고 가정합니다. 순수한 존재로 충분합니다.


9
모든 수학자들이 이것을 받아 들일 수있는 것은 아닙니다 – 예를 들어 직관 론자들은 그렇지 않습니다.
reinierpost

당신은 기본적으로 배제 된 중간 법칙 , lol 의 긴 예를 만들고 있습니다. 직관 논리 또는 모든 유형 이론 기반 논리 시스템에서이 증명은 거부됩니다. P¬P
Kaa1el

5

다음 증명 시도의 5 단계는 정당화되지 않았으며 실제로 잘못 되었습니다 . 여기서 반대의 예를 찾을 수 있습니다 . (감사합니다, Yuval; 그것은 스케치의 스케치 부분처럼 느껴졌습니다). 실수가 유익하다고 생각할 때 여기에 답을 남겼습니다.


우선 : JeffE의 답변은 충분합니다. f 는 어느 쪽이든 계산 가능합니다.

그러나 귀납법에 의한 증명 스케치를 시도하는 간단한 우회 :
Premise R : 는 반복되지 않습니다. 1. 기본 2의 를 보십시오 . 이것은 대부분 사례 수를 줄이기위한 것입니다. 2. 줄을 얼마나 아래로가더라도 관계없이 항상 다른 1을 찾을 수 있습니다 . 대안은 모두 0입니다. 이는 가 반복되기 시작하여 R 에 대해 진행됨을 의미 합니다. 3. 아래로 내려 가서 0을 찾는 것도 마찬가지입니다 . 4. 두 자리 시퀀스로 확장 : 그렇지 않으면 01 또는 10 (즉, 스위치가있는 위치)을 찾을 수 없습니다.π π π ππ
π
π

π1 또는 0 에서 반복되기 시작 합니다. 마찬가지로, 1010101 ... 5 에서 반복하기 시작하므로 11 또는 00 찾기를 멈출 수 없습니다 . 유도 단계 : 각 유한 시퀀스는 반복이 시작 되기 때문에 각 유한 시퀀스는 무한한 횟수로 나타나야합니다 . R 과 모순되는 더 짧은 시퀀스 중 하나입니다 .
π


10
우선, 우리의 바이너리 확장 알고 있기 때문에 반복하지 않습니다 비이성적이다. 둘째, 이진 확장에 000 또는 111을 포함하지 않는 비합리적인 숫자가 있습니다. 예를 들어 Thu-Morse 시퀀스에 해당하는 숫자 : 0.0110100110010110 ...πππ
Yuval Filmus

1
아, 유도 도약의 위험 : P 잘 잡아라. 고마워.
스티븐 보리스 1

1
또한 결론이 잘못되면 결론을 삭제하거나 그대로두고 편집을 통해 틀렸다는 것을 인정하는 것이 더 의미가 있습니까?
Stephen Voris

4
@StephenVoris 그것은 실수라고 생각하는 교육 방법에 달려 있습니다. 가 정상 인지 여부에 대한 문제 (즉, 확장은 무한대 의 ary 자릿수 의 모든 유한 시퀀스를 포함하는 경우가 많음)는 숫자 이론의 가장 큰 문제 중 하나입니다. b bπbb
David Richerby

2
@DavidRicherby Big open problem, 당신은? 네, 알아두면 좋습니다. OP의 질문에 기반을 둔 문제가 얼마나 까다로운 지에 대한 증거이기 때문에 이것이 합리적으로 교육적인 실수라고 생각합니다.
Stephen Voris
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.