Skip to main content

Narrowing Data-Structures with Pointers

  • Conference paper
Graph Transformations (ICGT 2006)

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

Included in the following conference series:

Abstract

We investigate the narrowing relation in a wide class of (cyclic) term-graph rewrite systems. We propose a new sound and complete narrowing-based algorithm able to solve goals in presence of data structures with pointers (e.g., circular lists, doubly linked lists etc.). We first define the class of rewrite systems we consider. Our rules provide features such as pointer (edge) redirections, relabeling of existing nodes, in addition to the creation of new nodes. Moreover, we split the set of nodes of term-graphs in two (possibly empty) subsets: (i) variables and (ii) names. Variable nodes can be mapped against any other node whereas names act as constants and thus they are supposed to match themselves. This distinction between nodes allows us to synthesize, through the narrowing process, data-structures with circular shapes. In a second step, we define the rewriting and narrowing relations. We then show the soundness and completeness of narrowing.

This work has been partly funded by the project ARROWS of the French Agence Nationale de la Recherche.

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. Antoy, S., Brown, D.W., Chiang, S.-H.: Lazy context cloning for non-deterministic graph rewriting. In: Third International Workshop on Term Graph Rewriting, TERMGRAPH, pp. 61–70 (2006)

    Google Scholar 

  2. Antoy, S., Echahed, R., Hanus, M.: A needed narrowing strategy. Journal of the ACM 47(4), 776–822 (2000)

    Article  MathSciNet  Google Scholar 

  3. Bakewell, A., Plump, D., Runciman, C.: Checking the shape safety of pointer manipulations. In: RelMiCS, pp. 48–61 (2003)

    Google Scholar 

  4. Bakewell, A., Plump, D., Runciman, C.: Specifying pointer structures by graph reduction. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 30–44. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Barendregt, H., van Eekelen, M., Glauert, J., Kenneway, R., Plasmeijer, M.J., Sleep, M.: Term Graph Rewriting. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds.) PARLE 1987. LNCS, vol. 259, pp. 141–158. Springer, Heidelberg (1987)

    Google Scholar 

  6. Caferra, R., Echahed, R., Peltier, N.: Rewriting term-graphs with priority. In: Proceedings of PPDP (Principle and Practice of Declarative Programming). ACM, New York (2006)

    Google Scholar 

  7. Echahed, R., Janodet, J.-C.: Admissible graph rewriting and narrowing. In: IJCSLP, pp. 325–342 (1998)

    Google Scholar 

  8. Echahed, R., Janodet, J.C.: Completeness of admissible graph collapsing narrowing. In: Proc. of Joint APPLIGRAPH/GETGRATS Workshop on Graph Transformation Systems (GRATRA 2000) (March 2000)

    Google Scholar 

  9. Habel, A., Plump, D.: Term graph narrowing. Mathematical Structures in Computer Science 6, 649–676 (1996)

    MATH  MathSciNet  Google Scholar 

  10. Hanus, M.: The integration of functions into logic programming : from theory to practice. Journal of Logic Programming 19&20, 583–628 (1994)

    Article  MathSciNet  Google Scholar 

  11. Rao, M.K.: Completeness results for basic narrowing in non-copying implementations. In: Proc. of Joint Int. Conference and Symposium on Logic Programming, pp. 393–407. MIT Press, Cambridge (1996)

    Google Scholar 

  12. Yamanaka, H.: Graph narrowing and its simulation by graph reduction. Research report IIAS-RR-93-10E, Institute for Social Information Science, Fujitsu Laboratories LDT (June 1993)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Echahed, R., Peltier, N. (2006). Narrowing Data-Structures with Pointers. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds) Graph Transformations. ICGT 2006. Lecture Notes in Computer Science, vol 4178. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11841883_8

Download citation

  • DOI: https://doi.org/10.1007/11841883_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-38870-8

  • Online ISBN: 978-3-540-38872-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics