Experiments on slicing-based debugging aids
Papers presented at the first workshop on empirical studies of programmers on Empirical studies of programmers
Information Processing Letters
An algorithm deciding functional equivalence in a new class of program schemes
Theoretical Computer Science - Special issue on the Second French-Soviet Workshop on Methods of Compilation and Program Construction, Nice, France, Feb. 1988
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Using Program Slicing in Software Maintenance
IEEE Transactions on Software Engineering
Debugging with dynamic slicing and backtracking
Software—Practice & Experience
A specification driven slicing process for identifying reusable functions
Journal of Software Maintenance: Research and Practice
Journal of the ACM (JACM)
Theory of Program Structures: Schemes, Semantics, Verification
Theory of Program Structures: Schemes, Semantics, Verification
Testing real-time systems using genetic algorithms
Software Quality Control
Equivalence of conservative, free, linear program schemas is decidable
Theoretical Computer Science
Software Salvaging Based on Conditions
ICSM '94 Proceedings of the International Conference on Software Maintenance
Interprocedural Dynamic Slicing
PLILP '92 Proceedings of the 4th International Symposium on Programming Language Implementation and Logic Programming
Dynamic Slicing Method for Maintenance of Large C Programs
CSMR '01 Proceedings of the Fifth European Conference on Software Maintenance and Reengineering
The complexity of theorem-proving procedures
STOC '71 Proceedings of the third annual ACM symposium on Theory of computing
VADA: A Transformation-Based System for Variable Dependence Analysis
SCAM '02 Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation
Understanding Function Behaviors through Program Slicing
WPC '96 Proceedings of the 4th International Workshop on Program Comprehension (WPC '96)
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Mathematical Theory of Computation
Mathematical Theory of Computation
Precise interprocedural analysis through linear algebra
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Precise interprocedural dependence analysis of parallel programs
Theoretical Computer Science
Computing polynomial program invariants
Information Processing Letters
Theoretical foundations of dynamic program slicing
Theoretical Computer Science
Static Program Slicing Algorithms are Minimal for Free Liberal Program Schemas
The Computer Journal
Equivalence of linear, free, liberal, structured program schemas is decidable in polynomial time
Theoretical Computer Science
On formalised computer programs
Journal of Computer and System Sciences
Hi-index | 0.00 |
Given a program, a quotient can be obtained from it by deleting zero or more statements. The field of program slicing is concerned with computing a quotient of a program that preserves part of the behaviour of the original program. All program slicing algorithms take account of the structural properties of a program, such as control dependence and data dependence, rather than the semantics of its functions and predicates, and thus work, in effect, with program schemas. The dynamic slicing criterion of Korel and Laski requires only that program behaviour is preserved in cases where the original program follows a particular path, and that the slice/quotient follows this path. In this paper we formalise Korel and Laski's definition of a dynamic slice as applied to linear schemas, and also formulate a less restrictive definition in which the path through the original program need not be preserved by the slice. The less restrictive definition has the benefit of leading to smaller slices. For both definitions, we compute complexity bounds for the problems of establishing whether a given slice of a linear schema is a dynamic slice and whether a linear schema has a non-trivial dynamic slice, and prove that the latter problem is NP-hard in both cases. We also give an example to prove that minimal dynamic slices (whether or not they preserve the original path) need not be unique.