Застосування солверів z3 в системі верифікації python–програм
| dc.contributor.author | Костирко Василь Ступанович | |
| dc.contributor.author | Костенко Анатолій Васильович | |
| dc.contributor.author | Плеша Михайло Іванович | |
| dc.date.accessioned | 2026-02-28T18:33:19Z | |
| dc.date.issued | 2023-05-31 | |
| dc.description | Інформаційні технології та суспільство, Випуск 1 (7), 2023 | |
| dc.description.abstract | У роботі описана остання версія системи верифікації програм VerPro на мові Python. Для перевірки тотожної істин- ності умов верифікації вона доповнена застосуванням засобів популярної системи Z3 доведення теорем. Метою стат- ті є опис нових можливостей системи VerPro, які їй надали солвери Z3. Наукова новизна. Система VerPro є сучасною системою верифікації анотованих Python–програм, яка генерує умови коректності методом символьного виконання. VerPro надає користувачу сучасний діалоговий графічний віконний інтерфейс, побудований з використанням бібліотеки PyQt5. Спрощення цих умов базується на еквівалентних перетвореннях, які реалізує бібліотека ExprLib. ExprLib – це наша власна бібліотека, яка побудована на мові Python і не має інших залежностей. Бібліотека перетворює вирази у внутрішнє представлення, побудоване на базі класів мови Python. Реалізовані в системі VerPro еквівалентні перетворення часто можуть самі встановити тотожну істинність умов верифікації. Якщо ні, тоді такі умови VerPro передає системі до- ведення теорем Z3, яка або встановлює їх тотожню істинність, або будує контрприклад для гіпотези про тотожню істинність такої умови. Наявність контрприкладу свідчить про те, що анотація невірно описує функціональні власти- вості програми. Аналізуючи знайдений системою контрприклад, користувач може знайти причину некоректності і ви- правити програму і/або її анотацію. Система Z3 підключається до VerPro через програмний інтерфейс Z3py. Висновок. Ідея побудови контрприкладів в системах верифікації програм реалізована вперше. Cистема доведення теорем Z3 раніше в таких системах не застосовувалася. Система VerPro надає приклад вдалого використання сучасної системи доведення теорем не лише для встановлення коректності анотованої програми, але й для пошуку рішення при невдалій верифікації. Дальший розвиток системи передбачає типізацію значень символьних параметрів та побудову інваріантів. | |
| dc.identifier.citation | Костирко, В., Костенко, А, Плеша, М. (2023). Застосування солверів z3 в системі верифікації Python–програм. Інформаційні технології та суспільство. Вип. 1 (7), 36–43 | |
| dc.identifier.issn | 2786-5460 (PRINT) | |
| dc.identifier.issn | 2786-5479 (ONLINE) | |
| dc.identifier.issn | DOI https://doi.org/10.32689/maup.it.2023.1.5 | |
| dc.identifier.other | УДК 519.683.2 | |
| dc.identifier.uri | https://dspace.lute.lviv.ua/handle/123456789/1986 | |
| dc.language.iso | other | |
| dc.publisher | Гельветика | |
| dc.subject | верифікація програми | |
| dc.subject | умова коректності | |
| dc.subject | символьне виконання | |
| dc.subject | контрприклад | |
| dc.subject | солвер Z3 | |
| dc.title | Застосування солверів z3 в системі верифікації python–програм | |
| dc.title.alternative | Application of z3 solvers in the verification system for python programs | |
| dc.type | Article |
Files
Original bundle
1 - 1 of 1
Loading...
- Name:
- Kostyrko, Zastosuvannia_Solveriv_Z3_V_Systemi_Veryfikaciji_Python-Prohram, 2023.pdf
- Size:
- 385.5 KB
- Format:
- Adobe Portable Document Format
License bundle
1 - 1 of 1
Loading...
- Name:
- license.txt
- Size:
- 1.71 KB
- Format:
- Item-specific license agreed to upon submission
- Description: