Skip to main content

Proving Functional Equivalence for Program Slicing in SPARKTM

  • Conference paper
Reliable Software Technology – Ada-Europe 2005 (Ada-Europe 2005)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3555))

Included in the following conference series:

  • 312 Accesses

Abstract

Recent trends in software re-engineering have included tools to extract program slices from existing Ada procedures. This paper presents another such tool that extracts program slices from SPARK procedures and proves that the functionality of the original procedure is equivalent to the functionality of the collection of resulting slices. By showing that the effects of the SPARK statements in the collection of slices has the same effect on the input and output parameters of the procedure, we show that the SPARK program slicer, SPARKSlicer produces functionally equivalent program slices from SPARK procedures.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. ASIS Basic Concepts (1998), http://www.acm.org/sigada/wg/asiswg/basics.html (retrieved June 3, 2003)

  2. Barnes, J.: High Integrity Software, The SPARK Approach to Safety and Security. c2003 Praxis Critical Systems. Addison-Wesley, London (2003)

    Google Scholar 

  3. Dwyer, M.B., Corbett, J.C., Hatcliff, J., Sokolowski, S., Zheng, H.: Slicing Multi-Threaded Java Programs: A Case Study. Tech. Report KSU CIS TR 99-7

    Google Scholar 

  4. Program Slicing, http://www.ssw.unilinz.ac.at/Research/Projects/ProgramSlicing (retrieved June 4, 2003)

  5. SPARK 95 – The SPADE Ada 95 Kernel, copyright Praxis Critical Systems. Edition 4.1 (October 2003)

    Google Scholar 

  6. Sward, R.E.: Extracting Functionally Equivalent Object-Oriented Designs from Legacy Imperative Code. PhD Thesis, Air Force Institute of Technology, Wright-Patterson AFB, OH (September 1997)

    Google Scholar 

  7. Sward, R.E., Chamillard, A.T.: AdaSlicer: A Program Slicer for Ada. In: Proceedings of the ACM International SIGAda 2003 Conference, San Diego, CA (December 2003)

    Google Scholar 

  8. Sward, R.E., Chamillard, A.T.: Re-engineering Global Variables in Ada. In: Proceedings of the ACM International SIGAda 2004 Conference, Atlanta, GA (November 2004)

    Google Scholar 

  9. Sward, R.E., Hartrum, T.C.: Extracting objects from legacy imperative code. In: Proceedings of the 12th IEEE International Conference on Automated Software Engineering, Incline Village, Nevada, November 1997, pp. 98–106 (1997)

    Google Scholar 

  10. The Unravel Project (1998), http://hissa.nist.gov/unravel/ (retrieved June 4, 2003)

  11. Weiser, M.: Program slicing. IEEE Transactions on Software Engineering, SE-10(4), 352–357 (1984)

    Google Scholar 

  12. The Wisconsin Program-Slicing Tool, Version 1.1 (2000), http://www.cs.wisc.edu/wpis/slicing_tool/ (retrieved June 4, 2003)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sward, R.E., Baird, L.C. (2005). Proving Functional Equivalence for Program Slicing in SPARKTM . In: Vardanega, T., Wellings, A. (eds) Reliable Software Technology – Ada-Europe 2005. Ada-Europe 2005. Lecture Notes in Computer Science, vol 3555. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11499909_9

Download citation

  • DOI: https://doi.org/10.1007/11499909_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-26286-2

  • Online ISBN: 978-3-540-31666-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics