4 entry daha
  • böyle bir gerçekliğin var olduğu şöyle iddia edilebilir:

    (her şey binary sistemde düşünülecektir)

    tanım: bir s string'ini (örnek s:01101101010011001100101) yazdıktan sonra duran p programlarının en küçüğüne cillop program denir. eğer s string'ini yazan p programının dosya boyutu bit cinsinden s'in bit sayısına eşitse (örneğin ikisi de 23 bit yer kaplıyorsa) s string'ine rastgele denir.

    formal aksiyomatik sistem: bir matematik sistemdeki tüm deyimlerin anlamlarından arındırılarak simgeler düzeyine indirgenmiş hali. aksiyomlar ve çıkarım kurallarıdan oluşur. her simgenin nasıl kullanılacağı tartışmaya yer bırakmayacak şekilde tanımlanmıştır. böylece, çıkarım kuralları yardımıyla sistemde kanıtlanabilecek her teorem simgeleştirilmiş (formalize edilmiş) olur.

    ıvır zıvır: 1024 bit yer kaplayacan olası tüm programların sayısını hesaplayalım --> 2^(1024)
    bir sıkıştırma algoritması yardımıyla 1024 bitlik programlardan bazıları 1024'den daha az bitle ifade edilebilir ama acaba tüm programları daha az bitle ifade eden bir algoritma yazılabilir mi? hayır yazılamaz. 1023 bite kadar tüm olası programların sayısı [ 2^1 + 2^2 + 2^3 + .... + 2^1023 = (2^1024)-2 ] 1024 bitlik programların sayısından 2 azdır. bunun anlamı en az 2 tane programın böyle bir genel algoritmayla -tüm programlara uygulanma zorunluluğu olan algoritma- sıkıştırılamayacağıdır. sıkıştırılamayan programlara rastgele demiştik. (string'i programla eşanlamlı kullanıyorum fakat bir yanlışlık yok. çünkü turing makinesinde uğraşmaktayız ama bunun pek bir önemi yok şimdi)
    eğer 10 bit veya daha fazla sıkıştırılabilecek programların sayısını hesaplasaydık 1024'te bir 1 gibi küçük bir olasılık olduğunu bulurduk.
    sonuç: rastgele programlar sonsuz tanedir.

    teorem: rastgele programların sayısının sonsuz olmasına karşın hangilerinin rastgele olduğunu ispat etmeye olanak veren hiçbir aksiyomatik sistem(diğer bir değişle algoritma) bulunamaz ve yazılamaz.

    ispat: (raa) bir string'in rastgele olduğunu ispat etmemize olanak veren bir algoritmanın var olduğunu ve algoritmanın kodlanmış halini içeren bir c fonksiyonun elimizde olduğunu düşünelim. c(n) fonksiyonu n sayısını girdi alarak n bitten oluşan ilk rastgele programı yazacak. (örneğin 3 aldı girdi olarak 000, 001, 010,...) deneyerek ilk rastege programı/string'i bulacak.

    bir i programı yazacağız bu program c(n) fonksiyonunu içerecek ve şu işlemleri yapacak:
    i programı kendi boyutuna(uzunluğuna bakacak) [uzunluk değeri c fonksiyonu kaç bitse onu da içerir] ve bu uzunluğun değerine -program kaç bitten oluşuyorsa- 1 ekleyerek c fonksiyonuna gönderecek.*bu durumda i programının büyüklüğünden büyük rastgele bir string i programı tarafından yazdırılırdı.

    bu ise en başta yaptığımız rastgelelik tanımına aykırı olurdu. rastgelelik tanım gereği kendi büyüklüğünden küçük bir program tarafından yazdırılamaz.

    eee? demek ki c fonksiyonu yazılamaz.

    bu sonuç gödel teoreminin* basit ve çok daha anlaşılabilir/güçlü halidir ve çok önemli bir sonuca işaret etmektedir. matematikte ispatlanamayan ancak "doğru" olan sonuçlar vardır. gödel kendi ispatında "bu teorem ispatlanamaz" ifadesini formel sistemde ifade etmeye çalışıyor ve formal sistemlerin ortaya atılmalarının nedeni olan "formel sistemler kullanılarak tamlığın gösterilebileceği" iddiasını çürütmeye çalışıyordu ancak kullandığı yol matematiğin platonik bir gerçekliğe sahip olduğu iddiasına parmak bassa da bazı insanlar için inandırıcı olamıyordu. gödel iddia ediyordu ki formel sistemde "bu teorem ispatlanamaz" iddiasının ispatlanamayacağı aslında ifadenin doğru olduğunu gösterirdi! ("bu teorem ispatlanamaz" iddiası yanlış olsaydı formal sistemde teorem ispatlanırdı çünkü!) kendi kendine gönderme yapmayan rastgelelik örneğinde ise iddia daha sağlamdır:

    bazı stringler rastgeledir ama insan aklı hangilerinin rastgele olduğunu sonlu özel durum dışında hiçbir zaman bilemez. bu matematiğin insan aklından bağımsız gerçekliği olduğunun neredeyse ispatıdır.

    (bu ispat tartışmalıdır, eğer hoşunuza gitmediyse yorumunu sallamayabilirsiniz.*)

    not: turing makineleri değiştiğinde koda eklenecek sabit ile ilgili kısımlar (ünlü translation theorem), formal aksiyomatik sistemin kodlanması, bazı programların c(n)'e girdi olarak verildiğinde durmama olasılığı ile ilgili kısımlar atlanmıştır.
15 entry daha
hesabın var mı? giriş yap