turing machine

Download Report

Transcript turing machine

튜링기계의 다른 모델들
머물기 선택을 갖는 튜링기계
• Q    Q    {L,R,S}
=> 오토마타의 능력을 확대하는 것은 아님
2/20
다중트랙을 갖는 튜링기계
a
Track 1
b
Track 2
c
Track 3
3/20
절반무한 테이프를 갖는 튜링
기계
Track 1 for right part
Track 2 for left part
4/20
오프라인 튜링기계
Read only input file
Control unit
Tape
5/20
다른 모델들
• 추가적인 속성
– 튜링기계와 다른 모델
– 튜링기계와 동일한 모델
• 튜링기계와 다른 모델 => 동치성 증명이
필요
6/20
선형한정 오토마타
• 튜링기계의 능력확장
– 테이프의 구조 다양화 => 튜링 기계의 능력
확장 불가능
• 튜링기계의 능력제한
– 테이프의 속성을 제한 =>유한 공간
• 기계가 입력으로 사용된 테이프의 부분만을 사
용하도록 제한
=> 선형한정 오토마타
7/20
정의 10.4
선형 한정 오토마타는 비결정적 튜링기계
M = ( Q, , , , q0,•, F)
 : 입력 알파벳 “[“와 “]” 를 포함
(qi,[) = (qj,[,R)
(qi,]) = (qj,],L)
8/20
예제 10.4
다음 언어는 선형 한정 오토마타에 의해 인
식된다
L={anbncn :n >= 1 }
=> 기계가 입력으로 사용된 테이프의 부분
만을 사용하도록 제한
9/20
형식 언어 계층과 오토마타
10/20
튜링 기계의 언어 인식
• 튜링 기계에 의해서 인식되지 않는 언어
가 존재하는가?
=> 존재함(unrestricted language)
11/20
정의 11.1
• 언어 L을 승인하는 튜링 기계가 존재한
다면 그 언어는 순환적으로 열거가능하
다(recursively enumerable)고 한다.
12/20
정의 11.2
• L을 알파벳 에 대한 언어라 하자. 만일
언어 L을 인식하고, 또한 +에 속하는 모
든 w에 대하여 정지하는 튜링 기계가 존
재한다면, 이 언어 L은 순환적(recursive)
이라고 한다.
13/20
무제한 문법
• 정의 11.3
모든 생성 규칙이 다음과 같은 형태를 하고
있다면 문법 G=(V,T,S,P)는 무제한 문법이라
고 한다.
u -> v
여기서 u  (V U T)+, v  (V U T)*
14/20
무제한 문법
• 무제한
– 변수나 단말들의 개수 제한 없음
– 순서 제한 없음
• 제한
– 생성규칙의 좌변에 는 올 수 없음
15/20
무제한 문법
• 정리 11.6
무제한 문법에 의하여 생성되는 모든 언
어는 순환적으로 열거가능하다
16/20
문맥-인식 문법
문맥-자유 문법
무제한 문법
17/20
문맥-인식 문법
• 정의 11.4
모든 생성규칙들이 다음과 같은 형태일
경우 문법 G=(V,T,S,P)를 문맥-인식 문법
이라 한다.
x->y
여기서 x,y  (V U T)+ 이고
|x| <= |y|
18/20
문맥-인식 문법
• 정리 11.9
모든 문맥-인식 언어 L은 순환적이다.
19/20
Chomsky 계층
순환적으로 열거 가능 언어
type 0
튜링머신
문맥-인식 언어
type 1
문맥-자유 언어
선형한정A
type 2
정규 언어
PDA
type 3
유한A
20/20