Saya seorang mahasiswa master yang berfokus pada sistem terdistribusi tetapi juga tertarik pada ilmu komputer teoretis. Saya bertanya-tanya apakah ada representasi formal dari sistem terdistribusi di atas mesin turing? Artinya, apakah mungkin untuk memperluas (membuat varian) konsep mesin turing untuk mengambil keuntungan dari komputasi terdistribusi?
Satu ide, adalah membuat rekaman bersama (sesuatu yang mirip dengan Tuple Space ) antara TM.
turing-machines
dc.distributed-comp
Marcos Roriz Junior
sumber
sumber
Jawaban:
Mengenai hal ini, diskusi (lihat tautan yang diposting oleh Jukka pada komentar) adalah cara untuk melihatnya. Caranya, saya melihatnya, bagaimana Anda akan secara formal mewakili sistem terdistribusi sangat tergantung pada bagaimana Anda melihatnya, dan itu tergantung pada "asumsi sistem favorit Anda" (yaitu, asumsi pada sinkronisasi (yaitu, waktu relatif tindakan dalam distribusi) sistem), tentang komunikasi (menyampaikan pesan vs memori bersama), pada kesalahan (dari proses dan / atau tautan, jinak atau Bizantium, dll.) Karena masyarakat tidak menyetujui hal ini, juga tidak ada kesepakatan mengenai formalisme dasar .
Saya kira itu sepenuhnya mungkin, tetapi tidak seorang pun (yang saya tahu) telah memeriksanya. Yang saya tahu adalah ini:
sumber
Anda mungkin ingin melihat Pi-Calculus.
http://en.wikipedia.org/wiki/%CE%A0-calculus
Merupakan kalkulus berbasis diproses yang dirancang untuk alasan tentang sistem terdistribusi.
sumber
Saya terkejut bahwa Petri Nets belum disebutkan! Ekstensi Jaring Petri seperti Jaring Petri Berwarna atau Jaring Petri dengan busur penghambat sudah selesai-Turing.
sumber
( Peringatan: pandangan yang agak bias, penyederhanaan berlebihan, dan generalisasi terang-terangan di depan. )
Seringkali perbedaan antara komputasi terdistribusi dan komputasi paralel dapat diringkas sebagai berikut:
Jika Anda mengambil perspektif ini, maka sering kali ternyata untuk memodelkan sistem terdistribusi, tidak terlalu penting bahwa kekuatan komputasi seperti apa yang dimiliki node Anda (atau prosesor atau komputer).
Oleh karena itu menggunakan mesin Turing sebagai titik awal untuk memodelkan sistem terdistribusi terdengar agak tidak alami bagi saya: jika ini merupakan aspek yang tidak relevan, mengapa membangun semuanya di atasnya? Di sisi lain, dalam komputasi paralel hal ini wajar (kecuali bahwa modelnya biasanya mirip dengan PRAM dan bukan mesin Turing).
sumber
Beberapa berpendapat bahwa tergantung pada pandangan Anda, Anda bisa menganggap sistem terdistribusi sebagai sesuatu yang lebih kuat daripada Mesin Turing, karena interpretasi yang berbeda dari batasan non-determinisme dan keadilan. Tautan ini memiliki diskusi menarik tentang topik tersebut. Herlihy / Shavit dalam buku mereka "Seni pemrograman multiprosesor" berpendapat bahwa Turing komputabilitas secara inheren mengacu pada gagasan tentang algoritma (berurutan), dan dalam beberapa hal tidak sesuai untuk alasan tentang komputasi terdistribusi. Saya harus menyebutkan bahwa ini bisa diperdebatkan dan kontroversial jadi saya harap tidak ada yang melempari saya dengan batu karena saya mengatakan ini.
sumber