Back to Search Start Over

Repairing Structurally Complex Data.

Authors :
Godefroid, Patrice
Khurshid, Sarfraz
García, Iván
Suen, Yuk Lai
Source :
Model Checking Software; 2005, p123-138, 16p
Publication Year :
2005

Abstract

We present a novel algorithm for repairing structurally complex data. Given an assertion that represents desired structural integrity constraints and a structure that violates them, the algorithm performs repair actions that mutate the given structure to generate a new structure that satisfies the constraints. Assertions are written as imperative predicates, which can express rich structural properties. Since these properties can be arbitrarily complex, our algorithm is sound but not complete, and it may not terminate in certain cases. Experimental results with our prototype implementation, Juzi, show that it is feasible to efficiently repair a variety of complex data structures that are routinely used in library code. Juzi can often repair structures comprising of over a hundred objects (even when majority of the objects have some corrupted field) in less than one second. Our algorithm is based on systematic backtracking but does not require storing states and can easily be implemented in a variety of software model checkers, such as the Java PathFinder, SPIN, and VeriSoft. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISBNs :
9783540281955
Database :
Supplemental Index
Journal :
Model Checking Software
Publication Type :
Book
Accession number :
32906423
Full Text :
https://doi.org/10.1007/11537328_12