Семинары

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 16 декабря 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Александр Наумчев (Russian Research Institute, Новосибирск)
Тема: Сортировка и поиск в многомерных пространствах

Это обзорный доклад, фокусирующийся на алгоритмах сортировки и поиска ближайших соседей в многомерных векторных пространствах — ключевых операциях векторных СУБД. Дается краткое описание роли векторных СУБД как важных компонентов автономных больших языковых моделей (agentic LLMs). Анализируется проблема “проклятия размерности”, которая является непреодолимым препятствием на пути к точному решению задачи поиска ближайших соседей. Классифицируются основные подходы к решению приближенного варианта данной задачи и методы их сравнения друг с другом. Также рассматривается роль современных аппаратных средств в ускорении работы с многомерными векторными данными на примере некоторых конкретных подходов. Доклад завершается формулировкой острых проблем, стоящих перед разработчиками и пользователями прикладных векторных СУБД, а также кратким обзором оригинальных подходов к решению этих проблем.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 16 декабря 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Александр Максимович Миллер (студент 4-го курса ММФ НГУ)
Тема: Baldur: как большие языковые модели учатся автоматически доказывать теоремы и исправлять ошибки в Isabelle/HOL.

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

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 9 декабря 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Максим Вячеславович Нейзов (Институт Автоматики и Электрометрии СО РАН)
Тема: Loom: Использование симметрии при разработке и верификации программных реагирующих систем

Большое пространство состояний реальных программ затрудняет или делает невозможной их непосредственную верификацию методом проверки модели (model checking). Наличие симметрии в программе достаточно часто позволяет упростить модель и сократить её пространство состояний, что приводит к резкому снижению времени верификации. Классический подход состоит в обнаружении группы симметрии и построении на её основе упрощенной модели для верификации. Однако не все инструменты имеют поддержку симметрии, а инструменты с такой поддержкой не всегда справляются с поставленной задачей.

В докладе предлагается альтернативный классическому подход к разработке программ основанный на симметрии. В программе выделяется ядро – координационный центр, который работает с учётом симметрии и отвечает за выполнимость заданных темпоральных свойств.

Ядро координирует вычисления, которые вынесены за его пределы – в обвязку ядра. В связи с этим ядро имеет небольшое пространство состояний и может быть верифицировано методом проверки модели. Обвязка не может вмешиваться в работу верифицированного ядра и нарушать его свойства.

Подход продемонстрирован на примере разработки и верификации арбитра ресурсов марсохода. Арбитр координирует доступ n процессов к m ресурсам, где n и m -- натуральные числа. Используются язык программирования C/C++ и инструмент проверки модели Spin. Модель поведения ядра автоматически извлекается верификатором Spin из C-кода. Проверке подлежат темпоральные свойства, выраженные в логике LTL.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 2 декабря 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Владимир Гладштейн (National University of Singapore, Amazon Web Services)
Тема: Loom: Платформа для разработки Фундаментальных Мульти-Модальных Систем Верификации, часть 2

В этом докладе мы продолжим говорить про Loom и затронем два новых аспекта которые не были освещены в первом докладе. Во-первых, я представлю Veil — платформу для автоматической и интерактивной верификации систем переходов (transition systems), специализиранный на построении машинных доказательств о конкурентных и распределённых алгоритмах. Veil как и Velvet построен на основе Loom. Он позволяет описывать системы переходов и их спецификации на простом императивном языке, тестировать ее, и затем, генерируя условия верификации (verification conditions) в логике первого порядка, автоматически доказывать ее корректность с помощью SMT-решателей. Точно так же как и в Velvet, eсли автоматическая верификация не справляется или если описание системы требует утверждений в логике высшего порядка, Veil предоставляет интерактивный режим верификации — благодаря тому, что он встроен в универсальный ассистент доказательств.

Во-вторых мы вернемся к Velvet и посмотрим как в нем можно сочитать различные методы проверки корректности программ: property-based testing, доказательства тотальной и частичной корректности, а также доказательства корректности и некорректности.

Слайды будут на английском, выступление - на русском.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 25 ноября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Виталий Курин (Neapolis University Pafos)
Тема: Платформа для разработки Фундаментальных Мульти-Модальных Систем Верификации

Мульти-Модальная верификация программ — это процесс проверки соответствия кода его спецификации с использованием как динамических, так и символических методов, а также доказательства его корректности с помощью сочетания автоматических и интерактивных инструментов машинной поддержки. Чтобы таким инструментам можно было доверять, они сами должны сопровождаться формальными доказательствами корректности (soundness), устанавливающими, что любая программа, проверенная ими на соответствие спецификации, не нарушит её условия при исполнении. Инструменты верификации, корректность которых доказана внутри универсального доказательного ассистента с малым доверенным ядром, обычно называются фундаментальными (foundational).

В этом докладе я представлю Loom: платформу, которая упрощает и оптимизирует разработку систем верификации программ, являющихся как Фундаментальными, так и Мульти-Модальными. Наш подход основан на известной идее Монадического Неглубоко Вложения (Monadic Shallow Embedding) семантики исполняемой программы в язык теорем прувера, основанного на логике высшего порядка, в нашем случае — Lean. Мы предоставляем библиотеку Трансформеров Монад (Monad Transformers) для такой семантики, кодирующую различные вычислительные эффекты, включая состояние, расходимость программ, обработка исключений и недетерминизм, а также механизм автоматического вывода соответствующих генераторов корректных условий верификации.

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

Одна из систем верификации, основанная на Loom - язык Velvet. Пользователи могут использовать Velvet для спецификации императивных программ в стиле Dafny и их механической верификации. В рамках соревнования VeHa 2025 язык Velvet получилось успешно применить для задачи верификации алгоритма поиска подстроки.

Слайды будут на английском, выступление - на русском.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 18 ноября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчики: Бельтюков Анатолий Петрович (профессор, Удмуртский государственный университет, Институт математики, информационных технологий и физики) и Милад Джудакизаде (аспирант, Удмуртский государственный университет)
Тема: Дедуктивный синтез программ в логическом программировании

Представляется подход к дедуктивному синтезу программ с использованием секвенциального метода Генцена в рамках логического программирования. Используя секвенциальное исчисление как формальную систему для структурированного логического вывода, наш метод автоматизирует вывод доказуемо корректных программ из спецификаций, выраженных в логике предикатов первого порядка без отрицаний. Мы формализуем синтаксис и семантику секвенциального исчисления, реализуя его основные правила вывода (правила введения и удаления) в логическом программировании для обеспечения масштабируемого синтеза. Практические примеры демонстрируют преобразование логических спецификаций в исполняемые программы. Подход обеспечивает формальную корректность через конструктивную семантику реализуемости Клини, при этом синтезированные программы работают в субрекурсивном языке, чтобы гарантировать завершение вычислительных процессов. Мы оцениваем сильные стороны метода, включая его надежность для систем с критической безопасностью, и его ограничения, такие как вычислительная сложность для неограниченных конструкций. В сравнении с синтезом, управляемым ИИ, наш подход ставит на первое место формальные гарантии, дополняя современные тенденции. Направления будущих исследований включают оптимизацию вычислительной эффективности и расширение применимости к сложным задачам реального мира.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 11 ноября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Сергей Михайлович Старолетов (с.н.с. Института Автоматики и Электрометрии СО РАН, доцент АлтГТУ)
Тема: Вещественная арифметика IEEE 754, подходы к тестированию и верификации

Вещественные числа типа float и double всегда казались магией, ведь кажется, что они могут хранить всё! Но это далеко не так и для реализации систем надежных вычислений нужно понимать, как они работают. Лучший способ это понять - это написать собственную библиотеку, которая сможет проходить тесты стандарта IEEE 754. В докладе будет рассмотрен опыт реализации умножения таких чисел и тесты для этого. Также рассмотрим статью на SPIN2019, в которой было предложено верифицировать такие вычисления методом Model Checking и оценим число состояний для такой реализации.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

В пятницу 7 ноября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Семинар будет совмещён с приглашённой лекцией на контесте по формальной верификации VeHa-2025, поэтому пройдет полностью онлайн и состоится в необычный день и время: в пятницу 7 ноября в 16:00 мск (20:00 нск).

Докладчик: Alexei Lisitsa (School of Computer Science and Informatics, University of Liverpool)
Тема: Finite Countermodel Finding for Infinite State and Parametrized Verification

In this talk, I will present an overview of the Finite Countermodel Method (FCM), a powerful approach to the verification of infinite-state and parameterized systems. I will demonstrate multiple applications of the method and will discuss its relative completeness with respect to methods based on regular invariants.

Выступление будет онлайн, на русском со слайдами на английском.

Ссылка на подключение — постоянная: https://telemost.yandex.ru/j/28529522210499

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 28 октября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Разбитнова Юлия Юрьевна, студент 2-го курса магистратуры ММФ НГУ
Тема: Язык Verilog: от описания аппаратуры до формальной верификации

Доклад представляет собой обзор языка Verilog — одного из ключевых языков описания аппаратуры (HDL). Рассматриваются основные концепции и конструкции языка, его роль в проектировании, моделировании и верификации цифровых систем, включая использование формальных методов.

Вниманию участников семинара! Так как следующий вторник 4 ноября — День народного единства, то семинар пройдет или в четверг 6 ноября, или в пятницу 7 ноября, день, время , тема и докладчик будут объявлены заранее.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 21 октября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Бояндин Лев Константинович, студент 3-го курса бакалавриата ММФ НГУ
Тема: Краткий экскурс в K Framework

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

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 14 октября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: Николай Вячеславович Шилов (преподаватель Лицея 22 "Надежда Сибири")
Тема: Студент! Учись доказывать рекурсивные программы правильно!

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

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 7 октября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: магистрант СПбГУ Мищенко Станислав
Тема: Обзор конференции FormaliSE 2024 и реферат статьи "A Semantics of Structures, Unions, and Underspecified Terms for Formal Specification"

Доклад содержит обзор работ конференции FormaliSE 2024 - ежегодной конференции, посвящённой работам на пересечении формальных методов и разработки.

Более подробно будет рассмотрена статья "A Semantics of Structures, Unions, and Underspecified Terms for Formal Specification" (Louis Gauthier, Virgile Prevosto, Julien Signoles, 2024). В этой работе предлагается формализация семантики для части языка ACSL. ACSL - язык спецификации для C, используемый в наборе инструментов верификации Frama-C для аннотации кода. На момент начала работы семантика ACSL не была формально описана, что позволяло неоднозначно трактовать спецификации. Эта статья представляет собой первый этап формализации семантики на Coq. Приведённая семантика основана на семантикe языка C, предложенной в "The C Standard Formalized in Coq" (R. Krebbers, 2015). Наибольшее внимание в статье уделено описанию семантики равенства структур, объединений и логике обработки не полностью специфицированных термов, эти темы не были рассмотрены ранее в других статьях, посвящённых языкам спецификации.

Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Во вторник 30 сентября 2025 г. пройдет семинар "Теоретическое и экспериментальное программирование" (Руководитель: к.ф.-м.н., с.н.с. Гаранина Н.О., соруководители: к.ф.-м.н., н.с. Кондратьев Д.А., к.ф.-м.н., с.н.с. Ануреев И.С., секретарь: к.ф.-м.н. Шилов Н.В.).

Время проведения: 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Докладчик: к.т.н., с.н.с. Шелехов Владимир Иванович (ИСИ СО РАН)
Тема: Предпосылки создания ассоциации формальных методов

Наконец-то и в России появились пока небольшие группы специалистов, применяющих формальные методы в производственном программировании. Назрела необходимость объединения специалистов для решения существующих проблем в сфере формальных методов на государственном уровне. Предлагаемая форма объединения – ассоциация специалистов, считающих формальные методы своей профильной дисциплиной.

В докладе будет представлен анализ по следующим аспектам:

  • позиция научной дисциплины «Формальные методы» в системе наук;
  • краткое определение формальных методов: понятия задачи, спецификации, верификации и т.д.
  • области применения формальных методов;
  • состояние исследований и применений формальных методов в нашей стране;
  • проблемы обучения формальным методам;
  • основные задачи развития дисциплины исходя из текущего состояния.
Семинар теоретического и экспериментального программирования имени В.А. Непомнящего

Семинар возобновляет серию одноименных научных семинаров Института систем информатики СО РАН и носит имя своего основателя Валерия Александровича Непомнящего.

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

В рамках семинара предполагаются доклады о собственных исследованиях, обзор конференций и/или интересных работ отечественных и зарубежных ученых, а также просмотр и обсуждение докладов ведущих ученых и представителей индустрии.

Семинар проводится еженедельно по вторникам 17.00-18.30 НСК (13.00-14.30 МСК) очно в к. 239 ИСИ СО РАН и онлайн по ссылке.

Анонсы, слайды докладов и другая информация будут доступны в группе телеграм.

Руководитель: к.ф.-м.н., с.н.с. Гаранина Наталья Олеговна
Соруководители: к.ф.-м.н., н.с. Кондратьев Дмитрий Александрович, к.ф.-м.н., с.н.с. Ануреев Игорь Сергеевич
Секретарь: к.ф.-м.н. Шилов Николай Вячеславович

Первый семинар состоится 23 сентября в 17:00 в каб. 239 ИСИ СО РАН.

Докладчик: к.ф.-м.н., с.н.с. Гаранина Наталья Олеговна
Тема: Безопасные мутации взаимодействующих автоматов: на пути к либеральному программированию

В нашей работе мы исследуем изменения взаимодействующих через каналы FIFO-машин, формализующих поведение акторов коммуникационных протоколов. Мотивацией нашей работы служит тот факт, что описание поведения акторов на специализированных языках программирования протоколов, может изменяться в силу различных причин, таких как изменение содержания сообщений, изменение условий или последовательности получения и отправки сообщений, изменение адресатов и т.п. Во всех этих случаях необходимо убедиться, что коммуникационный протокол, участником которого является изменившийся актор, по-прежнему остаётся корректным. Формальная верификация коммуникационных протоколов является ресурсоёмкой процедурой, поэтому целесообразно определить безопасные изменения поведения акторов, сохраняющие корректность протокола. В этой работе мы рассматриваем класс мутаций акторов, который предполагает включение поведений акторов, т.е. мутировавший актор выполняет только часть работы оригинального актора.