Feedback

Faculté des Sciences appliquées
Faculté des Sciences appliquées
Mémoire

Specifying and Verifying Safety Properties of Parallel Programming Algorithms Using the TLA+ Toolbox

Télécharger
Differdange, Jarod ULiège
Promoteur(s) : Fontaine, Pascal ULiège
Date de soutenance : 30-jui-2025/1-jui-2025 • URL permanente : http://hdl.handle.net/2268.2/23374
Détails
Titre : Specifying and Verifying Safety Properties of Parallel Programming Algorithms Using the TLA+ Toolbox
Auteur : Differdange, Jarod ULiège
Date de soutenance  : 30-jui-2025/1-jui-2025
Promoteur(s) : Fontaine, Pascal ULiège
Membre(s) du jury : Boigelot, Bernard ULiège
Mathy, Laurent ULiège
Langue : Anglais
Discipline(s) : Ingénierie, informatique & technologie > Sciences informatiques
Public cible : Etudiants
Institution(s) : Université de Liège, Liège, Belgique
Diplôme : Master : ingénieur civil en informatique, à finalité spécialisée en "computer systems security"
Faculté : Mémoires de la Faculté des Sciences appliquées

Résumé

[en] The goal of this Master's thesis is to continue the effort of specifying and verifying safety properties of the different algorithms presented in the Parallel Programming course given by Professor Pascal Fontaine.
This endeavor is motivated by the creation of a formal companion to the course for students interested in the material.
This companion will contain alternative descriptions of the algorithms presented, as well as their properties.
This effort will also aim to identify potential errors or prove the correctness of the different algorithms presented in the lecture.
Additionally, the lecture notes mention being able to exchange equivalent pieces of code when they have the same properties.
The validity of this claim is also verified on an example.

The first chapter describes the principles of concurrent programming, the motivation behind its usage, and the challenges that come with it.
The second chapter describes the Temporal Logic of Actions and the TLA+ Toolbox.
The TLA+ environment allows the creation of specifications, their verification of properties on finite models, and the writing proofs.
A description of all the different tools in the Toolbox is provided.

After the description of the tools, the barrier synchronization mechanism shown in the course is first specified.
Several invariant properties are described and proven invariant using the \TLAplus Toolbox.
It is also shown that it behaves like an abstract barrier where processes advance synchronously.
Secondly, by extending the specification of the abstract lock with auxiliary variables and using the refinement mechanism present in \TLAplus, it is shown that the abstract lock and Peterson's algorithm are equivalent.


Fichier(s)

Document(s)

File
Access tfe_s202356.pdf
Description:
Taille: 649.13 kB
Format: Adobe PDF

Annexe(s)

File
Access tla_specs.zip
Description:
Taille: 15.94 kB
Format: Unknown
File
Access tfe_s202356_summary_EN_FR.pdf
Description:
Taille: 72.47 kB
Format: Adobe PDF

Auteur

  • Differdange, Jarod ULiège Université de Liège > Master ing. civ. inf. fin. spéc. comp. syst. secur

Promoteur(s)

Membre(s) du jury

  • Boigelot, Bernard ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Informatique
    ORBi Voir ses publications sur ORBi
  • Mathy, Laurent ULiège Université de Liège - ULiège > Dép. d'électric., électron. et informat. (Inst.Montefiore) > Systèmes informatiques répartis et sécurité
    ORBi Voir ses publications sur ORBi








Tous les documents disponibles sur MatheO sont protégés par le droit d'auteur et soumis aux règles habituelles de bon usage.
L'Université de Liège ne garantit pas la qualité scientifique de ces travaux d'étudiants ni l'exactitude de l'ensemble des informations qu'ils contiennent.