ФОРМАЛЬНАЯ ВЕРИФИКАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ С ПОМОЩЬЮ БОЛЬШИХ ЯЗЫКОВЫХ МОДЕЛЕЙ
Аннотация и ключевые слова
Аннотация (русский):
Представлено исследование о варианте применения больших языковых моделей для верификации программного обеспечения. Цель: создание системы для автоматической верификации программного обеспечения заданным требованиям. Для достижения цели использованы информационные технологии, формальная верификация, искусственный интеллект и другие инновационные подходы. Методы: анализ современных инструментов и технологий для верификации ПО, включая существующие инструменты. Результаты: показывают сильные и слабые стороны применения больших языковых моделей для верификации ПО. Практическая значимость: заключается в повышении качества и надежности ПО. Исследование имеет важное значение для развития технологий железнодорожного транспорта и повышения надежности работы информационных систем. Обсуждение: высказываются рекомендации по дальнейшему совершенствованию предложенной системы верификации, освещаются вопросы, требующие дальнейших исследований и разработок.

Ключевые слова:
JML, большие языковые модели, формальная верификация, автоматизация спецификаций, искусственный интеллект
Список литературы

1. Leavens G.T., Cheon Y. Design by Contract with JML. URL: https://www.cs.ucf.edu/~leavens/JML/jmldbc.pdf (Дата обращения: 07.11.2025).

2. Ma L. et al. SpecGen: Automated Generation of Formal Program Specifications via Large Language Models. URL: https://arxiv.org/abs/2401.08807 (Дата обращения: 07.11.2025).

3. Endres M. et al. Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions? URL: https://arxiv.org/abs/2310.01831 (Дата обращения: 07.11.2025).

4. Armand Puccetti, Gaël de Chalendar, and Pierre-Yves Gibello. 2021. Combining formal and machine learning techniques for the generation of JML specifications. In Proceedings of the 23rd ACM Interna-tional Workshop on Formal Techniques for Java-like Programs (FTfJP '21). Association for Computing Machinery, New York, NY, USA, 59–64.

5. Beckert, B. et al. The Java Verification Tool KeY:A Tutorial. URL: https://doi.org/10.1007/978-3-031-71177-0_32 (Дата обращения: 06.11.2025)

6. Hähnle, R., Huisman, M. Deductive Software Verification: From Pen-and-Paper Proofs to Industrial Tools. URL: https://doi.org/10.1007/978-3-319-91908-9_18 (Дата обращения: 06.11.2025)

7. Beckert, B., Kirsten, M., Klamroth, J., Ulbrich, M. Modular Verification of JML Contracts Using Bounded Model Checking. URL: https://doi.org/10.1007/978-3-030-61362-4_4 (Дата обращения: 06.11.2025)

8. Liu, T. Efficient Verification of Programs with Complex Data Structures Using SMT Solvers. URL: https://doi.org/10.5445/IR/1000084545 (Дата обращения: 06.11.2025).

9. Ma L. et al. SpecEval: Evaluating Code Comprehension in Large Language Models via Program Speci-fications. URL: https://arxiv.org/abs/2409.12866 (Дата обращения: 07.11.2025).

10. Roziere B. et al. Code Llama: Open Foundation Models for Code. URL: https://arxiv.org/abs/2308.12950 (Дата обращения: 07.11.2025).

11. Bai J. et al. Qwen Technical Report. URL: https://arxiv.org/abs/2309.16609 (Дата обращения: 07.11.2025).

12. SpotBugs manual URL: https://spotbugs.readthedocs.io/en/latest/index.html (Дата обращения: 07.11.2025).

13. About OpenJML URL: https://www.openjml.org/about/ (Дата обращения: 07.11.2025).

14. OpenJML Examples URL: https://www.openjml.org/examples/ (Дата обращения: 07.11.2025).

15. Beyer D., Jan Strejcek Improvements in Software Verification and Witness Validation: SV-COMP 2025. URL: https://www.sosy-lab.org/research/pub/2025-TACAS.Improvements_in_Software_Verification_and_Witness_Validation_SV-COMP_2025.pdf (Дата обращения: 07.11.2025).

Войти или Создать
* Забыли пароль?