Transformations eliminating pointers in the memweight function in OS Linux kernel library is described. Next, the function is translated to the predicate programming language P. For the obtained predicate program, deductive verification in the Why3 tool was performed. In order to simplify verification, the program model of calculating program inner state was constructed.
Оптимизирующие трансформации списков и деревьев в системе предикатного программирования Булгаков К.В. (Новосибирский государственный университет), Каблуков И.В., Тумуров Э.Г. (Институт систем информатики СО РАН), Шелехов В.И. (Институт систем информатики СО РАН, Новосибирский государственный университет) Описываются оптимизирующие трансформации для операций над списками и деревьями в системе предикатного программирования. Кодирование операций представлено набором правил, определяющих замену исходной операции на ее образ в императивном языке. Результатом трансформаций является императивная программа по эффективности сравнимая с написанной вручную. Ключевые слова: функциональное программирование, трансформации программ, алгебраический тип данных. 1. Введение Оперирование указателями является весьма сложной и опасной процедурой в императивном программировании. Показателем такой сложности является чрезвычайная трудность дедуктивной верификации программ, оперирующих указателями, например, для алгоритма реверсирования списка [15]. В языке предикатного программирования P [12] нет указателей, серьезно усложняющих программу. Вместо указателей используются объекты алгебраических типов: списки и деревья. Предикатная программа существенно проще в сравнении с императивной программой, реализующей тот же алгоритм. Эффективность предикатных программ достигается применением оптимизирующих трансформаций. Они определяют оптимизацию среднего уровня с переводом предикатной программы в эффективную императивную программу. Эта оптимизация отлична от классической. Базовыми трансформациями являются: склеивание переменных, реализующее замену нескольких переменных одной [2, 7]; замена хвостовой рекурсии циклом;
Определяется типовая архитектура системы управления вида human-in-the-loop.Набор функциональных требований к системе управления беспилотным 4-х винтовым вертолетом -квадрокоптером -определяется как конкре тизация типовой архитектуры.Рассматривается две задачи: управление полетом квадрокоптера по заданной траектории и слежение за движущимся объектом.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.