Теория чисел (пилотный поток) 2022/23 — различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
(Новая страница: «== О курсе == left Курс читается для студентов 3-го курса [https://cs.hse.ru/…»)
 
м (Mednik переименовал страницу Теория чисел (пилотный поток) в Теория чисел (пилотный поток) 2022/23 без оставления перенаправления: Для един…)
 
(не показано 85 промежуточных версии 3 участников)
Строка 1: Строка 1:
 
== О курсе ==
 
== О курсе ==
  
[[Файл:ML_surfaces.png|280px|borderless|left]]
+
Это курс основ теории чисел, который содержит такие базовые разделы как алгоритм Евклида, цепные дроби, арифметические функции, теория сравнений, квадратичные вычеты, первообразные корни. Параллельно будет происходить знакомство с задачами математической криптографии и простейшими криптографическими протоколами.
  
Курс читается для студентов 3-го курса [https://cs.hse.ru/ami ПМИ ФКН ВШЭ] в 1-2 модулях.
+
=== Предварительная программа ===
  
Проводится с 2016 года.
+
# Алгоритмы и их сложность. Классические алгоритмы целочисленной арифметики. Быстрый алгоритм возведения в степень.  
 
+
# Алгоритм Евклида и его варианты. Теорема Ламе. Расширенный алгоритм Евклида.
'''Лектор:''' [http://www.hse.ru/staff/esokolov Соколов Евгений Андреевич]
+
# Конечные цепные дроби. Свойства подходящих дробей.
 
+
# Бесконечные цепные дроби. Однозначность представления действительных чисел цепными дробями. Теорема Лагранжа.
Лекции проходят по пятницам,  
+
# Теория сравнений. Кольцо вычетов. Группа обратимых кольца вычетов. Теорема Вильсона. Функция Эйлера. Теоремы Ферма и Эйлера. [Простейшие детерминированные и вероятностные тесты на простоту. Псевдопростые, абсолютно псевдопростые и сильно псевдопростые числа. Понятие о криптографии с открытым ключом. Система шифрования RSA. Криптосистема Эль-Гамаля.]
 +
# Китайская теорема об остатках. Решение систем линейных сравнений. Решение полиномиальных сравнений. [Криптосистема Рабина и её модификации. ]
 +
# Квадратичные вычеты. Свойства символов Лежандра и Якоби. Квадратичный закон взаимности. [Тест Соловея--Штрассена. Псевдопростые числа Эйлера. Протоколы, использующие свойства символа Якоби. Генератор Блюм -- Блюма -- Шуба. Криптосистема Блюма -- Гольдвассер. Криптосистема Гольдвассер -- Микали.]
 +
# Первообразные корни и индексы. Структура группы $\mathbb{Z}^*_m$ для произвольного $m$ [Метод Диффи-Хеллмана. Дискретное логарифмирование. Протоколы аутентификации и "подбрасывание монеты по телефону". Хеш-функция Шаума -- Хайста -- Пфитсман.]
 +
# Интерполяционный многочлен Лагранжа и его связь с китайской теоремой об остатках. Умножение Карацубы. [Разделение секрета Шамира.]
 +
# Дискретное преобразование Фурье. Быстрое преобразование Фурье.
  
 
=== Полезные ссылки ===
 
=== Полезные ссылки ===
  
[https://www.hse.ru/edu/courses/646510131 Карточка курса и программа]
+
[[Дополнительные главы теории чисел]] (курс в 4-м модуле 2022-2023 у.г.)
 
+
[https://github.com/esokolov/ml-course-hse Репозиторий с материалами на GitHub]
+
 
+
[https://www.youtube.com/watch?v=OBG6EUSRC9g&list=PLEqoHzpnmTfDwuwrFHWVHdr1-qJsfqCUX Видеозаписи лекций 18/19 года]
+
 
+
Почта для сдачи домашних заданий (на самом деле задания сдаются в AnyTask, но если он не работает, то присылайте на почту): hse.cs.ml+<номер группы>@gmail.com (например, hse.cs.ml+171@gmail.com)
+
 
+
Канал в telegram для объявлений:
+
Чат в telegram для обсуждений (предназначение чата до конца не ясно, вопросы может быть правильнее задавать в чатах групп): https://t.me/+3BLmxzv63VM0OGMy
+
 
+
Ссылка на курс в Anytask: https://anytask.org/course/970
+
 
+
[https://docs.google.com/spreadsheets/d/1Z-9POgE6dTwtw5lLWf4PmHLux116zh4LCnpk-o0MKhE/edit?usp=sharing Таблица с оценками]
+
 
+
Оставить отзыв на курс: [https://goo.gl/forms/5CddG0gc75VZvqi52 форма]
+
 
+
'''Вопросы''' по курсу можно задавать в телеграм лектору (esokolov@) или семинаристу.
+
Вопросы по материалам лекций/семинаров и по заданиям лучше всего задавать на [https://github.com/esokolov/ml-course-hse/discussions форуме].
+
  
 
=== Семинары ===
 
=== Семинары ===
  
{| class="wikitable"
+
221, 222 -- Устинов Алексей Владимирович,
|-
+
223, 224 -- Калмынин Александр Борисович.
! Группа !! Преподаватель
+
|-
+
| 201 (МОП) || [https://t.me/amshabalin Шабалин Александр Михайлович]
+
|-
+
| 202 (МОП) || [https://www.hse.ru/staff/esokolov Соколов Евгений Андреевич]
+
|-
+
| 203 (МОП) || [https://t.me/Birshert Биршерт Алексей Дмитриевич]
+
|-
+
| 204 (ТИ) || [https://t.me/madn_boi Морозов Никита Витальевич]
+
|-
+
| 205 (РС) || [https://www.hse.ru/org/persons/218009880 Ульянкин Филипп Валерьевич]
+
|-
+
| 206 (РС) || [https://t.me/kostyayatsok Еленик Константин Ильич]
+
|-
+
| 207 (АПР) || [https://t.me/cherepasska Миша Баранов]
+
|-
+
| 208 (АДИС) || [https://www.hse.ru/staff/atsvigun Аким Цвигун]
+
|-
+
| 209 (МИ) || [https://t.me/call_me_Dory Сусла Диана Михайловна]
+
|-
+
| 2010 (ПР) || [https://t.me/artidoz Щербинин Артем Андреевич]
+
|-
+
| ФЭН || [https://www.hse.ru/org/persons/190889495 Зехов Матвей Сергеевич]
+
|}
+
  
 
=== Ассистенты ===
 
=== Ассистенты ===
  
{| class="wikitable"
+
221 - Свирщевский Юрий,
|-
+
222 - Шевченко Пётр,  
! Группа !! Ассистент
+
223 - Кучерявый Пётр,
|-
+
224 - Пичушкин Антон.
| 201 (МОП) || [https://t.me/artempris Артем Присяжнюк], [https://t.me/ipomeya31 Александр Плахин]
+
|-
+
| 202 (МОП) || [https://t.me/pauchara0 Олег Петров], [https://t.me/fdrose Максим Абрахам]
+
|-
+
| 203 (МОП) || [https://t.me/Nikita_Ki33elev Никита Киселев], [https://t.me/sagerasimov_1 Сергей Герасимов]
+
|-
+
| 204 (ТИ) || [https://t.me/vslvskyy Юлия Василевская]
+
|-
+
| 205 (РС) || [https://t.me/defunator Семен Иванов], [https://t.me/territhing Сергей Пилипенко]
+
|-
+
| 206 (РС) || [https://t.me/sol_arch Никита Андреев], [https://t.me/abezrukovaa Анастасия Безрукова]
+
|-
+
| 207 (АПР) || [https://t.me/leksious Алексей Панков]
+
|-
+
| 208 (АДИС) || [https://t.me/annastep2001 Анна Степочкина], [https://t.me/aleph0naught Александр Орлов]
+
|-
+
| 209 (МИ) || [https://t.me/arinakosovskaia Арина Косовская]
+
|-
+
| 2010 (ПР) || [https://t.me/territhing Сергей Пилипенко]
+
|-
+
| ФЭН || [https://t.me/zhan2pac Жанту Жуматаев], [https://t.me/grandananas Антон Макаров]
+
|}
+
  
 
=== Правила выставления оценок ===
 
=== Правила выставления оценок ===
  
В курсе предусмотрено несколько форм контроля знания:
+
В домашнем задании каждая задача оценивается в 10 баллов. Баллы за задачи суммируются и линейно шкалируются на 10-балльную шкалу без округления. 
* Самостоятельные работы на семинарах, проверяющие знание основных фактов с лекций и семинаров
+
Итоговая оценка за ДЗ получается усреднением оценок по всем ДЗ (без округления). Округление происходит только в конце при вычислении итоговой оценки за курс.
* Практические домашние работы на Python
+
* Письменная контрольная работа
+
* Письменный экзамен
+
 
+
Итоговая оценка вычисляется на основе оценки за работу в семестре и оценки за экзамен:
+
 
+
Итог = Округление(0.15 * ПР + 0.4 * ДЗ + 0.15 * КР + 0.3 * Э)
+
 
+
ПР — средняя оценка за самостоятельные работы на семинарах
+
 
+
ДЗ — средняя оценка за практические домашние работы на Python
+
 
+
КР — оценка за контрольную работу
+
 
+
Э — оценка за экзамен
+
 
+
Округление арифметическое.
+
  
 
=== Правила сдачи заданий ===
 
=== Правила сдачи заданий ===
  
За каждый день просрочки после мягкого дедлайна снимается 1 балл. После жёсткого дедлайна работы не принимаются. Даже при опоздании на одну секунду. Сдавайте заранее.
+
Всё должно быть написано аккуратно и понятно.
 
+
Два раза студент может сдать домашнее задание после мягкого дедлайна (но до жёсткого) без штрафов.
+
 
+
При обнаружении плагиата оценки за домашнее задание обнуляются всем задействованным в списывании студентам, а также подаётся докладная записка в деканат. Следует помнить, что при повторном списывании деканат имеет право отчислить студента.
+
 
+
При наличии уважительной причины пропущенную проверочную можно написать позднее, а дедлайн по домашнему заданию может быть перенесён. Дедлайн по домашнему заданию переносится на количество дней, равное продолжительности уважительной причины. Решение о том, является ли причина уважительной, принимает исключительно учебный офис.
+
  
 
== Лекции ==
 
== Лекции ==
  
Ко всем конспектам на GitHub есть исходники. Исправления и дополнения всячески приветствуются!
+
Лекция 1 (12.01.2023) Сложность алгоритмов. Алгоритм Евклида. Теорема Ламе. Расширенный алгоритм Евклида. [A]
  
Записи с доски можно найти [[https://www.dropbox.com/sh/f6k08r3rf0mgzcg/AACImtlxI1my8xes7MBHQaEEa?dl=0 здесь]]
+
Лекция 2 (19.01.2023) Основная теорема арифметики. Уравнение ax+by=c. Цепные дроби. Представление рациональных чисел конечными цепными дробями. Рекуррентные соотношения на числители и знаменатели подходящих дробей. [Б, ВИМ,Х]
  
 +
Лекция 3 (26.01.2023) Свойства подходящих дробей. Бесконечные цепные дроби. Приближение чисел подходящими дробями. Теорема Лежандра (критерий подходящей дроби).[Б, ВИМ, Х]
  
'''Лекция 1''' (2 сентября). Введение в машинное обучение. Основные термины, постановки задач и примеры применения. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture01-intro.pdf Конспект]] [[https://youtu.be/-tz5KDMKd4E Запись лекции]]
+
Лекция 4 (02.02.2023) Теорема Лежандра (критерий подходящей дроби). Сравнения и их свойства. Полная и приведённая системы вычетов. Функция Эйлера. Теорема Эйлера. Малая теорема Ферма. Псевдопростые числа Ферма.  
  
'''Лекция 2''' (9 сентября). Линейная регрессия, функции потерь в регрессии. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture02-linregr.pdf Конспект]] [[https://www.youtube.com/watch?v=iNYUmd0-_UU&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=3 Запись лекции]]
+
Лекция 5 (03.02.2023) Тест "Ферма". Числа Кармайкла. Китайская теорема об остатках (два доказательства). Группы, кольца, поля. Кольцо вычетов. Группа обратимых элементов кольца вычетов. [ВЭБ]
  
'''Лекция 3''' (16 сентября). Обобщающая способность, градиентные методы обучения. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture03-linregr.pdf Конспект]] [[https://www.youtube.com/watch?v=Ydcv-fCV9EY&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=5 Запись лекции]]
+
Лекция 6 (16.02.2023) Теорема о числе корней многочлена над полем. Теорема Вильсона. Тест сильной псевдопростоты. Изоморфизм групп. Изоморфизм колец. Прямое произведение групп. Прямое произведение колец. Китайская теорема об остатках как изоморфизм колец. Мультипликативность функции Эйлера. Формула для вычисления функции Эйлера. [НК]  
  
'''Лекция 4''' (23 сентября). Градиентные методы, регуляризация. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture04-linregr.pdf Конспект]] [[https://www.youtube.com/watch?v=poz4wf5lALE&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=7 Запись лекции]]
+
(23.02.2023) Лекция пропала из-за праздника.
  
'''Лекция 5''' (1 октября). Регуляризация, линейная классификация. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture05-linclass.pdf Конспект]] [[https://www.youtube.com/watch?v=2AqpyBr2Ji0&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=8 Запись лекции]]
+
Лекция 7 (02.03.2023) RSA, шифрование + ЭЦП. Понятие о криптографии с открытым ключом. [MOV] Подгруппы. Теорема Лагранжа о порядке подгруппы. Циклические группы. [ВЭБ]
  
'''Лекция 6''' (7 октября). Метрики качества классификации, логистическая регрессия. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture06-linclass.pdf Конспект]] [[https://www.youtube.com/watch?v=d0KfYeF-A9A&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=11 Запись лекции]]
+
Лекция 8 (09.03.2023) Следствия теоремы Лагранжа. Первообразные корни (ПК). Критерий ПК. Индексы и их свойства. Криптосистемы Диффи -- Хеллмана и Эль Гамаля. Квадратичные вычеты. Критерий Эйлера.
  
'''Лекция 7''' (14 октября). Логистическая регрессия, метод опорных векторов. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture07-linclass.pdf Конспект]] [[https://www.youtube.com/watch?v=m-MUD9901J0&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=13 Запись лекции]]
+
Лекция 9 (16.03.2023) Символ Лежандра. Простейшие свойства символа Лежандра. Квадратичный закон взаимности. Символ Якоби.  
  
'''Лекция 8''' (22 октября). Многоклассовая классификация, решающие деревья. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture08-trees.pdf Конспект]] [[https://www.youtube.com/watch?v=cB2sQeoZ2lY&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=15 Запись лекции]]
+
Лекция 10 (17.03.2023) Свойства символа Якоби. Псевдопростые числа Эйлера. Тест Соловея -- Штрассена. Протоколы привязки к биту. Привязка к биту Гольдвассер -- Микали. Шифрование Гольдвассер -- Микали. Криптосистема Гольдвассер -- Микали как криптосистема гомоморфного шифрования.
  
'''Лекция 9''' (6 ноября). Решающие деревья, разложение ошибки на смещение и разброс. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture09-ensembles.pdf Конспект]] [[https://www.youtube.com/watch?v=hzLT7Qn1jKw&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=16 Запись лекции]]
+
[https://disk.yandex.ru/d/hVWLMgTBxXHBUQ/%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F%20%D1%87%D0%B8%D1%81%D0%B5%D0%BB%20(%D0%BF%D0%B8%D0%BB%D0%BE%D1%82) Видеозаписи]
  
'''Лекция 10''' (14 ноября). Бэггинг, случайные леса. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture10-ensembles.pdf Конспект]] [[https://www.youtube.com/watch?v=HEVS8MTuIdQ&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=17 Запись лекции]]
+
[https://drive.google.com/file/d/1Cj7MMGnnc8sHbaajGIuj_WaU7XJppNeG/view?usp=sharing Конспект лекций] (будет дорабатываться)
 
+
'''Лекция 11''' (22 ноября). Градиентный бустинг. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture11-ensembles.pdf Конспект]] [[https://www.youtube.com/watch?v=u-SEdfsxOm8&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=19 Запись лекции]]
+
 
+
'''Лекция 12''' (24 ноября). Градиентный бустинг. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture11-ensembles.pdf Конспект]] [[https://www.youtube.com/watch?v=ya2sOjVSNRk&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=20 Запись лекции]]
+
 
+
'''Лекция 13''' (13 декабря). Кластеризация. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture12-unsupervised.pdf Конспект]] [[https://www.youtube.com/watch?v=a6kOoIC7KRM&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=21 Запись лекции]]
+
 
+
'''Лекция 14''' (16 декабря). Кластеризация и визуализация. [[https://github.com/esokolov/ml-course-hse/blob/master/2021-fall/lecture-notes/lecture12-unsupervised.pdf Конспект]] [[https://www.youtube.com/watch?v=SiJWwYXtudw&list=PLEwK9wdS5g0ohn4v-t8yaCOEAC0KT3EPf&index=22 Запись лекции]]
+
  
 
== Семинары ==
 
== Семинары ==
  
'''Семинар 1'''. pandas. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem01-pandas.ipynb Ноутбук]]
+
[https://drive.google.com/file/d/1xcAMuIxRweXe2OwquLAFet1i_FlGYsoO/view?usp=share_link Семинар 1],
 +
[https://drive.google.com/file/d/1JeP_i33HVjYh4xa5f4OTh6k8pmEwbMSW/view?usp=sharing Семинар 2],
 +
[https://drive.google.com/file/d/1si29qrjb8-IwjinOQ9RGZrsah_kuGb1m/view?usp=sharing Семинар 3],
 +
[https://drive.google.com/file/d/1icEzaxof7azcl9TYl2zKLXBzIEVJkLN3/view?usp=sharing Семинар 4],
 +
[https://drive.google.com/file/d/1qACnKnAN_5q8YoTZUALBuzCiguuFM61h/view?usp=sharing Семинар 5],
 +
[https://drive.google.com/file/d/15ixVi9n-0LoJXE-Po17-4A8g0FpFhlrx/view?usp=sharing Семинар 6],
 +
[https://drive.google.com/file/d/1MkS5kSDqtb7kZg1ji5tuvFjz-AFdW8_k/view?usp=sharing Семинар 7],
 +
[https://drive.google.com/file/d/11e7Wsz2EurOXg1tYHDxUQCmnlLp--XBt/view?usp=sharing Семинар 8],
 +
[https://drive.google.com/file/d/11U6uqMNbu6FHG4gGFu-AFM3SsK-Gc7-6/view?usp=sharing Семинар 9],
 +
[https://drive.google.com/file/d/12V3AT7KyJb-UVcnU4kBVrt_bq6eA1xdW/view?usp=sharing Семинар 10]
  
'''Семинар 2'''. sklearn и линейная регрессия. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem02-sklearn-linregr.ipynb Ноутбук]]
+
== Домашние задания ==
 +
[https://drive.google.com/file/d/141IpVFYcQ5kmk37kJDtMfcVZWeEwwTzp/view?usp=share_link ДЗ-1]
 +
[https://drive.google.com/file/d/1brnvq3q4qFuDijbnXhdN4a8rGNG6mSY8/view?usp=sharing ДЗ-2]
 +
[https://drive.google.com/file/d/13hXP1H-wbsXtsnu-ClMKzTTeH57iUgRe/view?usp=sharing ДЗ-3]
 +
[https://drive.google.com/file/d/1B6grzE-KcVaTZSAt1LaCmdCWswqDk4f2/view?usp=sharing ДЗ-4]
 +
[https://drive.google.com/file/d/1qlLxOB7-6wnU_oarM8DTp3lgFocX7pea/view?usp=sharing ДЗ-5]
 +
[https://drive.google.com/file/d/1vt4JST4uWx47G-WNFrtU7G1FKRJmqMvp/view?usp=sharing ДЗ-6]
 +
[https://drive.google.com/file/d/1G4L8qLzHzZhVc0IkLbFFVrjSDAC0pYa9/view?usp=sharing ДЗ-7]
 +
[https://drive.google.com/file/d/17STL86ly4A4ZnlAMsRXeloLfCh_iTsrf/view?usp=sharing ДЗ-8]
 +
[https://drive.google.com/file/d/1cCtCRwj4Q7d6MEt5B1SmOs-Seqf6FqNQ/view?usp=sharing ДЗ-9]
  
'''Семинар 3'''. Матрично-векторное диффернцирование. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem03-vector-diff.pdf Конспект]]
+
== Контрольная работа ==
  
'''Семинар 4'''. Работа с данными и признаками. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem04-features.ipynb Ноутбук]]
+
Контрольная работа 4 марта (суббота) в 9:30, длительность - 1:20.  
  
'''Семинар 5'''. Метрики классификации. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem05-linclass-metrics.pdf Конспект]]
+
Аудитории R201 (240 чел.), R205 (122 чел.), R301 (240 чел.), R304 (192 чел.), R404 (192 чел.), R405 (122 чел.), R503 (112 чел.).
  
'''Семинар 6'''. Калибровка вероятностей. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem06-calibration.ipynb Ноутбук]][[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem06-probs-quantile.pdf Конспект]]
+
[https://disk.yandex.ru/i/u9zxkP-37spzcg Контрольная - обобщённый модельный вариант]
  
'''Семинар 7'''. Решающие деревья. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem07-trees.ipynb Ноутбук]][[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem07-trees.pdf Конспект]]
+
В контрольную 4 марта войдут 7 задач указанных типов.
  
'''Семинар 8'''. Разложение ошибки на смещение и разброс. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem08-bvd.pdf Конспект]]
+
Дистанционное участие возможно для тех, у кого есть уважительная причина, подтверждённая учебным офисом (болезнь, дистанционное обучение, участие в важной олимпиаде).  
 
+
Перед экзаменом преподаватели должны иметь подтверждение из учебного офиса, что у студента есть уважительная причина.
'''Семинар 9'''. Градиентный бустинг. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem09-gbm-part1.pdf Конспект]]
+
 
+
'''Семинар 10'''. Виды градиентного бустинга: XGB, LightGBM, CatBoost. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem10-gbm.pdf Конспект]]
+
 
+
'''Семинар 11'''. Кластеризация. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem11_clustering.ipynb Ноутбук]]
+
 
+
'''Семинар 12'''. Методы понижения размерности: PCE, tSNE. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem12-pca.pdf Конспект]][[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/seminars/sem12_pca_tsne.ipynb Ноутбук]]
+
 
+
== Практические задания ==
+
 
+
'''Задание 1.''' Pandas и распределение студентов ПМИ по элективам.
+
+
Мягкий дедлайн: 22.09.2022 23:59 MSK.
+
 
+
Жесткий дедлайн: 29.09.2022 23:59 MSK.
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-01-pandas.ipynb Ноутбук с заданием]]
+
 
+
Также вы можете скачать ноутбук с заданием (если у вас установлен Wget) командой wget <ссылка на ноутбук> (скопируйте [https://raw.githubusercontent.com/esokolov/ml-course-hse/master/2022-fall/homeworks-practice/homework-practice-01-pandas.ipynb ссылку]) или из Google Colab:
+
 
+
[[https://colab.research.google.com/github/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-01-pandas.ipynb Open In Colab]]
+
 
+
'''Задание 2.''' Exploratory Data Analysis и линейная регрессия (садитесь заранее плиз).
+
+
Дата выдачи: 25.09.2022
+
 
+
Мягкий дедлайн: 23:59MSK 10.10.2022
+
 
+
Жесткий дедлайн: 23:59MSK 18.10.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-02-linregr.ipynb Ноутбук с заданием]]
+
 
+
[[https://colab.research.google.com/github/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-02-linregr.ipynb Open In Colab]]
+
 
+
'''Задание 3.''' Градиентный спуск своими руками.
+
+
Дата выдачи: 12.10.2022
+
 
+
Мягкий дедлайн: 23:59MSK 01.11.2022
+
 
+
Жесткий дедлайн: 23:59MSK 08.11.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-03-gd/homework-practice-03-gd.ipynb Ноутбук с заданием]]
+
 
+
'''Задание 4.''' Линейная классификация, калибровка, категориальные признаки и отбор признаков.
+
+
Дата выдачи: 04.11.2022
+
 
+
Мягкий дедлайн: 23:59MSK 16.11.2022
+
 
+
Жесткий дедлайн: 23:59MSK 23.11.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-04-linclass.ipynb Ноутбук с заданием]]
+
 
+
'''Задание 5.''' Решающие деревья.
+
+
Дата выдачи: 18.11.2022
+
 
+
Мягкий дедлайн: 23:59MSK 30.11.2022
+
 
+
Жесткий дедлайн: 23:59MSK 06.12.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-05-trees/homework-practice-05-trees.ipynb Ноутбук с заданием]]
+
 
+
'''Задание 6.''' Разложение ошибки на смещение и разброс.
+
+
Дата выдачи: 01.12.2022
+
 
+
Мягкий дедлайн: 23:59MSK 11.12.2022
+
 
+
Жесткий дедлайн: 23:59MSK 15.12.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-06-bvd.ipynb Ноутбук с заданием]]
+
 
+
'''Задание 7.''' Бустинговое.
+
+
Дата выдачи: 13.12.2022
+
 
+
Жесткий дедлайн: 23:59MSK 20.12.2022
+
 
+
[[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-practice/homework-practice-07-boosting/homework-practice-07-boosting.ipynb Ноутбук с заданием]]
+
 
+
==Теоретические домашние задания==
+
 
+
'''Теоретическое ДЗ 1.''' Линейные модели. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-theory/homework-theory-01-linear-models.pdf Задания]]
+
 
+
'''Теоретическое ДЗ 2.''' Матрично-векторное дифференцирование и градиентный спуск. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-theory/homework-theory-02-derivatives.pdf Задания]]
+
 
+
'''Теоретическое ДЗ 3.''' Логистическая регрессия и метрики классификации. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-theory/homework-theory-03_part1-logreg-svm.pdf Часть 1]][[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-theory/homework-theory-03_part2-clf-metrics.pdf Часть 2]]
+
 
+
'''Теоретическое ДЗ 4.''' Разложение ошибки на смещение и разброс. [[https://github.com/esokolov/ml-course-hse/blob/master/2022-fall/homeworks-theory/homework-theory-04-bvd.pdf Задания]]
+
 
+
== Соревнования ==
+
 
+
===Правила участия и оценивания===
+
В соревновании по анализу данных вам предлагается по имеющимся данным решить некоторую задачу, оптимизируя указанную метрику, и отправить ответы для заданного тестового множества. Максимальное количество посылок в сутки ограничено (как правило, разрешается сделать 2 посылки), ближе к концу соревнования вам будем необходимо выбрать 2 посылки, которые вы считаете лучшими. Тестовые данные делятся на публичные и приватные в некотором соотношении, на основе которых строятся публичный и приватный лидерборды соответственно, при этом публичный лидерборд доступен в течение всего соревнования, а приватный строится после его окончания для выбранных вами посылок.
+
 
+
В лидербордах каждого из соревнований присутствуют несколько базовых решений (бейзлайнов), каждое из которых соответствует определённой оценке. Например, для получения оценки не ниже 8 баллов необходимо, чтобы ваше решение на '''приватном''' лидерборде оказалось лучше соответствующего бейзлайна. Далее для студента, преодолевшего бейзлайн на N_1 баллов, но не преодолевшего бейзлайн на N_2 балла, итоговая оценка за соревнование рассчитывается по равномерной сетке среди всех таких студентов в зависимости от места в приватном лидерборде среди них; если быть точными, то по следующей формуле:
+
 
+
N_2 - (N_2 - N_1) * i  / M,
+
 
+
где M — количество студентов (из всех студентов, изучающих курс), преодолевших бейзлайн на N_1 баллов, но не преодолевших бейзлайн на N_2 балла;
+
 
+
i — место (начиная с 1) студента в приватном лидерборде среди всех таких студентов.  
+
 
+
Единственное исключение из формулы — студенты, преодолевшие самый сильный бейзлайн, получают прибавку 1/M к своей оценке.
+
 
+
Чтобы вас не пропустили при проверке решений соревнования, '''необходимо''' использовать следующий формат для имени команды (вкладка Team):
+
 
+
«[ПМИ] Имя Фамилия номер_группы»
+
 
+
В течение 3 суток после окончания соревнования в соответствующее задание на anytask необходимо прислать код, воспроизводящий ответы для посылки, фигурирующей в приватном лидерборде. При оформлении кода предполагайте, что данные лежат рядом с ним в папке data, а в результате выполнения кода ответы должны быть записаны в файл solution-N-Username.csv, где N — номер соревнования, Username — ваша фамилия. У нас должна быть возможность запустить код и получить те же ответы, что и в вашей посылке, — в частности, это означает, что:
+
 
+
1. Если вы отправляете файл *.py, мы будем запускать его при помощи команды python *.py в вышеуказанном предположении о местонахождении данных.
+
 
+
2. Если вы отправляете ноутбук *.ipynb, мы последовательно запустим все ячейки ноутбука и будем ожидать в результате его работы формирование файла с ответами.
+
 
+
3. Если вы отправляете код с использованием другого языка программирования, в том же письме направьте нам инструкцию по его запуску с тем, чтобы получить тот же файл с ответами.
+
 
+
В случае отсутствия кода, воспроизводящего результат, в установленный срок студенту выставляется 0 в качестве оценки за соревнование. Студенты, попавшие в топ-3 согласно приватному лидерборду, смогут получить бонусные баллы, если в течение недели после окончания соревнования сдадут в anytask отчет о получении решения, фигурирующего в приватном лидерборде. Если не оговорено иное, использовать любые внешние данные в соревнованиях '''запрещено'''. Под внешними данными понимаются размеченные данные, где разметка имеет прямое отношение к решаемой задаче. Грубо говоря, сборник текстов с википедии не считается внешними данными.
+
 
+
В некоторых соревнованиях данные взяты из завершившегося соревнования на Kaggle.
+
Категорически запрещено использовать данные из оригинального соревнования для восстановления целевой переменной на тестовой выборке.
+
 
+
=== Соревнование 1 ===
+
 
+
Задача: классификация отзывов
+
 
+
Это соревнование на бонусные баллы, оно не является обязательным.
+
 
+
Ссылка для участия: https://www.kaggle.com/t/eb20383504ce4d85ba27c5b12e7767ec
+
 
+
Дедлайн: 10.12.2022 17:00MSK
+
 
+
В задании всего один бейзлайн, ненулевые баллы получают решения, преодолевшие его на приватном лидерборде.
+
Все решения выше этого бейзлайна оцениваются по равномерной шкале от 0 до 5.
+
 
+
'''Важно''': в соревновании запрещено использовать глубинное обучение (как свои архитектуры, так и результаты предобученных моделей вроде w2v, fasttext, bert ит.д.).
+
 
+
== Бонусы за соревнования ==
+
 
+
За успешное участие в соревнованиях по анализу данных могут быть выставлены бонусные баллы, которые можно прибавить к оценке за любое практическое или теоретическое домашнее задание, а также за самостоятельную работу. Под успешным участием понимается попадание в топ-10% мест; если соревнование особо сложное и крупное, может рассматриваться и попадание в топ-20% мест. Конкретное число баллов определяется преподавателями и зависит от сложности соревнования и занятого места. За одно соревнование можно получить не более 5 баллов. Для получения оценки необходимо предоставить краткий отчёт о решении задачи.
+
 
+
== Контрольная работа ==
+
 
+
Контрольная работа состоится 2 декабря на лекции. Продолжительность — 80 минут.
+
 
+
[https://docs.google.com/document/d/1ZWBWIcctdA4T30Ml4MCQp3xrTn5GUU_yrQtTYc9QgJ8/edit?usp=sharing Вопросы для подготовки]
+
 
+
[https://github.com/esokolov/ml-course-hse/blob/master/2020-fall/midterm-fall-2020-example.pdf Нулевой вариант]
+
 
+
[https://github.com/hse-ds/iad-intro-ds/blob/master/2021/kr/kr2021-var0.pdf Нулевой вариант с майнора ИАД (попроще, но всё равно полезно прорешать)]
+
  
 
== Экзамен ==
 
== Экзамен ==
 +
Экзамен письменный, 2.5 часа.
 +
[https://drive.google.com/file/d/1fC2aFymBJCi9Di9xlNjkdxtxjiGxDgNp/view?usp=sharing Билеты к экзамену (с баллами).]
 +
Модельные задачи в последнем билете.
  
[https://docs.google.com/document/d/1azsoR_l2itVB_fFDveMN5zJcXq5cj0OranAM-4esV-k/edit?usp=sharing Вопросы для подготовки]
+
== Оценка ==
  
== Полезные материалы ==
+
Итог = min(10, Округление(0.25 * ДЗ + 0.25 * КР + 0.5 * Э)),
===Книги===
+
где ДЗ — средняя оценка за все домашние задания, КР — оценка за контрольную работу, Э — оценка за экзамен.
* Hastie T., Tibshirani R, Friedman J. The Elements of Statistical Learning (2nd edition). Springer, 2009.
+
Округление арифметическое.
* Bishop C. M. Pattern Recognition and Machine Learning. Springer, 2006.
+
* Mohri M., Rostamizadeh A., Talwalkar A. Foundations of Machine Learning. MIT Press, 2012.
+
* Murphy K. Machine Learning: A Probabilistic Perspective. MIT Press, 2012.
+
* Mohammed J. Zaki, Wagner Meira Jr. Data Mining and Analysis. Fundamental Concepts and Algorithms. Cambridge University Press, 2014.
+
* Willi Richert, Luis Pedro Coelho. Building Machine Learning Systems with Python. Packt Publishing, 2013.
+
 
+
===Курсы по машинному обучению и анализу данных===
+
* [http://www.machinelearning.ru/wiki/index.php?title=Машинное_обучение_%28курс_лекций%2C_К.В.Воронцов%29 Курс по машинному обучению К.В. Воронцова]
+
* [https://yandexdataschool.ru/edu-process/courses/machine-learning Видеозаписи лекций курса Школы Анализа Данных, К.В. Воронцов]
+
* [https://www.coursera.org/specializations/machine-learning-from-statistics-to-neural-networks Coursera: Машинное обучение от статистики до нейросетей (специализация)]
+
* [https://www.coursera.org/specializations/machine-learning-data-analysis Coursera: Машинное обучение и анализ данных (специализация)]
+
* [https://www.coursera.org/learn/introduction-machine-learning Coursera: Введение в машинное обучение, К.В. Воронцов]
+
* [https://openedu.ru/course/hse/INTRML/ Введение в машинное обучение (онлайн-курс НИУ ВШЭ)]
+
 
+
== Страницы предыдущих лет ==
+
  
[[Машинное_обучение_1/2021_2022 | 2021/2022 учебный год]]
 
  
[[Машинное_обучение_1/2020_2021 | 2020/2021 учебный год]]
+
==Книги==
 +
===Основная литература===
 +
# [A] [https://www.studmed.ru/akritas-ag-osnovy-kompyuternoy-algebry-s-prilozheniyami_4cf6c2ced74.html Акритас А.Г. Основы компьютерной алгебры с приложениями. 1994]
 +
# [АУ] [https://uchebnik.mos.ru/system_2/atomic_objects/files/007/640/620/original/alfutova-ustinov-text.pdf Алфутова Н. Б., Устинов А. В. Алгебра и теория чисел. Сборник задач для математических школ. М.: МЦНМО, 2018]
 +
# [Б] [https://mahalex.net/151-153/Buchstab.pdf Бухштаб А. А.,  Теория чисел]
 +
# [ВЭБ] [https://mathprofi.com/uploads/files/2581_f_41_e.b.vinberg-kurs-algebry-2-e-izd.pdf Винберг Э. Б. Курс алгебры]
 +
# [ВИМ] [https://math.ru/lib/book/djvu/vinogradov.djvu Виноградов И. М., Основы теории чисел.]
 +
# [НК] [https://www.studmed.ru/noden-p-kitte-k-algebraicheskaya-algoritmika-s-uprazhneniyami-i-resheniyami-_dc06f6ef316.html Ноден П., Китте К. Алгебраическая алгоритмика]
 +
# [Х] [https://math.ru/lib/120 Хинчин А. Я.,  Цепные дроби.]
 +
# [MOV] [https://doc.lagout.org/network/3_Cryptography/CRC%20Press%20-%20Handbook%20of%20applied%20Cryptography.pdf Menezes A., Oorschot P. van, Vanstone S. Handbook of Applied Cryptography]
  
[[Машинное_обучение_1/2019_2020 | 2019/2020 учебный год]]
+
===Дополнительная литература===
  
[[Машинное_обучение_1/2018_2019 | 2018/2019 учебный год]]
 
  
[[Машинное_обучение_1/2017_2018 | 2017/2018 учебный год]]
 
  
[[Машинное_обучение_1/2016_2017 | 2016/2017 учебный год]]
+
# [https://techlibrary.ru/b/2j1a1s1j1m1f1o1l1p_2w.2v._3a1f1p1r1f1t1j1l1p-1y1j1s1m1p1c2c1f_1a1m1d1p1r1j1t1n2c_1c_1l1r1j1q1t1p1d1r1a1v1j1j._2003.pdf Василенко, О. Н. Теоретико-числовые методы в криптографии МЦНМО, 2003]
 +
# Герман, О. Н., Нестеренко, Ю. Теоретико-числовые методы в криптографии 2012
 +
# Глухов М. М., Круглов И.А., Пичкур А.Б., Черёмушкин А.В. Введение в теоретико-числовые методы криптографии Лань, 2011
 +
# Кнут, Д. Е. Искусство программирования для ЭВМ. Том 2: Получисленные алгоритмы "Вильямс" , М., Санкт-Петербург, Киев, 2000
 +
# [http://lib.ysu.am/open_books/416134.pdf Коблиц Н. Курс теории чисел и криптографии. М.: ТВП, 2001.]
 +
# [http://mmmf.msu.ru/lect/nesterenko/mainnth.pdf Нестеренко Ю. В.,  Теория чисел]
 +
#[https://library.samdu.uz/files/5ef5e9f7c2b02d90200f92776db5bbc3_%D0%92%D0%B2%D0%B5%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5_%D0%B2_%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D1%8E_by_%D0%9F%D0%BE%D0%B4_%D0%BE%D0%B1%D1%89_%D1%80%D0%B5%D0%B4_%D0%AF%D1%89%D0%B5%D0%BD%D0%BA%D0%BE_%D0%92_%D0%92_2012.pdf Ященко, В. В. (ред.) Введение в криптографию, МЦНМО, Москва, 1999]
 +
#  Hoffstein, J.; Pipher, J., Silverman, J. H. An introduction to mathematical cryptography Springer, 2008,

Текущая версия на 20:33, 9 августа 2023

О курсе

Это курс основ теории чисел, который содержит такие базовые разделы как алгоритм Евклида, цепные дроби, арифметические функции, теория сравнений, квадратичные вычеты, первообразные корни. Параллельно будет происходить знакомство с задачами математической криптографии и простейшими криптографическими протоколами.

Предварительная программа

  1. Алгоритмы и их сложность. Классические алгоритмы целочисленной арифметики. Быстрый алгоритм возведения в степень.
  2. Алгоритм Евклида и его варианты. Теорема Ламе. Расширенный алгоритм Евклида.
  3. Конечные цепные дроби. Свойства подходящих дробей.
  4. Бесконечные цепные дроби. Однозначность представления действительных чисел цепными дробями. Теорема Лагранжа.
  5. Теория сравнений. Кольцо вычетов. Группа обратимых кольца вычетов. Теорема Вильсона. Функция Эйлера. Теоремы Ферма и Эйлера. [Простейшие детерминированные и вероятностные тесты на простоту. Псевдопростые, абсолютно псевдопростые и сильно псевдопростые числа. Понятие о криптографии с открытым ключом. Система шифрования RSA. Криптосистема Эль-Гамаля.]
  6. Китайская теорема об остатках. Решение систем линейных сравнений. Решение полиномиальных сравнений. [Криптосистема Рабина и её модификации. ]
  7. Квадратичные вычеты. Свойства символов Лежандра и Якоби. Квадратичный закон взаимности. [Тест Соловея--Штрассена. Псевдопростые числа Эйлера. Протоколы, использующие свойства символа Якоби. Генератор Блюм -- Блюма -- Шуба. Криптосистема Блюма -- Гольдвассер. Криптосистема Гольдвассер -- Микали.]
  8. Первообразные корни и индексы. Структура группы $\mathbb{Z}^*_m$ для произвольного $m$ [Метод Диффи-Хеллмана. Дискретное логарифмирование. Протоколы аутентификации и "подбрасывание монеты по телефону". Хеш-функция Шаума -- Хайста -- Пфитсман.]
  9. Интерполяционный многочлен Лагранжа и его связь с китайской теоремой об остатках. Умножение Карацубы. [Разделение секрета Шамира.]
  10. Дискретное преобразование Фурье. Быстрое преобразование Фурье.

Полезные ссылки

Дополнительные главы теории чисел (курс в 4-м модуле 2022-2023 у.г.)

Семинары

221, 222 -- Устинов Алексей Владимирович, 223, 224 -- Калмынин Александр Борисович.

Ассистенты

221 - Свирщевский Юрий, 222 - Шевченко Пётр, 223 - Кучерявый Пётр, 224 - Пичушкин Антон.

Правила выставления оценок

В домашнем задании каждая задача оценивается в 10 баллов. Баллы за задачи суммируются и линейно шкалируются на 10-балльную шкалу без округления. Итоговая оценка за ДЗ получается усреднением оценок по всем ДЗ (без округления). Округление происходит только в конце при вычислении итоговой оценки за курс.

Правила сдачи заданий

Всё должно быть написано аккуратно и понятно.

Лекции

Лекция 1 (12.01.2023) Сложность алгоритмов. Алгоритм Евклида. Теорема Ламе. Расширенный алгоритм Евклида. [A]

Лекция 2 (19.01.2023) Основная теорема арифметики. Уравнение ax+by=c. Цепные дроби. Представление рациональных чисел конечными цепными дробями. Рекуррентные соотношения на числители и знаменатели подходящих дробей. [Б, ВИМ,Х]

Лекция 3 (26.01.2023) Свойства подходящих дробей. Бесконечные цепные дроби. Приближение чисел подходящими дробями. Теорема Лежандра (критерий подходящей дроби).[Б, ВИМ, Х]

Лекция 4 (02.02.2023) Теорема Лежандра (критерий подходящей дроби). Сравнения и их свойства. Полная и приведённая системы вычетов. Функция Эйлера. Теорема Эйлера. Малая теорема Ферма. Псевдопростые числа Ферма.

Лекция 5 (03.02.2023) Тест "Ферма". Числа Кармайкла. Китайская теорема об остатках (два доказательства). Группы, кольца, поля. Кольцо вычетов. Группа обратимых элементов кольца вычетов. [ВЭБ]

Лекция 6 (16.02.2023) Теорема о числе корней многочлена над полем. Теорема Вильсона. Тест сильной псевдопростоты. Изоморфизм групп. Изоморфизм колец. Прямое произведение групп. Прямое произведение колец. Китайская теорема об остатках как изоморфизм колец. Мультипликативность функции Эйлера. Формула для вычисления функции Эйлера. [НК]

(23.02.2023) Лекция пропала из-за праздника.

Лекция 7 (02.03.2023) RSA, шифрование + ЭЦП. Понятие о криптографии с открытым ключом. [MOV] Подгруппы. Теорема Лагранжа о порядке подгруппы. Циклические группы. [ВЭБ]

Лекция 8 (09.03.2023) Следствия теоремы Лагранжа. Первообразные корни (ПК). Критерий ПК. Индексы и их свойства. Криптосистемы Диффи -- Хеллмана и Эль Гамаля. Квадратичные вычеты. Критерий Эйлера.

Лекция 9 (16.03.2023) Символ Лежандра. Простейшие свойства символа Лежандра. Квадратичный закон взаимности. Символ Якоби.

Лекция 10 (17.03.2023) Свойства символа Якоби. Псевдопростые числа Эйлера. Тест Соловея -- Штрассена. Протоколы привязки к биту. Привязка к биту Гольдвассер -- Микали. Шифрование Гольдвассер -- Микали. Криптосистема Гольдвассер -- Микали как криптосистема гомоморфного шифрования.

Видеозаписи

Конспект лекций (будет дорабатываться)

Семинары

Семинар 1, Семинар 2, Семинар 3, Семинар 4, Семинар 5, Семинар 6, Семинар 7, Семинар 8, Семинар 9, Семинар 10

Домашние задания

ДЗ-1 ДЗ-2 ДЗ-3 ДЗ-4 ДЗ-5 ДЗ-6 ДЗ-7 ДЗ-8 ДЗ-9

Контрольная работа

Контрольная работа 4 марта (суббота) в 9:30, длительность - 1:20.

Аудитории R201 (240 чел.), R205 (122 чел.), R301 (240 чел.), R304 (192 чел.), R404 (192 чел.), R405 (122 чел.), R503 (112 чел.).

Контрольная - обобщённый модельный вариант

В контрольную 4 марта войдут 7 задач указанных типов.

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

Экзамен

Экзамен письменный, 2.5 часа. Билеты к экзамену (с баллами). Модельные задачи в последнем билете.

Оценка

Итог = min(10, Округление(0.25 * ДЗ + 0.25 * КР + 0.5 * Э)), где ДЗ — средняя оценка за все домашние задания, КР — оценка за контрольную работу, Э — оценка за экзамен. Округление арифметическое.


Книги

Основная литература

  1. [A] Акритас А.Г. Основы компьютерной алгебры с приложениями. 1994
  2. [АУ] Алфутова Н. Б., Устинов А. В. Алгебра и теория чисел. Сборник задач для математических школ. М.: МЦНМО, 2018
  3. [Б] Бухштаб А. А., Теория чисел
  4. [ВЭБ] Винберг Э. Б. Курс алгебры
  5. [ВИМ] Виноградов И. М., Основы теории чисел.
  6. [НК] Ноден П., Китте К. Алгебраическая алгоритмика
  7. [Х] Хинчин А. Я., Цепные дроби.
  8. [MOV] Menezes A., Oorschot P. van, Vanstone S. Handbook of Applied Cryptography

Дополнительная литература

  1. Василенко, О. Н. Теоретико-числовые методы в криптографии МЦНМО, 2003
  2. Герман, О. Н., Нестеренко, Ю. Теоретико-числовые методы в криптографии 2012
  3. Глухов М. М., Круглов И.А., Пичкур А.Б., Черёмушкин А.В. Введение в теоретико-числовые методы криптографии Лань, 2011
  4. Кнут, Д. Е. Искусство программирования для ЭВМ. Том 2: Получисленные алгоритмы "Вильямс" , М., Санкт-Петербург, Киев, 2000
  5. Коблиц Н. Курс теории чисел и криптографии. М.: ТВП, 2001.
  6. Нестеренко Ю. В., Теория чисел
  7. Ященко, В. В. (ред.) Введение в криптографию, МЦНМО, Москва, 1999
  8. Hoffstein, J.; Pipher, J., Silverman, J. H. An introduction to mathematical cryptography Springer, 2008,