La teoría del dominio ofrece una teoría sorprendente de la computabilidad en presencia de tipos simples. Pero cuando se agrega el polimorfismo paramétrico, no parece haber una buena teoría que explique qué está pasando tan bien como la teoría del dominio explica la computación sobre tipos simples. Ciertamente, no esperaría que exista tal cosa para el Sistema-F porque no existen modelos teóricos establecidos del Sistema-F. ¿Qué pasa con una restricción del Sistema-F que tiene predicción y tiene una jerarquía universal? ¿Se ha estudiado esto? ¿Existe una buena teoría de dominio que se aplique a ella? Yendo más lejos, ¿qué pasa con los tipos dependientes? ¿Puede la teoría de dominio mezclarse de alguna manera con débil-groupoids para lograr algo?
8
Respuestas:
Hay muchas maneras de modelar el polimorfismo a través de la teoría de dominios, permítanme describir uno que es fácil de entender, para que pueda pensarlo usted mismo. Es un "modelo PER".
Tome cualquier modelo de lo no tipificadoλ -cálculo, por ejemplo un dominio D tal que D→D es un retracto de D (por ejemplo, tome D tal que D≅N⊥×(D→D)) . DejarΛ:D→(D→D) y Γ:(D→D)→D ser la retracción y la sección, respectivamente.
Vamos a interpretar los tipos como relaciones de equivalencia parcial (PER) enD . Recuerde que un PER es una relación simétrica y transitiva, pero que no necesita ser reflexiva. A cada tipoτ así asignamos un PER ∼τ . Pensar enx∼τx como "x es un elemento de τ "y x∼τy como "x y y son iguales hasta τ está preocupado ".
Podemos tener algunos tipos básicos (pero no es necesario), por ejemplo, si nos aseguramos de queN⊥ es un subdominio de D a través de una incrustación ι:N→D entonces podemos definir ∼nat por
PERs dados∼τ y ∼σ , defina el espacio de funciones PER ∼τ→σ por
Los términos se interpretan como sin tipoλ -cálculos como uno los interpretaría normalmente en D .
Aquí está el remate. Puede interpretar el polimorfismo como una intersección de PER, es decir:
Si queremos recurrencia en nuestro idioma, entonces debemos tener en cuenta los puntos fijos. Una posibilidad es restringir los PER a aquellos que contienen⊥D y están cerrados bajo suprema de cadenas crecientes. Más precisamente, tome solo esos PER≈ para cual
Ahora podemos interpretar aplicando el teorema de Kanster-Tarski sobre la existencia de puntos fijos, tal como lo hacemos en la teoría del dominio ordinario. Esta vez, no está vacío, ya que contiene precisamente .fixτ:(τ→τ)→τ ∀X.X ⊥D
fuente
Roy Crole da una buena explicación de cómo usar la teoría de dominios para modelar el polimorfismo de tipos en su libro Categorías para tipos , específicamente en la sección 5.6.
fuente