Tür teorisinde sonlu kümeler teorisinin resmileştirilmesi


10

Çoğu kanıt asistanı "sonlu küme" kavramının resmileştirilmesine sahiptir. Bununla birlikte, bu resmileştirmeler çılgınca farklıdır (her biri esasen eşdeğer olmasını umuyor olsa da!). Bu noktada anlamadığım şey, ilgili tasarım alanı ve her bir formalizasyonun artıları ve eksileri.

Özellikle, aşağıdakileri anlamak istiyorum:

  • Basit tip teorisinde sonlu kümeleri (sonlu sayıda nüfusun yaşadığı tipler) aksiyomatik hale getirebilir miyim? Sistem F? Bu şekilde yapmanın sakıncaları nelerdir?
  • Bağımlı bir şekilde yazılmış bir sistemde 'zarif' olarak yapılabileceğini biliyorum. Ancak, klasik bir bakış açısından, ortaya çıkan tanımlar son derece yabancı görünüyor. [Onlardan çok yanlış olduklarını söylemiyorum!]. Ama neden 'haklı' olduklarını da anlamıyorum. Doğru konsepti seçtiklerini anlıyorum , ancak 'bu şekilde söylemenin' daha derin nedeni tam olarak anlamadığım şey.

Temel olarak, tip kuramında 'sonlu küme' kavramının biçimselleştirilmesinin tasarım alanına mantıklı bir giriş yapmak istiyorum.

Yanıtlar:


8

Bağımlı tipte bir sistemde 'zarif' olarak yapılabileceğini biliyorum. Ancak, klasik bir bakış açısından, ortaya çıkan tanımlar son derece yabancı görünüyor.

"Uzaylı" ile ne demek istediğini açıklayabilir misin? Bana öyle geliyor ki, sonlu küme kavramını tip teorisinde ve küme teorisinde tam olarak aynı şekilde resmileştiriyorsunuz.

Fin(n)

Fin(n){kN|k<n}
Finite(X)nN.XFin(n)
AB

Tip teorisinde, aynı şeyi yapabilirsiniz! o Not olan bir tür elemanlarının (çiftinin ikinci bileşeni bulunmayacağından kanıtı değildir). Ardından, sonluk türü yapıcısını şu şekilde tanımlayabilirsiniz: Burada , tiplerin izomorfizması anlamına gelir.

Fin(n)Σk:N.ifk<nthenUnitelseVoid
Fin(n)n
Finite(X)Σn:N.XFin(n)
AB

Uzaylı çünkü ham tanımları sadece bu tanımların nasıl okunacağını açıklayan eşlik eden bir test olmadan gördüm. Artı, her zamanki Fin tanımının endüktif olarak yapılması gerçeği daha da gizler. Kısa açıklamanız, tıklatmak için ihtiyacım olan şey.
Jacques Carette

5

Neel'in cevabına faydalı bir şey ekleyip ekleyemeyeceğimi göreyim. Sonlu kümeler için "tasarım alanı" yapısal olarak çok daha büyüktür, çünkü klasik "sonlu" tanımlarının yapıcı bir şekilde anlaşmasına gerek yoktur. Tip teorisindeki çeşitli tanımlar biraz farklı kavramlar verir. İşte bazı olasılıklar.

Kuratowski sonlu setleri ( -finite) olarak karakterize edilebilir serbest -semilattices: bir dizi türü veya nesne verilen , serbest unsurları -semilattice sonlu alt kümeleri olarak bir düşünüldüğü olabilir . Gerçekten de, bu tür her bir eleman aşağıdakiler tarafından üretilir:KXK(X)X

  • boş kümeye karşılık gelen nötr eleman veya0
  • singletonuna karşılık gelen jeneratörü veyaxX{x}
  • Bir birleştirme bir birliğe iki elemanın, uygun olanı.ST

Bir eşdeğer formülasyon olan: isimli -finite halinde vardır, ancak ve ancak, ve örten .K(X)SXKnN e:{1,,n}S

Biz Neel tanımıyla bu karşılaştırdığımızda biz o gerektirdiğini bkz bijection . Bu , eşitliği eşit olan sonlu alt kümeleri alt kümesini anlamına gelir: . Bize kullanalım Karar verilebilen toplanması için ait -finite alt kümeleri .e:{1,,n}SKSXx,yS.x=yxyD(X)KX

Açıkçası sonlu birlikler altında kapalıdır, ancak sonlu kavşaklar altında kapatılmasına gerek yoktur. Ve hiçbir işlem altında kapalı değildir. İnsanlar sonlu kümelerin "tepesiz Boole aglebra" gibi davranmasını beklediğinden, bunları ücretsiz genel Boole cebiri ( , , ve göreceli tamamlayıcılar ) olarak , ama aslında hiç böyle bir çabayı duydum.K(X)D(X)0

"Doğru" tanımın ne olduğuna karar verirken, sonlu kümelerle ne yapmak istediğinize dikkat etmelisiniz. Ve tek bir doğru tanım yoktur. Örneğin, hangi anlamda "sonlu" bir polinom sonluunun karmaşık kökleri kümesi ?

Bkz. Yapısal olarak sonlu? sonluluk hakkında ayrıntılı bir tartışma için Thierry Coquand ve Arnaud Spiwack tarafından hazırlanmıştır. Ders, sonluluğun yapıcı olarak açık olmaktan uzak olmasıdır.


Doğru, sorumun önemsiz olmadığını bilecek kadarını biliyordum. Şimdi gidip Coq, Isabelle ve Agda kütüphanelerinin sonlu kümelerle ilgilenen bölümlerini tekrar okuyabilirim ve hangi seçimleri (pun amaçlı) yaptıkları anlama umudum var.
Jacques Carette

Kütüphanelerin yazarlarının seçimlerden ne kadar haberdar olduklarını merak ediyorum. Muhtemelen tanımlardan birine girdiler. Yapılacak doğal bir şey, kararlı bir eşitliğe sahip olduğunu varsaymaktır, çünkü o zaman ile çakışır ve her şey sorunsuz ve klasik durumda olduğu gibi gider. Sorun, karar verilebilir eşitliğe sahip olmadığında başlar . AK(A)D(A)A
Andrej Bauer

Adil olmak gerekirse, çoğu zaman program doğrulamanın yönlerini resmileştirmek için sonlu kümeler kullanır ve bu durumda genellikle kararlaştırılabilir eşitliğin geçerli olduğunu varsayabilirsiniz.
cody
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.