Jika mesin abstrak dapat mensimulasikan dirinya sendiri, apakah itu membuatnya Turing lengkap?


20

Sebagai contoh, dalam bahasa pemrograman adalah umum untuk menulis kompiler / juru bahasa X-in-X, tetapi pada tingkat yang lebih umum banyak sistem Turing-complete yang dikenal dapat mensimulasikan diri mereka dengan cara yang mengesankan (misalnya mensimulasikan Game of Life Conway dalam Game of Life Conway ).

Jadi pertanyaan saya adalah: apakah suatu sistem dapat mensimulasikan dirinya sendiri cukup untuk membuktikan itu Turing lengkap? Ini tentu saja merupakan kondisi yang perlu.


3
Sebelum saya mencoba menjawab, dapatkah Anda sedikit lebih spesifik apa yang Anda maksud dengan "sistem logis dapat mensimulasikan dirinya sendiri"? Apakah maksud Anda sesuatu seperti "dapat menyandikan sintaks dan provabilitasnya sendiri"?
Andrej Bauer

4
Tepatnya apa yang Anda maksud dengan "simulasi"? Secara khusus, bagaimana Anda mendefinisikan simulasi sehingga masih masuk akal, misalnya, dalam konteks Game of Life, tetapi tidak membuat pertanyaan sepenuhnya sepele (misalnya, mesin yang tidak melakukan apa-apa mensimulasikan mesin yang tidak melakukan apa-apa)?
Jukka Suomela


1
Bean, lintas-posting simultan sangat tidak disarankan pada cstheory, silakan lihat poilicy . ps: Saya tidak yakin apakah pertanyaan ini sesuai dengan topik tentang cstheory, silakan juga periksa FAQ untuk memahami ruang lingkup cstheory.
Kaveh

5
Mesin "do nothing" dapat mensimulasikan dirinya sendiri.
Maks

Jawaban:


24

Belum tentu. Sebagai contoh, otomat seluler blok dua dimensi dengan dua keadaan, di mana sel menjadi hidup hanya ketika empat pendahulunya memiliki tepat dua sel hidup yang berdekatan, dapat mensimulasikan dirinya dengan faktor dua perlambatan dan faktor dua ukuran ledakan, tetapi tidak diketahui Turing lengkap. Lihat B36 / S125 "2x2" Automa Seluler Seperti Hidup oleh Nathaniel Johnston untuk informasi lebih lanjut tentang robot blok ini dan aturan B36 / S125 untuk lingkungan Moore yang juga mampu mensimulasikan robot blok ini.


Bagaimana jika mesin memiliki kompleksitas? Saya kira itu harus tidak berhubungan dengan Turing-kelengkapan ...
Jeremy Kun

4
Tetapi sekali lagi, blok automaton yang Anda sebutkan masih bisa menjadi Turing lengkap. Anda hanya mengatakan implikasinya tidak diketahui benar. Bukan berarti ini merupakan contoh tandingan.
Jeremy Kun

9
Jika seseorang menganggap hanya memblokir keadaan otomat dengan jumlah sel hidup yang terbatas, maka dengan pembatasan ini masih merupakan kasus bahwa ia dapat mensimulasikan dirinya dengan cara yang sama. Tetapi otomat terbatas itu tentu saja tidak lengkap Turing, karena tidak ada pola yang dapat lepas dari berlian yang terikat, sehingga nasib setiap pola dapat ditentukan hanya dalam waktu eksponensial.
David Eppstein

25

Tidak, tidak. Saya tahu dua kelas utama teknik untuk menghindari inkonsistensi / kelengkapan Turing.

  1. Garis serangan pertama adalah mengatur sistem sehingga sintaksis dapat di-aritmetika, tetapi teorema titik tetap Godel tidak berjalan. Dan Willard telah bekerja secara luas dalam hal ini dan memberikan sistem logis verifikasi-diri yang konsisten. Caranya adalah dengan menghilangkan simbol fungsi multiplikasi dan tambahan, dan menggantinya dengan pembagian dan pengurangan. Ini memberi Anda tenaga kuda yang cukup untuk mewakili sintaks secara aritmatika, tetapi teorema titik tetap tidak berjalan karena perkalian tidak terbukti total.

    Lihat Dan Willard. Sistem Aksioma Verifikasi Diri, Teorema Ketidaklengkapan dan Prinsip Refleksi Terkait . Jurnal Symbolic Logic 66 (2001) hlm. 536-596.

  2. Baris kedua serangan memungkinkan lebih banyak menggunakan titik-titik tetap, tetapi untuk mengatur semuanya sehingga sintaksis tidak ter-aritmetisasi. Sistem tercantik untuk ini adalah (IMO) berdasarkan varian logika linier. Sebagai contoh, dalam Teori Set Affine Set Kazushige Terui, bahkan prinsip pemahaman himpunan penuh yang tidak terbatas adalah masuk akal, tetapi karena logika ambient dari teori himpunan adalah linier (dan karenanya kontraksi tidak diperbolehkan), paradoks Russell tidak dapat diturunkan.

    Alasan intuitif mengapa aritmetisasi gagal adalah bahwa ruang fungsi linear cahaya diatur sehingga semua penghuninya adalah waktu polinomial. Akibatnya, versi linear cahaya dari aksioma Peano tidak dapat membuktikan total eksponensial (karena eksponensial bilangan unary membutuhkan waktu eksponensial), sehingga tidak ada lagi isomorfisme antara bilangan asli dan string bit.AB

    Kazushige Terui. Teori himpunan affine ringan: Teori himpunan naif waktu polinomial. Studia Logica, Vol. 77, No. 1, hlm. 9-40, 2004.

    Saya pikir makalah ini lebih mudah diakses setelah membaca makalah Yves Lafont berikut:

    Y. Lafont, Logika Linier Lembut dan Waktu Polinomial , Ilmu Komputer Teoretis 318 (edisi khusus tentang Kompleksitas Komputasi Implisit) p. 163-180, Elsevier (2004)

    Teori himpunan Terui sangat ekspresif, tetapi sulit untuk dibandingkan dengan teori himpunan tradisional, karena tata cara pembuktian-teori bukanlah alat yang baik untuk membandingkan sistem yang sangat lemah. Sebagai contoh, teori himpunan Terui jelas tidak dapat membuktikan total eksponensial, dan karenanya kekuatan teoritik pembuktiannya bahkan tidak dapat menjangkau hingga . Kelas kompleksitas mungkin lebih baik - ini lengkap untuk polytime (dapat membuktikan setiap total fungsi polytime, tetapi tidak lebih).ω

    Saya cenderung menganggap sistem semacam ini sebagai pembuktian-konsep untuk gagasan bahwa teori kompleksitas dapat berfungsi sebagai landasan bagi jenis-jenis ultrafinitisme tertentu.


1
Saya menemukan jawaban Anda menarik, @Neel. Bisakah Anda menyarankan titik awal yang baik bagi saya untuk membaca tentang (1) atau (2)? Saya sedikit lebih tertarik untuk belajar tentang (1), jika itu penting.
Aaron Sterling

Saya lebih tertarik pada (2): seberapa kuat teori himpunan ini? Apakah ini terkait dengan "fondasi baru" Quinian?
cody

@Neel - Jawaban yang menarik. Saya juga ingin hal yang sama seperti Aaron - dapatkah Anda menyarankan beberapa titik awal yang baik untuk (1). Terima kasih
Akash Kumar

9

Pertimbangkan model mesin berikut. Mesin dengan kode , setelah input , menghasilkan selalu.x 0ix0

Perhatikan bahwa setiap mesin dalam model ini bersifat universal, karena untuk semua .MM(M,x)=M(x)=0M,x

Ini jelas bukan Turing lengkap tetapi juga jelas memiliki mesin universal.


Tentu saja tidak memainkan peran khusus di sini, dan dapat digantikan oleh bilangan bulat negatif. Yaitu, setiap TM dalam himpunan TM yang menghitung fungsi konstan yang diberikan , bersifat universal untuk himpunan tersebut - walaupun set TM tidak Turing lengkap. 0
res

Saya memberikan jawaban yang sama untuk posting silang di Math.SE yang tidak menerima suara. :)
Kaveh

@ Kaveh: Ironisnya, sepertinya saya salah menilai jawaban ini sebagai sebelum jawaban Anda, dan dengan demikian ter-upgrade, diedit & dikomentari hanya di sini. Crosspost bisa sangat menyebalkan.
res

@res, saya pikir tingkat situs membuat pola pemungutan suara yang berbeda. Pada math.se bahkan jawaban yang sangat baik oleh pengguna rep tinggi lainnya di sini tidak mendapatkan banyak suara, jadi saya merasa normal. :) (Juga jawaban saya tidak sejelas dan dapat dimengerti seperti jawaban David di sini.)
Kaveh
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.