- Peano aritmetiği (PA), mekanik hesaplama sürecini ifade edebildiği için, her bir tekil Goodstein dizisinin sonlanması PA içinde ispatlanabilir
- Cantor standart formu ve kalıtsal ordinal gösterimi aracılığıyla Goodstein dizileri ve bunların azalanlığı ifade edilir; bu sayede sonlu uzunlukta ispat inşası mümkündür
- Tümevarım (güçlü tümevarım/aşkın tümevarım) yoluyla ispatlar belirli ordinal derecelerine kadar ayrı ayrı genişletilebilir
- PA, her doğal sayı n için “G(n) 0'a ulaşır” önermesini ispatlayabilir; ancak Goodstein teoreminin tamamına ilişkin (tüm n'ler için) bütünsel bir ispat mümkün değildir
- PA ile hesaplama, veri yapıları (List, Pair vb.), hatta programlama dilinin kendisinin (Lisp) kodlanması ve kendi ispat sürecinin kodlanması dahi yeterince gerçekleştirilebilir
Giriş ve problem arka planı
- Bu yazı, Peano aritmetiğinin (PA) Goodstein dizilerinin “her n için 0'a ulaştığını (G(n) terminates)” ispatlayabildiğini anlatır
- Bu, mantıkçılar için apaçık görünebilir; ancak programcıların anlayabilmesi için hesaplama kodlaması perspektifinden açıklanır
- Goodstein dizilerinin her bir durumu için PA içinde somut ispat rutinleri kurulabilir
Ordinals (sıra sayıları) ve Goodstein dizileri
- Von Neumann yöntemiyle sıra sayıları (Sets as Ordinals) üretilir
- 0 boş kümedir, 1 = {0}, 2 = {0,1}, ω = {0,1,2,…}, ω+1 = {0,1,2,…,ω} vb.; böylece sıralama iyi tanımlıdır
- Goodstein dizileri, Cantor standart formunu kullanan kalıtsal taban gösterimi ile tanımlanır
- Örnek: ω^ω, ((1,ω)) yani ((1,(1,1)))
- < sırası, her terimin ordinali/katsayısı için leksikografik karşılaştırmayla belirlenir
Tümevarım ve aşkın tümevarım (Transfinite Induction)
- Peano aritmetiğinde tümevarım: 0 için doğruysa ve n→n+1 için doğruysa tüm doğal sayılar için doğrudur
- Güçlü tümevarım da PA ile ispatlanabilir
- Aşkın tümevarım (Transfinite induction): ZFC vb. sistemlerde sonsuz ordinallere kadar genişletilebilir ve Cantor standart formunda yazılan sayılara uygulanabilir
- Theorem 1: Cantor standart formundaki azalan diziler her zaman sonludur
- Theorem 2: Cantor standart formundaki sayılar için aşkın tümevarım kullanılabilir
PA'da aşkın tümevarım ve Goodstein dizisi ispat uzunluğu
- PA, herhangi bir n için Goodstein dizisinin sonlanış ispatını üretebilir
- Cantor standart formundaki kule yüksekliği m=O(log* n) (iterated log) olduğunda buna göre ispat kurulabilir
- Her aşamada m adet ispatın birleştirilmesiyle toplam ispat uzunluğu O(m^2) olur; ya da özel bir gösterim (
ω[m]) kullanılırsa O(m log m)'ye indirilebilir
- Ancak Goodstein teoreminin tamamının (tüm n'ler için) ispatı PA içinde mümkün değildir (
ε0 için aşkın tümevarım yapılamaz)
- Eğer mümkün olsaydı PA'nın tutarlılığı da ispatlanabilirdi ve bu da Gödel'in ikinci eksiklik teoremiyle çelişirdi
PA'nın program, veri yapısı kodlaması
- PA, hesaplamayı/programları/veri yapılarını (sayılar, çiftler, listeler ve diğer tüm yapılar) yeterince kodlayabilir
- Şu tür işlevler çeşitli yollarla gerçekleştirilebilir:
- temel mantık ve işlemler (
+, *, pow, //, %, min, max vb.)
- desen eşleme ve koşullu dallanma (
if, cond vb.)
- bir sayıyı iki sayıyla (çift) kodlamak ya da çiftten tekrar liste gibi daha karmaşık yapılara genişlemek (özyinelemeli listeler, ağaçlar, metin vb.)
- Bu veri yapısı kodlamalarıyla keyfi bir sanal makine/programlama dili (Lisp vb.) yorumlayıcısı bile kurulabilir
Lisp'e bootstrap ve kodlama
- Lisp örneği üzerinden temel sayısal ve mantıksal işlemlerin, veri yapılarının, programlama dili yorumlayıcısının/interpreter'ının nasıl gerçekleştirilebileceği açıklanır
- Lisp'in yapısı (komut/argüman eşlemesi, special form, macro vb.) bütünüyle PA içinde uygun fonksiyon bileşimleriyle gerçekleştirilebilir
- Daha da ileri gidilerek PA içinde PA'nın kendi ispat süreci, mantıksal ispat prosedürleri, kendine gönderimli yapılar da bütünüyle simgesel olarak kodlanıp uygulanabilir
PA içinde mantığın kendisinin kodlanması
- Matematiksel mantıktaki First-Order Logic ispat süreci, PA sayılarının verisi olarak kodlanabilir
- Her ispat adımı/önerme/çıkarım kuralı/geçerli ispat denetimi, bir dizi sayısal fonksiyon/liste işlemi olarak tanınıp işlenebilir
- Bu tür üst-düzey ve kendine gönderimli kodlamalar, Gödel'in eksiklik teoremleri ve Halting problemi ispatlarına kadar uzanır
Sonuç
- Hesaplama, veri yapıları, programlar ve mantıksal ispat süreçleri bile PA içinde yeterince kodlanabilir, ispatlanabilir ve yorumlanabilir
- Dolayısıyla herhangi bir Goodstein dizisinin (n için G(n)'in sonlanması) PA içinde somut olarak ispatlanması mümkündür
- Ancak Goodstein teoreminin tamamı için (tüm n'ler adına) "PA, PA içinde Goodstein teoremini ispatlar" biçiminde bir ispat, mantığın sınırları nedeniyle mümkün değildir
- Programcı bakış açısından PA, hesaplamanın kendisini kodlayabilen tam bir mantıksal temeldir
1 yorum
Hacker News görüşü
(defun not (x) (if x false true)örneğine bakın). Biri parantez kullanmaya başladığında içgüdüsel olarak düzgün kapanıp kapanmadığını kontrol ediyorum. Sonrasında "parantezlerin dengeli olup olmadığını bilgisayarla programlamak kolaydır" denmesi beni çok güldürdü. Bu tür şakalar gerçekten hoştu; ayrıca "Basic Number Theory" bölümündeki; After a while, you stop noticing that stack of closing parens.yorumu da akılda kaldı. Uzun zaman sonra yeniden Lisp görmek keyifliydi ve yazı gerçekten eğlenceliydi.\omegaolarak yazılması unutulmuş.epsilon_0'a kadar aşkın tümevarımı da mümkün kılabileceğini tahmin ediyorum. EDIT: Belki de yalnızca "PA tutarlıdır" demek bile yeterli olabilir mi?Con(PA)ile değil, keyfi bir evrensel nicemlenmiş formülle de bunun yeterli olmadığı biliniyor. Şu ilgili Math StackExchange yanıtına bakın. İlk soruyla ilgili olarak, omega-tutarlılığın PA'nın bir formülü olarak nasıl kodlandığını merak ediyorum; aklıma hemen gelmedi, o yüzden ilgimi çekti.Niçin Goodstein teoreminin yanlış olduğu modellere de izin veriyor gibi görünüyor. Omega-tutarlılığın daha güçlü ifadesi bu tür durumları dışlar diye düşünüyorum.epsilon_0'a kadar aşkın tümevarım ispatının PA'nın kendisini ispatladığı söyleniyor. Bana göre PA+"PA tutarlılığı" varsaepsilon_0'a kadar aşkın tümevarım da ispatlanabilir olmalı.forall n, Provable(P(n))'in ispatlanmasınınProvable(forall n, P(n))'i ispatlamaya yetmediğini somut biçimde açıklarsa sevinirim.will-return,opposite-returngibi fonksiyonlar da kurulabilir ve bu, durma probleminin standart ispatıyla örtüşür.opposite-return(opposite-return, opposite-return)durumunu düşünün: PA,opposite-return'ın döndüğünü ispatlarsa aslında dönmediğini de ispatlamış olur; tersine, dönmediğini ispatlarsa döndüğünü ispatlamış olur. Eğer PA, "ispatlanabilir olan her şey gerçekten ispatlanabilir" gibi daha güçlü bir ilkeyi benimseseydi bu doğrudan Gödel'in ikinci eksiklik teoremine çarpar ve PA'nın çelişkili olduğu anlamına gelirdi. Bu yüzden sadece "PA ispatlıyor" ile "PA, ispatladığını ispatlıyor" mutlaka ayrılmalı.zero/succile kurulanNattanımını gösterdim (Lean ya da Rocq'ta görüldüğü gibi). Karşı taraf "Bu gerçekten yeterli mi?", "Peano aksiyomatiği gerekli mi? Tümevarımsal veri tiplerinden daha ilkel bir şey var mı?" gibi sorular sordu. Peano aksiyomatiğini özünde apaçık bir şey sanmamak, bunun sadece bir tasarım olduğunu sık sık kendime hatırlatmam gerektiğini düşündürdü.Π,Σ,=,Ω) varsa inşa edilebilir.