Вопросы с тегом «dependent-type»

Перекрывающаяся черта теории типов и систем типов.

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

3
Почему у Coq есть опора?
Coq имеет тип Prop несущественных доказательств, которые отбрасываются при извлечении. Какова причина этого, если мы используем 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 …

1
Параметрическость и проективные исключения для зависимых записей
π 1 : A × B → A π 2 : A × B → BA×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 Aπ2:A×B→Bπ2:A×B→B\pi_2 : A \times B \to B Это не так удивительно, хотя естественное чтение типа F …

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

2
В книге Hott, является ли большинство типов формирователей избыточными? И если так, то почему?
В главе 1 и Приложении A к книге Hott представлены несколько семейств примитивных типов (типы юниверсов, зависимые типы функций, типы зависимых пар, типы копроизведения, пустой тип, тип блока, тип натурального числа и типы идентификаторов), образующие основу для теории гомотопического типа. Однако кажется, что с учетом типов юниверсов и зависимых типов …

3
Каковы негативные последствия расширения CIC с аксиомами?
Правда ли, что добавление аксиом в CIC может оказать негативное влияние на вычислительное содержание определений и теорем? Я понимаю , что в нормальном поведении теории, любой замкнутый терм сведет к канонической нормальной форме, например , если верно, то п должен сводиться к слагаемому виду ( S у с с . …

2
Собственность Черча-Россера для лямбда-исчисления с зависимой типизацией?
Хорошо известно, что свойство Чёрча-Россера верно для редуцирования в простом типе лямбда-исчисления. Это означает , что исчисление соответствует, в том смысле , что не все уравнения с участием Х -терминов являются выводимыми: например, K ≠ I , так как они не разделяют ту же нормальную форму.βηβη\beta \etaλλ\lambda≠≠\neq Также известно, что …

4
Моделирование объектов (ООП) в теории зависимых типов
Я заинтересован в моделировании объектов, от объектно-ориентированного программирования, в теории зависимых типов. В качестве возможного приложения я хотел бы иметь модель, в которой я могу описать различные функции императивных языков программирования. Я мог найти только одну статью о моделировании объектов в теории зависимых типов, а именно: объектно-ориентированное программирование в теории …

1
Зависимые типы от церковно-закодированного типа в PTS / CoC
Я экспериментирую с системами чистого типа в лямбда-кубе Барендрегта, особенно с наиболее мощным, исчислением конструкций. Эта система имеет сорта *и BOX. Для справки ниже я использую конкретный синтаксис Morteинструмента https://github.com/Gabriel439/Haskell-Morte-Library, который близок к классическому лямбда-исчислению. Я вижу, что мы можем эмулировать индуктивные типы с помощью некоторого церковно-подобного кодирования (так называемый …

2
Компилятор для зависимого типа намного сложнее, чем интерпретатор?
Я изучил кое-что о реализации зависимых типов, как этот учебник , но большинство из них - реализация интерпретаторов. Мой вопрос, кажется, что реализация компилятора для зависимого типа намного сложнее, чем компилятор, потому что вы действительно можете оценить аргументы зависимого типа для проверки типа. Так Правильно ли мое наивное впечатление? Если …

2
Интуиция за строгой позитивностью?
Мне интересно, может ли кто-нибудь подсказать мне, почему строгая положительность индуктивных типов данных гарантирует строгую нормализацию. Чтобы было ясно, я вижу, как наличие отрицательных явлений приводит к расхождению, то есть путем определения: data X where Intro : (X->X) -> X мы можем написать расходящуюся функцию. Но мне интересно, как мы …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.