튜링 머신에 입력 할 수있는 길이는 무한합니까?


26

알파벳 만 고려 하면 튜링 머신에 입력으로 제공 될 수있는 문자열은 있습니다. 그러나 입력이 무한 이진 문자열이되는 것이 합리적입니까? 예를 들어 튜링 머신이 0으로 시작하는 모든 문자열을 허용하는 경우 무한 0의 이진 문자열도 튜링 머신이 허용하는 언어에 속합니까?Σ={0,1}Σ

답변:


21

일반적으로 고려되지는 않지만 무한 문자열로 초기화 된 테이프에서 Turing 시스템을 실행하는 데 문제가 없습니다. 그래도 여전히 유한 한 시간 안에 기계를 종료해야합니다. 무한 시간 계산의 개념도 있으며 여기에 적합 할 수 있습니다.


4
입력이 무한한 동안 유한 시간 내에 계산을 마치는 것은 어려운 도전과 같습니다.
마스트

5
@ 마스트 반드시 그런 것은 아닙니다. 전체 입력을 읽을 여유가 없습니다.
Yuval Filmus

1
@JulesMazur 키워드는 하이퍼 컴퓨팅 입니다.
Yuval Filmus

3
@JulesMazur 반드시 하이퍼 컴퓨팅이 필요하지는 않습니다. 프로그램은 출력 테이프에 계속 쓸 수 있으며 결과는 Type II Turing Machine과 같이 무한한 문자열로 수렴됩니다.
jkabrg

1
무한 문자열을 입력으로 허용하면 어려움에 처하게됩니다. 특히 입력 세트를 더 이상 계산할 수 없으므로 여러 가지 증거가 손상됩니다.
Taemyr

17

이것이 Type 2 Turing Machines 의 기능 중 하나입니다 . 무엇보다도 실수 사이의 함수 계산 가능성을 분석하는 데 사용됩니다. 더 흥미롭게도 통합과 같은 연산자의 계산 가능성을 분석하는 데 사용됩니다.

멋진 사실 : 정확한 수치 적분은 계산 가능합니다.


5

"합리적인가?"라는 질문에 대답하기 위해 한정된 시간에 실행되는 튜링 기계를 고려할 때 유용 할 수 있습니다.

특히 프리픽스가없는 튜링 머신 을 생각할 때 매우 유용한 방법 입니다. 정지 입력 세트에 접두사가없는 기계입니다. 즉, 기계를 정지시키는 입력이 다른 것의 접두사입니다. 이것들은 일반 Turing 머신과 동일하지만 Turing 머신이 자체 정지 입력을 결정할 수있는 경우에만 해당됩니다. 사용자는 기계가 어떤 입력을 정지 시킬지 모릅니다 (이는 결정 불가능한 속성입니다).

이를 확인할 수있는 한 가지 방법은 뒤로 이동할 수없는 테이프 헤드가있는 단방향 무한 입력 테이프가있는 일반 튜링 머신입니다. 사용자는 테이프를 비트로 채우고 기계를 실행합니다. 이것은 정의에 따라 접두사가없는 튜링 머신입니다. 기계가 정지하면, 한정된 수의 비트 만 읽어야하며 테이프의 해당 부분의 접두어는 프로그램이 아니거나 기계가 대신 정지했을 것입니다.

이것은 계산 가능한 확률 분포에 대해 이야기하는 좋은 방법입니다. 사용자는 테이프를 임의의 비트 (기계의 임의의 소스)로 채우고 기계는 임의의 비트 열을 뱉어냅니다. 이러한 모든 튜링 기계 세트는 계산 가능한 분포 세트 (특히 하위 계산 가능한 반 측정치)에 해당합니다.

무한 입력의 장점은 정지 프로그램의 접두사를 부여하면 기계가 수행 할 작업을 지정할 필요가 없다는 것입니다. 기계는 우리가 주어진 입력의 끝을 넘어서 읽습니다.


2

이러한 테이프가 없어도 다른 튜링 기계를 사용하여 테이프를 만들 수 있습니다.

튜링 머신은 비어 있지만 무한한 데이터 테이프에 액세스 할 수 있습니다 (또는 일부 소스에는 "머신에 작은 테이프 팩토리가 내장되어 있습니다"라고 표시되어 있음). 따라서 프로그래밍 가능한 일부 데이터 패턴으로 초기화 한 다음 테이프를 다른 튜링 머신의 입력으로 사용할 수 있습니다.

물론 컨텐츠가 알고리즘을 생성하는 방법을 정의 할 수없는 컨텐츠 인 경우 Turing machine에서 해당 컨텐츠를 작성할 수 없습니다.


6
이것이 어떻게 질문에 대답하는지 잘 모르겠습니다. 어쨌든 적어도 두 개의 기호가있는 알파벳 위에 셀 수없이 무한한 문자열이 있기 때문에 튜링 머신에서 모든 무한 시퀀스를 생성 할 수는 없지만 수 많은 튜링 머신과 셀 수있는 유한 입력이 많기 때문입니다.
David Richerby

2

무한 입력을 고려하여 "표준"튜링 기계의 작동으로 줄일 수있는 경우가 있습니다. 예를 들어, 입력에 지정된 무한 반복 유한 패턴을 고려하십시오. 한정된 양의 메모리 / 테이프 스토리지를 사용하여 테이프 헤드의 현재 동작에 의해이 무한 패턴이 얼마나 수정되었는지 추적하는 튜링 머신을 만들 수 있습니다. 즉, 테이프에서 무한 크기 패턴을 "동등하게 시뮬레이션"합니다.

"무한 입력"이 고려 된 다른 경우 는 셀룰러 오토마타 의 튜링 동등성 / 완전성 의 분석이다 . 복잡한 증명에서 Cook은 CA 110 규칙 작업을 무한 지정 초기 테이프에서 시작하지만 유한 크기 패턴으로 반복되는 Turing 기계 작업으로 변환 할 때 "약한 Turing 동등성"이라고하는 개념을 도입했습니다 .


1
"무한 입력"및 "무한 객체의 무한 인코딩"이라는 용어는 명확하고 기본적입니다 (최소한 DFA를 가진 모든 무한 정규 언어가 예입니다). 여기서 혼동해서는 안됩니다.
Raphael

2
예, 설명 된 인코딩에 DFA를 사용할 수 있습니다. 무한 길이 스트링의 유한 인코딩 (테이프 반복 패턴을 통해)을 갖는 테이프가 스케치 된 것처럼, 유한 스트링만을 갖는 테이프와 기능이 상이하거나 유사하다.
vzn

1

공식 언어에서 문자열은 정의상 유한 한 일련의 기호입니다. 클래식 Turing Machine에는 유한 입력 문자열이있는 무한 테이프가 있습니다. 따라서 입력 길이에 제한이 없지만 무한 할 수는 없습니다.

그러나 TM과 유사하지만 무한한 입력 시퀀스로 작동하는 많은 대체 기계가 있습니다.

무한 길이의 입력이 적절한 지 여부는 목적에 따라 다릅니다. 엄밀히 말하면 Turing Machines의 맥락에서는 의미가 없지만 (가능하지 않기 때문에) Turing-like Machines의 맥락에서는 의미가 있으며 많은 응용 프로그램이 있습니다.


4
무한한 문자열을 가질 수 있습니다. 실제로,이 정확한 상황을 다루는 오토마타 이론의 전 분야가 있습니다. 그리고 무한 입력을 처리 할 수 ​​있도록 튜링 기계의 정의에 필요한 유일한 변경 사항은 입력이 유한해야한다는 조건을 삭제하는 것입니다. 무한한 문자열.
David Richerby

1
@DavidRicherby : 우리는 동의하는 것 같습니다. 마지막 단락을 다시 바꿔서 원래의 고전적인 비 성숙 튜링 머신 (입력이 정의에 따라 유한 한 경우)의 맥락에서만 엄격하게 적용되고 이해가되지 않는다는 것을 더 명확하게 알 수 있도록 자유롭게 알려주십시오. 무한 길이 입력에 대해 이야기하십시오. 조건을 삭제하자마자 더 이상 TM이 아니라 Turing-like Machine이라고 불렀습니다.
모두

1
테이프에서 무한한 재료로 장치를 시작하기 때문에 장치가 튜링 기계가되는 것을 중지한다는 데 동의하지 않습니다. 기계는 여전히 같은 기계입니다. 초기 조건을 변경했습니다. 튜링 기계가 유한 문자열의 언어 (예를 들어, 결정 가능 또는 반 결정 가능 언어)와 관련되는 방식의 정의는 유한 입력의 관점이지만 기계가 필요로하는 것은 아닙니다. 마찬가지로, 컴퓨터 옆에 CDROM을 쌓아두면 컴퓨터가 컴퓨터 작동을 멈추지 않습니다.
David Richerby

1
@DavidRicherby 글쎄, 기술적으로 튜링 머신은 유한 한 입력을받는 머신입니다. 정의에서이 제한을 변경하면 다른 것을 정의하게됩니다. 컴퓨팅의 기본 개념은 여전히 ​​어떤 의미에서는 동일하지만 지금은 어떻게 복잡성을 표현합니까? 매우 다른 문제.
Raphael
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.