Automatic Testing of Program Slicers
Program slicing is a technique to extract the part of a program (the slice) that influences or is influenced by a set of variables at a given point (the slicing criterion). Computing minimal slices is undecidable in the general case, and obtaining the minimal slice of a given program is normally com...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Hindawi Limited
2019-01-01
|
Series: | Scientific Programming |
Online Access: | http://dx.doi.org/10.1155/2019/4108652 |
id |
doaj-c5a4cc2e31f247f2af8ef8baa1d71925 |
---|---|
record_format |
Article |
spelling |
doaj-c5a4cc2e31f247f2af8ef8baa1d719252021-07-02T03:51:31ZengHindawi LimitedScientific Programming1058-92441875-919X2019-01-01201910.1155/2019/41086524108652Automatic Testing of Program SlicersSergio Pérez0Josep Silva1Salvador Tamarit2Universitat Politècnica de València, Camí de Vera s/n, E-46022 València, SpainUniversitat Politècnica de València, Camí de Vera s/n, E-46022 València, SpainUniversitat Politècnica de València, Camí de Vera s/n, E-46022 València, SpainProgram slicing is a technique to extract the part of a program (the slice) that influences or is influenced by a set of variables at a given point (the slicing criterion). Computing minimal slices is undecidable in the general case, and obtaining the minimal slice of a given program is normally computationally prohibitive even for very small programs. Therefore, no matter what program slicer we use, in general, we cannot be sure that our slices are minimal. This is probably the fundamental reason why no benchmark collection of minimal program slices exists. In this work, we present a method to automatically produce quasi-minimal slices. Using our method, we have produced a suite of quasi-minimal slices for Erlang that we have later manually proved they are minimal. We explain the process of constructing the suite, the methodology and tools that were used, and the results obtained. The suite comes with a collection of Erlang benchmarks together with different slicing criteria and the associated minimal slices.http://dx.doi.org/10.1155/2019/4108652 |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Sergio Pérez Josep Silva Salvador Tamarit |
spellingShingle |
Sergio Pérez Josep Silva Salvador Tamarit Automatic Testing of Program Slicers Scientific Programming |
author_facet |
Sergio Pérez Josep Silva Salvador Tamarit |
author_sort |
Sergio Pérez |
title |
Automatic Testing of Program Slicers |
title_short |
Automatic Testing of Program Slicers |
title_full |
Automatic Testing of Program Slicers |
title_fullStr |
Automatic Testing of Program Slicers |
title_full_unstemmed |
Automatic Testing of Program Slicers |
title_sort |
automatic testing of program slicers |
publisher |
Hindawi Limited |
series |
Scientific Programming |
issn |
1058-9244 1875-919X |
publishDate |
2019-01-01 |
description |
Program slicing is a technique to extract the part of a program (the slice) that influences or is influenced by a set of variables at a given point (the slicing criterion). Computing minimal slices is undecidable in the general case, and obtaining the minimal slice of a given program is normally computationally prohibitive even for very small programs. Therefore, no matter what program slicer we use, in general, we cannot be sure that our slices are minimal. This is probably the fundamental reason why no benchmark collection of minimal program slices exists. In this work, we present a method to automatically produce quasi-minimal slices. Using our method, we have produced a suite of quasi-minimal slices for Erlang that we have later manually proved they are minimal. We explain the process of constructing the suite, the methodology and tools that were used, and the results obtained. The suite comes with a collection of Erlang benchmarks together with different slicing criteria and the associated minimal slices. |
url |
http://dx.doi.org/10.1155/2019/4108652 |
work_keys_str_mv |
AT sergioperez automatictestingofprogramslicers AT josepsilva automatictestingofprogramslicers AT salvadortamarit automatictestingofprogramslicers |
_version_ |
1721341058684551168 |