我是一名专注于分布式系统的研究生,但对理论计算机科学也很感兴趣。我想知道图灵机上是否有分布式系统的正式表示形式?也就是说,是否可以扩展(变型)图灵机的概念以利用分布式计算?
一种想法是在TM之间制作一个共享磁带(类似于Tuple Space)。
我是一名专注于分布式系统的研究生,但对理论计算机科学也很感兴趣。我想知道图灵机上是否有分布式系统的正式表示形式?也就是说,是否可以扩展(变型)图灵机的概念以利用分布式计算?
一种想法是在TM之间制作一个共享磁带(类似于Tuple Space)。
Answers:
[在图灵机顶部有分布式系统的形式化表示吗?
关于这一点,讨论(请参阅Jukka发表的评论链接)是查看的方式。我认为,您如何正式表示分布式系统的方式很大程度上取决于您如何看待它们,而这取决于“您喜欢的系统假设”(即,关于同步性的假设(即,分布式系统中操作的相对时间)系统),通信(消息传递与共享内存),故障(进程和/或链接,良性或拜占庭式错误),由于社区对此没有达成共识,因此在基本形式主义上也没有达成共识。
[是否可以扩展(变型)图灵机的概念以利用分布式计算?
我想这完全有可能,但是没有人(我知道)对此进行过研究。我所知道的是:
令我惊讶的是还没有提到Petri Nets!Petri网的扩展(例如有色Petri网或带有抑制弧的Petri网)是图灵完备的。
(警告:观点有些偏颇,过于简单化,粗俗地概括了未来。)
分布式计算和并行计算之间的区别通常可以总结如下:
如果您从这个角度出发,那么通常会发现,为了对分布式系统建模,节点(或处理器或计算机)具有什么样的计算能力并不重要。
因此,以图灵机为起点对分布式系统进行建模对我来说听起来有点不自然:如果这是无关紧要的方面,为什么要在此之上构建所有内容?另一方面,在并行计算中这是很自然的(除了模型通常类似于PRAM而不是图灵机)。
有人认为,由于对非确定性和公平的有界性的不同解释,您可能会认为分布式系统比图灵机更强大。该链接对该主题进行了有趣的讨论。Herlihy / Shavit在他们的《多处理器编程的艺术》一书中指出,图灵可计算性本质上是指(顺序)算法的概念,并且在某种意义上不适合进行分布式计算的推理。我应该提一下,这是有争议的,因此我希望没有人因为我这么说而扔石头。