Bir fonksiyonun hesaplanabilirliğine (yanlış?) Kanıt?


19

düşünün , 1 iff sıfır döndüren bir işlev art arda görünür . Şimdi birisi bana nin hesaplanabilir olduğuna dair bir kanıt verdi :n π f ( n )f(n)nπf(n)

Ya her n için, öğenin göründüğü ya AM ST yoktur içinde görünür ve etmez. İlk olasılık için ; İkincisi için iff , 0 aksi takdirde. π 0 m π 0 m + 1 f ( n ) : = 1 f ( n ) : = 1 n m0nπ0mπ0m+1f(n):=1f(n):=1nm

Yazar bunu hesaplamak için bir algoritma olduğu için hesaplanabilirliğini kanıtladığını iddia etmektedir.f(n)

Bu kanıt doğru mu?


2
Sorularınızı daha okunaklı hale getirmek için lateks kullanabilirsiniz.
Dave Clarke

7
Argüman doğrudur, ancak yapıcı değildir. Kişi size bir TM vermiyor, size iki TM veriyor ve bunlardan birinin istediğiniz işlevi hesapladığını söylüyor, ancak hangisini bilmediğini söylüyor.
Kaveh

1
Sürümünüz hesaplanabilir. Ancak, yanlış okudum ve yanlışlıkla hesapsız olduğuna inandığım bir sürüm buldum. Tek değişiklik: Tam olarak n sıfır yerine, π'da en fazla n sıfır olup olmadığını sorun. Gerçekten varsa, onaylayamayacağınıza inanıyorum, çünkü π sonsuz sayıda basamak var ve hiçbir desen görünmüyor (görünüyor mu?).
chazisop

Bir kez ilgili bir hata yapan Wikipedia sayfasını düzelttim ve Chaitin'in sabitinin varlığının "hesaplanamayan tamsayıların" varlığını kanıtladığını iddia ettim.
Geoffrey Irving

bu tür sorular "önemsiz dillerde" olma eğilimindedir. ancak not dildir hafif bir yeniden örn nasıl genellikle bir (veya 1) konumu varsa dize veya -1 böyle dize undecidable olabilir. ayrıca bkz . bazı basamak dizisine sahip olması nasıl karar verilebilir ? / Bilgisayar Bilimif(n,k)=m0 km0kπ
vzn

Yanıtlar:


23

Bunu şu şekilde düşün, Mike: Bu kanıt, biri doğru olmak zorunda olan birden fazla olası duruma "dallanıyor" (her öneri , ya p doğru ya da ¬ p doğru olan hariç tutulan ortadaki yasaları kullanarak ). Ancak bu dalların her birinin sonunda, f işlevinin hesaplanabilir olduğunu her zaman kanıtlayabilirsiniz . Bu nedenle, gerçekte hangi olguların gerçekte olduğu önemli değil, f hesaplanabilir olmalıdır. (Ancak, kesin bir neden niçin f hesaplanabilir olan şube bağlı olarak farklı olacaktır.)pp¬pff f


16

Doğru. Bu aşağıdakilerle aynıdır: i Tanrı varsa sabit fonksiyon olarak tanımlayın x 0 ve Tanrı yoksa x 1 . Ortaya çıkan fonksiyon sabit bir fonksiyondur, dolayısıyla hesaplanabilir. Yapamayacağınız şey bu işlevi vermektir, ancak işlevin kendisi hesaplanabilir.f(x)x0x1

Burada, iki olasılıktan biri doğrudur: ya böyle bir ya da yoktur. Fonksiyon ya sabit fonksiyon x 1 ya da m ile tanımlanan basit bir eşik fonksiyonudur .mx1m


4
"Tanrı varsa" yerine koyarım . :)PNP
Kaveh

Tamam, yanlış anlama için özür dilerim, ispatın yapıcılığı konusunda sorun yaşamıyorum. Sahip olduğum sorun, (ya da en azından ben) m'nin hesaplanabilir olup olmadığını bilmememiz . Bunu kanıtlamak neden gerekli değil? m
Mike B.6

5
Bir tamsayının hesaplanabilir olup olmadığı hakkında konuşmak gerçekten mantıklı değildir. M değeri ne olursa olsun, onu üreten bir Turing makinesi vardır. Bunu bulmak elbette zor olabilir, ancak bu genel durumdan çok farklı değildir: algoritmaları bulmak zordur, bu da çoğumuzun istihdam edilmesini sağlar.
Aaron Roth

Hala anlamıyorum. Hangi Turing makinesi bu m'yi çıkartabilir? Sadece π'da göründüğünü göstermekle kalmaz , 0 m + 1'in olmadığını doğrulamak zorunda kalır - ve bu da IMO problemidir. 0mπ0m+1
Mike B.6

Bahsettiğiniz yapıcı yol budur. Sana böyle bir çıkış, bir makine verirsek , bu ihtiyacı yoktur için ikna Bu doğru olduğunu m olduğu gibi, böyle bir çıkış olanağı için makine m (iyi, bir makinenin en azından). Bu Tanrı'nın örneğiyle aynıdır (BTW Sipser'dan gelir): makine 0 verirse, Tanrı'nın var olmadığına sizi ikna etmenize gerek yoktur. Sadece durum böyle. mmm0
Michaël Cadilhac

14

Sanırım - ve umarım - her bilgisayar bilimi öğrencisi bir paradoks gibi hissedilen bu problemle karşı karşıya kalır. TCS açısından hesaplanabilir ve pratik anlamda hesaplanabilir arasındaki fark için çok iyi bir örnektir.

Düşüncelerim sonra geri idi: "Ben eğer Evet, biliyordum .? Cevabını, belli ki hesaplanabilir olurdu Ama nasıl öğrenmek için" Hüner Hava öğrenmek zorunda yanılsama kendinizi kurtulmak için bu özelliğine sahiptir ya da değil. Çünkü bu, belli ki (okuyun: IMHO), bir Turing makinesi tarafından yapılamaz (sürece biz hakkında sahip daha biz fazla bilgiye sahip olmadıklarından tt ).ππ

Hesaplanabilirlik için tanımını göz önünde bulundurun: dediğimiz olan (Turing-) hesaplanabilir ancak ve ancak M T M : f M = f . Yani, sadece uygun bir Turing makinesinin varlığını göstermek zorundasınız , bir tane vermeyin . Siz - biz - burada yapmaya çalıştığınız şey, gerekli işlevi hesaplayan Turing makinesini hesaplamaktır. Bu çok daha zor bir problem!fMTM:fM=f

İspatın temel fikri şudur: Size hepsi hesaplanabilir (göstermek için; önemsiz) sonsuz bir işlev sınıfı veririm. O zaman aradığınız işlevin o sınıfta olduğunu kanıtlamak istiyorum (göstermek için; vaka ayrımını burada). qed


9

Evet, bu doğru, hesaplanabilir. Sorun şu ki, fonksiyonunuz gerçekten sonsuz bir problem ailesine çözüm üretmiyor, durma problemine bir çözüm hesaplayan bir fonksiyonun yolu - yani hesaplama ile ilgili bir sorun yok. Bunun yerine, işlev formunda, bir tamsayı veya f'nin sürekli 1 işlev olduğu gerçeği ile sınırlı temsil ile tek bir matematiksel gerçeği temsil ediyorsunuz.

Bireysel içinde durdurulması problemi kodlamak mümkündür gerçek Chaitan sabiti gibi, sayılar , ancak tamsayılar daima sonlu gösterime sahiptir ve bu yüzden Turing Makineleri olarak kodlanabilir.Ω

Elbette doğru algoritmayı bulmak zor bir sorun olabilir. Ancak doğru algoritmaları bulmak genellikle zordur!


3

biraz eski, ancak başka bir cevap göndermek istedim.

Bu, hesaplanabilirliğin yapıcı olmayan bir kanıtıdır (veya tartışmasıdır). Basitçe, fonksiyonun bir anlamda var olması gerektiğini söyler çünkü hesaplanabilir fonksiyonlar kümesinde (veya evreninde) onu temsil edebilir (veya daha doğru bir şekilde indeksleyebilir). Bununla birlikte, ne makinenin kendisini (yani algoritmayı) ne de indeksi (hesaplanabilir makinelerin etkili bir numaralandırmasını varsayarak) oluşturmaz. İngilizce ifade " hiçbir şey için teşekkürler ", bu gibi durumlarda, aşağıdaki gibi en uygun görünüyor:

-- Look, I proved there is water somewhere! 

Now you can be happy, while dying from thirst!

Matematik tarihindeki insanlar bu tür argümanların gerçek geçerliliği (veya geçerlilik aralığı) ve anlamı üzerinde biraz tartışmışlardır. Nihai sonuç, Goedel'in eksiklik teoremlerinde aynı tür argümanların yeniden ortaya çıkması ve bu "kapalı evren varsayımına" dönüşmesidir .

Eğer bu argümanları bu kadar sevmezsen seni suçlamam.

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.