Параметри
Верифікація перетворення між винятково функційною та імперативною предметно-орієнтованими мовами програмування на прикладі HELIX
Дата випуску :
2021
Автор(и) :
Зайчук Ілля Костянтинович
Анотація :
HELIX є формально верифікованим ланцюжком мов програмування та правил перекладу, призначеним для генерації високоефективних імплементацій ряду чисельних алгоритмів. Будучи заснованим на існуючій системі SPIRAL, HELIX додає строгість формального доведення коректності з використанням інструменту інтерактивного доведення теорем Coq. Він формально описує набір предметно-орієнтованих мов, починаючи з HCOL, що задає абстрактний потік даних обчислення. Робота HELIX полягає в перетворенні початкової програми через низку проміжкових мов, що закінчується на LLVM IR.
В даній роботі описані три мови цього ланцюжка та формальна верифікація переходу між ними. Розглянуті переходи є нетривіальним, адже кожна наступна мова ланцюжка вводить абстракції нижчого рівня, у порівнянні з попередньою. Відбувається перехід від чисто функційної мови змішаного рівня вбудови до глибоко вбудованої імперативної, від абстрактного алгебраїчного типу даних до машинних чисел з рухомою комою, додається модель пам’яті, області видимості змінних та монадна обробка винятків. Продемонстрована архітектура цих мов, автоматичний перехід між ними та автоматизоване доведення збереження семантики на кожному з кроків.
В даній роботі описані три мови цього ланцюжка та формальна верифікація переходу між ними. Розглянуті переходи є нетривіальним, адже кожна наступна мова ланцюжка вводить абстракції нижчого рівня, у порівнянні з попередньою. Відбувається перехід від чисто функційної мови змішаного рівня вбудови до глибоко вбудованої імперативної, від абстрактного алгебраїчного типу даних до машинних чисел з рухомою комою, додається модель пам’яті, області видимості змінних та монадна обробка винятків. Продемонстрована архітектура цих мов, автоматичний перехід між ними та автоматизоване доведення збереження семантики на кожному з кроків.
Бібліографічний опис :
Зайчук І. К. Верифікація перетворення між винятково функційною та імперативною предметно-орієнтованими мовами програмування на прикладі HELIX : дипломна робота ... бакалавра : 122 Комп’ютерні науки / Зайчук Ілля Костянтинович. - Київ, 2021. - 40 с.
Файл(и) :
Вантажиться...
Формат
Adobe PDF
Розмір :
406.22 KB
Контрольна сума:
(MD5):6e88f59dcb8e04ac04f860284b44b1da
Ця робота розповсюджується на умовах ліцензії Creative Commons CC BY-NC