Мы используем cookie для стабильной работы сервиса. Подробнее

Теоретическая информатика: сложность вычислений

ФорматОнлайн
Объём7 занятий
По окончанииComputer Science центр
О курсе

Подробнее

Слова «теоретическая информатика», а особенно их английский вариант (“theoretical computer science”), звучат странно — как «сухое плавание». Но в них есть смысл, причём не только для теоретиков: абстрактные конструкции и математические результаты, если они хорошо поняты, в нужный момент могут натолкнуть на решение вполне практической задачи.Мы попытались отобрать простые и одновременно важные понятия и результаты, которые могут вам пригодиться. Некоторые из них совсем практические (скажем, инварианты циклов, коды с исправлением ошибок или криптографические протоколы), другие скорее указывают границы возможностей (скажем, результаты об алгоритмической неразрешимости или NP-полноте). Разделы достаточно независимы, так что если что-то не понравилось или показалось непонятным, можно идти дальше.По большей части мы не используем сложной математики (а базовые результаты про целые числа мы напоминаем) и каких-то конкретных программистских навыков, но, конечно, некоторая математическая грамотность и программистский опыт не повредят.Наконец, заранее просим прощения, если курс покажется вам неудачным — рассказывать что-то, не видя реакции, всегда трудно, и это скорее первый блин, чем результат многолетней практики.
Требования

Что нужно для старта

  • По большей части мы не используем сложной математики (а базовые результаты про целые числа мы напоминаем) и каких-то конкретных программистских навыков, но, конечно, некоторая математическая грамотность и программистский опыт не повредят.
Аудитория

Для кого этот курс

  • студенты младших курсов
Содержание

Программа курса

7 занятий
ТемаЧто внутри
01О чём этот курс?

- Предисловие

02Разрешающие деревья

- Отгадывание числа: верхние и нижние оценки
- Отгадывание с ошибками
- Поиск максимума
- Сортировка: примеры
- Сортировка: верхние и нижние оценки для n
- Ещё несколько задач

03Схемы из функциональных элементов

- Связки, функциональные элементы, ДНФ и КНФ, полнота
- Оценки сложности. Сумма, сравнение
- Оценки сложности произвольных функций

04Пропозициональная логика

- Формулы. Следование. Тавтологии. Выполнимость
- Следование и выводимость
- Исчисление резолюций и его полнота
- Доказательства полноты исчисления резолюций
- Поиск вывода или контрпримера
- Ещё о принципе Дирихле (приглашённый лектор --- Всеволод Опарин)
- Логика линейного программирования

05Переборные задачи и их сложность

- Переборные задачи
- Полиномиальные задачи
- Неразрешимые задачи
- Примеры переборных задач
- Сравнение сложности: сведение
- Переборные задачи вокруг нас
- NP-полные задачи
- Задача 3-CNF NP-полна
- Задача о независимом множестве NP-полна
- Задача о 3-раскраске NP-полна
- Задачи поиска сводятся к задачам проверки

06Класс PSPACE

- Определение класса
- Игры, стратегии, кванторы
- Выигрышные и проигрышные позиции. Доказательство теоремы Цермело
- PSPACE и игры

07Ускорение перебора

- Чего мы хотим
- Задача о раскраске графа
- Задачи 2-SAT и 3-SAT

01О чём этот курс?

- Предисловие

02Разрешающие деревья

- Отгадывание числа: верхние и нижние оценки
- Отгадывание с ошибками
- Поиск максимума
- Сортировка: примеры
- Сортировка: верхние и нижние оценки для n
- Ещё несколько задач

03Схемы из функциональных элементов

- Связки, функциональные элементы, ДНФ и КНФ, полнота
- Оценки сложности. Сумма, сравнение
- Оценки сложности произвольных функций

04Пропозициональная логика

- Формулы. Следование. Тавтологии. Выполнимость
- Следование и выводимость
- Исчисление резолюций и его полнота
- Доказательства полноты исчисления резолюций
- Поиск вывода или контрпримера
- Ещё о принципе Дирихле (приглашённый лектор --- Всеволод Опарин)
- Логика линейного программирования

05Переборные задачи и их сложность

- Переборные задачи
- Полиномиальные задачи
- Неразрешимые задачи
- Примеры переборных задач
- Сравнение сложности: сведение
- Переборные задачи вокруг нас
- NP-полные задачи
- Задача 3-CNF NP-полна
- Задача о независимом множестве NP-полна
- Задача о 3-раскраске NP-полна
- Задачи поиска сводятся к задачам проверки

06Класс PSPACE

- Определение класса
- Игры, стратегии, кванторы
- Выигрышные и проигрышные позиции. Доказательство теоремы Цермело
- PSPACE и игры

07Ускорение перебора

- Чего мы хотим
- Задача о раскраске графа
- Задачи 2-SAT и 3-SAT

Документ после выпуска

Computer Science центр

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «Теоретическая информатика: сложность вычислений» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 7 сентября 2026 г.

Продолжить выбор

Похожие курсы

Годовой математика с Сашей Теплой + русский язык с Александром | 6 класс
9 ноября
Годовой математика с Сашей Теплой + русский язык с Александром | 6 класс

Комбо курсов по математике и русскому языку для 6 класса — это возможность системно пройти программу сразу по двум ключевым школьным предметам и не терять базу в течение года. Рег…

Онлайн3 занятийНачальный
Персональный наставникДомашние задания+4
61 690 ₽от 7 590 ₽/мес
Bioinformatics Algorithms @UNBC
Bioinformatics Algorithms @UNBC

How do we sequence and compare genomes? How do we identify the genetic basis for disease? How do we construct an evolutionary Tree of Life for all species on Earth? When you compl…

Онлайн11 занятий
70 ₽
Начать без затрат

Бесплатные курсы

Как читать математику — разбираем матан вместе.
Бесплатно3 часа
Как читать математику — разбираем матан вместе.

Открыть учебник, понять все слова и всё равно потерять смысл — нормальный опыт. Математический текст приходится читать иначе: строить собственные примеры, распутывать определения…

Онлайн1 занятий
Бесплатно
Комбинаторика для начинающих — курс А.М. Райгородского (МФТИ)
Бесплатно2-3
Комбинаторика для начинающих — курс А.М. Райгородского (МФТИ)

🏆 Номинант Stepik Awards 2024 в категории «Лучший бесплатный курс».Комбинаторика учит заменять длинный перебор одной хорошей идеей. Андрей Райгородский начинает с правил сложения…

Онлайн7 занятий
Бесплатно
Основы перечислительной комбинаторики
Бесплатно5-8 часов в неделю
Основы перечислительной комбинаторики

В курсе излагаются элементы классической перечислительной комбинаторики - науки, являющейся фундаментом для многих других курсов дискретной математики. Основной упор делается на б…

Онлайн5 занятий
Бесплатно