Hesaplama kurallarının bahsettikleri nesneleri "tanımlaması" veya "yapılandırması" yanılsamasıdır. denkleminin bunu "tanımlayamadığını", ancak diğer durumlarda da bunun doğru olduğunu gözlemleyemediğinizi doğru bir şekilde gözlemlediniz. Özellikle açıkça "kararlı" görünen birim tip 1 için indüksiyon prensibini ele alalım . HoTT kitabının 1.5 bölümüne göre
i n d 1 : ∏ C : 1 → T y p e C ( ⋆ ) → ∏ x : 1 Pind=A1i n d 1 ( C , c , ⋆ ) = c
denklemi ile
.
Bu "define" veya "yapısı" Does i n d 1 o ne olduğu hiçbir şüphe bırakır anlamında i n d 1 "yok"? Örneğin, C ( x ) = N ve a = 42'yi ayarlayın ve
i n d 1 ( C , 42 ,
ind1:∏C:1→TypeC(⋆)→∏x:1P(x)
ind1(C,c,⋆)=c.
ind1ind1C(x)=Na=42 tip
1'in
belirli bir ifadesi
e için. İlk düşünceniz bunu
42'ye düşürebiliriz,çünkü "
⋆ 1'in tek elementidir". Ancak oldukça kesin olmak gerekirse,
i n d 1 denklemiyalnızca
e ≡ ⋆ gösterdiğimizde uygulanabilir, örneğin
e bir değişkenolduğunda imkansızdır. Bundan kaçınmaya çalışabilir ve sadece kapalı şartlarla hesaplamaya ilgi duyduğumuzu söyleyebiliriz, bu yüzden
e kapatılmalıdır.
ind1(C,42,e)
e142⋆1ind1e≡⋆ee
Tip 1 her kapalı terim yargısal olarak ⋆ değerine eşit değil mi? Bu aslında kötü detaylara ve karmaşık normalizasyon kanıtlarına bağlıdır. Hott durumunda cevap "hayır" çünkü e Univalence Axiom örneklerini içerebilir ve (bu konuda ne yaptığını belli değil HOTT açık sorun).e1⋆e
Biz tipi teorisinin bir versiyonunu dikkate alarak univalance sorun aşmak olabilir gelmez türdeki her kapalı dönem çok iyi özelliklere sahip judgmentally eşittir ⋆ . Bu durumda, biz söylemek yanlış olduğunu do ile hesaplamak için nasıl i n d 1 , fakat:1⋆ind1
Bir kimlik Çeşidi her kapalı dönem judgmentally olacaktır, çünkü kimlik türü için tutacaktır aynı bazı eşit , ve bu nedenle daha sonra denklem için i n d = bir edecek kadar hesaplamak için bize.refl(a)ind=A
Bir tür kapalı terimlerle nasıl hesaplanacağımızı bildiğimiz için, aslında bir şey tanımladığımız anlamına gelmez, çünkü bir kez açıklamaya çalıştığım gibi, bir tür için kapalı terimlerden daha fazlası vardır .
Örneğin, (kimlik tip olmadan) Martin-Löf tipi teori şekilde etki alanı teorik yorumlanabilir içeren iki elemanları ⊥ ve ⊤ , burada ⊤ tekabül için ⋆ ve ⊥ olmayan sonlandırılması. Ne yazık ki, tür teorisinde sonlandırıcı olmayan bir ifade yazmanın bir yolu olmadığından, ⊥ adlandırılamaz. Sonuç olarak, için denklem i , n d 1 vermez değil üzerinde hesaplamak için nasıl bize ⊥ (iki bariz seçimler "hevesle" olmak ve "tembel").1⊥⊤⊤⋆⊥⊥ind1⊥
Yazılım mühendisliği terimleriyle, şartname ve uygulama arasında bir karışıklığımız olduğunu söyleyebilirim . Kimlik türleri için HoTT aksiyomları bir spesifikasyondur . Denklem nasıl hesaplamak için, ya da nasıl yapılacağını bize söylemek değildir i n d = Cı değil, ancak ben nind=C(C,c,x,x,refl(x))≡c(x)ind=C "uygulandı", denklemi karşılamasını istiyoruz. Tür ister ayrı bir sorundur i n d = Cı yapıcı bir şekilde elde edilebilir.ind=Cind=C
Son olarak, "yapıcı" kelimesini nasıl kullandığınızdan biraz yoruldum. Sanki "yapıcı" nın "tanımlanmış" ile aynı olduğunu düşünüyorsunuz. Bu yorum altında Halting kehaneti yapıcıdır, çünkü davranışı üzerine dayattığımız gereksinimle tanımlanır (yani verilen makinenin durup durmamasına göre 1 veya 0 çıktısı). Yalnızca yapıcı olmayan bir ortamda var olan nesneleri tanımlamak mümkündür. Tersine, gerçekte hesaplanamayan özellikler ve diğer şeyler hakkında yapıcı bir şekilde konuşmak mükemmel bir şekilde mümkündür. Burada biridir: ilişki ile tanımlanan
, H ( n , d )H⊆N×{0,1}
yapıcıdır, yani bu tanımda yapıcı bir bakış açısından yanlış bir şey yoktur. Sadece çok yapıcı bir olduğunu göstermektedir edilemez olur lH toplam ilişkidir ve bunun karakteristik χ H : N x { 0 , 1 } → p r o s değil yoluyla faktör yok b O O l
H(n,d)⟺(d=1⇒n-th machine halts)∧(d=0⇒n-th machine diverges)
HχH:N×{0,1}→Propbool, bu yüzden değerlerini "hesaplayamayız".
Zeyilname: Sorunuzun başlığı "Yol indüksiyonu yapıcı mı?" "Yapıcı" ve "tanımlanmış" arasındaki farkı temizledikten sonra soruyu cevaplayabiliriz. Evet, yol indüksiyonunun belirli durumlarda yapıcı olduğu bilinmektedir:
Güçlü normalizasyon gösterebilmemiz için Univalence olmadan tip teorisini kısıtlarsak, yol indüksiyonu ve diğer her şey yapıcıdır, çünkü normalleştirme prosedürünü gerçekleştiren algoritmalar vardır.
Tip teorisindeki her kapalı terimin bir Turing makinesine nasıl karşılık geldiğini açıklayan tip teorisinin gerçekleştirilebilirlik modelleri vardır. Bununla birlikte, bu modeller, Univalence'ı dışlayan Streicher'in Axiom K'sini karşılar.
Tip teorisinin (yine Univalence olmadan) yapıcı küme teorisi CZF'ye çevirisi vardır. Bir kez daha, bu Streicher'in aksiyomunu K doğrular.
Gerçekleştirilebilirlik modellerinde , Streicher'in K'sı olmadan tür teorisini yorumlamamıza izin veren bir groupoid modeli var. Bu, Steve Awodey ve ben tarafından yapılan ön çalışma.
Gerçekten, Univalence'ın yapıcı statüsünü çözmemiz gerekiyor.