Methodology for the formal verification of temporal properties for real-time safety-critical applications based on logical time - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Thèse Année : 2023

Methodology for the formal verification of temporal properties for real-time safety-critical applications based on logical time

Méthodologie de vérification formelle de propriétés temporelles pour les applications temps-réel critiques basées sur le concept de temps logique

Résumé

Safety-critical real-time systems have to respect strict timing constraints. Thus, timing constraints must be considered throughout the software development cycle. As exact computation execution time are generally not known during design, logical time provides a way to abstract time constraints and execution from platform-dependent physical time. In this thesis, we focus on two main formalisms based on logical time. The Synchronous-Reactive approach totally abstracts physical time by discrete time bases on which computations are triggered. The Logical Execution Time approach uses logical time bases to represent not only triggering instants but also the durations of elementary computations. In this thesis, we start by unifying Synchronous-Reactive and Logical Execution Time approaches. This provides the natural formal framework for defining the semantics of PSYC, an expressive industrial real-time language. We define two formal semantics for PSYC: a native big-step semantics preserving the logical durations of time intervals defined by structural operational rules and a synchronous small-step semantics defined by translation to a Synchronous-Reactive language expanding time interval durations to a succession of atomic transitions. We show that the two semantics definitions are equivalent. This formalization of the PSYC semantics enables us to define a formal verification methodology for PSYC based on symbolic model-checking. To reduce the state space during model-checking, we also define an optimization technique inspired by timed automata model-checking. Finally, we show how to encode high-level timing requirements into a clock constraint specification language — CCSL — which are then translated to synchronous observers.
Les systèmes temps-réel critiques doivent respecter des contraintes temporelles strictes qui doivent être considérées tout au long du cycle logiciel. Cependant, du fait que les temps d'exécution exacts ne sont généralement pas connus lors de la conception, le temps logique fournit un moyen d'abstraire les contraintes temporelles et les exécutions du temps physique, dépendant de la plateforme. Dans cette thèse, nous nous concentrons sur deux formalismes basés sur le temps logique. L'approche Synchrone-Réactive abstrait totalement le temps physique en utilisant des bases de temps discrète sur lesquelles les calculs sont déclenchés. L'approche de Temps d'Exécution Logique utilise des bases de temps logique pour représenter non seulement les instants de déclenchement, mais aussi les durées des calculs élémentaires. Dans notre travail, nous commençons par définir une unification des approches Synchrone-Réactives et de Temps d'Exécution Logique, fournissant un cadre formel naturel pour définir la sémantique de PSYC, un langage temps-réel industriel expressif. Nous définissons deux sémantiques pour celui-ci : une sémantique native à grands pas, préservant les durées logiques des intervalles de temps, définie par des règles structurelles opérationnelles ; et une sémantique synchrone à petits pas définie par traduction vers un langage Synchrone-Réactif étendant les durées des intervalles de temps à une succession de transitions atomiques. Nous montrons que les deux sémantiques sont équivalentes. Cette formalisation de la sémantique de PSYC nous permet de définir une méthodologie de vérification formelle pour PSYC basée sur du model-checking symbolique. Pour réduire l'espace d'état pendant le model checking, nous définissons une technique d'optimisation inspirée du model-checking temporisé. Enfin, nous spécifions les exigences temporelles que nous voulons vérifier via un langage de spécification de contrainte d'horloge — CCSL — qui sont ensuite traduites en observateurs synchrones.
Fichier principal
Vignette du fichier
2023COAZ4092.pdf (3.44 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-04355316 , version 1 (20-12-2023)
tel-04355316 , version 2 (11-03-2024)

Identifiants

  • HAL Id : tel-04355316 , version 2

Citer

Fabien Siron. Methodology for the formal verification of temporal properties for real-time safety-critical applications based on logical time. Embedded Systems. Université Côte d'Azur, 2023. English. ⟨NNT : 2023COAZ4092⟩. ⟨tel-04355316v2⟩
83 Consultations
37 Téléchargements

Partager

Gmail Facebook X LinkedIn More