Nouvelles techniques de Model Checking pour la vérification de systèmes complexes

Résumé : Les tests et la simulation contribuent depuis longtemps à la validation de systèmes. Cependant, ces techniques ne permettent d’explorer qu’une partie des comportements possibles. Elles diffèrent en cela des techniques de vérification formelle, qui garantissent qu’une propriété est vérifiée par la totalité des exécutions possibles du système. Les deux principales techniques de vérification formelle sont la preuve et le model checking. Dans la première un modèle du système à vérifier est vu comme un ensemble d’axiomes qui servent à prouver une propriété. Cette technique n’est pas automatique ; des outils d’aide à la preuve existent mais demandent une forte expertise. Le model checking, introduit il y a 20 ans, regroupe plusieurs techniques entièrement automatiques dans lesquelles la propriété à vérifier est testée de façon exhaustive sur l’ensemble des exécutions possibles du système. Les différentes techniques de model checking diffèrent par leur façon de représenter ces ensembles (infinis) d’exécutions. Citons le model checking dit symbolique, qui travaille de façon ensembliste sur les configurations que peut prendre le système, et le model checking par l’approche automate [8], dans lequel l’ensemble des exécutions du système ainsi que la propriété sont représentés par des automates. C’est à cette dernière technique que nous nous intéressons ici. Nous présenterons cette approche automate section 2, et expliquerons son principal inconvénient : l’explosion de l’espace d’état [7], qui limite la taille de systèmes vérifiables. En dépit de cet obstacle, le model checking est utilisé avec succès pour la vérification de circuits, aussi bien que pour la vérification de programmes. L’objectif de cet article est de montrer deux nouvelles méthodes réduisant cet espace d’états en exploitant ses symétries, afin de pouvoir traiter des systèmes plus importants. Ces techniques sont le graphe quotient (section 3), et le produit synchronisé symbolique (section 4). Section 5 nous évaluons ces deux méthodes sur un exemple conséquent à l’aide de nos outils.
Document type :
Journal articles
Complete list of metadatas

https://hal.archives-ouvertes.fr/hal-01175956
Contributor : Lip6 Publications <>
Submitted on : Monday, July 13, 2015 - 3:59:08 PM
Last modification on : Tuesday, May 14, 2019 - 11:03:54 AM

Identifiers

  • HAL Id : hal-01175956, version 1

Citation

Yann Thierry-Mieg, Souheib Baarir, Alexandre Duret-Lutz, Fabrice Kordon. Nouvelles techniques de Model Checking pour la vérification de systèmes complexes. Génie logiciel, C & S, 2004, 69, pp.17-23. ⟨hal-01175956⟩

Share

Metrics

Record views

94