Proceedings Article10.1109/SFCS.1976.17
Graph grammars and global program data flow analysis
R. Farrow,Ken Kennedy,L. Zucconi +2 more
- 25 Oct 1976
- pp 42-56
62
TL;DR: If a given graph is generated by the grammar, repeated application of the reductions will result in a single node regardless of the order in which they are applied, which gives rise to an algorithm that parses a given program flow graph in time linear in the size of the graph.
read more
Abstract: Program structure is defined in terms of a simple graph grammar, the "semi-structured flow graph grammar," which admits many of the control structure extensions suggested for "structured programming." The grammar defines a set of graph reductions which are shown to have the "Finite Church-Rosser (FCR)" property; i.e., when applied in any order to a graph, the limit (when no further reductions are possible) is unique. In particular, if a given graph is generated by the grammar, repeated application of the reductions will result in a single node regardless of the order in which they are applied. This property gives rise to an algorithm that parses a given program flow graph in time linear in the size of the graph. The resulting parse is used in a global data flow analysis algorithm which requires a number of bit-vector steps which is also linear in the size of the given graph.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Book
Hyperedge replacement graph grammars
Frank Drewes,Hans-Jörg Kreowski,Annegret Habel +2 more
- 01 Feb 1997
TL;DR: To cover a large part of the theory of hyperedge replacement, structural properties and decision problems, including the membership problem, are addressed.
303
Automated program recognition: a feasibility demonstration
TL;DR: A prototype recognition system which demonstrates the feasibility of automating program recognition, and is built on two previous advances: a graphical, programming-language-independent representation for programs, called the Plan Calculus, and an efficient graph parsing algorithm.
142
May we introduce to you: hyperedge replacement
Annegret Habel,Hans-Jörg Kreowski +1 more
- 02 Dec 1986
TL;DR: This kind of tutorial note explains how graphs can be rewritten by edge replacement with formal definitions accompanied by intuitive descriptions and a series of examples.
141
Elimination algorithms for data flow analysis
Barbara G. Ryder,Marvin C. Paull +1 more
TL;DR: A unified model of a family of data flow algorithms, called elimination methods, is presented, which provides implementation-independent descriptions of the algorithms to facilitate comparisons among them and illustrate the sources of improvement in worst case complexity bounds.
A Tutorial and Bibliographical Survey on Graph Grammars
Manfred Nagl
- 30 Oct 1978
TL;DR: Most of the approaches for sequential and parallel graph grammars known in literature are given and some of the modifications and extensions enforced by several applications are introduced.
124
References
Depth-First Search and Linear Graph Algorithms
TL;DR: The value of depth-first search or “backtracking” as a technique for solving problems is illustrated by two examples of an improved version of an algorithm for finding the strongly connected components of a directed graph.
6.9K
Semantics of context-free languages
TL;DR: The implications of this process when some of the attributes of a string are “synthesized”, i.e., defined solely in terms of attributes of thedescendants of the corresponding nonterminal symbol, while other attributes are ‘inherited’, are examined.
•Book
The Theory of Parsing, Translation, and Compiling
Alfred V. Aho,Jeffrey D. Ullman +1 more
- 01 Jan 1972
TL;DR: It is the hope that the algorithms and concepts presented in this book will survive the next generation of computers and programming languages, and that at least some of them will be applicable to fields other than compiler writing.
2K
Control flow analysis
TL;DR: The basic control flow relationships are expressed in a directed graph and various graph constructs are found and shown to codify interesting global relationships.
908
Structured Programming with go to Statements
TL;DR: For serious students of structured programming, and also for language designers, Knuth's "Structured Programming with go to Statements" is probably the paper to read.
Related Papers (5)
Hartmut Ehrig,Michael Pfender,Hans-Jürgen Schneider +2 more
- 15 Oct 1973
Franz Baader,Tobias Nipkow +1 more
- 01 Jan 1998
Ken Kennedy,Linda Zucconi +1 more
- 01 Jan 1977
Matthew S. Hecht
- 01 May 1977