Bir Turing makinesine giriş sonsuz uzunlukta olabilir mi?


26

Sadece alfabesini göz önüne alarak , Turing makinelerine giriş olarak verilebilecek diziler Σ kümesindendir . Fakat girişin sonsuz bir ikili dize olması mantıklı geliyor mu? Örneğin, bir Turing makinesi 0 ile başlayan tüm dizeleri kabul ederse, bir ikili sonsuz sıfır dizisi de Turing makinesi tarafından kabul edilen dile ait midir?Σ={0,1}Σ*

Yanıtlar:


21

Bir Turing makinesini sonsuz bir dize ile başlatılmış bir kaset üzerinde çalıştırmakta sorun yoktur, ancak bu genellikle düşünülmez. Yine de makinenin sonlu bir süre içinde sonlandırması gerekiyor. Burada uygun olabilecek sonsuz zaman hesaplama kavramları da vardır.


4
Girişleri sınırsızken hesaplamaları sonlu bir sürede bitirmek zorlu bir görev gibi görünüyor.
Mast,

5
@Mast Zorunlu değil. Sadece tüm girişi okumak için göze alamaz.
Yuval Filmus

1
@JulesMazur Anahtar kelime hiper hesaptır .
Yuval Filmus

3
@JulesMazur Herhangi bir hiper hesaplamaya ihtiyacınız yok. Program çıktı bandına yazmaya devam edebilir ve sonuç Tip II Turing Makinesi'nde olduğu gibi sonsuz bir dizgeye yaklaşır.
jkabrg

1
Girdi olarak iç dizgilere izin verirseniz zorluk çekeceğinizi düşünüyorum. Özellikle, girdiler seti artık sayılabilir değildir, bu da birkaç kanıtı kırar.
Taemyr

17

Bu, Tip 2 Turing Makinelerinin özelliklerinden biridir . Gerçek sayılar arasındaki fonksiyonların hesaplanabilirliğini analiz etmek için diğer şeylerin yanı sıra kullanılırlar. Daha da ilginç olanı, entegrasyon gibi operatörlerin hesaplanabilirliğini analiz etmekte kullanılır.

Güzel gerçek: Kesin sayısal entegrasyon hesaplanabilir.


5

"Mantıklı geliyor" sorusunu yanıtlamak için, sonlu zamanda çalışan Turing makinelerini düşünürseniz bile bu yararlı olabilir.

Özellikle, ön eksiz Turing makinelerini düşünmenin çok yararlı bir yoludur . Bunlar, durdurma girdileri kümesi ön eksiz olan makinelerdir; yani, makinenin durmasına neden olan hiçbir giriş başka bir önek değildir. Bunlar normal Turing makinelerine güç sağlar ancak Turing makinesinin kendi durma girişlerine karar vermesine izin verirsek: örn. kullanıcı, makinenin hangi girişleri durduracağını bilmiyor (ve bu karar verilemez bir özelliktir).

Bunu görmenin bir yolu, geriye hareket edemeyen bir bant kafalı tek yönlü sonsuz giriş bandına sahip normal bir Turing makinesidir. Kullanıcı kaseti bitlerle doldurur ve makineyi çalıştırır. Bu tanım gereği ön eksiz bir Turing makinesidir. Makine durursa, yalnızca sınırlı sayıda bit okumuş olmalı ve bandın bu kısmının öneki bir program olamaz, yoksa makine orada dururdu.

Bu, hesaplanabilir olasılık dağılımları hakkında konuşmanın iyi bir yoludur: kullanıcı, bandı rastgele bitlerle (makinenin rastgelelik kaynağı) doldurur ve makine rastgele bir bit yayılımını dağıtır. Tüm bu tür Turing makinelerinin takımı, hesaplanabilir dağıtım kümesine (özellikle düşük yarı-yarı yarıya indirimler) karşılık gelir.

Sonsuz girişin avantajı, bir durdurma programı öneki verirsek, örneğin makinenin ne yapacağını belirtmemize gerek olmamasıdır. Makine verdiğimiz girişin sonundan öteye okumaya çalışır.


2

Böyle bir kasetiniz olmasa bile, üretmek için başka bir Turing makinesi kullanabilirsiniz.

Bir Turing makinesinin boş, ancak sonsuz veri bandına erişimi vardır (veya bazı kaynaklar "makinenin yerleşik küçük bir bant fabrikası var" der). Böylece programlanabilir bir veri paterni ile başlatabilir ve daha sonra başka bir Turing makinesinin girişi olarak bant tüketilebilir.

Elbette, içeriğiniz nasıl üretileceği bir algoritma tanımlanmayacak şekilde ise, bu içerik Turing makinesi tarafından oluşturulamaz.


6
Bunun soruyu nasıl cevapladığından emin değilim. Her durumda, tüm sonsuz diziler Turing makineleri tarafından üretilemez, çünkü en az iki sembollü herhangi bir alfabe üzerinde sayılamayan çok sayıda sonsuz dizi vardır;
David Richerby

2

Sonsuz girdinin düşünülebileceği ve "standart" bir Turing makinesinin hareketine indirgenebileceği bazı durumlar vardır. Örneğin, girişte belirtilen sonsuz tekrarlayan bir sonlu modeli düşünün. Bu sınırsız desenin ne kadarının, sınırlı bir bellek / bant saklama alanı kullanılarak bant kafasının mevcut hareketleriyle değiştirildiğini takip eden bir Turing makinesi yaratılabilir. Başka bir deyişle, bant üzerinde sonsuz boyutta bir deseni "eşdeğer olarak simüle eder".

"Sonsuz girdi" nin göz önüne alındığı bir diğer durum , hücresel otomatların Turing denkliği / tamlığının analizidir . Cook, karmaşık bir ispatta, şimdi, CA 110 kural işlemlerini, sınırsız olarak belirlenmiş bir ilk bantta başlayıp, (tekrarlayan) sonlu boyutlu desenlerle başlayan Turing makinesi işlemlerine dönüştürürken, bazıları tarafından "zayıf Turing denkliği" olarak adlandırılan bir kavramı ortaya koydu .


1
"Sonsuz girdi" ve "sonsuz bir nesnenin sonlu kodlaması" terimleri açıkça belirgindir ve temeldir (en az DFA'sı olan her sonsuz düzenli dil bir örnektir). Burada karıştırılmamaları gerekir.
Raphael

2
Evet, açıklanan kodlama için DFA kullanılabilir. sonsuz uzunlukta bir dizginin sonlu kodlamasına sahip bir bant çizilirken (tekrarlanan sonlu kalıplar vasıtasıyla), sadece sonlu dizgelere sahip bir kasete göre farklı / benzerdir.
vzn

1

Resmi dillerde, bir dize, tanımı gereği, sınırlı bir sembol dizisidir. Klasik bir Turing Makinesi, sonlu bir giriş dizgisine sahip sonsuz bir kasete sahiptir. Dolayısıyla, girişin ne kadar süreceği konusunda bir sınırlama olmasa da, sınırsız olamaz.

Bunu söyledikten sonra, bir TM'ye benzer şekilde ancak sonsuz giriş dizileriyle çalışan birçok alternatif makine var.

Sonsuz uzunluk girdisine sahip olmanın mantıklı olup olmadığı amaca bağlıdır. Kesinlikle Turing Makineleri bağlamında, anlamsızdır (mümkün olmadığından), ancak Turing benzeri Makineler bağlamında anlamlıdır ve birçok uygulamaya sahiptir.


4
Sonsuz dizelere sahip olmak tamamen mümkün. Aslında, bu kesin durumla ilgilenen bir bütün otomat teorisi dalı var. Ve, Turing makinelerinin tanımında sonsuz girdilerle başa çıkabilmeleri için gereken tek değişimin, girdilerin sınırlı olması gerektiğini söyleyen koşulun silinmesi olduğu göz önüne alındığında, Turing makineleri hakkında konuşmanın "anlamsız" olduğunu kabul etmiyorum ve sonsuz dizeler.
David Richerby

1
@DavidRicherby: Anlaşmalı görünüyoruz. Son paragrafı, sadece orijinal, klasik, düzenlemesiz Turing Makinaları bağlamında (girdilerin sonlu olarak tanımlandığı durumlarda) olduğu konusunda net bir şekilde açıklığa kavuşturmak için nasıl yeniden yazabileceğimi bilmekten çekinmeyin. Sonsuz uzunluk girişi hakkında konuşun. Durumu siler kaldırmaz, artık kesin olarak bir TM değil, (benim ne dediğim) bir Turing benzeri Makine.
herkes

1
Aygıtın Turing makinesi olmayı bırakmasına katılıyorum, çünkü kasette sonsuz şeylerle başlattığın için. Makine hala aynı makinedir; az önce ilk koşulları değiştirdin. Turing makinelerinin sonlu dizgelerin (örneğin, kesilebilir veya yarı-kesilebilir diller) dilleri ile nasıl ilişkili olduğu ile ilgili tanımlar, sınırlı girdiler anlamındadır, ancak bu, makinenin buna ihtiyaç duyduğu anlamına gelmez. Benzer şekilde, yanına sonsuz miktarda CDROM koyarsanız bilgisayarınız bilgisayar olmayı bırakmaz.
David Richerby

1
@DavidRicherby Teknik olarak bir Turing makinesi sonlu giriş alan bir makinedir. Tanımdaki bu kısıtlamayı değiştirirseniz, başka bir şey tanımlarsınız. Hesaplamanın arkasındaki fikir hala bir şekilde aynıdır, fakat şimdi karmaşıklığı nasıl ifade edersiniz? Çok farklı konular.
Raphael
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.