Методы и средства разработки верифицируемого программного обеспечения с использованием предметно-ориентированных языков, имеющих заданную формальную семантикуНИР

Theory and implementation of verifiable software development process using domain-specific languages with defined formal semantics

Источник финансирования НИР

грант РФФИ

Этапы НИР

# Сроки Название
1 1 января 2016 г.-31 декабря 2016 г. Получение промежуточного представления и разработка макетов средств для работы с таким представлением
Результаты этапа:
2 1 января 2017 г.-31 декабря 2017 г. Разработка методов описания формальной семантики предметно-ориентированных языков
Результаты этапа: 1. Система типов промежуточного представления расширена дополнительными достаточными условиями завершимости функции, а именно: - отсутствие рекурсивного вызова; - наличие рекурсивного вызова, для которого мера длины входной цепочки строго убывает при переходе по графу вызовов; - наличие рекурсивного вызова, для которого при некоторой заданной мере (завершимой функции из входных аргументов исходной функции в натуральные числа), значение меры на входной цепочке строго убывает при переходе по графу вызовов. 2. Макет программного средства проверки типов расширен для поддержки проверки условий завершимости функции с учётом их аннотации используемым достаточным условием. 3. Реализованы методы описания формальной семантики предметно- ориентированных языков в терминах промежуточного представления. Формальная семантика описывается как последовательное приближение типа функции от наиболее общего, соответствующего λ-исчислению с простыми типами, до наиболее точного, соответствующего коду функции в промежуточном представлении. Семантика предметно-ориентированных языков описывается в виде интерпретатора или транслятора предложений языка в промежуточном представлении. 4. В форме предметно-ориентированного языка с заданной формальной семантикой реализован способ описания синтаксиса, полученный при решении задачи 1.5. Для описания синтаксиса используется подход на основе типизрованных комбинаторов парсеров
3 1 января 2018 г.-31 декабря 2018 г. Разработка методов описания формальной семантики предметно-ориентированных языков
Результаты этапа: Общей целью проекта на весь срок исследований по проекту являлась разработка методов и реализующих их программных средств, которые, в свою очередь, предназначены для спецификации и разработки сложных наукоёмких программных комплексов с использованием языков программирования, адекватно отражающих специфику предметной области (предметно-ориентированных языков), а также для получения формального, проверяемого алгоритмически доказательства соответствия программ таким спецификациям. В ходе проекта получены следующие основные результаты. 1. Разработано промежуточное представление для описания семантики предметно-ориентированных языков. 2. Реализован макет программного средства проверки типов (спецификаций) для подмножества промежуточного представления. 3. Обоснована возможность реализации методов для автоматизации процесса верификации программ, написанных на предметно-ориентированных языках. 4. Разработан макет библиотек программных модулей для описания синтаксиса предметно-ориентированных языков и их трансляции в промежуточное представление. 5. Для иллюстрации предлагаемого подхода разработан набор предметно-ориентированных языков для описания фрагмента реализации функциональных возможностей сложно организованных информационно-аналитических систем.

Прикрепленные к НИР результаты

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