En el primer sistema, lo que llama subtipo son estas dos reglas:
Γ,x:T1⊢M:SΓ,x:T1∧T2⊢M:S(∧E1)Γ,x:T2⊢M:SΓ,x:T1∧T2⊢M:S(∧E2)
Corresponden a reglas de eliminación para ; sin ellos, el conectivo es más o menos inútil.∧∧
En el segundo sistema (con las conectivas y , a las que también podríamos agregar un ), las reglas de subtipo anteriores son irrelevantes, y creo que las reglas que tenía en mente son las siguientes:∨→⊥
Γ,x:T1⊢M:SΓ,x:T2⊢M:SΓ,x:T1∨T2⊢M:S(∨E)Γ,x:⊥⊢M:S(⊥E)
Por lo que vale, este sistema permite escribir (usando la regla ), que no se puede escribir solo con tipos simples, que tiene una forma normal, pero no se normaliza fuertemente .(λx.I)Ω:A→A⊥E
Pensamientos aleatorios: (quizás valga la pena preguntar esto en TCS)
Esto me lleva a conjeturar que las propiedades relacionadas son algo así como:
- un término λ admite un tipo que no contiene si tiene una forma normal para todo que tiene una forma normal. ( falla ambas pruebas, pero el término λ anterior las pasa)M⊥MNNδ
- Se puede escribir un término λ sin utilizar la regla si f se normaliza fuertemente para todos los fuertemente normalizadores .M⊥EMNN
Ejercicio: prueba que estoy equivocado.
También parece ser un caso degenerado, tal vez deberíamos considerar agregar a este tipo en la imagen. Por lo que recuerdo, ¿permitiría obtener ?A∨(A→⊥)