Параметричність та проективне усунення залежних записів


16

Загальновідомо, що в System F ви можете кодувати двійкові продукти типу ; функції Потім можна визначити проекції тг 1 : × B і π 2 : × B B .

A×Bα.(ABα)α
π1:A×BAπ2:A×BB

Це не так дивно, навіть незважаючи на те, що природне зчитування типу F є парним з усуненням стилю , оскільки два види пари є взаємоподібними в інтуїтивістській логіці.let(x,y)=pine

Тепер, в теорії залежного типу з непередбачуваним кількісним визначенням, ви можете дотримуватися тієї ж схеми, щоб кодувати залежний тип запису як Але в цьому випадку не існує простого способу визначення проективних елімінаторів і .Σ х : .Σx:A.B[x]л 1 : Σ х : .

Σx:A.B[x]α.(Πх:А.Б[х]α)α
π 2 : Π р : ( Σ х : А .π1:Σx:A.B[x]Aπ2:Πp:(Σx:A.B[x]).B[π1p]

Однак якщо теорія типів є параметричною, ви можете використовувати параметричність, щоб показати, що можна визначити. Це, мабуть, відомо --- див., Наприклад, цю розробку Агда від Дена Доела, в якій він отримує це без коментарів --- але я не можу знайти посилання на цей факт.π2

Хтось знає посилання на те, що параметричність дозволяє визначати проективні усунення для залежних типів?

EDIT: найближче я знайшов до сих пір цей документ 2001 Герман Geuvers, індукційний не виводити в теорії залежить від типу другого порядку , в якому він доводить , що ви не можете зробити це без parametricity.


Я не можу сказати з цього поста, в чому питання. (Я нічого не знаю про цю місцевість і не знаю все одно, але я хотів би мати можливість сформулювати це питання)
Vijay D

2
Я додав явний рядок питань над редагуванням. Чи допомагає це?
Ніл Крішнасвамі

Так. Я спочатку просто не був впевнений, чи це був лише довідковий запит чи прохання про підтвердження. Я попрошу навколо.
Vijay D

Я пару місяців тому обговорював тут: queuea9.wordpress.com/2012/03/28/why-not-lambda-encode-data, і я вважаю, що параметричність-> принцип усунення - це фольклор / оригінальний твір від Dan. Ці дискусії близькі до інших щодо параметричності Ж.-П. Бернарді. Ви можете поглянути на розробки стандартної бібліотеки Coq навколо залежних сум: coq.inria.fr/stdlib/Coq.Init.Specif.html і, можливо, coq.inria.fr/stdlib/Coq.Logic.EqdepFacts.html#
коді

1
@kvb: Я все ще не думаю, що відповіді позитивної. У моєму нещодавньому проекті (з Дереком Дрейер) на parametricity в Численні конструкцій ( mpi-sws.org/~neelk/internalizing-parametricity.pdf ), ми покажемо , що parametricity робить звук , щоб додати аксіоми , які дозволяють отримати сильну Elims з кодування Церкви. Однак у нас поки немає гарної історії про те, як інтерналізувати параметричність таким чином, щоб добре обчислити (швидше за все, нам потрібно інтегрувати методи JP Bernardy в нашу теорію типів). Це не здається неможливим, але ми ще не знаємо як.
Ніл Крішнасвамі

Відповіді:


6

Я щойно розмовляв з Деном Доелем, і він пояснив, що його посилання насправді була однією Ніл Кришнасвамі. Він побачив у вас коментар n-cafe, що можна зробити сильну індукцію, використовуючи параметричність, тому він пішов вперед і робив це як вправу, не розуміючи, що робити це для сигми, очевидно, є новим результатом.

Точна цитата: "Моєю посиланням був його. Я думав, що він сказав, що це можливо, тому я це зробив".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.