Practical multiverse debugging through user-defined reductions

Gespeichert in:
Bibliographische Detailangaben
Titel: Practical multiverse debugging through user-defined reductions
Autoren: Pasquier, Matthias, Teodorov, Ciprian, Jouault, Frédéric, Brun, Matthias, Roux, Luka Le, Lagadec, Loïc
Weitere Verfasser: ESEO-ÉRIS (ÉRIS), ESEO-Tech, Université Bretagne Loire (UBL)-École supérieure d'électronique de l'ouest Angers (ESEO)-Université Bretagne Loire (UBL)-École supérieure d'électronique de l'ouest Angers (ESEO), École Nationale Supérieure de Techniques Avancées Bretagne (ENSTA Bretagne), Equipe Processes for Safe and Secure Software and Systems (Lab-STICC_P4S), Laboratoire des sciences et techniques de l'information, de la communication et de la connaissance (Lab-STICC), École Nationale d'Ingénieurs de Brest (ENIB), Université de Brest (UBO EPE)-Institut National Polytechnique de Bretagne (Bretagne INP)-Université de Brest (UBO EPE)-Institut National Polytechnique de Bretagne (Bretagne INP)-Université de Bretagne Sud (UBS)-École Nationale Supérieure de Techniques Avancées Bretagne (ENSTA Bretagne)-Institut Mines-Télécom Paris (IMT)-Centre National de la Recherche Scientifique (CNRS)-Université Bretagne Loire (UBL)-IMT Atlantique (IMT Atlantique), Institut Mines-Télécom Paris (IMT)-École Nationale d'Ingénieurs de Brest (ENIB), Institut Mines-Télécom Paris (IMT), Equipe Hardware ARchitectures and CAD tools (Lab-STICC_ARCAD)
Quelle: MODELS '22: ACM/IEEE 25th International Conference on Model Driven Engineering Languages and Systems ; https://ensta.hal.science/hal-03891589 ; MODELS '22: ACM/IEEE 25th International Conference on Model Driven Engineering Languages and Systems, Oct 2022, Montreal Quebec Canada, Canada. pp.87-97, ⟨10.1145/3550355.3552447⟩
Verlagsinformationen: CCSD
ACM
Publikationsjahr: 2022
Bestand: Université de Bretagne Occidentale: HAL
Schlagwörter: Abstracting, Program debugging, Unified Modeling Language, [INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE]
Time: Montreal Quebec Canada, Canada
Beschreibung: International audience ; Multiverse debugging is an extension of classical debugging methods, particularly adapted to non-deterministic systems. Recently, a language-independent formalization was proposed. Moreover, multiverse debugging is particularly beneficial for specification and design languages, such as UML. However, this method suffers from scalability issues during breakpoint lookup. This problem arises due to the exhaustive exploration performed on the potentially infinite state-space of the system. In this paper, we tackle this problem by introducing Reduced Multiverse Debugging, an extension proposing a way for the user to define reduction policies used during breakpoint lookup. We enrich the formalization of multiverse debugging with a modular breakpoint lookup strategy, which allows the integration of the reduction policy. We validate our approach by implementing a practical UML Statechart debugger in the AnimUML web framework. We show several ways the reduction can be applied, using methods such as predicate abstraction for breakpoint lookup on an infinite state-space, removing irrelevant variables, or creating classes of equivalent values. Moreover, we show the possibility to integrate probabilistic reduction strategies. Relying on hash collisions, these strategies can be iteratively refined to increase precision.
Publikationsart: conference object
Sprache: English
DOI: 10.1145/3550355.3552447
Verfügbarkeit: https://ensta.hal.science/hal-03891589
https://ensta.hal.science/hal-03891589v1/document
https://ensta.hal.science/hal-03891589v1/file/Pasquier2022.pdf
https://doi.org/10.1145/3550355.3552447
Rights: info:eu-repo/semantics/OpenAccess
Dokumentencode: edsbas.1850A154
Datenbank: BASE
Beschreibung
Abstract:International audience ; Multiverse debugging is an extension of classical debugging methods, particularly adapted to non-deterministic systems. Recently, a language-independent formalization was proposed. Moreover, multiverse debugging is particularly beneficial for specification and design languages, such as UML. However, this method suffers from scalability issues during breakpoint lookup. This problem arises due to the exhaustive exploration performed on the potentially infinite state-space of the system. In this paper, we tackle this problem by introducing Reduced Multiverse Debugging, an extension proposing a way for the user to define reduction policies used during breakpoint lookup. We enrich the formalization of multiverse debugging with a modular breakpoint lookup strategy, which allows the integration of the reduction policy. We validate our approach by implementing a practical UML Statechart debugger in the AnimUML web framework. We show several ways the reduction can be applied, using methods such as predicate abstraction for breakpoint lookup on an infinite state-space, removing irrelevant variables, or creating classes of equivalent values. Moreover, we show the possibility to integrate probabilistic reduction strategies. Relying on hash collisions, these strategies can be iteratively refined to increase precision.
DOI:10.1145/3550355.3552447