<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Types_24</id>
	<title>Types 24 - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wikicshse.ru/index.php?action=history&amp;feed=atom&amp;title=Types_24"/>
	<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=Types_24&amp;action=history"/>
	<updated>2026-06-06T11:03:25Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wikicshse.ru/index.php?title=Types_24&amp;diff=765&amp;oldid=prev</id>
		<title>imported&gt;TurtlePU: /* Домашние задания */</title>
		<link rel="alternate" type="text/html" href="https://wikicshse.ru/index.php?title=Types_24&amp;diff=765&amp;oldid=prev"/>
		<updated>2024-11-18T21:14:34Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Домашние задания&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Типы в языках программирования ==&lt;br /&gt;
&lt;br /&gt;
Осенний курс по выбору для студентов 3 и 4 курсов ПМИ ФКН ВШЭ.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Лектор&amp;#039;&amp;#039;&amp;#039;: Павел Соколов aka [https://t.me/TurtlePU @TurtlePU].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Семинарист&amp;#039;&amp;#039;&amp;#039;: Илья Григорьев aka [https://t.me/ilyagribun @ilyagribun].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Ассистент&amp;#039;&amp;#039;&amp;#039;: Яна Ике aka [https://t.me/jijasan @jijasan].&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
[https://t.me/+u5nrljUi_JdiNmRi Канал курса (Telegram)]&lt;br /&gt;
&lt;br /&gt;
[https://t.me/+A7z6pUNQ2AplNWMy Чат курса (Telegram)]&lt;br /&gt;
&lt;br /&gt;
[https://us06web.zoom.us/j/88993803532?pwd=F1aFxf9DY1R81caDQBgGnwcaSstqIj.1 Лекции (Zoom)]&lt;br /&gt;
&lt;br /&gt;
[https://us06web.zoom.us/j/88580149532?pwd=XAtNlbGimHZboYL5bOSSjxO8AUOHmB.1 Семинары (Zoom)]&lt;br /&gt;
&lt;br /&gt;
[https://disk.yandex.ru/d/WhHJyFeb9mDdkA Записи занятий (Я.Диск)]&lt;br /&gt;
&lt;br /&gt;
[https://classroom.google.com/c/NzExNzI1MDg2MjA3?cjc=sihngzs classroom для сдачи теоретических домашних заданий]&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1PIpVuanxZmANMT0Z6wK46Osy5CVVxUIc_-IJhcThf_I/edit?usp=sharing Оценки]&lt;br /&gt;
&lt;br /&gt;
== Лекции и семинары ==&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 1, 2 сен 2024&amp;#039;&amp;#039;&amp;#039;. Организация курса; Формальные методы и теория типов; Язык NatBool, его денотационная семантика и здравость системы типов относительно неё. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/02.09%20%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D1%8F.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 1, 2 сен 2024&amp;#039;&amp;#039;&amp;#039;. Операционные семантики; Эквивалентности семантик; Preservation и Progress теоремы; Корректность системы типов относительно операционной семантики. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/02.09%20%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 2, 9 сен 2024&amp;#039;&amp;#039;&amp;#039;. Система типов NatBool+Let. Подстановка. Соглашение об именах. Preservation и progress теоремы. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/09.09%20%D0%BB%D0%B5%D0%BA%D1%86%D0%B8%D1%8F.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 2, 9 сен 2024&amp;#039;&amp;#039;&amp;#039;. Семантика с кучей. Эквивалентность семантик с подстановкой и с кучей. Корректность системы типов NatBool+Let. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/09.09%20%D1%81%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 3, 16 сен 2024&amp;#039;&amp;#039;&amp;#039;. Нетипизированное лямбда-исчисление. Стратегии редукции. Теорема Чёрча-Россера. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-09-16T11-56-36Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 3, 16 сен 2024&amp;#039;&amp;#039;&amp;#039;. Кодирование Чёрча для типов данных: логические значения, пары, натуральные числа, списки. Комбинатор неподвижной точки. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-09-16T15-02-10Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 4, 23 сен 2024&amp;#039;&amp;#039;&amp;#039;. Просто типизированное лямбда-исчисление. Доказательство слабой нормализуемости. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-09-23T11-36-06Z%20(1).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 4, 23 сен 2024&amp;#039;&amp;#039;&amp;#039;. Теоретико-множественная семантика STLC. Логическая семантика STLC. Пустой тип. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-09-23T14-55-33Z%20(1).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 5, 30 сен 2024&amp;#039;&amp;#039;&amp;#039;. Вычисления с сайд-эффектами: исключения, состояние, I/O. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-09-30T11-41-27Z%20(3).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 5, 30 сен 2024&amp;#039;&amp;#039;&amp;#039;. Изо- и экви- рекурсивные типы данных. Корректность для систем с сайд-эффектами и рекурсией. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-09-30T14-59-58Z%20(3).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 6, 7 окт 2024&amp;#039;&amp;#039;&amp;#039;. Полиморфизм и System F. Лямбда-куб. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-10-07T11-38-07Z%20(1).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 6, 7 окт 2024&amp;#039;&amp;#039;&amp;#039;. Выразительность System F: алгебраические типы данных, Nat. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-10-07T15-04-47Z%20(1).mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 7, 14 окт 2024&amp;#039;&amp;#039;&amp;#039;. Система типов Хиндли-Милнера. Декларативные правила вывода. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 8, 21 окт 2024&amp;#039;&amp;#039;&amp;#039;. Операторы на типах. Система кайндов. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-10-21T11-42-07Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 7, 21 окт 2024&amp;#039;&amp;#039;&amp;#039;. Унификация. Алгоритмы J и W. Расширения системы Хиндли-Милнера. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-10-21T15-08-27Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 9, 11 ноя 2024&amp;#039;&amp;#039;&amp;#039;. Отношение подтипизации. Решётка типов для STLC. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%9B%D0%B5%D0%BA%D1%86%D0%B8%D1%8F%202024-11-11T11-46-25Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 8, 11 ноя 2024&amp;#039;&amp;#039;&amp;#039;. Операторы на типах в системе HM. Полиморфная рекурсия. [https://disk.yandex.ru/d/WhHJyFeb9mDdkA/%D0%A1%D0%B5%D0%BC%D0%B8%D0%BD%D0%B0%D1%80%202024-11-11T15-00-57Z.mp4 Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 10, 18 ноя 2024&amp;#039;&amp;#039;&amp;#039;. Двусторонний вывод типов для STLC с подтипизацией. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 9, 18 ноя 2024&amp;#039;&amp;#039;&amp;#039;. Ковариантность и контравариантность. Вывод типов для систем с подтипизацией. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 11, 25 ноя 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 11, 25 ноя 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 12, 2 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 12, 2 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 13, 9 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 13, 9 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Лекция 14, 16 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Семинар 14, 16 дек 2024&amp;#039;&amp;#039;&amp;#039;. TBA. [ Запись].&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
&lt;br /&gt;
* ТДЗ-1 (теоретическое). Система типов IntBool+Let. [https://drive.google.com/file/d/1e5iTyjbkPKIABjm4tQHwdzMoW1OVYoma/view?usp=drive_link Условие]. [https://drive.google.com/file/d/1gkqzoSl_h1E2pDWnNn3kDfkN76AeWf8n/view?usp=drive_link Исходник]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;26 сентября 2024 в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ТДЗ-2 (теоретическое). Тьюринг-полнота нетипизированного лямбда-исчисления. [https://drive.google.com/file/d/13SsC9fjrJwqGT4d5wqcL7zMdwbbaW43_/view?usp=drive_link Условие]. [https://drive.google.com/file/d/1mlBWX8HIrGEsP40NCK1Q9mbqhw9LvLIr/view?usp=drive_link Исходник]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;3 октября 2024 в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ТДЗ-3 (теоретическое). Алгебраические типы данных и соответствие Карри-Говарда. [https://drive.google.com/file/d/1lloVL7bqNmihxQOfCBp-7U7u3mzQTXNR/view?usp=sharing Условие]. [https://drive.google.com/file/d/1wLlLtCkHWNQ9OOLB4kkJHTWj2C-8Ktn9/view?usp=sharing Исходник]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;18 октября 2024 в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ПДЗ-1 (практическое). &amp;#039;&amp;#039;&amp;#039;СНИМАЕТСЯ&amp;#039;&amp;#039;&amp;#039;. Оценка за ПДЗ-1 равна максимальной среди оценок за ПДЗ 2-4.&lt;br /&gt;
* ПДЗ-2 (практическое). Реализация алгоритма W с различными расширениями. [https://codeforces.com/contestInvitation/220b1b76e428cec54588cf6e75e69c1c3c030f29 Контест]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;9 декабря в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* БТДЗ (бонусное теоретическое). Строковый полиморфизм. [https://drive.google.com/file/d/1T9N_3AMeNytaa6tIIa447A58fyuuyVMp/view?usp=drive_link Условие]. [https://drive.google.com/file/d/1F6GqFKtXI7zQexGc1nz213D8aIH8if2w/view?usp=drive_link Исходник]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;2 декабря в 23:59&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ПДЗ-3 (практическое). TBA. [ Условие]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;TBA&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ПДЗ-4 (практическое). TBA. [ Условие]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;TBA&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* БПДЗ (бонусное практическое). TBA. [ Условие]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;TBA&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* ТДЗ-4 (теоретическое). TBA. [ Условие]. [ Исходник]. Дедлайн: &amp;#039;&amp;#039;&amp;#039;TBA&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Условие теоретических домашних заданий скомпилировано с помощью pdfLaTeX.&lt;br /&gt;
&lt;br /&gt;
== Итоговая оценка за курс ==&lt;br /&gt;
&lt;br /&gt;
Итог = Округление(0.4 * ТДЗ + 0.6 * ПДЗ + Б),&lt;br /&gt;
&lt;br /&gt;
где ТДЗ – средняя оценка за теоретические домашние задания, ПДЗ – за практические, а Б – сумма бонусных баллов, полученных за курс.&lt;br /&gt;
&lt;br /&gt;
Округление арифметическое.&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
&lt;br /&gt;
=== Основная литература ===&lt;br /&gt;
&lt;br /&gt;
# Benjamin C. Pierce, Types and Programming Languages&lt;br /&gt;
# [https://www.cs.cmu.edu/~fp/courses/15312-f04/handouts/15-bidirectional.pdf Frank Pfenning, Lecture Notes on Bidirectional Type Checking]&lt;br /&gt;
# Jean-Yves Girard, Proofs and Types&lt;br /&gt;
&lt;br /&gt;
=== Дополнительная литература ===&lt;br /&gt;
&lt;br /&gt;
# [https://disi.unitn.it/~bernardi/RSISE11/Papers/curry-howard.pdf Lectures on the Curry-Howard Isomorphism]&lt;br /&gt;
# [http://twelf.org/wiki/Main_Page The Twelf Project]&lt;br /&gt;
# [https://lean-lang.org/ Programming Language and Theorem Prover – Lean]&lt;br /&gt;
# [https://granule-project.github.io/ The Granule Project]&lt;/div&gt;</summary>
		<author><name>imported&gt;TurtlePU</name></author>
	</entry>
</feed>