Substituição hereditária por uma hierarquia de universo

11

Eu li sobre a substituição hereditária do Cálculo Lambda Simples e do The Logical Framework com termos e tipos distintos.

Gostaria de saber, existem exemplos de substituição hereditária em um sistema tipicamente dependente com uma hierarquia de universo? ou seja, onde etc.True:Set0:Set1:Set2

Eu estou querendo saber em particular como estabelecer uma medida de indução em tal sistema. A versão simplesmente digitada está diminuindo estruturalmente no tipo da variável que está sendo substituída. Isso não funciona com tipos dependentes, pois para LF o papel que vinculei usa o apagamento simples dos termos, realizando indução na forma do tipo.

No entanto, apagar para tipos simples não funciona com uma hierarquia de universo, pois se você tiver algo parecido com isto:

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

isto é, aplicar uma função resultou em um tipo estruturalmente maior.

Suponho que a solução tenha algo a ver com os índices do universo, mas se houver uma técnica existente para estabelecer que a indução seja bem fundamentada, prefiro citá-la do que inventar algo por conta própria.

jmite
fonte

Respostas:

8

Aqui está uma referência para o sistema predicativo F. A medida de fato inclui o conjunto múltiplo de níveis do universo em um tipo. Não posso dizer muito sobre se essa abordagem se generaliza à teoria do tipo dependente predicativo.

András Kovács
fonte
8

Em novembro de 2018, como fazer isso para teorias de tipos dependentes com grandes eliminações é uma questão em aberto.

Estabelecer que a recursão seja bem fundamentada não é tão ruim; você pode usar o teorema de Pataraia para provar que o ponto fixo que você deseja existe. Consulte * Construindo sistemas de tipos sobre uma semântica operacional de Robert Harper para obter instruções. (Você também pode fazer isso por meio de uma definição indutivo-recursiva.)

A parte difícil é realmente formular a substituição hereditária de uma maneira agradável - a direção natural leva você a substituir não um termo, mas toda uma substituição por um contexto, e isso levanta muitas questões sobre quando e como estabelecer propriedades das coisas composições semelhantes de substituições (hereditárias).

Se isso fosse impossível, eu ficaria totalmente chocado. No entanto, atualmente ninguém fez isso. Se você quiser trabalhar nisso, sugiro entrar em contato com Andreas Abel, Dan Licata e Mike Shulman. (Ou eu, nesse caso.)

Neel Krishnaswami
fonte
A força da consistência de um teorema de substituições hereditárias por uma teoria de tipos com uma hierarquia no universo é bastante forte? Depois de seguir o teorema, o que mais é necessário para obter consistência da teoria?
Andrej Bauer 23/11
1
@NeelKrishaswami: você quer dizer que é um problema em aberto, mesmo sem uma hierarquia no universo? Quanto exatamente você assume sobre sua teoria de tipos, precisamente?
Andrej Bauer
2
Segundo, a confusão de @ AndrejBauer: a definição de substituição hereditária não contém implicitamente um argumento de término para a redução de termos bem digitados? O argumento para tipos simples parece conter explicitamente uma ordem que diminui quando a substituição é realizada, o que é complicado até para o Sistema T (está aberto se existe uma ordem para SN) e sem esperança para o sistema F.
cody
1
@AndrejBauer: Se você escrever uma operação de substituição hereditária, precisará provar que ela termina antes que possa realmente chamá-la de função. É improvável que a prova de término seja terrivelmente difícil, porque o MLTT com uma hierarquia de universo contável pode ser normalizado usando ZF limitado intuicionista. O que está aberto é realmente fornecer a definição correta da operação de substituição hereditária. No momento, não está claro se é um problema burocrático difícil ou um problema difícil, ponto final. Meu palpite é o primeiro, mas quem pode realmente dizer sem fazer o trabalho?
Neel Krishnaswami
1
@ Blaisorblade: sim, adicionar grandes eliminações leva a um grande salto no poder expressivo da teoria. Depois de ter grandes eliminações, a metateoria em que você prova consistência / normalização deve suportar no mínimo a recursão por indução.
Neel Krishnaswami