Parsing in Parallel 
Xiuming Huang ~ Louise Guthrie 
Computing Research Laboratory New Mexico State University 
Las Cruces, NMI USA 88003 
ABSTRACT 
The paper is a description of a parallel model for 
natural language parsing, and a design for its imple- 
mentation on the Hype,'eube multiproeessor. The 
pm'allel model is based on the Semantic Definite Clause 
Grammar formalism and integrates syntax and 
semantics through the commmfication of processes. 
The main proeessess, of which there are six, contain 
either purely syntactic or purely semantic information, 
giving the advantage of simple, transparent algorithms 
dedicated to only one aspect of parsing. Communica- 
tion between processes is used to hnpose semantic eon- 
st,'aints on the syntactic processes. 
1. Introduction 
This paper describes parallel model for natural 
language parsing and gives a design for its implementa- 
tion. With the advent of parallel machines, it may be 
possible to view the relation of syntax and semantics in 
natural language parsing in a wholly new way. The 
approach is moving towards an application environ- 
meat which is similar to the heterarchical sytem pro- 
posed by Winograd \[Winograd 721. Processes which 
control the syntactic aspects can be separated from 
those which control the semantic aspects in that the 
syntactic processes contain no semantic information 
themselves, but receive it by communication with the 
semantic processes, and vice versa. The advantage of 
this approach is that transparent algorithms can be 
written that are dedicated to only one aspect of pars- 
ing, while the desirable effects of integrating syntax and 
semantics can be achieved through the communication 
of processes. In our model we use this communication 
to enforce semantic constraints on the syntactic proces- 
sors in order to avoid the combinatorial explosion of 
producing all legal syntactic possibilities. 
Communication between the two components is 
then our focus in designing a parallel parser. There 
seem to be three obvious levels at which communica- 
tion between syntax and semantics can take place: the 
word level, tim phrase level, and the sentence level. We 
have chosen to consider communication at the phrase 
level rather than at either of the other two because it 
would be too early for the syntactic and semantic 
components to communicate at the word level (too lit- 
tle information is available at this level to help the 
parsing), and too late for them to communicate at the 
sentence level (too many syntactic parses might have 
already been "produced). How the communication 
between the syntactic and semantic components takes 
place at the phrase level will be described in Section 3. 
In Section 4, we design an hnplementation of this 
pa,'allel model for a 6-Hypereube lintel 85\] multlpro- 
cessing system, which we will have available shortly. 
The 6-Hypercube has sixty-four identical processors 
(Intel 80286's with 512K bytes of memory) and no 
shared memory. Although each node in the Hypereube 
can eventually communicate with any other node, each 
processor can directly communicate with only six 
immediately neighboring nodes. We therefore intend to 
limit our message passing among processors to immedi- 
ate neighbors whenever possible. 
Like the work of Eiselt \[Eiselt 85\] on parallel infer- 
ence processing, we have a pers\]~icuous assignment of 
natural language processing moaules to processors in 
the machine, although we are suggesting a parallel 
implementation of a parser with much more parallelism 
and with a clearer separation of syntax and semantics. 
The work on "massively parallel parsing" by Waltz and 
Pollack \[Waltz 85 models various components of 
eompreheilsion by a~tivation and inhibition of nodes of 
a network. A practical applieation of their approach 
requires massively parallel processing, currently beyond 
the state of l, he art in multiprocessing. 
We base our parallel model on the Semantic 
Definite Clause Grammars (SDCG) formalism of Huang 
Illuang 85. The SDCG evolve'd from the I)efinite 
Clause Gra,nmars of Pereira \[Pereira et al 80 and is described below. 
2. Semantic Definite Clause Grammars 
The SDCG is em'rently implemented on a single 
processor machine where it is the parser for the XTRA 
(English Chinese Sentence Translator) machine transla- 
tion system \[Huang 85\]. The XTRA is a prototype sys- 
tem now running nnd&" a C-prolog interpreter and fias 
a wide coverage of English phenomena, even though its 
vocabulary is rather small (1000 entries). The SDCG 
uses the semantics of words and phrases to restrict the 
number of syntactic pm~es of a sentence to those which arc semantically compatible. 
A simplified vemion of the SDCG used in the XTRA system is as follows: 
(1) sentence(s(Subj Np, 
vp(v(Verb sense),Obj Np)) -- > 
noun_phrase(S ubj Np), 
is verb(V~rb),- 
subject verb match(Subj Np,Verb, 
- VeTb sense), - 
noun_phrase(Oh\] Np~, 
verb obj ect__matell(Verb sense,Obj_Np). 
The graminar says that an input string is a sentence 
with the structure s(Sub3: Np, vp-(vYVerb sense) Obj Np)). 
if it is composed of Su(~j NP which is-a noun{ 
phrase, followed by Verb (a ve,'b) whose one sense Verb sense 
is semantically compat:ble with Subj Np, 
followed by Obj NP (a noun phrase) which is semanti- cally compatible-with Verb_sense. 
The sub-grammar for pa,'sing a noun phrase is as follows: 
(2) noun phrase\[np(det(DeQ, adj(Adj sense), 
n(Nonn ~ense)))--> - 
determiner(Det), 
adjective(Adjective), 
noun(Noun), 
adj noun match(Adjective, Noun, 
- -Adj se'nse, Nounsense). 
140 
The last predicate ill the noun phl'~Lse sub- 
grammar, 'adj_jiounAI:ateh', tries to match Adjective 
and Noun to find a compatible pail" of senses for tile 
given Adjective and Noun to be eombined. The predi- 
cates'sub\] verb. match' and 'verb object mateh'inihe 
sentence gralnmar accomplish shn-ilar ta~k. All those 
matches are based on the system of seleetional restric- 
tions proposed by \[Katz & Fodor 63\] and their eod- 
ings are omitted here to save spaee, l,ater we will see 
how they function. 
There is a syntactic lexicon ia the SDCG of the 
following form: 
determiner(the). 
noun(coach,\[eoacht,eoaeh2\]). 
noun(star,\[starl,star2 D. 
adjective(tough,\[tough1 ,tough2,toug h3,tough4\]). 
verb(marry,\[mar,'yl ,inarry2\]). 
For instance, the syntactic entry for "coach" is a 
noun having two senses, labeled "eoacbl" and 
"coach2". 
For each word sense, a semantie interpretation is 
given in the semantic dictionary: 
sem(coaehl,\[head(thing)\])*. (eg. 'a passenger 
coaeh') 
sem(coach2,\[hoad(man)\]). (a ~rah,er) 
sem(starl,\[head(thing)\]). (a celestial object) 
Seyl/(star2,\[hcad(l-/lan)D, (¢'a sil\]g\]llg S~al"', etc) 
sem(toughl \[poss(tlfing)\]). (,nodilles 'thing', as h, 
% tough matera:l") 
sem(tough2,\[poss0;:,an ) ). (modines 'man', as i,, 
"a tough mountaineer ) 
, seln(ll:_{-irry \] ,lsubj{man),o ,j(m an),head(do)\]). 
( John m re'led Mary. ) 
senl(marry2, snbj (,~1 an),obj(t hing),head(do)l), tog. 
in "IIe mm'ried money. ) 
For example, "coach1 labels the sense of "coach" 
whereby it refms to a "tlfing . in pa~sing (3), 
(3) The I, ough coach married a star*. 
according to the grammar in (1) the system starts with 
the predicate 'nonnA)lu'~me', which is presented in (2). 
After it instantiates tile variables Det, Adjective and Noun 
instantiated to the' tough" and coach" it 
attempts to apply the predleate 'adj noun match', 
whose task it is to find tile first pair of senses for the 
words "tough" and "eoach", respectively, which are 
compatible with each other aeeording to our seleetional 
restrietions. Here I, he first pair found would be 'loath1 
+ coach1', beeause the semantic category of "coach1" 
('thing') fibs into bile 'poss(thing)' slot of the word sense 
%oughl" (meaning that his adjectival sense is for 
modifying sometlfing whose semant, ic category is 
'thing'). 
Now tile parser is at tile predicate 'is verb' where 
it finds the verb "marry". It, t, hen tr:es to mateh Subj ,Np 
(%otigh\] -I- coachl') witt: a some sense of the 
"mam'y" but fails because both "marryl" and 
"marry2" prefer the subject to be of the semantic 
category 'man', which "coachl" cannot satisfy. The 
system b~ektracks, trying 'adj noun match' again and 
producing the next matclfing-pah" of senses for "the 
tough coach" ('tough2 -I- coach2'). YVhei} 
'subj verb mateh is tried again and it selects 'marry1 
as tI:~ appTopriate verb sense. The parser proceeds to 
analyse the rest of tim sentence, employing 
"noun_0hrase" to find the object noun phr~e sense 
* The semantic primitives sneh a.s 'thing', 'man', ere, 
are based ell the primitive set suggested in \[Wilks 75\]. 
* Modified version of the "semantie garden path" sen- 
tence by \[Chm'niak 83\] ("The astronomer married the 
star,") 
and "verb_obj_match" to see whether this noun phrase 
sense lits the partieular verb sense. 'S~arl' (a eelest:al 
object) is thus tried and rejected, and 'Stal'2' (a cele- 
brity) is accepted ('marry1' requires the object t'o be of 
the semantic category man ). A plausible zeadlng of 
the sentence is thus gained (' "File strict ~ralner married 
a celebril, y.") 
It is clear from t, he above description that in the 
SI)CG syntax and semantics closely interact: syntax - 
semantics -. syntax, ere. One class of predicate waits 
for the other to make a decision, then makes its own 
decision. \]low much baektraeking must be done is 
unpredictable; the pm'se might only be completed after 
several routes have been tried and rejeel, ed. 
3. Parallel Parsing 
The model consists of six processes which con> 
munlcate to produce all the semantically compatible 
parses of a given sentence. Each process will be hnple- 
mented as a tree of processors. The root node of t, he 
tree eonl~ains a queue of requests and allocates proces- 
sors to the elements of l, he qneue as they become awdl- 
able. For the pnrpose of this model it is sulIicent to 
note f, hat each process itself has {,he capability of pro- 
cessing several requests in parallel. We identify below 
each of the processes and describe the communication between them. 
1) Sentenee maste," - Controlling process which 
operates as a modified top down syntactic 
processor (modified in the sense thaC infer- 
\[nation fi'om el, her processes influences its decisions). 
2) Noun-phrase m~ster (NP-master)- Given 
an arbitrary string, it identifies syhtactieally 
all possible initial noun phr~mes in the 
string. Ttn'ough eommuilication with the 
AN-master, it del, ernfines which of I, hese are 
senmntieally acceptable. 
3) Semantic dictionary lna.ster - Contains the 
semantic dictionary and provides appropri- 
ate entries for the current input sentence to 
the other semantic processes. 
4) Adjective-Noun master (AN-master) - 
Given an adjective and a noun, Iiads all 
possible pairs (adjective word sense, neat\] 
we "d sense) thai are compatible. 
5) Subject-Verb master (SV-master)- Given a 
word sense for a nou6 and a verb, finds all 
possible word senses for the verb that are 
compatible. 
6) Verb-Objeel, master (VO-lm~ster) - Given a 
word sense of a verb and a word sense of a 
noun, determines whether or not that verb 
sense-object noun sense pair \]s compatible. 
The following diagram illustrates tile processes and 
the eommnnieation between them. 
r .......... input ........... : 
I AN-lnaSLel'-*~ -- ~NP-maBLcr I 
Ii // "\ , I 
Semantic SV-master 
\])ictionary "mj-~ ~--- _ Sentence 
lllas\[,el" --~ l\]'l t~.q ~ c 1- 
"''"'~ VO-ma~ster 
141 
Input is read simultaneously by the semantic dic.~ 
tionary, and the sentence master. The sentence master 
contains the s,vutaetic dictionary and tlegins a top- 
down parse of tim sentence guided by the definite 
clause grammar. Wimnever a noun piu'ase is searched 
for, the noun phrase master is invoked to produce all 
possible initial noun phrases in the remainder (tllc 
unparsed portion) of the input string. After the main 
verb of any clause imps been identified by tim sentence 
master, the SV-master is invoked to produce all possi- 
ble verb senses which are meaningfulat this point in 
the parse. Ill tim case that a transitive verb is found 
and a possible word sense fox" the object noun is deter- 
mined, the VO-master is consulted as to wheti~er or not 
the given verb word sense and object noun word sense 
are acceptable as a verb-object pail'. 
In communicating witl~ the NP-master or SV- 
master, several possibilities may be returned to the sen- 
tence master, and the parse is continued fox" each of 
these possibilities in parallel. 
Tile NP-master, which is also a syntactic process, 
finds all possible initial noun phrases which are mean- 
ingful by using its own syntactic information (in a top 
down manner)and by communicating with tile AN- 
master for semantic information. This communication 
is similar to that of the sentence master witll tile SV- 
master. After determining an adjective which is fol- 
lowed by a noun, ti~e NP-master invokes the AN- 
master to tind all meaningful adjective-noun word sense 
pairs. Multiple adjectives which modify a noun are 
considered in parallel by the AN-master, which in ti~is 
ease, returns pairs which consist of a list of adjective 
word senses and a noun word sense. Whenever the 
NP-master reeives a pair from the AN-master, it con- 
tinues any work that it might lmve (such as finding 
prepositional pin'ascs which modify tile noun, e.g. 'the 
big boy in the park'). If several pairs are returned by 
the AN-master, the remainder of the parse is handled 
by the NP-master and is done in parallel when possible. 
The sentence master produces all the parses of the 
sentence that have not been blocked. A parse may be 
blocked rot any one of the following three reasons: 
1) The syntactic category needed by tim sen- 
tence master is not satisfied by any initial 
segment of the unparsed portion of the 
input. 
2) The SV-master returns a negative response. 
3) The VO-mastcr returns a negative response. 
We use the example in Section 2 ("The tough 
coach married a star.") to illustrate the above commun- 
ication of processes and to exhibit a path whiei~ is 
blocked. 
For shnplieity, we write the SDCG used previ- 
ously, without the arguments for the predicates 
involved. We also add an additional rule for 
nounphrase and another entry in the semantic diction- 
ary for the noun sense of 'tough', tougi13 (as in "the 
tough never suffer"), to make the example interesting. 
sentence --:> nounphrase, verb, 
subject verb match, 
noun phrase,verb_obj eet_mat oh. 
nounA)ln'ase--:> determiner, adjective, noun, 
adj noun match. 
noun_phrase -- > determiner, noun. 
determiner--> \[the\]. 
determiner -- > \[\]. 
The sentence master receives the input and in this 
ease, immediately passes it to the NP-master and waits. 
The NP-master finds "The tough" and "The tough 
coach" as possible initial noun phrases in the string it 
was given. "The tough" (tough_3) is returned immedi- 
ately to the sentence master who begins searching fox" u 
verb. Sinlultaneously, ti~e NP master sends the adjec- 
tive noun pair, (tough, coach) to the AN-master. The 
AN-master returns (\[oughl, coachl) ("rugged vehicle") 
and (tough2, coacil2) ("strict trainer"). Note that 
these are the same possibilities considered by back- 
tracking in the example in Section 2. The NP-master 
returns these to the sentence m~ster, who initiates the 
continuation of the parse fox" each of timse possibilities. 
The sentence master, in tim interim, found a verb 
(coach) for its frst noun-phrase (the tou{~!13) and 
request a subject-verb match from the Sv-master. 
The SV-master returns coacil3 (the verb sense of coach) 
and the sentence master continues with the remainder 
of the input string "married a star". Here, a 
noun A0hrase is needed, and so once again the NP- 
m'mter is invoked, and asked to find an initial noun 
phrase in the string. Since no noun phrase is found, 
this path is blocked. The path containing 
(tougM,coachl) will be blocked exactly as the descrip- 
tion in Section 2. The path containing (tough2,eoaeb2) 
will succeed and produce the correct parse fox" the sen- 
tence. 
We now consider the function of the Semantic Dic- 
tionary master. While the sentence master is receiving 
its .input and begins the processing described above, the 
semantic dictionary master simultaneously finds all pos- 
sible word senses for cacti input word. The semantic 
dictionary contains an entry mr each sense of a word. 
The structure of each entry reveals its syntactic 
category. Word senses corresponding to nouns contain 
only the semantic class to whici~ the word sense 
belongs. For example, the semantic dictionary entry 
fox" tile noun "name '~ (as in the gh'l's name) is given by: 
sere(name1, \[>ad(sign)l ). 
Adjective word senses contain the semantic class 
of the noun that it prefers to modify. The adjective 
"specific" has the following entry: 
sere(specific1, \[poss(sign)\]). 
Word senses corresponding to verbs m'e described 
witi~ a structm'e which contains the class of the subject 
that is prefered by this verb, the class of' the object 
prefered, and the semantic class of tim verb itself. The 
verb "name" ("to name a dog") is represented as: 
sere(name2, \[subj(man), obj(man), head(make)l ). 
After finding all possible word senses for words in 
the input sentence, the semantic dictionary master 
sends these dictionary entries to the appropriate seman- 
tic processes. Verb entries are sent to the SV- and 
VO-masters, adjectives are sent to the AN-master, and 
nouns arc sent to all three. These three process mas- 
ters then contain a "cache" of the semantic dictionary 
entries relevant to the parsing of the present input sen- 
tence. The purpose of the "cache" is so that the 
semantic dictionary entry fox" any input word can be 
quickly found by the processes which use these entries. 
4. The Design of the system 
>k We describe the design of the implementation of 
the parallel parsing model. Each of the six processes 
consists of a tree of processors. We label the root of 
each process tree with the name of the process that it 
represents. The design of the semantic processors and 
the noun-phrase master is independant of tim imple- 
mentation of the SDCG which is used. The design of 
the sentence master, however, is heavily dependant on 
the formal grammar used for the SDCG implementa- 
tion as the parser fox' XTRA. The two syntactic 
processes above, the NP-master and the sentence mas- 
ter, have a significantly more complex design than 
those of the semantic processes so that different possi- 
ble syntactic alternatives may be considered in parallel. 
*Although tile actual implementation has not begun, 
we hope to do so by summer 1986 when the Hypercube 
multiproeessor will have been ready for use. 
142 
4.1. The sentence master 
The desi~;n of tile sentence master is based on the 
following production rules of the SDCG: 
sentence--> sentence 1)ody. 
sentence --> sentence head, scntence_flody. 
Intuitively, we (:an consider the sentence head to 
be wbateve,' appears before the scntenee snbje~ 0t can 
be an empty string), and the sentence body Lo be the 
remainder of the sentence. 
The sentence master, as illustrated below, can be 
thought of as the root of a tree which h~s two children 
whieh we will refer to as the sentence monitors: the 
sentence head monitor (SH-monitor) and the sentence 
body monitor (SB.-monitor). Each sentence nlonitor is 
tile root of a sub\]red of ehild processors (SiMlandlers 
and SB-haadlers) and acts as ,'t monitor foi' these child 
p,'ocessors. We later describe the sentenec handlers in 
more detail. 
Sentence master 
SH-molntor SB-monitor 
' - , • -~ ,' SBhandleil SI hmdlel2Sl/hmdhl/ SII handlml SII hmdlct2 ~'- , ' .." -. a '" ' - ; ".'1 
The sentence minster is the process which deter- 
mines whether or \]lot a st,'ing is a sentence. Any input 
to the sentence master is immediately given I,o both the 
SliI-monitor and the SB-nlonlto," to examine in parMlel 
the possibilities that the sentence does trod does not 
have a sentence head. The SH-monitors and the SB- 
\]nonitors each put incoming requests from the sentenec 
In~ter in a queue and allocate the first available child 
processor t,) begin its work. In the ease of a SH- 
handler, this work is to identify a possible sentence 
bead, and in the case of an SB-handler, it is to see if 
the input string is a sentence body. The SII-handlers 
and SB-handlers monitor child processes which operate 
in parMlel. 
in the egse that a sentence head is found by one of 
the SII-handlers, the. result is retnrned to tile sentence 
master via the SH-monitor. The remainder of the 
input is then given to the SB-monitor which allocates a 
fl'ee SB-handle," to continue the parse of the remainder 
of the sentence. For example, consider the sentence: 
(4) Writing to ,Iohn was dill\]cult. 
The sentence master gives the sentence to both the 
SII-handler and tile SB-monitor which in turn give it to 
one of their children, say SII-handlerl and SB-handlerl. 
Since the grammar for tile SDCG indicates that an 
lag--clause is a possible sentence head, SH-handlerl will 
identify "writing to .lohn" as a candidate sentence 
head. \[he ,emamder of the sentence "was difficult" is 
given to a new SB-handler, say SB-handler2 via the 
SH-monitor and the SBqnonitor, to see if this is a pos- 
sible sentence body. SB°handler2 fails and notifies SH- 
handler1 (via tile SIt- and SB-monitors). Sit-handle,'1 
and SB-handlel'2 become available for' other processing 
and SB-handlerl succeeds in showing that "WrilAng to 
,John was dilrieult" is a legal sentence body. 
The S\]-l-handlers and tile SB-handlers are arrays of ~ 
roeessors which implement the or-parallelism of Prolog 
)r the predicates sentence_head and sentencebody 
respectively. Below is a simplified version of the gram- 
mar rules used in the SDCG for sentence head. 
sentence head --> ing-elause. 
sentence head--> prepositionalphrase. 
sentence-head --> adverbial phrase. 
Based on these rules, each Sil-handle," monitors three 
child processors: 
SH-handler 
pl epomtronal plu ase m~ clause par enthetidal_plu ase 
Tim SB-handlers monitor five p,'ocessors which are 
again based on the SDCG. The function of these five 
child processes will vary depending on the type of the 
input sentence (declarative, interrogative or impera- 
tive). We give he,'e a simplified version of the 
senl;enee_body productions in the SDCG for a deelara.- 
tire sentence. 
sentence_body --:> subject np, vpl. 
sentence body --> subject np, vp2. 
sentencebody -- > inverted_sentence. 
subject np--> noun I)hrase. 
subject_np -.- > ing_.elause. 
Here vpl represents a complete verb phrase, like 
that in the sentence 
(5) John didn't go to the park yesterday. 
And vp2 ,'epresents an elliptical verb phra.se, like 
"didn't" in 
(6) No, John didn't. 
An illust,'ation of the SB-handlers in this case is 
given below. 
Sl:l-handler 
noun phrase mg clause nounA)hrase lag_clause inverted~sentenee 
vpl vpl vp2 vp2 
in Section 3 we indicated that the sentence master 
communieaters with the NP-master. Actually, each of 
the child processors of the sentence handlers sends a 
message to the NP-master, via the sentence master, 
whenever tile DCG dictates that a noun phrase should 
be found next in tile input string. The NP-master 
returns all semantically compatible noun phrases. 
Where there is more than one acceptable noun phrase, 
a mess.age m sent to tile requesting sentence handler 
who allocates one possible noun phrase to the waiting 
child processor and distributes the others to available 
child processors. Each child process of tile sentence 
handlers communicates with the NP- , SV-, and VO- 
ma:sters via the sentence master. 
It is ~)ossible that one of the child processors of the 
sentence handlers needs to know whether or not some 
subclause is itself a sentence. For example, if one of 
the paths of, say, SB-handlerl does a reeursivc call to 
check whether or not the next phrase is a sentence (as 
in a parenthetical expression or a conjunctive sentence), 
a message is sent to the sentence master to take care of 
this request. Tile requesting processor waits. 
143 
Should each of the sentence handlers have a wait- 
ing child processor and the sentence master a request, 
we invoke a special processor, called the black-sheep 
processor, to grant the request, so that the requesting 
processes may continue. The black-sheep processor, 
functions precisely as the current single processor 
implementation of the SDCG and will only be used to 
avoid deadlock*. 
4.2. The Noun-phrase master 
Since noun phrases are the major building block of 
many substructures of a sentence, and since ambiguity 
often arises through determination of different noun 
phrases (eg. "The tough coach the young" and "The 
prime number consecutively"), the identification of 
noun phrases is an important place tbr parallelism in 
the parser. The NP-master can be thought of as the 
root of a tree of processors. It functions similarly to 
the sentence master. The noun-phrase master contains 
a queue of noun-phrase requests and allocates them to 
available noun-phrase handlers. 
Noun-~ 
Each noun-phrase handler monitors three child 
processors. The child processors try to parse the next 
input phrase as a noun phrase with no adjectives, one 
adjective, and two or more adjectives respectively. 
For example, in parsing the phrase "the tough coach," 
two of the child processors would succeed (no adjectives 
and one adjective), these results are reported to the 
parent noun-~phrase handler, and then sent to the sen- 
tenee master via the NP-master. At this point, the 
waiting sentence processor (child of either one of the 
SB-handlers or one of the SH-hundlers) continues with 
one of the possibilities and an available sibling proces- 
sor is allocated by the sentence handler to continue the 
parse of the sentence using the other possible noun 
phrase. 
In the ease of a truly ambiguous sentence, all 
legal parses are eventually produced. The above exam- 
ple would produce two parses in the case of "The tough 
coach married people"?, but not in the case of "The 
tough coach the young. 
Each of the child processes of the noun-phrase 
handler communicates with the AN-master via the 
noun-phrase handler. 
4.3. The Semantic Processors 
The semantic dictionary master and the AN-, SV- 
and VO-master processor trees have a much simpler 
structure in that they have only two levels. The root 
node is the master; children of the root are handlcm. 
Semantic AN-master SV-master VO-master 
Dictionary 
master 
144 
The Semantic dictionary entries are divided 
among the semantic dictionary handlers. The Seman- 
tic dictionary master reads the input and passes the 
relevant semantic entries, which it obtains from its 
child processors, to the AN-, SV-, and VO-masters as 
described in Section 3. 
The AN-master receives input which is in general 
a list of adjectives and u noun, from the noun-phrase 
handlers. It forms all possible pairs (adjective word 
sense, noun word sense) and allocates child processors 
to determine whether or not there is a semantic match. 
The pail'S consisting of a list of adjective word senses, 
and a noun word sense which matches each of the 
adjective word senses in the list, are returned to the 
NP-master. 
The SV-master and the VO-master receive input 
directly from the sentence processors. The input and 
output of these processes is exactly as deseribedin Sec- 
tion 3. In both cases, the semantically compatible word 
sense pairs are determined in parallel. 
5. Future work 
The Computing Research Laboratory (CRL) has 
the use of Longman's LDOCE English dictionary, 
which is realistic in size, prov\]des comprehensive syn- 
tactic information and also has its semantic entries 
both syntactically and semantically restricted, and lim- 
ited to a 2000 word vocabulary. We plan to implement 
the Semantic Dictionary master by providing each of 
the semantic dictionary handlers with a portion of 
LDOCE. 
After the initial implementation of the designed 
parallel parser, we would like to see how W\]lksian 
Preference Semantics \[Wilks 75, Wilks et al 85\] can be 
realized in our parser in the sense that one or more 
readings (in the case of genuine ambiguity) can be 
selected by weighting the competing interpretations. 
We are also investigating a parallel parsing model 
which is driven by semantics, rather than syntax. We 
have in mind that the role of the sentence master in 
this case is purely semantic and that syntax is used 
only to help the segmentation of the input string. 
Comparison of the two systems would be of great 
interest to us. Eventually, we also want to consider the 
incorporation of pragmatlcs into the system. 
6. Acknowledgements 
We would like to thank the Natural Language 
group at the CRL, namely Yorick Wilks, Jerry Ball, 
Sharon Dorfman, David Furwell, Dan Fuss, Chengming 
Guo, and Sylvia Candeluria de Rain, for their com- 
ments and suggestions. We also thank Ted Dunning 
for his many helpful discussions. 
*The system will never invoke the black-sheep proces- 
SOl" unless the sentence contains four or more conjoined 
sentences or a parenthetical sentence with three or 
more eonjunets m it. In these eases the black-sheep processor 
is used only for the recursive calls which can- 
not be handled by the system. 

References 

Charniak, E. (1983) "Passing markers: a theory of 
contextual influence in language comprehension," Cog- nition Science, 
1983, 7, 171-190. 

Eiselt, K.P. (1985) "A parallel-process model of on- 
line inference processing," Proceedings of International 
Joint Conference on Artificial Intelligence, Los Angles, 
CA. Huang, 

X-M. (1985) "Machine translation in the 
SDCG formalism," Proceedings of the Conf. on Theoretical and Methodological Issues in Machine 
Translation of Natural Languages, Colgate University, 
New York. 

Intel, Corp. (1985) iPSC Data Sheet, Intel Scientific 
Coinputers~ Oregon. 

Katz, J. & Fodor~ J. (1.963) "The structure or a 
semantic bheolT," Language 39, pp.170-210. 

Pereira, F. & Warren, D. (1980) "Definite elause 
grammars for language analysis - a survey of the for- 
malism and a comparison with augmented transition 
networlcs," ArtificialIntelligence, 13:231-278. 

Waltz, David L. Sz Pollack, Jordan B. (1985) M,'~ssively parallel parsing: a sl, rongly interactive 
model of natural language inberpretaiton," mimeo. 

Wilks, Y.A. (1975) "Preference semantics," Keenan 
(ed), Formal Semantics o\] Natural Language, Cam- 
bridge University Press, London. ~. ,, 

Wilks, Y., Huang, X-M. and Fass, D. (198o) Syn- 
tax, preference and right attachment,' Proceedings o\] IJCAI85, 
UCLA, Los Angeles. 

Winograd~ T. (1972) Understanding Natural 
Language, Academic Press, New York. 
