Learning and Verifying Temporal Specifications for Cyber-Physical Systems - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2023

Learning and Verifying Temporal Specifications for Cyber-Physical Systems

Apprentissage et vérification de systèmes complexes avec des spécifications temporelles

Ritam Raha
  • Fonction : Auteur
  • PersonId : 1302375
  • IdRef : 272911151

Résumé

In the past decade, there has been an unprecedented rise in the incorporation of complex cyber-physical systems being used in performing complex tasks. Verification of these systems is necessary to ensure the safety and reliability of these systems, especially in safety-critical scenarios. Formal verification has been proven to be a time-tested method to systematically verify these systems. In particular, it provides techniques for monitoring system executions against a formal specification. Often, these specifications are hard to design manually, necessitating a need to automatically generate them from system executions to be used for verification purposes. Temporal logic has gained popularity as a formal specification due to its mathematical rigour, human interpretability, and compatibility with various formal verification techniques. The objective of this thesis is twofold: (i) Develop algorithms to automatically learn temporal specifications from system executions; (ii) Apply formal verification techniques to assess the correctness of the system against the acquired specifications.To achieve these objectives, in the learning part, we present two algorithms to learn specifications in temporal logics such as LTL, MTL and STL. Our algorithms are in emph{passive learning} setting that learn specifications that separate a finite set of positive system behaviours from a finite set of negative ones. For LTL specifications, we present a dynamic programming based algorithm that leverages a normal form for a fragment of LTL and uses efficient enumeration techniques to learn concise formulas from system executions. For MTL and STL, we develop SMT-solver based techniques to learn formulas that are not only concise but also efficient to be applied for formal verification of the system. Our algorithms are implemented in tools called SCARLET and TEAL, and their efficiency is demonstrated through experimental results. For the verification part, we focus on the LTL parameter-synthesis problems of one-counter automata, which is one of the fundamental formal models to represent complex systems, namely systems with discrete yet infinite state space. One-counter automata are obtained by extending classical finite-state automata with a counter whose value can range over non-negative integers and be tested for zero. The updates and tests applicable to the counter can further be made parametric by introducing a set of integer-valued variables called parameters. The LTL parameter synthesis problem for such automata asks whether a valuation of the parameters exists such that all infinite runs of the automaton satisfy an LTL specification. Building upon the existing works in the literature, (i) we show a careful re-encoding of the problem into a decidable restriction of Presburger Arithmetic with Divisibility (PAD), the largest known decidable fragment of PAD till now; (ii) We prove that the parameter synthesis problem is decidable in general and in 3NEXP; (iii) We give EXPSPACE algorithms for the special cases of the problem where parameters can only be used in counter tests. Finally, (iv) we briefly present the decidability result of this problem on an extension of this model with Parikh constraints.
Au cours de la dernière décennie, on a assisté à une augmentation sans précédent de l'incorporation de systèmes cyber-physiques complexes utilisés pour effectuer des tâches complexes. La vérification de ces systèmes est nécessaire pour garantir leur sécurité et leur fiabilité, en particulier dans les scénarios de sécurité critiques. La vérification formelle s'est avérée être une méthode éprouvée pour vérifier systématiquement ces systèmes. Elle fournit notamment des techniques permettant de contrôler l'exécution des systèmes par rapport à une spécification formelle. Souvent, ces spécifications sont difficiles à concevoir manuellement, d'où la nécessité de les générer automatiquement à partir des exécutions du système pour les utiliser à des fins de vérification. La logique temporelle a gagné en popularité en tant que spécification formelle en raison de sa rigueur mathématique, de son interprétabilité par l'homme et de sa compatibilité avec diverses techniques de vérification formelle. L'objectif de cette thèse est double : (i) Développer des algorithmes pour apprendre automatiquement des spécifications temporelles à partir d'exécutions de systèmes ; (ii) Appliquer des techniques de vérification formelle pour évaluer l'exactitude du système par rapport aux spécifications acquises.Pour atteindre ces objectifs, dans la partie apprentissage, nous présentons deux algorithmes pour apprendre des spécifications dans des logiques temporelles telles que LTL, MTL et STL. Nos algorithmes sont dans le cadre de l'apprentissage passif et apprennent des spécifications qui séparent un ensemble fini de comportements positifs du système d'un ensemble fini de comportements négatifs. Pour les spécifications LTL, nous présentons un algorithme basé sur la programmation dynamique qui s'appuie sur une forme normale pour un fragment de LTL et utilise des techniques d'énumération efficaces pour apprendre des formules concises à partir des exécutions du système. Pour MTL et STL, nous développons des techniques basées sur un résolveur SMT pour apprendre des formules qui sont non seulement concises mais aussi efficaces pour être appliquées à la vérification formelle du système. Nos algorithmes sont mis en œuvre dans des outils appelés SCARLET et TEAL, et leur efficacité est démontrée par des résultats expérimentaux. Pour la partie vérification, nous nous concentrons sur les problèmes de synthèse de paramètres LTL des One-counter automata, qui est l'un des modèles formels fondamentaux pour représenter les systèmes complexes, à savoir les systèmes avec un espace d'état discret mais infini. One-counter automata sont obtenus en étendant les automates classiques à états finis avec un compteur dont la valeur peut s'étendre sur des entiers non négatifs et être testée pour zéro. Les mises à jour et les tests applicables au compteur peuvent être paramétrés en introduisant un ensemble de variables à valeur entière appelées paramètres. Le problème de la synthèse des paramètres LTL pour de tels automates est de savoir s'il existe une évaluation des paramètres telle que toutes les exécutions infinies de l'automate satisfont une spécification LTL. En s'appuyant sur les travaux existants dans la littérature, (i) nous montrons un réencodage prudent du problème en une restriction décidable de l'arithmétique de Presburger avec divisibilité (PAD), le plus grand fragment décidable connu de PAD jusqu'à présent ; (ii) Nous prouvons que le problème de la synthèse des paramètres est décidable en général et en 3NEXP ; (iii) Nous donnons des algorithmes EXPSPACE pour les cas particuliers du problème où les paramètres ne peuvent être utilisés que dans des contre-tests. Enfin, (iv) nous présentons brièvement le résultat de décidabilité de ce problème sur une extension de ce modèle avec des contraintes de Parikh.
Fichier principal
Vignette du fichier
RAHA_RITAM_2023.pdf (1.91 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-04267885 , version 1 (02-11-2023)

Identifiants

  • HAL Id : tel-04267885 , version 1

Citer

Ritam Raha. Learning and Verifying Temporal Specifications for Cyber-Physical Systems. Artificial Intelligence [cs.AI]. Université de Bordeaux; University of Antwerp, 2023. English. ⟨NNT : 2023BORD0208⟩. ⟨tel-04267885⟩
38 Consultations
39 Téléchargements

Partager

Gmail Facebook X LinkedIn More