Son zamanlarda Aaron'un kendi terimleri hakkında matematiksel teoremleri kanıtlayabilen minimalist bir programlama dili olan Cedille-Core'u uygulamaya çalıştım . Ayrıca, λ kodlu veri türleri için indüksiyonunu kanıtladım, bu da uzantılarının neden gerekli olacağını daha net hale getirdi.
Daha az, hala bu uzantıların nereden geldiğini merak ediyorum. Neden onlar onlar? Onları ne haklı çıkarır? Örneğin, özyineleme gibi bazı uzantıların dili bir kanıt sistemi olarak mahvettiğini biliyorum. CoC'yi diğer ilkellerle de genişletmeye karar verseydim, nasıl haklı çıkarırdım? Normalleşmenin bir kanıtının gerekli olduğunu anlıyorum, ancak bu ilkellerin "mantıklı" olduğunu kanıtlamaz.
Kısacası, bir dili (ve tür sistemini) kendi terimleriyle ilgili teoremleri ispatlayabilen bir sistem olarak nitelendiren nedir?