Graphs and decidable transductions based on edge constraints
We give examples to show that not even c-edNCE, the most general known notion of context-free graph grammar, is suited for the specification of some common data structures.
To overcome this problem, we use monadic second-order logic and introduce edge constraints as a new means of specifying a large class of graph families. Our notion stems from a natural dichotomy found in programming practice between ordinary pointers forming spanning trees and auxiliary pointers cutting across.
Our main result is that for certain transformations of graphs definable in monadic second-order logic, the question of whether a graph family given by a specification A is mapped to a family given by a specification B is decidable. Thus a decidable Hoare logic arises.
Unable to display preview. Download preview PDF.
- 1.B. Courcelle. Graph rewriting: an algebraic and logic approach. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B, pages 193–242. Elsevier Science Publishers, 1990.Google Scholar
- 3.B. Courcelle. Monadic second-order definable graph transductions. In J.C. Raoult, editor, CAAP '92, Colloquium on Trees in Algebra and Programming, LNCS 581, pages 124–144. Springer Verlag, 1992.Google Scholar
- 4.J. Engelfriet. A characterizarion of context-free NCE graph languages by monadic second-order logic on trees. In H. Ehrig, H.J. Kreowski, and G. Rozenberg, editors, Graph grammars and their applications to computer science, 4th International Workshop, LNCS 532, pages 311–327. Springer Verlag, 1990.Google Scholar
- 5.N. Klarlund and M. Schwartzbach. Graph types. In Proc. 20th Symp. on Princ. of Prog. Lang., pages 196–205. ACM, 1993.Google Scholar
- 6.N. Klarlund and M. Schwartzbach. Invariants as data types. Unpublished, 1993.Google Scholar
- 7.M. Rabin. A simple method for undecidability proofs and some applications. In Logic, Methodology and Philosophy of Science II, pages 58–68. North-Holland, 1965.Google Scholar