Program slicing using a path dependence flow graph

被引:0
|
作者
Naoi, K
Takahashi, N
机构
[1] NTT Software Laboratories, Musashino
关键词
program analysis; dependence graph; program slice; imperative program; dataflow computation model;
D O I
10.1002/scj.4690271207
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
A method that formally represents various program slices with a unified framework is presented; it uses a previously proposed directed graph called a path dependence flow graph (PDFG). Program slicing is a technique of extracting a set of statements (called slices) with certain desired features from an imperative program. The method proposed here has the following properties. (1) Since slices are represented by operations on dependence relationships defined on a PDFG, properties of slices such as an inclusion relationship among slices can be discussed independently of slicing procedures. (2) Since various slices are represented with the same framework, appropriate slices can be selected for specific purposes using one representation. (3) Since slices are generalized using orthogonal primitive attributes, slices can be represented comprehensively; this includes the ones for which there have been no known construction methods. It is also proven herein that major known slices and the slices represented by this method are identical as a set of statements, thereby demonstrating the appropriateness of this proposed method.
引用
收藏
页码:73 / 91
页数:19
相关论文
共 50 条
  • [41] Efficient program verification using binary trees and program slicing
    Takahashi, M
    Mizukoshi, N
    Tsuda, K
    KNOWLEDGE-BASED INTELLIGENT INFORMATION AND ENGINEERING SYSTEMS, PT 1, PROCEEDINGS, 2004, 3213 : 487 - 493
  • [42] Graph-less Dynamic Dependence-based dynamic slicing algorithms
    Beszedes, Arpad
    Gergely, Tamas
    Gyimothy, Tibor
    SIXTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2006, : 21 - +
  • [43] MOBS: Multi-Operator Observation-Based Slicing using Lexical Approximation of Program Dependence
    Lee, Seongmin
    Binkley, David
    Gold, Nicolas
    Islam, Syed
    Krinke, Jens
    Yoo, Shin
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION, 2018, : 302 - 303
  • [44] Formalizing a framework for dynamic slicing of program dependence graphs in Isabelle/HOL
    Wasserrab, Daniel
    Lochbihler, Andreas
    THEOREM PROVING IN HIGHER ORDER LOGICS, PROCEEDINGS, 2008, 5170 : 294 - 309
  • [45] Dynamic dependence in term rewriting systems and its application to program slicing
    Field, J
    Tip, F
    INFORMATION AND SOFTWARE TECHNOLOGY, 1998, 40 (11-12) : 609 - 636
  • [46] Bug classification using program slicing metrics
    Pan, Kai
    Kim, Sunghun
    Whitehead, E. James, Jr.
    SIXTH IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2006, : 31 - +
  • [47] A new foundation for control-dependence and slicing for modern program structures
    Ranganath, VP
    Amtoft, T
    Banerjee, A
    Dwyer, MB
    Hatcliff, J
    PROGRAMMING LANGUAGES AND SYSTEMS, PROCEEDINGS, 2005, 3444 : 77 - 93
  • [48] Certifying Software Robustness Using Program Slicing
    Abdallah, Mohammad
    Munro, Malcolm
    Gallagher, Keith
    2010 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2010,
  • [49] Using Program Slicing to Detect the Dead Code
    AlAbwaini, Nour
    Alda'aje, Amal
    Jaber, Tamara
    Abdallah, Mohammad
    Tamimi, Abdelfatah
    2018 8TH INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND INFORMATION TECHNOLOGY (CSIT), 2018, : 230 - 233
  • [50] Untangling Composite Commits Using Program Slicing
    Muylaert, Ward
    De Roover, Coen
    2018 IEEE 18TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2018, : 193 - 202