DocumentCode
2746158
Title
Kato: A Program Slicing Tool for Declarative Specifications
Author
Uzuncaova, Engin ; Khurshid, Sarfraz
Author_Institution
Univ. of Texas at Austin, Austin, TX
fYear
2007
fDate
20-26 May 2007
Firstpage
767
Lastpage
770
Abstract
This paper presents Kato, a tool that implements a novel class of optimizations that are inspired by program slicing for imperative languages but are applicable to analyzable declarative languages, such as Alloy. Kato implements a novel algorithm for slicing declarative models written in Alloy and leverages its relational engine KodKodfor analysis. Given an Alloy model, Kato identifies a slice representing the model´s core: a satisfying instance for the core can systematically be extended into a satisfying instance for the entire model, while unsatisfiability of the core implies unsatisfiability of the entire model. The experimental results show that for a variety of subject models Kato´s slicing algorithm enables an order of magnitude speed-up over Alloy´s default translation to SAT.
Keywords
formal specification; program slicing; software tools; Alloy model; Kato tool; KodKodfor analysis; SAT; declarative languages; declarative specifications; imperative languages; program slicing; Algorithm design and analysis; Automatic testing; Buildings; Cost accounting; Engines; Optimizing compilers; Software algorithms; Software systems; Software testing; System testing;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2007. ICSE 2007. 29th International Conference on
Conference_Location
Minneapolis, MN
ISSN
0270-5257
Print_ISBN
0-7695-2828-7
Type
conf
DOI
10.1109/ICSE.2007.47
Filename
4222643
Link To Document