Запитання з тегом «dependent-type»

Особливість перекриття теорії типів та систем типів.

5
Яку найінтуїтивнішу теорію залежного типу я міг вивчити?
Мені цікаво зрозуміти дійсно залежне введення тексту. Я читав більшість TaPL і читав (якщо не повністю поглинений) "Залежні типи" в ATTaPL . Я також читав і переглядав купу статей про залежність від набору тексту. Багато дискусій з теорії типів, як видається, зосереджені на додаванні додаткових функцій до систем попереднього типу, …

3
Чому Coq має Prop?
Coq має тип Підтвердження нерелевантних пропозицій, які відкидаються під час видобутку. У чому причина цього, якщо ми використовуємо Coq лише для доказів. Prop непередбачуваний, тому Prop: Prop, однак, Coq автоматично підводить індекси Всесвіту, і ми можемо використовувати Type (i) замість них скрізь. Здається, Prop дуже багато ускладнює. Я читав, що …

4
Зв'язок між контрактами та залежним типізацією
Я читав деякі статті про залежні типи та контракти на програмування. З більшості того, що я прочитав, видається, що контракти динамічно перевіряються обмеженнями, а залежні типи - статично перевіряються. Було кілька паперів, які змусили мене думати, що можливо мати контракти, які частково перевіряються статично: Перевірка типу гібриду (C. Flanagan - …

2
Яка різниця між ADT, GADT та індуктивними типами?
Може хтось зможе пояснити різницю між: Алгебраїчні типи даних (з якими я досить добре знайомий) Узагальнені типи алгебраїчних даних (що робить їх узагальненими?) Індуктивні типи (наприклад, Coq) (Особливо спонукальні типи.) Дякую.

2
Чому ієрархія нескінченного типу?
Coq, Agda та Idris мають нескінченну ієрархію типів (Тип 1: Тип 2: Тип 3: ...). Але чому б не зробити це натомість, як λC, система в лямбда-кубі, найближча до числення конструкцій, яка має лише два різновиди, ∗∗* і , і ці правила?◽◽◽ ∅ ⊢ ∗ : ◽∅⊢∗:◽\frac {} {∅ ⊢ …

1
Чому неможливо оголосити принцип індукції для церковних цифр
Уявіть, ми визначали натуральні числа в залежно набраному лямбдальному обчисленні як церковні цифри. Вони можуть бути визначені наступним чином: SimpleNat = (R : Set) → R → (R → R) → R zero : SimpleNat zero = λ R z _ → z suc : SimpleNat → SimpleNat suc sn …

1
Параметричність та проективне усунення залежних записів
Загальновідомо, що в System F ви можете кодувати двійкові продукти типу ; функції Потім можна визначити проекції тг 1 : × B → і π 2 : × B → B .A×B≜∀α.(A→B→α)→αA×B≜∀α.(A→B→α)→α A \times B \triangleq \forall\alpha.\; (A \to B \to \alpha) \to \alpha π1:A×B→Aπ1:A×B→A\pi_1 : A \times B \to …

1
Як показати, що тип у системі із залежними типами не заселений (тобто формула не є доказовою)?
Для систем без залежних типів, таких як система типу Хіндлі-Мілнера, типи відповідають формулам інтуїтивістської логіки. Там ми знаємо, що його моделями є алгебри Хейтінга, і, зокрема, для спростування формули, ми можемо обмежитися однією алгеброю Хейтінга, де кожна формула представлена ​​відкритим підмножиною .RR\mathbb{R} Наприклад, якщо ми хочемо показати, що не заселено, …

2
Чи є у книзі Хотта більшість формулювачів типів зайвими? А якщо так, то чому?
У главі 1 та додатку А до книги Готта представлено кілька сімей примітивних типів (типи всесвіту, залежні типи функцій, залежні типи пар, типи копродукції, порожній тип, тип одиниці, тип натурального числа та типи особи) для формування фундаменту для теорії типу гомотопії. Однак здається, що з урахуванням типів Всесвіту та залежних …

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

2
Власність Церкви-Роззера для залежно набраного лямбда-числення?
Загальновідомо, що властивість Church-Rosser справедливо для -редукції в просто набраному лямбдальному обчисленні. Це означає, що обчислення є послідовним, в тому сенсі, що не всі рівняння, що включають -терміни, є похідними: наприклад, K I , оскільки вони не мають однакової нормальної форми.λ ≠βηβη\beta \etaλλ\lambda≠≠\neq Також відомо, що можна поширити результат на …

4
Моделювання об'єктів (ООП) в теорії залежних типів
Мене цікавлять моделювання об'єктів, від об'єктно-орієнтованого програмування, до теорії залежних типів. Як можливий додаток, я хотів би створити модель, де я можу описати різні особливості імперативних мов програмування. Я міг знайти лише одну статтю про моделювання об'єктів в теорії залежних типів, а саме: Об'єктно-орієнтоване програмування в теорії залежних типів А. …

2
Чи компілятор для залежного типу набагато складніше, ніж інтепретер?
Я щось дізнався про реалізацію залежних типів, як, наприклад, цей підручник , але більшість із них - це перекладачі. Моє запитання полягає в тому, що здається, що реалізувати компілятор для залежного типу набагато важче, ніж компілятор, тому що ви дійсно можете оцінити аргументи залежного типу для перевірки типу. Так Чи …

1
Залежні типи над кодованим церковним типом у PTS / CoC
Я експериментую з системами чистого типу в лямбда-кубі Барендрегта, конкретно з найбільш потужним, «Калькуляцією конструкцій». Ця система має різновиди *та BOX. Тільки для запису, я нижче використовую конкретний синтаксис Morteінструменту https://github.com/Gabriel439/Haskell-Morte-Library, який близький до класичного обчислення лямбда. Я бачу, що ми можемо імітувати індуктивні типи за допомогою якогось кодовського кодування …

2
Інтуїція за суворою позитивністю?
Мені цікаво, чи може хтось дати мені інтуїцію, чому сувора позитивність індуктивних типів даних гарантує сильну нормалізацію. Щоб було зрозуміло, я бачу, як наявність негативних явищ призводить до розбіжності, тобто шляхом визначення: data X where Intro : (X->X) -> X ми можемо записати розбіжну функцію. Але мені цікаво, як можна …

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