분산 시스템에 중점을 둔 이론적 컴퓨터 과학에 관심이있는 마스터 학생입니다. 튜링 머신 위에 분산 시스템의 공식 표현이 있는지 궁금합니다. 즉, 분산 컴퓨팅을 이용하기 위해 튜링 머신의 개념을 확장 (변형 화) 할 수 있습니까?
한 가지 아이디어 는 TM간에 공유 테이프 ( Tuple Space 와 비슷한 것)를 만드는 것 입니다.
분산 시스템에 중점을 둔 이론적 컴퓨터 과학에 관심이있는 마스터 학생입니다. 튜링 머신 위에 분산 시스템의 공식 표현이 있는지 궁금합니다. 즉, 분산 컴퓨팅을 이용하기 위해 튜링 머신의 개념을 확장 (변형 화) 할 수 있습니까?
한 가지 아이디어 는 TM간에 공유 테이프 ( Tuple Space 와 비슷한 것)를 만드는 것 입니다.
답변:
튜링 머신 위에 분산 시스템의 공식적인 표현이 있습니까?
이와 관련하여 토론 (주 카가 코멘트에 게시 한 링크 참조)을 보는 방법입니다. 분산 시스템을 공식적으로 표현하는 방법은 주로 시스템을 보는 방법에 따라 다르며 "좋아하는 시스템 가정"(즉, 분산에 대한 작업의 상대적 타이밍)에 따라 달라집니다. 시스템), 커뮤니케이션 (메시지 전달 대 공유 메모리), 결함 (프로세스 및 / 또는 링크, 양성 또는 비잔틴 등), 커뮤니티가이 점에 동의하지 않기 때문에 기본 형식에 대한 합의도 없습니다. .
분산 컴퓨팅을 이용하기 위해 튜링 머신의 개념을 확장 (변형 화) 할 수 있습니까?
전적으로 가능하다고 생각하지만 아무도 아는 사람이 없었습니다. 내가 아는 것은 다음과 같습니다.
Pi-Calculus를 살펴볼 수 있습니다.
http://en.wikipedia.org/wiki/%CE%A0-calculus
분산 시스템에 대한 추론을 위해 설계된 처리 기반 미적분학입니다.
Petri Nets 가 아직 언급되지 않은 것에 놀랐습니다 ! 착색 된 페트리 넷 또는 억제제 아크를 갖는 페트리 넷과 같은 페트리 넷의 연장 은 튜링-완전하다.
( 경고 : 다소 편향된 견해, 과장된 단순화 및 명백한 일반화. )
분산 컴퓨팅과 병렬 컴퓨팅의 차이점은 다음과 같이 요약 할 수 있습니다.
이 관점을 고려하면 분산 시스템을 모델링하기 위해 실제로 노드 (또는 프로세서 또는 컴퓨터)에 어떤 종류의 계산 능력 이 있는지는 중요하지 않습니다 .
따라서 분산 시스템을 모델링하기 위해 튜링 머신을 시작점 으로 사용 하는 것은 다소 부 자연스러운 소리입니다. 반면, 병렬 컴퓨팅에서는 자연 스럽습니다 (모델이 일반적으로 튜링 머신 대신 PRAM과 같은 것임).
일부 사람들은 자신의 관점에 따라 분산 시스템을 비결정론과 공정성의 경계에 대한 해석이 다르기 때문에 튜링 머신 보다 강력한 것으로 생각할 수 있다고 주장합니다 . 이 링크 에는 주제에 대한 흥미로운 토론이 있습니다. Herlihy / Shavit의 저서 "멀티 프로세서 프로그래밍 기술"에서는 Turing 계산이 본질적으로 (순차적) 알고리즘의 개념을 나타내며, 어떤 의미에서는 분산 컴퓨팅에 대한 추론에 적합하지 않다고 주장합니다. 나는 이것이 논쟁의 여지가 있고 논쟁의 여지가 있다는 것을 언급해야하므로, 내가 이것을 말하고 있기 때문에 아무도 나에게 돌을 던지지 않기를 바랍니다.