From Graphical Loop Invariants to Formal Verification
Grosjean, Antoine
Promotor(s) :
Fontaine, Pascal
;
Donnet, Benoît
Date of defense : 30-Jun-2025/1-Jul-2025 • Permalink : http://hdl.handle.net/2268.2/23376
Details
| Title : | From Graphical Loop Invariants to Formal Verification |
| Translated title : | [fr] Vérification formelle grâce aux Invariants Graphiques de Boucle |
| Author : | Grosjean, Antoine
|
| Date of defense : | 30-Jun-2025/1-Jul-2025 |
| Advisor(s) : | Fontaine, Pascal
Donnet, Benoît
|
| Committee's member(s) : | Boigelot, Bernard
|
| Language : | English |
| Number of pages : | 94 |
| Keywords : | [en] Automation [en] C [en] Correctness [en] Dafny [en] Graphical Loop Invariant [en] Invariant [en] Logic [en] Loop [en] Verification |
| Discipline(s) : | Engineering, computing & technology > Computer science |
| Complementary URL : | https://gitlab.uliege.be/A.Grosjean/tfe |
| Institution(s) : | Université de Liège, Liège, Belgique |
| Degree: | Master : ingénieur civil en informatique, à finalité spécialisée en "management" |
| Faculty: | Master thesis of the Faculté des Sciences appliquées |
Abstract
[en] Logic and mathematics are essential for understanding and verifying computer programs, yet many first-year computer science students struggle with these subjects. This Master’s thesis represents a first step toward automating the verification of simple C programs without requiring students to master formal logic. It demonstrates the feasibility of developing and implementing a tool that uses Loop Graph Invariants to verify computer programs written in C. To this end, a comprehensive process was developed and tested on ten programming problems covering the content of the introductory computer programming course taught at the University of Liège. All benchmarks were eventually verified. The methodology implemented relies on using the Dafny programming and verification language. It also involves a code translator that converts a C program into a program following the Dafny syntax, as well as an Embedding Model for French developed by La Javaness, used to extract the semantics of French sentences. Although the process is not fully automated, it paves the way for future research on the subject and the eventual realization of a complete system.
File(s)
Document(s)
Annexe(s)
Cite this master thesis
The University of Liège does not guarantee the scientific quality of these students' works or the accuracy of all the information they contain.

Master Thesis Online


All files (archive ZIP)
master_thesis.pdf