큐오토마톤
Queue automaton큐 머신 또는 큐오토마톤은 무한 메모리 큐에서 데이터를 저장 및 가져올 수 있는 유한 상태 머신입니다.이것은 튜링 기계와 동등한 계산 모델이며, 따라서 동일한 종류의 정형 언어를 처리할 수 있습니다.
이론.
큐 머신은 6 태플로 정의할 수 있습니다.
- ( , , , $ $, , ) )({ (Q , \ , \ Gamma , \ s , \ s )。여기서,
- 는 유한한 상태의 집합입니다.
- \ display style \\ \Gamma }는 입력 알파벳의 유한 세트입니다.
- displaystyle)는 유한 큐 알파벳입니다.
- display \ \ , \ $\\ \ 는 첫 번째 큐 기호입니다.
- Q ( \ , s \ Q )가 시작 상태입니다.
- \ \Gamma 는 전이 함수입니다.
컨피규레이션은 상태와 큐의 내용" )의 순서쌍입니다Q × \ Q \ \ { * }。여기서 \ style 、 \ Gamma { * }denotes a a a a a a a a a of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of of 는 ( s,$) {\ , ( , \ $ )로 정의되며, M 1{ \ \_ { } 11 11 1111 1 le le le le le le le le le \ displaystyle \ rightarrow _ { { M M } 1}}}}}}
서 A(\ A는 큐 의 기호(\ 는 큐 기호(\ \alpha ( ) (p ,) \ , \ displaystyle ) = \, A 첫 번째 노트
된 수의 전환 후 시작 Configuration이 문자열을 소진하도록 (,$ ) ( , \ 。[1]
튜링 완전성
큐머신이 튜링머신을 시뮬레이트할 수 있다는 것을 보여줌으로써 큐머신이 튜링머신과 동등하다는 것을 증명할 수 있다.
튜링 머신은 튜링 머신의 내용 복사본을 항상 큐에 유지하는 큐 머신에 의해 시뮬레이션될 수 있습니다.하나는 튜링 머신의 헤드 위치용이고 다른 하나는 테이프의 끝에 있습니다.그 전환은 큐 전체를 통해 실행되며 각각의 심볼을 튀겨냄으로써 튜링 머신의 내용을 시뮬레이션합니다.터진 기호 또는 헤드 위치 부근에서 튜링 기계 전환 효과와 동등한 값을 재입력합니다.
큐머신은 튜링머신에 의해 시뮬레이션될 수 있지만 일반 싱글테이프머신과 동등한 것으로 알려진 멀티테이프 튜링머신에 의해 더 쉽게 시뮬레이션될 수 있다.시뮬레이션 큐머신은 하나의 테이프에서 입력을 읽고 두 번째 테이프에 큐를 저장합니다.테이프의 시작 [2]및 끝 기호로의 간단한 전환으로 정의됩니다.이에 대한 공식적인 증거는 종종 이론 컴퓨터 과학 강좌에서 연습하는 것입니다.
적용들
큐머신은 컴퓨터 아키텍처,[3][4] 프로그래밍 언어 또는 [5][6]알고리즘의 기반이 되는 단순한 모델을 제공합니다.
「 」를 참조해 주세요.
- 계산 가능성
- 튜링 기계 등가물
- 결정론적 유한 오토마톤
- 푸시다운 오토마톤
- 태그 방식
- 큐머신 모델을 사용하여 플레이어에게 다양한 알고리즘을 구현하는 브라우저 플래시 게임인 Manufactoria.
레퍼런스
- ^ Kozen, Dexter C. (1997) [1951]. David Gries, Fred B. Schneider (ed.). Automata and Computability (hardcover). Undergraduate Texts in Computer Science (1 ed.). New York: Springer-Verlag. pp. 368–370. ISBN 978-0-387-94907-9.
- ^ Rus, Teodor. "Variants of Turing Machines" (PDF). Lecture Notes Covering Theory of Computation. University of Iowa, Iowa City, IA, 52242-1419. Archived from the original (PDF) on 2008-09-21. Retrieved 2007-11-06.
- ^ Feller, M.; M.D. Ercegovac (1981). Queue machines: An organization for parallel computation. Lecture Notes in Computer Science. Vol. 111. pp. 37–47. doi:10.1007/BFb0105108. ISBN 978-3-540-10827-6.
- ^ Schmit, H.; Levine, B.; Ylvisaker, B. (2002). "Queue machines: Hardware compilation in hardware". Proceedings. 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines. pp. 152–160. CiteSeerX 10.1.1.6.7718. doi:10.1109/FPGA.2002.1106670. ISBN 978-0-7695-1801-5.
- ^ Moore, Christopher (1999-09-20). "Queues, Stacks, and Transcendentality at the Transition to Chaos". Algorithms Project's Seminar. INRIA. Retrieved 2007-11-06.
- ^ von Thun, Manfred (2007). "A queue machine for evaluating expressions". La Trobe University. Archived from the original on 2007-08-07. Retrieved 2007-11-06.