Formally Verified Certification of Unsolvability of Temporal Planning Problems
Wang, Abdulaziz
We present an approach to unsolvability certification of temporal planning. Our approach is based on encoding the planning problem into a network of timed automata, and then using an efficient model checker on the network followed by a certificate checker to certify the output of the model checker. Our approach prioritises trustworthiness of the certification: we formally verify our implementation of the encoding to timed automata using the theorem prover Isabelle/HOL and we use an existing certificate checker (also formally verified in Isabelle/HOL) to certify the model checking result.
academic
Certification Formellement Vérifiée de l'Insolvabilité des Problèmes de Planification Temporelle
Cet article propose une méthode de certification de l'insolvabilité des problèmes de planification temporelle. La méthode repose sur l'encodage des problèmes de planification en réseaux d'automates temporisés, suivi de l'utilisation d'un vérificateur de modèles efficace, puis d'un vérificateur de certificats pour certifier la sortie du vérificateur de modèles. La méthode privilégie la fiabilité de la certification : elle utilise le prouveur de théorèmes Isabelle/HOL pour vérifier formellement l'implémentation de l'encodage des automates temporisés, et utilise un vérificateur de certificats existant (également vérifié formellement dans Isabelle/HOL) pour certifier les résultats de la vérification de modèles.
Le problème central abordé par cette recherche est la certification de l'insolvabilité des problèmes de planification temporelle. La planification temporelle est une forme riche de planification permettant aux actions d'avoir une durée et une exécution concurrente, beaucoup plus complexe que la planification classique.
Besoin de fiabilité : Les systèmes de planification existants sont extrêmement complexes aux niveaux algorithmique et d'implémentation, rendant crucial l'amélioration de la fiabilité de leurs résultats
Difficulté de certification : Contrairement aux problèmes solubles (vérifiables par exécution du plan), les affirmations d'insolvabilité ou d'optimalité sont difficiles à obtenir avec des certificats compacts
Complexité exponentielle : Dans le pire des cas, ces certificats peuvent croître exponentiellement par rapport à la taille de la tâche de planification
Absence de garanties formelles : Les méthodes existantes de détection de l'insolvabilité en planification temporelle manquent de garanties formelles de correction
Complexité élevée : Les techniques algorithmiques les plus avancées en planification temporelle sont d'une grande complexité, rendant difficile la conception de schémas pratiques de certification de l'insolvabilité
Lacune de vérification : Comparé aux travaux de vérification formelle existants en planification classique, le domaine de la planification temporelle présente une lacune à cet égard
Cet article adopte une approche de transformation par encodage : il encode les problèmes de planification temporelle en d'autres problèmes de calcul pour lesquels existent des algorithmes de certification pratiques (automates temporisés), et vérifie formellement l'ensemble du processus d'encodage et du vérificateur de certificats à l'aide d'un prouveur de théorèmes, garantissant la fiabilité de la certification.
Méthode d'encodage vérifiée formellement : Première vérification formelle de l'encodage de la planification temporelle en automates temporisés proposé par Heinz et al.
Implémentation d'ingénierie : Adaptation de l'encodage pour produire un format d'automates temporisés compatible avec le système de Wimmer et von Mutius
Conception de sémantique simplifiée : Conception d'une sémantique de planification temporelle plus simple que les travaux existants, facilitant le raisonnement mathématique, avec preuve d'équivalence avec la sémantique existante
Cadre de certification complet : Construction d'une chaîne de certification fiable complète, du problème de planification temporelle à la vérification de modèles d'automates temporisés
Garanties de correction théorique : Preuve de la correction de l'encodage dans Isabelle/HOL, fournissant des garanties théoriques solides
Pour chaque proposition p : variable binaire vp (encodant la valeur de vérité) et compteur de verrous lp (enregistrant le nombre d'actions actives nécessitant que p soit vrai)
aa : nombre total d'actions actives
ps : état de planification (0=non commencé, 1=en cours, 2=terminé)
Conception des horloges (Définition 25) :
Deux horloges allouées à chaque action a : ca⊢ (enregistrant le temps après le début) et ca⊣ (enregistrant le temps après la fin)
Automate principal (Définition 26) :
Contrôle les transitions d'état du processus de planification global, incluant l'initialisation et la vérification d'objectif.
Automates d'action (Définition 27) :
Chaque action correspond à un automate, contenant les transitions clés suivantes :
Combinaison de l'automate principal et de tous les automates d'action en un réseau d'automates temporisés (Définition 28), avec configuration initiale où tous les automates sont inactifs.
Support de l'exécution concurrente : Contrairement à Heinz et al. qui utilisent un verrou global, cet article utilise des contraintes d'horloge permettant l'exécution concurrente d'actions instantanées
Traitement des actions instantanées : Support des actions de durée zéro via l'ajout de transitions iea
Vérification formelle : Première preuve de correction vérifiée par machine pour ce type d'encodage
Simplification sémantique : Conception d'une sémantique de planification temporelle plus adaptée au raisonnement formel
Théorème 1 (Théorème de Correction Principal) :
Si le plan π est valide et sans auto-chevauchement (valid(π) ∧ no_self_overlap(π)), alors l'assertion A ⊨ EF(loc(AM) = goal) est vérifiée.
Structure de la Preuve :
Lemme 1 : Construction d'une exécution simulant un plan parallèle induit
Lemme 2 : Accessibilité de la configuration encodée depuis la configuration initiale
Lemme 3 : Transition de l'état final à la configuration d'objectif
Preuve de complétude : Preuve réussie de la complétude de l'encodage, c'est-à-dire que chaque plan valide trouve une exécution valide dans le réseau d'automates temporisés correspondant
Vérification par machine : Toutes les preuves sont vérifiées par machine dans Isabelle/HOL, fournissant le plus haut niveau de garantie de fiabilité
Conception modulaire : Structure de preuve modulaire, facilitant la compréhension et la maintenance
L'implémentation de l'encodage a été adaptée au format compatible avec le vérificateur de certificats vérifié existant, formant une chaîne de certification complète et exécutable.
Abdulaziz & Koller (2022) : Sémantique formelle et vérificateur pour la planification temporelle
Heinz et al. (2019) : Encodage de la planification temporelle en automates temporisés
Wimmer & von Mutius (2020) : Vérificateur de certificats pour automates temporisés
Abdulaziz & Kurz (2023) : Système de planification basé sur SAT certifié
Cet article apporte une contribution importante au domaine de la vérification formelle de la planification temporelle. Bien qu'il y ait encore place à amélioration en termes de praticité, sa rigueur théorique et son innovation méthodologique jettent une base solide pour le développement futur du domaine.