Substitution héréditaire avec une hiérarchie d'univers

11

J'ai lu des informations sur la substitution héréditaire pour le calcul lambda simple et pour le cadre logique avec des termes et des types distincts.

Je me demande, existe-t-il des exemples de substitution héréditaire dans un système typé de façon dépendante avec une hiérarchie d'univers? c'est-à-dire où True:Set0:Set1:Set2 etc.

Je me demande notamment comment mettre en place une mesure d'induction dans un tel système. La version simplement typée diminue structurellement dans le type de la variable à remplacer. Cela ne fonctionne pas avec les types dépendants, pour LF le papier que j'ai lié utilise l'effacement simplement tapé des termes, effectuant une induction sur la forme du type.

Cependant, l'effacement vers des types simples ne fonctionne pas avec une hiérarchie d'univers, car si vous avez quelque chose comme ceci:

  • f:(x:Set1)xTrue implique que
  • f ((y:True)TrueTrue):TrueTrueTrue

c'est-à-dire que l'application d'une fonction a donné un type structurellement plus grand.

Je suppose que la solution a quelque chose à voir avec les index de l'univers, mais s'il existe une technique existante pour établir que l'induction est bien fondée, je préférerais la citer plutôt que de trouver quelque chose par moi-même.

jmite
la source

Réponses:

8

Voici une référence pour le système prédicatif F. La mesure inclut en effet le multi-ensemble de niveaux d'univers dans un type. Je ne peux pas dire grand-chose à savoir si cette approche se généralise à la théorie des types dépendants prédicatifs.

András Kovács
la source
8

Depuis novembre 2018, la façon de procéder pour les théories de type dépendant avec de grandes éliminations est une question ouverte.

Établir que la récursivité est bien fondée n'est pas trop mal; vous pouvez utiliser le théorème de Pataraia pour prouver que le point fixe que vous voulez existe. Voir Robert Harper's * Constructing Type Systems Over an Operational Semantics pour un guide pratique. (Vous pouvez également le faire via une définition inductive-récursive.)

La partie difficile est en fait de formuler la substitution héréditaire d'une manière agréable - la direction naturelle vous conduit à substituer non pas un terme, mais une substitution entière à un contexte, ce qui soulève beaucoup de questions sur le moment et la manière d'établir les propriétés des choses. comme des compositions de substitutions (héréditaires).

Si cela s'avérait impossible, je serais complètement choqué. Cependant, à l'heure actuelle, personne ne l'a fait. Si vous souhaitez y travailler, je vous suggère de prendre contact avec Andreas Abel, Dan Licata et Mike Shulman. (Ou moi, d'ailleurs.)

Neel Krishnaswami
la source
La force de cohérence d'un théorème de substitutions héréditaires pour une théorie des types avec une hiérarchie d'univers n'est-elle pas assez forte? Après avoir étudié le théorème, que faut-il d'autre pour dériver la cohérence de la théorie?
Andrej Bauer
1
@NeelKrishaswami: voulez-vous dire que c'est un problème ouvert même sans hiérarchie d'univers? Combien pensez-vous exactement de votre théorie des types, précisément?
Andrej Bauer
2
J'appuie la confusion de @ AndrejBauer: la définition de substitution héréditaire ne contient-elle pas implicitement un argument de terminaison pour la réduction de termes bien typés? L'argument pour les types simples semble même contenir explicitement un ordre qui diminue lorsque la substitution est effectuée, ce qui est capricieux même pour le système T (il est ouvert qu'un tel ordre existe pour SN) et sans espoir pour le système F.
cody
1
@AndrejBauer: Si vous écrivez une opération de substitution héréditaire, vous devez prouver qu'elle se termine avant de pouvoir vraiment l'appeler une fonction. Il est peu probable que la preuve de la terminaison soit terriblement difficile, car il est possible de montrer que MLTT avec une hiérarchie d'univers dénombrable se normalise à l'aide de ZF borné intuitionniste. Ce qui est ouvert, c'est en fait de donner la bonne définition de l'opération de substitution héréditaire. À l'heure actuelle, il est difficile de savoir s'il s'agit d'un problème bureaucratique difficile ou d'un problème difficile. Mon intuition est la première, mais qui peut vraiment dire sans faire le travail?
Neel Krishnaswami
1
@Blaisorblade: oui, l'ajout de grandes éliminations conduit à un très grand saut dans le pouvoir expressif de la théorie. Une fois que vous avez de grandes éliminations, la métathéorie dans laquelle vous prouvez la cohérence / normalisation doit prendre en charge l'induction-récursion au minimum.
Neel Krishnaswami