La mayoría de los asistentes de prueba tienen una formalización del concepto de "conjunto finito". Sin embargo, estas formalizaciones difieren enormemente (¡aunque uno espera que todas sean esencialmente equivalentes!). Lo que no entiendo en este momento es el espacio de diseño involucrado, y cuáles son los pros y los contras de cada formalización.
En particular, me gustaría entender lo siguiente:
- ¿Puedo axiomatizar conjuntos finitos (es decir, tipos habitados por un número finito de habitantes) en la teoría de tipos simple? Sistema F? ¿Cuáles son los inconvenientes de hacerlo de esta manera?
- Sé que se puede hacer 'elegantemente' en un sistema de tipo dependiente. Pero, desde un punto de vista clásico, las definiciones resultantes parecen extremadamente extrañas. [¡No digo que estén equivocados, ni mucho menos!]. Pero tampoco entiendo por qué tienen "razón". Entiendo que escogen el concepto correcto , pero la razón más profunda para "decirlo de esa manera" es lo que no entiendo completamente.
Básicamente, me gustaría una introducción razonada al espacio de diseño de formalizaciones del concepto de 'conjunto finito' en la teoría de tipos.