@inproceedings{a62976c0dc134ce48327efb7515698dd,
title = "Model and Program Repair via Group Actions",
abstract = "Given a textual representation of a finite-state concurrent program P, one can construct the corresponding Kripke structure M. However, the size of M can be exponentially larger than the textual size of P. This state explosion can make model checking properties of P via M expensive or even infeasible. The action of a symmetry group G on M can be used to produce a smaller Kripke structure M¯. Various authors have exploited the direct correspondence between M and M¯ to perform model checking. When the structure M does not satisfy a formula, one can look for a substructure that will satisfy the formula. We call this substructure-repair: identifying a substructure N of M that satisfies a given temporal logic formula. In this paper we extend previous work by showing that repairs of M¯ lift to repairs of M. In other words, we can repair a computer program P, which exhibits a high degree of symmetry, by repairing the smaller Kripke structure M¯ and then symmetrizing the corresponding program. To do this we arrange the substructures of M and M¯ into substructure lattices that are ordered by substructure inclusion. We show that the substructures of M preserved by G form a (sub)lattice that maps to the substructure lattice of M¯. When restricted to the lattice of substructures of M that are “maximal” with the action of G on M, the above map is a lattice isomorphism. These results enable us to repair M¯ and then to lift the repair to M. In cases where a program has a high degree of symmetry, such as in many concurrent programs, we can repair the program by repairing the small Kripke structure M¯.",
keywords = "Model checking, model repair, symmetry reduction",
author = "Attie, {Paul C.} and Cocke, {William L.}",
note = "Publisher Copyright: {\textcopyright} 2023, The Author(s).; 26th International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2023, held as part of the 26th European Joint Conferences on Theory and Practice of Software, ETAPS 2023 ; Conference date: 22-04-2023 Through 27-04-2023",
year = "2023",
doi = "10.1007/978-3-031-30829-1_25",
language = "English (US)",
isbn = "9783031308284",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Science and Business Media Deutschland GmbH",
pages = "520--540",
editor = "Orna Kupferman and Pawel Sobocinski",
booktitle = "Foundations of Software Science and Computation Structures - 26th International Conference, FoSSaCS 2023, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2023, Proceedings",
address = "Germany",
}