Static Correction of Maude Programs with Assertions

In this paper, we present a novel transformation method for Maude programs featuring both automatic program diagnosis and correction. The input of our method is a reference specification A of the program behavior that is given in the form of assertions together with an overly general program R whose...

Full description

Bibliographic Details
Authors: Alpuente Frasnedo, María|||0000-0002-9268-1178, Sapiña-Sanchis, Julia|||0000-0003-2994-6986, Ballis, D.
Format: report
Publication Date:2018
Country:España
Institution:Universitat Politècnica de València (UPV)
Repository:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Language:English
OAI Identifier:oai:riunet.upv.es:10251/100268
Online Access:https://riunet.upv.es/handle/10251/100268
Access Level:Open access
Keyword:Asertion checking
Program repair
Program transformation
Rewriting logic
Equational rewriting
Maude
LENGUAJES Y SISTEMAS INFORMATICOS
Description
Summary:In this paper, we present a novel transformation method for Maude programs featuring both automatic program diagnosis and correction. The input of our method is a reference specification A of the program behavior that is given in the form of assertions together with an overly general program R whose execution might violate the assertions. Our technique translates R into a refined program R' in which every computation is a computation in R that satisfies the assertions of A. Our correction technique is first formalized for topmost rewrite theories, and then we generalize it to larger rewrite theories that support nested structured configurations. Our technique copes with infinite space states and does not require the knowledge of any failing run. We report experiments that assess the effectiveness of assertion-driven correction.