This paper describes a new parallel parsing scheme for context-free grammars and our experience of implementing this scheme, and it also reports the result of our simulation for running the parsing program on a massive parallel processor.In our basic parsing scheme, a set of context free grammar rules is represented by a network of processor-like computing agents each having its local memory. Each computing agent in the network corresponds to an occurrence of a non-terminal or terminal symbol appearing in the grammar rules. Computing agents in the network work concurrently and communicate with one another by passing messages which are partial parse trees.This scheme is shown to be fast (0(n*h) time for the first complete parse tree, where n is the length of an input sentence and h is the height of the parse tree) and useful in various modes of parsing such as on-line parsing, overlap parsing, on-line unparsing, pipe-lining to semantics processing, etc. Performance evaluation for implementing this scheme on a massive parallel machine is conducted by distributed event simulation using the Time Warp mechanism/Jefferson85/.Our parsing scheme is implemented in a programming language called ABCL/1 which is designed for object-oriented concurrent programming and used for various concurrent programming /Yonezawa86/. The program is currently runing on standard single-cpu machines such as SUN3s and Symbolics Lisp machines (by simulated parallelism).In our experiment and simulation, a set of about 250 context-free grammar rules specifying a subset of English is represented by the corresponding network of objects (i.e., computing agents) and about 1100 concurrently executable objects are involved.
[1]
Ronald M. Kaplan.
A multi-processing approach to natural language
,
1973,
AFIPS National Computer Conference.
[2]
Jeffrey D. Ullman,et al.
Introduction to Automata Theory, Languages and Computation
,
1979
.
[3]
Ralph Grishman,et al.
The NYU Ultracomputer—Designing an MIMD Shared Memory Parallel Computer
,
1983,
IEEE Transactions on Computers.
[4]
A. Gottleib,et al.
The nyu ultracomputer- designing a mimd shared memory parallel computer
,
1983
.
[5]
Charles L. Seitz,et al.
The cosmic cube
,
1985,
CACM.
[6]
Masaru Tomita,et al.
Efficient parsing for natural language
,
1985
.
[7]
Masaru Tomita,et al.
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
,
1985
.
[8]
David R. Jefferson,et al.
Virtual time
,
1985,
ICPP.
[9]
Geoffrey K. Pullum,et al.
Generalized Phrase Structure Grammar
,
1985
.
[10]
David Gelernter.
Guest Editor's Introduction: Domesticating Parallelism
,
1986,
Computer.
[11]
Akinori Yonezawa,et al.
Object-oriented concurrent programming ABCL/1
,
1986,
OOPLSA '86.
[12]
Mario Tokoro,et al.
Object-oriented concurrent programming
,
1987
.
[13]
Gul A. Agha,et al.
ACTORS - a model of concurrent computation in distributed systems
,
1985,
MIT Press series in artificial intelligence.