Skip to main content

Useless-Code Elimination and Program Slicing for the Pi-Calculus

  • Conference paper
Programming Languages and Systems (APLAS 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2895))

Included in the following conference series:

Abstract

In this paper, we study program transformations called useless-code elimination and program slicing in the context of the π-calculus. The aim of useless-code elimination and program slicing is to simplify a program by eliminating useless or unimportant part of the program. We define formal correctness criteria for those transformations, present a type-based transformation method, and prove its correctness.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M.: Secrecy by typing in security protocols. Journal of the Association for Computing Machinery (JACM) 46(5), 749–786 (1999)

    MATH  MathSciNet  Google Scholar 

  2. Abadi, M., Banerjee, A., Heintze, N., Rieck, J.G.: A core calculus of dependency. In: Proceedings of ACM SIGPLAN/SIGACT Symposium on Principles of Programming Languages, pp. 147–169 (1999)

    Google Scholar 

  3. Berardi, S., Coppo, M., Damiani, F., Giannini, P.: Type-based useless-code elimination for functional programs. In: Taha, W. (ed.) SAIG 2000. LNCS, vol. 1924, pp. 172–189. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  4. Cardelli, L., Ghelli, G., Gordon, A.D.: Secrecy and group creation. In: Palamidessi, C. (ed.) CONCUR 2000. LNCS, vol. 1877, pp. 365–379. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  5. Cheng, J.: Slicing concurrent programs - a graph-theoretical approach. In: Fritzson, P.A. (ed.) AADEBUG 1993. LNCS, vol. 749, pp. 223–240. Springer, Heidelberg (1993)

    Chapter  Google Scholar 

  6. Damiani, F.: Useless-code detection and elimination for pcf with algebraic data types. In: Girard, J.-Y. (ed.) TLCA 1999. LNCS, vol. 1581, pp. 83–97. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  7. Gordon, D.A., Jeffrey, A.: Authenticity by typing for security protocols. In: Proceedings of the 14th IEEE Computer Security Foundations Workshop (CSFW 2001), pp. 145–159. IEEE Computer Society Press, Los Alamitos (2001)

    Chapter  Google Scholar 

  8. Harman, M., Hierons, R.M.: An overview of program slicing. Software Focus 2(3), 85–92 (2001)

    Article  Google Scholar 

  9. Hatcliff, J., Corbett, J., Dwyer, M., Sokolowski, S., Zheng, H.: A formal stufy of slicing for multi-threaded programs with jvm concurrency primitives. In: Cortesi, A., Filé, G. (eds.) SAS 1999. LNCS, vol. 1694, pp. 1–18. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  10. Honda, K., Yoshida, N.: A uniform type structure for secure information flow. In: Proceedings of ACM SIGPLAN/SIGACT Symposium on Principles of Programming Languages, pp. 81–92 (2002)

    Google Scholar 

  11. Kobayashi, N.: Type-based useless variable elimination. Higher-Order and Symbolic Computation 14(2-3), 221–260 (2001)

    Article  MATH  Google Scholar 

  12. Kobayashi, N.: A type system for lock-free processes. Information and Computation 177, 122–159 (2002)

    MATH  MathSciNet  Google Scholar 

  13. Kobayashi, N.: Type-based information flow analysis for the pi-calculus (2003) (submitted)

    Google Scholar 

  14. Krinke, J.: Static slicing of threaded programs. In: Proc. ACM SIGPLAN/ SIGFSOFT Workshop on Program Analysis for Software Tools and Engineering (PASTE 1998), Montreal, Canada, June 1998. ACM SIGPLAN Notices, vol. 33(7), pp. 35–42 (1998)

    Google Scholar 

  15. Milner, R.: Communicating and Mobile Systems: the Pi-Calculus. Cambridge University Press, Cambridge (1999)

    MATH  Google Scholar 

  16. Milner, R., Tofte, M., Harper, R., MacQueen, D.: The Definition of Standard ML. The MIT Press, Cambridge (1997) (revised)

    Google Scholar 

  17. Nicola, R.D., Hennessy, M.C.B.: Testing equivalence for processes. Theoretical Computer Science 34, 83–133 (1984)

    Article  MATH  MathSciNet  Google Scholar 

  18. Pottier, F.: A simple view of type-secure information flow in the π-calculus. In: Proceedings of the 15th IEEE Computer Security Foundations Workshop, pp. 320–330 (2002)

    Google Scholar 

  19. Reps, T., Turnidge, T.: Program specialization via program slicing. In: Danvy, O., Thiemann, P., Glück, R. (eds.) Dagstuhl Seminar 1996. LNCS, vol. 1110, pp. 409–429. Springer, Heidelberg (1996)

    Google Scholar 

  20. Sangiorgi, D.: The name discipline of uniform receptiveness. Theoretical Computer Science 221(1-2), 457–493 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  21. Sangiorgi, D., Walker, D.: The Pi-Calculus: A Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)

    MATH  Google Scholar 

  22. Tip, F.: A survey of program slicing techniques. Journal of Programming Languages 3, 121–181 (1995)

    Google Scholar 

  23. Wand, M., Siveroni, I.: Constraint systems for useless variable elimination. In: Proceedings of ACM SIGPLAN/SIGACT Symposium on Principles of Programming Languages, pp. 291–302 (1999)

    Google Scholar 

  24. Zhao, J.: Slicing concurrent Java programs. In: Proceedings of the 7th IEEE International Workshop on Program Comprehension, May 1999, pp. 126–133 (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kobayashi, N. (2003). Useless-Code Elimination and Program Slicing for the Pi-Calculus. In: Ohori, A. (eds) Programming Languages and Systems. APLAS 2003. Lecture Notes in Computer Science, vol 2895. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-40018-9_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-40018-9_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20536-4

  • Online ISBN: 978-3-540-40018-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics