Neden hesaplanabilir fonksiyonlardan daha hesaplanabilir fonksiyonlar var?


29

Şu anda algoritmalar ve karmaşıklık ile ilgili bir kitap okuyorum. Şu anda, hesaplanabilir ve hesaplanamayan işlevler hakkında okuyorum ve kitabım, hesaplanabilir olandan daha fazla hesaplanamayan işlev olduğunu söylüyor; Bazı açılardan sezgisel olarak bunu kabul edebilirim ama kitap resmi bir kanıt sunmuyor ve konuyla ilgili çok fazla detaylandırmıyor.

Sadece bir kanıt görmek istedim / burada birisinin bu konu hakkında ayrıntılı bilgi vermesine izin verdim / neden hesaplanabilir fonksiyonlardan daha fazla sayıda hesaplanamayan fonksiyonun olduğunu daha kesin olarak anlayabiliyorum.


İki sonsuz kümeyi karşılaştırırken, "daha" nin anlambilimi gözden geçirilmelidir.
Raphael

Yanıtlar:


31

Hangi sayılabilir birçok hesaplanabilir fonksiyonlar:

Her hesaplanabilir fonksiyon en az bir algoritmaya sahiptir. Her algoritma, bir sonlu kümeden gelen sembolleri kullanan sınırlı bir tanımlamaya sahiptir, örneğin, sembollerini kullanan sonlu ikili dizeler . Sınırlı bir ikili dizileri sayısı ile belirtilen { 0 , 1 } * sayılabilir (yani doğal sayılar numarası ile aynı K ).{0,1}{0,1}N

Bu nedenle en fazla hesaplanabilir birçok fonksiyon bulunabilir. Her c { 0 , 1 } için sabit fonksiyon f ( x ) = c olduğu için en azından hesaplanabilen birçok hesaplanabilir fonksiyon vardır.c{0,1}f(x)=c hesaplanabilir olup.

Başka bir deyişle, aşağıdakiler arasında bir yazışma vardır:

  • hesaplanabilir fonksiyonlar kümesi,
  • algoritmalar kümesi,
  • , sonlu dizgileri kümesi, { 0 , 1 } ve{0,1}{0,1}
  • , doğal sayılar kümesi.N

Öte yandan, dizgiler (veya doğal sayılar) üzerinde sayılamayan birçok işlev vardır . Bir fonksiyon (veya f : { 0 , 1 } { 0 , 1 } ) her giriş için bir değer atar. Bu değerlerin her biri diğerlerinden bağımsız olarak seçilebilir. Yani N N = 2 N olası fonksiyon var. Doğal sayılar üzerindeki işlev sayısı, gerçek sayı sayısına eşittir.f:NNf:{0,1}*{0,1}*N-N-=2N-

Sayılabilir bir şekilde birçok işlev hesaplanabilir olduğu için çoğu değildir. Aslında, hesaplanamayan işlevlerin sayısı da .2N-

Bunu sezgisel olarak resimlemek istiyorsanız, doğal sayıları ve gerçek sayıları veya sonlu ikili dizeleri ve sonsuz ikili dizileri düşünün. Doğal sayılardan ve sonlu karakterlerden çok gerçek sayılar ve sonsuz ikili dizeler vardır. Başka bir deyişle (bu gerçeğin bir kanıtı için Cantor'un köşegen argümanına ve Kardinal aritmetiğine bakınız ).N-<2N-


İyi cevap! Anlamadığım şey (burada önemsiz bir şeyi özlüyor olabilirim) mu? N-N-=2N-
hsalin

Kardinal aritmetik. Doğal sayıları, sezgiyi vermesi gereken ikili sayıdaki sonsuz doğal sayılar dizisine yazın.
Kaveh

Neden bu varsayımın doğru olduğu - "Her algoritmanın sonlu bir kümeden semboller kullanarak sınırlı bir açıklaması vardır"? Neden bir algoritmanın sonsuz bir tanımı olamaz?
Roland Pihlakas

Bir algoritmanın tanımının bir parçası olan @RolandPihlakas (tercih ederseniz, bir bilgisayar programı).
Kaveh

9

İşte sayısız hesaplanamayan Boolean fonksiyonunun "açık" bir yapısı. Let bazı sabit olmayan hesaplanabilir Boole fonksiyonu, durdurulması sorunun karakteristik fonksiyonunu söylüyorlar. F = { f : N{ 0 , 1 } işlev kümesini göz önünde bulundurun : x N , f ( 2 x ) = K ( x ) } . Her f F hesaplanamaz ve FK

F={f:N-{0,1}:xN-,f(2x)=K(x)}.
fFF .

Hesaplanabilir fonksiyonları ile benzer bir yapı var. Hesaplanabilir bir fonksiyon verildiğinde , G = { g : N{ 0 , 1 } : n Nm n , g ( m ) = R ( m ) olsun . } Başka bir deyişle, çok sayıda değerde R'den farklıysa g G. G'deki tüm fonksiyonlarR,

G,={g:N-{0,1}:nN-mn,g(m)=R,(m).}
gG,R,G,hesaplanabilir (kesin birçok farklılığı zor kodlayın). Önceki durumun aksine, sayılabilir.G,

Bu nedenle, hesaplanabilir durumda olduğu gibi "potansiyel" sonsuzluktan ziyade "sonsuz sayıda" serbestlik derecesine sahip olduğumuz için sayısız hesaplanabilir fonksiyon vardır.

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.