Иван Николаевич Смирнов
Формальная верификация в математике
Лекции транслируются в Zoom (Идентификатор конференции: 815 6349 2059 Код доступа: 548372) и будут доступны на YouTube и на RuTube.
Анонс курса – на YouTube и на RuTube
Плейлист курса – на YouTube и на RuTube
Спецкурс в формате лекция + семинар
Для полноценного участия в семинаре, необходим компьютер.
Аннотация
Курс посвящён теоретическим основаниям и практике формальной верификации математических утверждений. На лекциях обсуждаются 𝜆-исчисление, интуиционистская логика, соответствие Карри– Говарда, зависимые типы, индуктивные типы и их роль в современных proof assistant’ах. Семинары полностью посвящены Lean: в первой половине курса изучается язык Lean, во второй библиотека формализованной математики mathlib.
Программа лекций
- Бестиповое 𝜆-исчисление. Синтаксис. 𝛼-конверсия, 𝛽 и 𝜂-редукции. Теорема Чёрча-Россера (без доказательства). Комбинатор неподвижной точки и рекурсия.
- Интуиционисткая логика. Семантика Брауэра-Гейтинга-Колмогорова. Натуральные выводы.
- Простое типизированное 𝜆-исчисление (𝜆→). Типизация по Чёрчу и по Карри. Изморфизм КарриГоварда.
- Интуиционисткая теория типов Мартин-Лёфа (MLTT). Σ-типы. Π-типы. Универсумы. Тип равенства.
- Индуктивные типы. Единственность. 𝑊-типы. Семантика индуктивных типов. Равенство как индуктивный тип.
- Теория типов Lean. Универсум Prop. Proof-Irrelevance. Subsigleton elimination. Экстенсиональность. Классические принципы: закон исключённого третьего и аксиома Выбора. Фактор-типы.
- Алгоритмические вопросы*.
- Гомотопическая теория типов*.
Программа семинаров
Часть 1. Знакомство с Lean.
- Термовый язык Lean. Установка Lean и настройка среды. Термы и типы. Функции: абстракция и эвалюация. Определения локальные и глобальные. Переменные, секции и пространства имён. Зависимые типы.
- Высказывания и доказательства. Высказывания как типы. Логика высказываний. Теория типов и классическая логика.
- Кванторы и равенство. Квантор всеобщности. Пропозициональное и вычислительное равенство. Квантор существования.
- Тактики. Базовые тактики. Тактикалы. Переписывание и simp. Структурирование доказательств.
- Индуктивные типы. Натуральные числа, списки, деревья. Индуктивно определяемые предикаты. Тактики, связанные с индуктивными типами. Взаимные и вложенные индуктивные типы.
- Индукция и рекурсия. Паттерн-матчинг. Структурная рекурсия и индукция. Сильная (не структурная) рекурсия и индукция. Функциональная индукция. Взаимная рекурсия. Зависимый паттерн-матчинг.
- Структуры и классы. Structure и Record в Lean. Классы типов и поиск экземпляров. Нотации, coercions, implicit arguments. Как Lean представляет алгебраические структуры.
- Аксиомы и вычислимость. Экстенсиональность. Факторы. Аксиома выбора. Закон исключённого третьего.
Часть 2. Знакомство с MathLib.
- Обзор mathlib: устройство библиотеки.
- Множества, функции и отношения в mathlib.
- Алгебра в mathlib.
- Арифметика, комбинаторика и конечные объекты.
- Анализ и топология в mathlib.
Библиография
[1] The Lean Developers, «The Lean Language Reference Manual». [Онлайн]
[2] J. Avigad, L. de Moura, S. Kong, S. Ullrich, и with contributions from the Lean Community, «Theorem Proving in Lean 4». [Онлайн]
[3] J. Avigad и P. Massot, «Mathematics in Lean». [Онлайн]
[4] The Univalent Foundations Program, Homotopy Type Theory: Univalent Foundations of Mathematics. 2013. [Онлайн]
[5] M. H. B. Sørensen и P. Urzyczyn, Lectures on the Curry-Howard Isomorphism. Elsevier Science, 2006. [Онлайн]
[6] J.-Y. Girard, Y. Lafont, и P. Taylor, Proofs and Types. Cambridge University Press, 1989. [Онлайн]
Программа файлом
