Як показати, що тип у системі із залежними типами не заселений (тобто формула не є доказовою)?


15

Для систем без залежних типів, таких як система типу Хіндлі-Мілнера, типи відповідають формулам інтуїтивістської логіки. Там ми знаємо, що його моделями є алгебри Хейтінга, і, зокрема, для спростування формули, ми можемо обмежитися однією алгеброю Хейтінга, де кожна формула представлена ​​відкритим підмножиною .R

Наприклад, якщо ми хочемо показати, що не заселено, ми побудуємо відображення з формул для відкриття підмножини шляхом визначення: Потім Це показує, що вихідна формула не може бути доказовою, оскільки у нас є модель, де це неправда, або рівнозначно (за ізоморфізмом Керрі-Говарда) тип не може бути заселений.α.α(α)ϕR

ϕ(α)=(,0)
ϕ(α)=int([0,))=(0,)ϕ(α(α))=(,0)(0,)=R0.

Іншою можливістю буде використання кадрів Kriepke .


Чи є подібні методи для систем із залежними типами? Як щось узагальнення алгебр Гейтінга чи кадри Крипке?

Примітка. Я не прошу процедури прийняття рішення, я знаю, що такої не може бути. Я прошу лише механізму, який дозволяє засвідчити невиправданість формули - переконати когось, що це недоцільно.

Відповіді:


13

Те, що формула не є доказовою, можна по суті зробити двома способами. Маючи певну удачу, ми могли б виявити в теорії типів, що формула передбачає ту, яку, як відомо, вже неможливо довести. Інший спосіб - знайти модель, в якій формула недійсна, і це може бути досить важко. Наприклад, знадобилося дуже багато часу, щоб знайти групоподібну модель теорії залежного типу, яка першою визнала недійсною унікальність доказів тотожності .

Питання "що таке модель теорії залежного типу?" має дещо складну відповідь. Якщо ігнорувати певні властивості заміщення, модель є локально декартовою закритою категорією , і це може бути найпростішою відповіддю. Якщо ви хочете "справжню" модель, то є кілька варіантів, дивіться сторінку nLab щодо категоріальних моделей теорії залежних типів . У будь-якому випадку, відповідь завжди трохи складна, оскільки теорія залежного типу - це досить складна формальна система.

Якби я запропонував лише одну статтю на цю тему, я, мабуть, порекомендував би оригінальний документ Роберта Зелі "Місцево-декартові закриті категорії та теорія типів" . Якби я запропонував інший, напевно, саме той пояснить, що потрібно виправити в роботі Зелі, наприклад, в статті Мартіна Гофмана "Про тлумачення теорії типів в локально декартових закритих категоріях" .

Недавнім важливим прогресом у цій галузі є усвідомлення того, що теоретичні моделі гомотопії є також моделями теорії залежних типів, див. Посилання homotopytypetheory.org . Це надає велику кількість можливостей, але тепер треба вивчити теорію гомотопії, щоб перейти до моделей.


2
Ця відповідь є досить приємною, хоча вона ігнорує чи не найпростіший можливий спосіб довести, що тип не заселений: індукція на нормальних формах! Зокрема, легко довести, що виключена середина не може бути заселена в обчисленні конструкцій такою індукцією. Звичайно, тоді вам потрібно показати, що кожен термін може бути введений у звичайну форму одного типу, і це передбачає побудову моделі ...
cody

@cody: хороший момент, нормальні форми можуть бути дуже корисними.
Андрій Бауер

@cody: "тоді вам потрібно показати, що кожен термін можна ввести у звичайну форму одного типу": це не стандартна частина метатеорії для системи "хорошого" типу (доки ви не є аксіоми) або "хороша" логіка (де це усунення скорочення)? Тож ви можете просто використати існуючий доказ, правда?
Blaisorblade

@Blaisorblade: звичайно, потрібно лише один раз довести усунення. Моя точка полягала в тому, що використання індукції в нормальних формах замість модельних конструкцій - це спосіб задавати питання: ви вже будуєте модель, щоб показати, що кожен термін можна ввести у звичайну форму. У певному сенсі ви працюєте у «нормальній формі форми», а не виконуєте суто синтаксичну роботу.
коді

Я бачу - я замислювався над «доказовим зусиллям», але, мабуть, ви міркуєте про те, як реалізується весь доказ. Але ви ще раз змусили мене поставити під сумнів різницю між синтаксичним та семантичним підходами за такими побудовами, як термінові моделі. Тому я поставив окреме запитання з цього приводу
Blaisorblade
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.