Specification statements and refinements
IBM Journal of Research and Development
A calculus of refinements for program derivations
Acta Informatica
Information Processing Letters
Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
The semantic approach to program slicing
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
IEEE Transactions on Software Engineering - Special issue: best papers of the sixth international workshop on Petri nets and performance models (PNPM'95)
Journal of Software Maintenance: Research and Practice
Optimal control dependence computation and the Roman chariots problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Programmers use slices when debugging
Communications of the ACM
The denotational semantics of programming languages
Communications of the ACM
Flow diagrams, turing machines and languages with only two formation rules
Communications of the ACM
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
A Discipline of Programming
Successful Evolution of Software Systems
Successful Evolution of Software Systems
Mechanized Operational Semantics of WSL
SCAM '02 Proceedings of the Second IEEE International Workshop on Source Code Analysis and Manipulation
Reverse Engineering from Assembler to Formal Specifications via Program Transformations
WCRE '00 Proceedings of the Seventh Working Conference on Reverse Engineering (WCRE'00)
GUSTT: An Amorphous Slicing System which Combines Slicing and Transformation
WCRE '01 Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)
WPC '97 Proceedings of the 5th International Workshop on Program Comprehension (WPC '97)
Assembler to C Migration Using the FermaT Transformation System
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
ConSIT: A Conditioned Program Slicer
ICSM '00 Proceedings of the International Conference on Software Maintenance (ICSM'00)
Unions of Slices Are Not Slices
CSMR '03 Proceedings of the Seventh European Conference on Software Maintenance and Reengineering
Union Slices for Program Maintenance
ICSM '02 Proceedings of the International Conference on Software Maintenance (ICSM'02)
Proving program refinements and transformations
Proving program refinements and transformations
Journal of Systems and Software
Pigs from sausages? Reengineering from assembler to C via FermaT transformations
Science of Computer Programming - Special issue on program transformation
Conditioned Semantic Slicing via Abstraction and Refinement in FermaT
CSMR '05 Proceedings of the Ninth European Conference on Software Maintenance and Reengineering
Data dependencies and program slicing: from syntax to abstract semantics
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
A type system for the automatic distribution of higher-order synchronous dataflow programs
Proceedings of the 2008 ACM SIGPLAN-SIGBED conference on Languages, compilers, and tools for embedded systems
Conditioned semantic slicing for abstraction; industrial experiment
Software—Practice & Experience
Formalizing a Framework for Dynamic Slicing of Program Dependence Graphs in Isabelle/HOL
TPHOLs '08 Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics
On PDG-based noninterference and its modular proof
Proceedings of the ACM SIGPLAN Fourth Workshop on Programming Languages and Analysis for Security
A trajectory-based strict semantics for program slicing
Theoretical Computer Science
Obfuscation by partial evaluation of distorted interpreters
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
A vocabulary of program slicing-based techniques
ACM Computing Surveys (CSUR)
An empirical evaluation of several test-a-few strategies for testing particular conditions
Software—Practice & Experience
Stratified Static Analysis Based on Variable Dependencies
Electronic Notes in Theoretical Computer Science (ENTCS)
State-based model slicing: A survey
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
The aim of this article is to provide a unified mathematical framework for program slicing which places all slicing work for sequential programs on a sound theoretical foundation. The main advantage to a mathematical approach is that it is not tied to a particular representation. In fact the mathematics provides a sound basis for any particular representation. We use the WSL (wide-spectrum language) program transformation theory as our framework. Within this framework we define a new semantic relation, semirefinement, which lies between semantic equivalence and semantic refinement. Combining this semantic relation, a syntactic relation (called reduction), and WSL's remove statement, we can give mathematical definitions for backwards slicing, conditioned slicing, static and dynamic slicing, and semantic slicing as program transformations in the WSL transformation theory. A novel technique of “encoding” operational semantics within a denotational semantics allows the framework to handle “operational slicing”. The theory also enables the concept of slicing to be applied to nondeterministic programs. These transformations are implemented in the industry-strength FermaT transformation system.