Abstract:
Abstract-- Sentences of visual languages may often be regarded as assemblies of pictorial objects like "circles", "arrows " or "strings " with spatial relations like "above " or "contains " between them, i.e. their underlying structure is a kind of directed graph. Therefore, graph grammars are a natural means for defining the syntax of visual languages. Their main drawback until now is the lack of general enough and efficiently working parsing algorithms. All published graph grammar or---more general--- visual language parsing algorithms are only able to deal with context-free graph grammars, where the left-hand side consists of a single nonterminal vertex only. This makes syntax definitions of visual languages hard to read, prohibits the use of complex pattern matching, and disallows graph-grammars which specify transformation processes. We have developed the first parsing algorithm for context-sensitive graph grammars which allows left- and right-sides of productions to be almost arbitrary graphs. The algorithm is divided into two phases, where the first one constructs bottom-up a set of all eventually useful production applications. The second one extracts top-down viable derivations from the computed set of production applications. This separation into two phases leads to more comprehensible algorithms. Furthermore, it allows for independent optimization efforts in the form of heuristics which reduce the algorithm's exponential time and space requirements dramatically for "real world " examples. 1
Citations
|
508
|
An Efficient Context-Free Parsing Algorithm
– Earley
- 1970
|
|
177
|
E cient Parsing for Natural Language
– Tomita
- 1986
|
|
162
|
Proving Termination with Multiset Ordering
– Dershowitz, Manna
- 1979
|
|
145
|
Introduction to the algebraic theory of graph grammar
– Ehrig
- 1979
|
|
119
|
Programming Expert Systems in OPS5: An Introduction to Rule-based Programming
– Brownston, Farrell, et al.
- 1985
|
|
100
|
Recognition and parsing of context-free languages in time n 3
– Younger
- 1967
|
|
70
|
Specification of graph translators with triple graph grammars
– Schürr
- 1994
|
|
58
|
An efficient recognition and syntax-analysis algorithm for context-free languages. Scientific report AFCRL-65-758
– Kasami
- 1965
|
|
52
|
Automated Program Recognition by Graph Parsing
– Wills
- 1992
|
|
28
|
A Method for the Specification and Parsing of Visual Languages
– Golin
- 1991
|
|
24
|
On multiset orderings
– Bellegarde, Lescanne
- 1982
|
|
19
|
Earley-style parsing for relational grammars
– Wittenburg
- 1992
|
|
17
|
On the use of Graph Grammars for defining the Syntax of Graphical Languages
– Rekers
- 1994
|
|
11
|
Boundary NLC graph grammars -- Basic definitions, normal forms, and complexity
– Rozenberg, Welzl
- 1986
|
|
8
|
Parsing of graphs in linear time
– Kaul
- 1982
|
|
7
|
Eine Entwicklungsumgebung fur PROgrammierte GRaphErsetzungsSysteme
– Zundorf
- 1996
|
|
6
|
A parser for context free plex grammars
– Bunke, Haller
- 1989
|
|
6
|
Formal languages. ACM Monograph Series
– Salomaa
- 1973
|
|
4
|
Rapid Programming with Graph Rewrite Rules
– Schurr
- 1994
|
|
3
|
Heuristic Solution for the (Sub-)Graph Isomorphism Problem in Executing PROGRES
– Zundorf
- 1993
|
|
1
|
An efficient inplementation of graph grammars based on the RETE matching algorithm
– Bunke, Glauser, et al.
- 1990
|
|
1
|
Syntaxanalyse fuer Praezedenzgraphgrammatiken
– Kaul
- 1985
|
|
1
|
Ein parser f��ur graphgrammatiken
– Lamshoeft
- 1993
|