
In the present article, we formally define the notion of abstract program slicing , a general form of program slicing where properties of data are considered instead of their exact value. This approach is applied to a language with numeric and reference values and relies on the notion of abstract dependencies between program statements. The different forms of (backward) abstract slicing are added to an existing formal framework where traditional, nonabstract forms of slicing could be compared. The extended framework allows us to appreciate that abstract slicing is a generalization of traditional slicing, since each form of traditional slicing (dealing with syntactic dependencies) is generalized by a semantic (nonabstract) form of slicing, which is actually equivalent to an abstract form where the identity abstraction is performed on data. Sound algorithms for computing abstract dependencies and a systematic characterization of program slices are provided, which rely on the notion of agreement between program states.
FOS: Computer and information sciences, Computer Science - Logic in Computer Science, Computer Science - Programming Languages, Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.), Program slicing, abstract interpretation, semantics, static analysis, Logic in Computer Science (cs.LO), static analysis, program slicing, abstract interpretation, semantics, Programming Languages (cs.PL)
FOS: Computer and information sciences, Computer Science - Logic in Computer Science, Computer Science - Programming Languages, Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.), Program slicing, abstract interpretation, semantics, static analysis, Logic in Computer Science (cs.LO), static analysis, program slicing, abstract interpretation, semantics, Programming Languages (cs.PL)
| selected citations These citations are derived from selected sources. This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | 21 | |
| popularity This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network. | Top 10% | |
| influence This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically). | Top 10% | |
| impulse This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network. | Top 10% |
