Skip to main content

Applying Answer Set Programming to Points-to Analysis of Object-Oriented Language

  • Conference paper
Advanced Intelligent Computing (ICIC 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6838))

Included in the following conference series:

Abstract

Points-to information is essential in software engineering, including compiler optimization, instruction-level parallelism, program verification, and so on. The propagating of points-to information along paths of a program can be viewed as the “frame problem” in a dynamic world. As a primary knowledge representing and reasoning tool in Artificial Intelligence, Answer Set Programming (ASP) provides a natural and concise way to express the frame problem. We present a collection of ASP rules to model the propagating of points-to information along paths of an object-oriented program. With these rules and basic facts of a program, points-to information at each program point can be computed easily. This makes it possible to acquire useful information for program analysis through existing ASP solvers.

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. Mayer, W., Stumptner, M.: Model-based Debugging-state of the Art and Future Challenges. J. Elec. Notes in Theo. Comp. Sci. 174, 61–82 (2007)

    Article  Google Scholar 

  2. Dawson, S., Ramakrishnan, C.R., Warren, D.S.: Practical Program Analysis Using General Purpose Logic Programming System: A Case Study. In: 9th ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 117–126. ACM Press, New York (1996)

    Google Scholar 

  3. Whaley, J., Avots, D., Carbin, M., Lam, M.: Using Datalog with Binary Decision Diagrams for Program Analysis. In: Yi, K. (ed.) APLAS 2005. LNCS, vol. 3780, pp. 97–118. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  4. Song, W.: Using Horn Clauses and Binary Decision Diagrams for Program Analysis. Ph.D. dissertation. State University of New York, Stony Brook (2010)

    Google Scholar 

  5. Woo, J., Gaudiot, J.L., Wendelborn, A.L.: Alias Analysis in Java with Reference-Set Representation for High-Performance Computing. J. Para. Prog. 32, 39–76 (2004)

    MATH  Google Scholar 

  6. Meyer, B.: Towards A Theory and Calculus of Aliasing. J. Object Tech. 9, 37–74 (2010)

    Article  Google Scholar 

  7. Gelfond, M., Lifschitz, V.: The Stable Model Semantics for Logic Programming. In: 5th International Logic Programming Conference and Symposium, pp. 1070–1080. MIT Press, Cambridge (1988)

    Google Scholar 

  8. Nogueira, M., Balduccini, M., Gelfond, M., Watson, R., Barry, M.: An A-Prolog Decision Support System for the Space Shuttle. In: Ramakrishnan, I.V. (ed.) PADL 2001. LNCS, vol. 1990, pp. 169–183. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  9. Paschke, A., Bichler, M.: Knowledge Representation Concepts for Automated SLA Management. J. Deci. Supp. Syst. 46, 187–205 (2008)

    Article  Google Scholar 

  10. Eiter, T., Faber, W., Leone, N., Pfeifer, G., Polleres, A.: A Logic Programming Approach to Knowledge-state Planning: Semantics and Complexity. ACM Trans. on Comp. Logic. 5, 206–263 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  11. Tiihonen, J., Soininen, T., Niemela, I., Sulonen, R.: A Practical Tool for Mass-customising Configurable Products. In: 14th International Conference on Engineering Design, pp. 1290–1299 (2003)

    Google Scholar 

  12. Lifschitz, V.: Foundation of Logic Programming. In: Principles of Knowledge Representation, pp. 69–128. CSLI Publications (1996)

    Google Scholar 

  13. Carini, P.R., Hind, M., Srinivasan, H.: Flow-Sensitive Type Analysis for C++. IBM Rescarch Report, RC 20267 (1995)

    Google Scholar 

  14. Pande, H.D., Ryder, B.G.: Static Type Determination and Aliasing for C++. Technical Report, LCSR0TR-250-A. Rutgers University (1995)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

De-Shuang Huang Yong Gan Vitoantonio Bevilacqua Juan Carlos Figueroa

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Yang, B., Zhang, M., Zhang, Y. (2011). Applying Answer Set Programming to Points-to Analysis of Object-Oriented Language. In: Huang, DS., Gan, Y., Bevilacqua, V., Figueroa, J.C. (eds) Advanced Intelligent Computing. ICIC 2011. Lecture Notes in Computer Science, vol 6838. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24728-6_91

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-24728-6_91

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-24727-9

  • Online ISBN: 978-3-642-24728-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics