首页 | 本学科首页   官方微博 | 高级检索  
     


Dynamic slicing of concurrent specification languages
Affiliation:1. Departamento de Sistemas Informáticos y Computación, Universitat Politècnica de València, Valencia, Spain;2. Babel Research Group Fac. Informática, Universidad Politécnica de Madrid, Campus de Montegancedo, s/n. 28660 Boadilla del Monte, Spain;1. Computer Science Department, University of Arizona, Tucson, AZ, USA;2. Computer Science Department, Colorado State University, Fort Collins, CO, USA;3. Computer Science & Engineering Department, University of California, San Diego, La Jolla, CA, USA;4. Computer Science, La Sierra University, Riverside, CA, USA;1. Department of Computer Science, the University of Chicago, Chicago, Illinois, USA;2. Department of Statistics, Department of Ecology and Evolution, Department of Molecular Genetics and Cell Biology, Institute of Genomics and Systems Biology, the University of Chicago, Chicago, Illinois, USA
Abstract:Dynamic slicing is a technique to extract the part of the program (called slice) that influences or is influenced, in a particular execution, by a given point of interest in the source code (called slicing criterion). Since a single execution is considered, the technique often uses a trace of this execution to analyze data and control dependencies. In this work we present the first formulation and implementation of dynamic slicing in the context of CSP. Most of the ideas presented can be directly applied to other concurrent specification languages such as Promela or CCS, but we center the discussion and the implementation on CSP. We base our technique on a new data structure to represent CSP computations called track. A track is a data structure which represents the sequence of expressions that have been evaluated during the computation, and moreover, it is labeled with the location of these expressions in the specification. The implementation of a dynamic slicer for CSP is useful for debugging, program comprehension, and program specialization, and it is also interesting from a theoretical perspective because CSP introduces difficulties such as heavy concurrency and non-determinism, synchronizations, frequent absence of data dependence, etc.
Keywords:
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号