Je lis sur la théorie des types dépendants dans le livre en ligne The Homotopy Type Theory .
Dans la section 1.3 du chapitre Théorie des types , il introduit la notion de hiérarchie des univers : , où
chaque univers est un élément du prochain univers . De plus, nous supposons que nos univers sont cumulatifs, c'est-à-dire que tous les éléments de l' univers sont également des éléments de l'univers .
Pourtant, quand je regarde les règles de formation pour les différents types dans l'annexe A, à première vue, si un univers apparaît au-dessus de la barre comme prémisse, le même univers apparaît ci-dessous. Par exemple, pour la règle de formation des types de coproduits:
Ma question est donc pourquoi une hiérarchie est-elle nécessaire? Dans quelles circonstances avez-vous besoin de passer d'un univers à un plus haut dans la hiérarchie? Il n'est vraiment pas évident pour moi que, étant donné toute combinaison de , vous pouvez vous retrouver avec un type qui n'est pas dans . Plus en détail: les règles de formation dans les sections de l'annexe A.2.4, A.2.5, A.2.6, A.2.7, A.2.8, A.2.9, A.2.10, A.3.2, soit mentionner dans la prémisse et le jugement, ou tout simplement dans le jugement.
Le livre suggère également qu'il existe un moyen formel d'attribuer les univers:
En cas de doute sur la validité d'un argument, la façon de le vérifier consiste à essayer d'affecter des niveaux de manière cohérente à tous les univers qui y figurent.
Quel est le processus d'attribution des niveaux de manière cohérente?
conduirait au paradoxe de Russell . Éviter le paradoxe de Russell est explicitement mentionné dans le livre (page 24). Il va également dans plus de détails page 54, 55 qui utilise des «univers de style Russell» plutôt que des «univers de style Tarski». Donc, à un niveau très élevé, je tiens pour acquis que la théorie veut éviter le paradoxe. Malheureusement, je n'ai pas les antécédents pour donner un sens à cela directement. Ce que je cherche dans cette question, c'est vraiment juste gratter la surface en obtenant des exemples de choses dans et non dans pour et peut être autre chose qui me donne une idée pour le fonctionnement des hiérarchies.
Réponses:
La question dans quelles circonstances nous devons passer d'un univers à un plus haut dans la hiérarchie est bonne. Il est important d'avoir la hiérarchie et la capacité de l'escalader. Vous devez sauter des niveaux lorsque vous souhaitez traiter un univers comme un type ou comme faisant partie d'un type. Par exemple, pour définir des fonctions de type (non dépendant) vous devez montrer que est dans un univers. Mais cela ne peut pas être ou un univers plus petit. Alors que faisons-nous? Pour résoudre le problème (sans utiliser le ), nous devons sauter d'un univers. La règle qui nous permet de faire ce saut est -Intro
la source
Je modifierai légèrement la réponse de Martin pour expliquer où intervient la cumulativité (la règle qui dit que et impliquent ). Supposons que nous ayons et nous aimerions donner un type à . La règle de formation pour est la suivante: (Si est un raccourci pour alors la règle ci-dessus pourrait être dérivée de la règle de formation pourX:Ui i≤j X:Uj A:U42 A→U99 →
Nous pourrions nous débarrasser de la cumulativité, mais les règles deviennent alors plus complexes. Par exemple, la formation de se lirait ou Dans tous les cas, la théorie des types a de nombreuses variations subtiles, et les faire jouer ensemble semble bien être un peu un art.→
la source