меню

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

Студенты группы направлений Прикладная математика и программирование семикратные победители чемпионата ICPC. Выигрывали конкурсы по программированию: VK Cup, Russian Code Cup, Яндекс.Алгоритм, Facebook Hacker Cup. В модуле студентам будут предложены две математические дисциплины, с одной стороны, дисциплины довольно абстрактны и относятся к чистой математике. С другой — обе имеют широкое применение в инженерной деятельности и программировании.

Дисциплины модуля:

Функциональный анализ

Функциональный анализ появился в результате обобщения идей и методов таких дисциплин, как математический анализ, линейная алгебра и геометрия. Изучение функционального анализа не только позволяет решить конкретную задачу, но и понять области применения и возможные обобщения. Основные объекты изучения в функциональном анализе – это не конкретные функции, как в математическом анализе, а операторы (линейные и нелинейные) в пространствах функций. Цель курса – представить абстрактные методы функционального анализа, наиболее существенные для приложений.

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

Пререквизиты: освоенные курсы Линейная алгебра, Математический анализ.

Уровень сложности: 1

Форма контроля: зачет


Преподаватели:


Додонов Николай Юрьевич

Кандидат физико-математических наук, доцент факультета информационных технологий и программирования.

Математическая логика

Математическая логика — это наука о правильных математических рассуждениях, и сама по себе относится к основаниям математики. Однако, математическая логика необходима для понимания таких областей программирования как теория компиляторов или верификация программного обеспечения. Изложение материала, в целом, следует академической традиции, и преследует цель подготовить студентов к освоению конкретных практических дисциплин. Материал данного курса излагается в форме онлайн-лекций. С лекциями даются простые задания для самоконтроля и понимания материала. Также, студентам будут предложены лабораторные работы. В курсе множество конструктивных теорем. Потому предлагаемые лабораторные работы — это практические задания на программирование: на построение, проверку, перестроение формальных доказательств.

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

Пререквизиты: студенты должны иметь базовые математические знания (бинарные отношения и их свойства, функции, вещественные числа, множества, мощность множеств, счётность, базовые понятия теории графов). Также, необходимо владеть языком программирования (одним из следующих: C, C++, Java, Kotlin, Haskell, Ocaml) и иметь базовые навыки программирования (списки, деревья, грамматики, разбор выражений)

Уровень сложности: 1

Форма контроля: зачет


Преподаватели:


Штукенберг Дмитрий Григорьевич

Преподаватель факультета информационных технологий и программирования.