Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В математической логике , система U и система U - это чистые системы типа , то есть специальные формы в типизированного лямбда - исчисления с произвольным числом сортов , аксиом и правил (или зависимости между видами). Обе эти несовместимы были доказаны Жан-Ивом Жираром в 1972 году. [1] Этот результат привел к осознанию того, что оригинальная теория типов Мартина-Лёфа 1971 года была непоследовательной, поскольку допускала то же поведение «тип в типе», которое использует парадокс Жирара.

Формальное определение [ править ]

Система U определена [2] : 352 как система чистого типа с

  • три сорта ;
  • две аксиомы ; и
  • пять правил .

Система U - определяется так же, за исключением правила.

Сорта и условно называются «Тип» и « Вид » соответственно; у сорта нет определенного имени. Две аксиомы описывают содержание типов в видах ( ) и видов в ( ). Интуитивно сорта описывают иерархию в природе терминов.

  1. Все значения имеют тип , такой как базовый тип ( например , читается как « b является логическим») или (зависимый) тип функции ( например , читается как « f - функция от натуральных чисел к логическим»).
  2. является разновидностью всех таких типов ( читается как « t - тип»). Из мы можем построить больше терминов, например, что является разновидностью унарных операторов уровня типа ( например , читается как « Список - это функция от типов к типам», то есть полиморфный тип). Правила ограничивают то, как мы можем формировать новые виды.
  3. является разновидностью всех таких видов ( читается как « k - разновидность»). Точно так же мы можем создавать связанные термины в соответствии с тем, что позволяют правила.
  4. это разновидность всех таких терминов.

Правила регулируют зависимости между сортировками: говорят, что значения могут зависеть от значений ( функций ), разрешают значениям зависеть от типов ( полиморфизм ), разрешают типам зависеть от типов ( операторы типов ) и т. Д.

Парадокс Жирара [ править ]

Определения системы U и U - разрешить назначение полиморфных видов в общих конструкторами по аналогии с полиморфными типами терминов в классических полиморфных лямбда - исчислений, такие как System F . Примером такого универсального конструктора может быть [2] : 353 (где k обозначает переменную типа)

.

Этого механизма достаточно, чтобы построить термин с типом , который подразумевает, что каждый тип обитаем . Согласно соответствию Карри – Ховарда , это эквивалентно доказуемости всех логических предложений, что делает систему непоследовательной.

Парадокс Жирара является теоретико-типовым аналогом парадокса Рассела в теории множеств .

Ссылки [ править ]

  1. ^ Жирар, Жан-Ив (1972). "Функции интерпретации и определения превосходной арифметики" (PDF) . Cite journal requires |journal= (help)
  2. ^ a b Соренсен, Мортен Гейне; Уржичин, Павел (2006). «Системы чистых типов и лямбда-куб». Лекции об изоморфизме Карри – Ховарда . Эльзевир. ISBN 0-444-52077-5.

Дальнейшее чтение [ править ]

  • Барендрегт, Хенк (1992). «Лямбда-исчисления с типами» . У С. Абрамского; Д. Габбай; Т. Майбаум (ред.). Справочник по логике в компьютерных науках . Оксфордские научные публикации . С. 117–309.
  • Кокванд, Тьерри (1986). «Анализ парадокса Жирара». Логика в информатике . Издательство IEEE Computer Society Press. С. 227–236.