
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
Martin P. Ward, Hussein Zedan, "Deriving a Slicing Algorithm via FermaT Transformations," IEEE Transactions on Software Engineering, vol. 37, no. 1, pp. 2447, January/February, 2011.  
BibTex  x  
@article{ 10.1109/TSE.2010.13, author = {Martin P. Ward and Hussein Zedan}, title = {Deriving a Slicing Algorithm via FermaT Transformations}, journal ={IEEE Transactions on Software Engineering}, volume = {37}, number = {1}, issn = {00985589}, year = {2011}, pages = {2447}, doi = {http://doi.ieeecomputersociety.org/10.1109/TSE.2010.13}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Software Engineering TI  Deriving a Slicing Algorithm via FermaT Transformations IS  1 SN  00985589 SP24 EP47 EPD  2447 A1  Martin P. Ward, A1  Hussein Zedan, PY  2011 KW  Program slicing KW  program transformations KW  formal methods KW  algorithm derivation. VL  37 JA  IEEE Transactions on Software Engineering ER   
[1] T. Amtoft, "Slicing for Modern Program Structures: A Theory for Eliminating Irrelevant Loops," Information Processing Letters, vol. 106, pp. 4551, 2008.
[2] R.J.R. Back, "Correctness Preserving Program Refinements," Math. Centre Tracts#131, Mathematisch Centrum, 1980.
[3] R.J.R. Back, "A Calculus of Refinements for Program Derivations," Acta Informatica, vol. 25, pp. 593624, 1988.
[4] R.J.R. Back and J. von Wright, "Refinement Concepts Formalised in HigherOrder Logic," Formal Aspects of Computing, vol. 2, pp. 247272, 1990.
[5] F.L. Bauer, B. Moller, H. Partsch, and P. Pepper, "Formal Construction by Transformation—Computer Aided Intuition Guided Programming," IEEE Trans. Software Eng., vol. 15, no. 2, pp. 165180, Feb. 1989.
[6] J.C. Bicarregui and B.M. Matthews, "Proof and Refutation in Formal Software Development," Proc. Third Irish Workshop Formal Software Development, July 1999.
[7] G. Bilardi and K. Pingali, "The Static Single Assignment Form and Its Computation," Cornell Univ. technical report, pp. 137, http://www.cs.cornell.edu/Info/Projects/ Bernoulli/papersssa.ps, July 1999.
[8] D. Binkley, "Precise Executable Interprocedural Slices," ACM Letters on Programming Languages and Systems, vol. 2, pp. 3145, Mar. 1993.
[9] D. Binkley, S. Danicic, T. Gyimóthy, M. Harman, Á. Kiss, and B. Korel, "A Formalisation of the Relationship between Forms of Program Slicing," Science of Computer Programming, vol. 62, no. 3, pp. 228252, 2006.
[10] D. Binkley and M. Harman, "A Survey of Empirical Results on Program Slicing," Advances in Computers, M. Zelkowitz, ed., vol. 62, Academic Press, 2004.
[11] D. Binkley, M. Harman, and S. Danicic, "Amorphous Program Slicing," J. Systems and Software, vol. 68, no. 1, pp. 4564, Oct. 2003.
[12] D.W. Binkley and K.B. Gallagher, "A Survey of Program Slicing," Advances in Computers, vol. 43, pp. 152, Academic Press, 1996.
[13] R. Bird and O. de Moor, The Algebra of Programming. PrenticeHall, 1996.
[14] Z. Chen, A. Cau, H. Zedan, and H. Yang, "A Refinement Calculus for the Development of RealTime Systems," Proc. Fifth Asia Pacific Software Eng. Conf., 1998.
[15] Verification, Model Checking, and Abstract Interpretation, R. Cousot, ed. SpringerVerlag, Jan. 2005.
[16] E.W. Dijkstra, A Discipline of Programming. PrenticeHall, 1976.
[17] A. Hall, "Seven Myths of Formal Methods," IEEE Software, vol. 7, no. 5, pp. 1119, Sept. 1990.
[18] M. Harman and S. Danicic, "Amorphous Program Slicing," Proc. Fifth IEEE Int'l Workshop Program Comprehesion, May 1997.
[19] J. Hatcliff, M.B. Dwyer, and H. Zheng, "Slicing Software for Model Construction," J. HigherOrder and Symbolic Computation, vol. 13. no. 4, pp. 315353, Dec. 2000.
[20] C.A.R. Hoare, I.J. Hayes, H.E. Jifeng, C.C. Morgan, A.W. Roscoe, J.W. Sanders, I.H. Sorensen, J.M. Spivey, and B.A. Sufrin, "Laws of Programming," Comm. ACM, vol. 30, no. 8, pp. 672686, Aug. 1987.
[21] S. Horwitz, T. Reps, and D. Binkley, "Interprocedural Slicing Using Dependence Graphs," ACM Trans. Programming Languages and Systems, vol. 12, no. 1, pp. 2660, Jan. 1990.
[22] C.B. Jones, K.D. Jones, P.A. Lindsay, and R. Moore, Mural: A Formal Development Support System. SpringerVerlag, 1991.
[23] C.R. Karp, Languages with Expressions of Infinite Length. NorthHolland, 1964.
[24] K.C. Lano and H.P. Haughton, "Formal Development in B," Information and Software Technology, vol. 37, pp. 303316, June 1995.
[25] K. Lano, The B Language and Method: A Guide to Practical Formal Development. SpringerVerlag, 1996.
[26] M. Mock, D.C. Atkinson, C. Chambers, and S.J. Eggers, "Improving Program Slicing with Dynamic Pointsto Data," Proc. 10th ACM SIGSOFT Symp. Foundations of Software Eng., pp. 7180, 2002.
[27] C.C. Morgan, "The Specification Statement," ACM Trans. Programming Languages and Systems, vol. 10, pp. 403419, 1988.
[28] C.C. Morgan, Programming from Specifications, second ed. PrenticeHall, 1994.
[29] C.C. Morgan and K. Robinson, "Specification Statements and Refinements," IBM J. Research and Development, vol. 31, no. 5, pp. 546555, 1987.
[30] C.C. Morgan, K. Robinson, and P. Gardiner, "On the Refinement Calculus," Technical Monograph PRG70, Oxford Univ., Oct. 1988.
[31] M. Neilson, K. Havelund, K.R. Wagner, and E. Saaman, "The RAISE Language, Method and Tools," Formal Aspects of Computing, vol. 1, pp. 85114, 1989.
[32] R. Paige, "Future Directions in Program Transformations," ACM Computing Surveys, vol. 28A, no. 4, pp. 170174, 1986.
[33] H. Partsch and R. Steinbrügen, "Program Transformation Systems," Computing Surveys, vol. 15, no. 3, pp. 199236, Sept. 1983.
[34] K. Pingali and G. Bilardi, "Optimal Control Dependence Computation and the Roman Chariots Problem," ACM Trans. Programming Languages and Systems, vol. 19, no. 3,http://www.cs.cornell.edu/Info/Projects/ Bernoulli/paperstoplas 97.ps, pp. 462491, May 1997.
[35] H.A. Priestley and M. Ward, "A Multipurpose Backtracking Algorithm," J. Symbolic Computation, vol. 18, pp. 140, http://www.cse.dmu.ac.uk/~mward/martin/papers backtrt.ps.gz, 1994, doi:10.1006/jsco.1994.1035.
[36] V. Prasad Ranganath, T. Amtoft, A. Banerjee, M.B. Dwyer, and J. Hatcliff, "A New Foundation For ControlDependence and Slicing for Modern Program Structures," Proc. European Symp. Programming, pp. 7793, Apr. 2005.
[37] T. Reps, "Algebraic Properties of Program Integration," Science of Computer Programming, vol. 17, pp. 139215, 1991.
[38] T. Reps and W. Yang, "The Semantics of Program Slicing," Computer Sciences Technical Report 777, June 1988.
[39] N.F. Rodrigues and L.S. Barbosa, "Program Slicing by Calculation," J. Universal Computer Science, vol. 12, no. 7, pp. 828848, 2006.
[40] J.M. Spivey, The Z Notation: A Reference Manual, second ed. Prentice Hall Int'l, 1992.
[41] B. Steensgaarda, "Pointsto Analysis in Almost Linear Time," Proc. 32nd ACM SIGPLANSIGACT Symp. Principles of Programming Languages, 1996.
[42] S. Stepney, D. Cooper, and J. Woodcock, "More Powerful Z Data Refinement: Pushing the State of the Art in Industrial Refinement," The Z Formal Specification Notation, J.P. Bowen, A. Fett, and M.G. Hinchey, eds., pp. 284307, SpringerVerlag, Sept. 1998.
[43] F. Tip, "A Survey of Program Slicing Techniques," J. Programming Languages, vol. 3, no. 3, pp. 121189, Sept. 1995.
[44] A. Turing, "On Computable Numbers, with an Application to the Entscheidungsproblem," Proc. London Math. Soc., vol. 2, no. 42, pp. 230265, 1936.
[45] G.A. Venkatesh, "The Semantic Approach to Program Slicing," Proc. SIGPLAN 1991 Conf. Programming Language Design and Implementation, vol. 26, no. 6, pp. 107119, June 1991.
[46] M. Ward, "Proving Program Refinements and Transformations," DPhil thesis, Oxford Univ., http://www.cse.dmu.ac.uk/~mward/martinthesis , 1989.
[47] M. Ward, "Reverse Engineering through Formal Transformation Knuths `Polynomial Addition' Algorithm," Computer J., vol. 37, no. 9, pp. 795813, http://www.cse.dmu.ac.uk/~mward/martin/papers polyt.ps.gz, 1994, doi:10.1093/comjnl/37.9.795.
[48] M. Ward, "Program Analysis by Formal Transformation," Computer J., vol. 39, no. 7, pp. 598618, http://www.cse.dmu.ac. uk/~mward/martin/ paperstopsortt.ps.gz, 1996, doi:10.1093/comjnl/39.7.598.
[49] M. Ward, "Assembler to C Migration Using the FermaT Transformation System," Proc. Int'l Conf. Software Maintenance, Aug./Sept. 1999.
[50] M. Ward, "Recursion Removal/Introduction by Formal Transformation: An Aid to Program Development and Program Comprehension," Computer J., vol. 42, no. 8, pp. 650673, 1999.
[51] M. Ward, "Reverse Engineering from Assembler to Formal Specifications via Program Transformations," Proc. Seventh Working Conf. Reverse Eng., http://www.cse.dmu.ac.uk/~mward/martin/papers wcre2000.ps.gz, Nov. 2000.
[52] M. Ward, "The Formal Transformation Approach to Source Code Analysis and Manipulation," Proc. IEEE Int'l Workshop Source Code Analysis and Manipulation, Nov. 2001.
[53] M. Ward, "Abstracting a Specification from Code," J. Software Maintenance: Research and Practice, vol. 5, no. 2, pp. 101122, http://www.cse.dmu.ac.uk/~mward/martin/papers progspec. ps.gz, June 1993.
[54] M. Ward, "Specifications from Source Code—Alchemists' Dream or Practical Reality?" Proc. Fourth Reeng. Forum, Sept. 1994.
[55] M. Ward, "Derivation of Data Intensive Algorithms by Formal Transformation," IEEE Trans. Software Eng., vol. 22, no. 9, pp. 665686, Sept. 1996, doi:doi.ieeecomputersociety.org/10.1109/32.541437.
[56] M. Ward and K.H. Bennett, "A Practical Program Transformation System for Reverse Engineering," Proc. IEEE Conf. Software Maintenance1993, 1993.
[57] M.P. Ward, H. Zedan, and T. Hardcastle, "Conditioned Semantic Slicing via Abstraction and Refinement in FermaT," Proc. Ninth European Conf. Software Maintenance and Reeng., Mar. 2005.
[58] M. Ward, "The FermaT Assembler ReEngineering Workbench," Proc. Int'l Conf. Software Maintenance, Nov. 2001.
[59] M. Ward, "Pigs from Sausages? Reengineering from Assembler to C via FermaT Transformations," Science of Computer Programming, vol. 52, nos. 13, pp. 213255, Special Issue on Program Transformation, http://www.cse.dmu.ac.uk/~martin/papersmigrationt.ps.gz , 2004, doi:dx.doi.org/10.1016/j.scico.2004. 03.007.
[60] M. Ward, "Properties of Slicing Definitions," Proc. Ninth IEEE Int'l Working Conf. Source Code Analysis and Manipulation, Sept. 2009.
[61] M. Ward and H. Zedan, "MetaWSL and MetaTransformations in the FermaT Transformation System," Proc. 29th Ann. Int'l Computer Software and Applications Conf., Nov. 2005.
[62] M. Ward and H. Zedan, "Combining Dynamic and Static Slicing for Analysing Assembler," Science of Computer Programming, http://www.cse.dmu.ac.uk/~martin/paperscombinedslicingt.pdf , 2009, doi:10.1016/j.scico.2009. 11.001.
[63] M. Ward and H. Zedan, "Slicing as a Program Transformation," Trans. Programming Languages and Systems, vol. 29, no. 2, pp. 152, http://www.cse.dmu.ac.uk/~martin/papersslicingt.ps.gz , Apr. 2007.
[64] M. Ward, H. Zedan, M. Ladkau, and S. Natelberg, "Conditioned Semantic Slicing for Abstraction; Industrial Experiment," Software Practice and Experience, vol. 38, no. 12, pp. 12731304, http://www. cse.dmu.ac.uk/~mward/martin/ papersslicingpaperfinal.pdf, Oct. 2008, doi:doi.wiley.com/10.1002/spe.869.
[65] M. Weiser, "Program Slicing," IEEE Trans. Software Eng., vol. 10, no. 4, pp. 352357, July 1984.
[66] R.P. Wilson, "Efficient ContextSensitive Pointer Analysis for C Programs," PhD thesis, Computer Systems Laboratory, Stanford Univ., Dec. 1997.
[67] R.P. Wilson and M.S. Lam, "Efficient ContextSensitive Pointer Analysis for C Programs," Proc. ACM SIGPLAN 1995 Conf. Programming Language Design and Implementation, June 1995.
[68] N. Wirth, "Program Development by Stepwise Refinement," Comm. ACM, vol. 14, no. 4, pp. 221227, 1971.
[69] J. Wordsworth, Software Engineering with B. Addison Wesley Longman, 1996.
[70] H. Yang and M. Ward, Successful Evolution of Software Systems. Artech House, 2003.
[71] E.J. Younger and M. Ward, "Inverse Engineering a Simple Real Time Program," J. Software Maintenance: Research and Practice, vol. 6, pp. 197234, SMART Project, http://www.cse.dmu.ac.uk/~mward/martin/papers eddyt.ps.gz, 1993, doi:doi.wiley.com/10.1002/smr.4360060404.
[72] X. Zhang, M. Munro, M. Harman, and L. Hu, "Weakest Precondition for General Recursive Programs Formalized in Coq," Proc. 15th Int'l Conf. Theorem Proving in Higher Order Logics, 2002.
[73] X. Zhang, M. Munro, M. Harman, and L. Hu, "Mechanized Operational Semantics of WSL," Proc. IEEE Int'l Workshop Source Code Analysis and Manipulation (SCAM), 2002.