ИСТИНА |
Войти в систему Регистрация |
|
ИПМех РАН |
||
Тема исследований диссертационной работы - проблема эквивалентности программ. Исследования охватывают несколько аспектов этой проблемы: математические модели программ, используемые для ее формализации, отношения между этими моделями, методы построения разрешающих алгоритмов в некоторых моделях программ, сложность проблемы эквивалентности. Цель диссертационной работы} - решение следующих задач. 1) Установить необходимые и достаточные условия выполнимости отношения аппроксимации динамических семантик, а также тип отношения аппроксимации в различных классах динамических семантик. 2) Разработать общий метод построения эффективных алгоритмов проверки эквивалентности программ в рассматриваемых формальных системах вычислений. 3) Выделить классы динамических семантик, для которых задача проверки эквивалентности программ разрешима, и в том числе классы динамических семантик, для которых эта задача разрешима за время, полиномиально зависящее от размеров анализируемых программ. Основные результаты 1. Для динамических семантик - множеств моделей пропозициональной динамической логики, - задающих интерпретацию операторов и предикатов последовательных, рекурсивных и потоковых программ, установлены необходимые условия и доcтаточные условия выполнимости отношения аппроксимации в различных классах динамических семантик. 2. Установлен тип отношения аппроксимации в различных классах динамических семантик пропозициональных программ. 3. Установлены достаточные условия существования для заданной динамической семантики ее наиболее точной аппроксимации в классе однородных динамических семантик. 4. Для решения проблемы эквивалентности последовательных программ предложен новый подход - метод совместных вычислений, позволяющий, используя теоретико-автоматное или алгебраическое описание интерпретации программных операторов, сводить задачу проверки эквивалентности программ к проблеме пустоты для детерминированных двухленточных односторонних машин. 5. На основе метода совместных вычислений установлены достаточные ус\-ловия, которым должна удовлетворять динамическая семантика, задающая интерпретацию операторов программ, для того чтобы задача проверки эквивалентности последовательных программ принадлежала классу сложности co-NP. 6. На основе метода совместных вычислений установлены достаточные ус\-ловия, которым должна удовлетворять динамическая семантика, задающая интерпретацию операторов программ, для того чтобы задача проверки эквивалентности последовательных программ принадлежала классам сложности NLOGSPACE или PTIME. 7. Применением метода совместных вычислений доказана разрешимость за полиномиальное время задачи проверки эквивалентности последовательных программ, операторы которых обладают определенными алгебраическими свойствами, включая свойства перестановочности, условной эквивалентности и подавления. 8. При помощи метода совместных вычислений доказана разрешимость за полиномиальное время проблемы эквивалентности последовательных программ в динамических семантиках с ограничениями на допустимые интерпретации (оценки) базовых предикатов, используемых в программах. 9. Предложена модификация метода совместных вычислений, при помощи которой доказана PSPACE-полнота задачи проверки эквивалентности последовательных программ с операторами засылки констант. 10. Методом совместных вычислений установлены достаточные условия разрешимости задачи проверки эквивалентности унарных линейных рекурсивных программ и выделены классы динамических семантик, в которых указанная задача принадлежит классу сложности PTIME. 11. При помощи метода совместных вычислений выделен класс стандартных схем программ, в котором задача проверки эквивалентности принадлежит классу сложности PTIME. 12. При помощи метода совместных вычислений установлены достаточные условия разрешимости задачи проверки эквивалентности потоковых программ (обобщенных конечных автоматов-преобразователей) и выделены классы динамических семантик, в которых указанная задача принадлежит классу сложности PTIME.