Si nos fijamos en Notas sobre el capítulo 8 verá lo que ha sido ya formalizada, y creo que eso es mucho. Existen la biblioteca Coq HoTT y la biblioteca Agda HoTT-Agda que formalizan grandes fragmentos de la teoría de tipos de homotopía.
Para hacer las cosas en Coq, necesitábamos una versión especial de Coq que fue parcheada solo para los propósitos de HoTT. Sin embargo, Coq se está moviendo en la dirección de apoyar la teoría del tipo de homotopía, por lo que en poco tiempo podríamos hacerlo con Coq estándar.
En Agda, uno tiene que activar la --without-K
opción; de lo contrario, Agda piensa que todos los tipos son de tipo 0. Hay algunas dudas persistentes sobre si --without-K
realmente se elimina la suposición de que todo es un conjunto de 0, o tal vez uno podría reintroducirlo en Agda con usos complicados de coincidencias de patrones.
Los siguientes aspectos de las formalizaciones de Coq y Agda no son satisfactorios:
El axioma de la univalencia se establece como una hipótesis. Sería mejor si se integrara en el sistema. En particular, nos gustaría que Coq y Agda entiendan las reglas de cálculo sobre el axioma de Univalencia.
Del mismo modo, tenemos que usar hacks para obtener tipos viables de mayor inductividad. Una vez más, sería mejor tener un apoyo directo.
El problema con las deficiencias anteriores es que nadie sabe cómo solucionarlas, incluso en teoría. Esta es un área activa de investigación.
Aparte de eso, creo que es justo decir que HoTT se puede hacer principalmente en Coq y Agda, pero no de la manera óptima.