Model Repair via Symmetry
The symmetry of a Kripke structure ℳ has been exploited to replace a model check of ℳ by a model check of the potentially smaller structure 𝒩 obtained as the quotient of ℳ by its symmetry group G. We extend previous work to model repair: identify a substructure that satisfies a given temporal logic formula. We show that the substructures of ℳ that are preserved by G form a lattice that maps to the substructure lattice of 𝒩. We also show the existence of a monotone Galois connection between the lattice of substructures of 𝒩 and the lattice of substructures of ℳ that are "maximal" w.r.t. an appropriately defined group action of G on ℳ. These results enable us to repair 𝒩 and then to lift the repair to ℳ. We can thus repair symmetric finite-state concurrent programs by repairing the corresponding 𝒩, thereby effecting program repair while avoiding state-explosion.
READ FULL TEXT