<?xml version="1.0"?><!DOCTYPE article SYSTEM "/project/take/software/searchbench_offline_processing/paperxml_generator/aclextractor/src/python/../resource/dtd/paperxml.dtd"><article><header><firstpageheader><page local="1" global="140"/><title>Parsing in Parallel</title><author surname="Huang" givenname="Xiuming"><org  name="New Mexico State University" country="USA" city="Las Cruces"/></author><author surname="Guthrie" givenname="Louise"><org  name="Bath University" country="United Kingdom"/></author></firstpageheader><frontmatter><p><b>Parsing in Parallel</b></p><p><i>Xiuming Huang &amp; Louise Guthrie</i></p><p><i>Computing Research Laboratory New Mexico State University Las Cruces, NM, USA 88003</i></p></frontmatter><abstract>The paper is a description of a parallel model for natural language parsing, and a design for its imple­mentation on the Hypercube multiprocessor. The parallel model is based on the Semantic Definite Clause Grammar formalism and integrates syntax and semantics through the communication of processes. The main processess, of which there are six, contain cither 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 impose semantic con­straints on the syntactic processes. </abstract></header><body><section number="1." title="Introduction"><p>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­ment 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.</p><p>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, the 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.</p><p>In Section 4, we design an implementation of this parallel model for a 6-Hypercube [Intel 85] multipro­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 Hypercube 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.</p><p>Like the work of Eiselt [Eiselt 85] on parallel infer­ence processing, we have a perspicuous assignment of natural language processing modules 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 comprehension by activation and inhibition of nodes of a network. A practical application of their approach requires massively parallel processing, currently beyond the state of the art in multiprocessing.</p><p>We base our parallel model on the Semantic Definite Clause Grammars (SDCG) formalism of Huang [Huang 85]. The SDCG evolved from the Definite Clause Grammars of Pereira [Pereira et al 80] and is described below.</p></section><section number="2." title="Semantic Definite Clause Grammars"><p>The SDCG is currently 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-teni now running under a C-prolog interpreter and has 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 parses of a sentence to those which are semantically compatible.</p><p>A simplified version of the SDCG used in the XTRA system is as follows:</p><doubt alpha="65.2" length="23" tooSmall="False" monospace="0.0">(1) sentence(s(Subj_Np,</doubt><doubt alpha="58.6" length="29" tooSmall="False" monospace="0.0">vp(v(Verb_sense),Obj_Np)) --&gt;</doubt><p>noun_phrase(Subj__Np), is_yerb(Verb), subject_verb_match(Subj_Np,Verb,</p><p>Verb__sense), noun_phrase(Obj__Np), verb_object_match(Verb_sense,Obj_Np).</p><p>The grammar says that an input string is a sentence with the structure <i>s(Subj_Npl vp(v(Verb_sense), Obj_Np)) </i>if it is composed of <i>Sub]_Np </i>which is a noun phrase, followed by <i>Verb </i>(a verb) whose one sense <i>Verb_sense </i>is semantically compatible with <i>Subj_Np, </i>followed by <i>ObjJNp </i>(a noun phrase) which is semanti­cally compatible with <i>Verb__sense.</i></p><p>The sub-grammar for parsing a noun phrase is as follows:</p><doubt alpha="65.9" length="44" tooSmall="False" monospace="0.0">(2) noun_phrase(np(det(Det), adj(Adj_sense),</doubt><doubt alpha="52.6" length="19" tooSmall="False" monospace="0.0">n(Noun_sense))) — &gt;</doubt><p>determiner(Det), adjèctive(Adjective), noun(Noun),</p><p>adj_noun_match(Adjective, Noun, Adj_sense, Noun_sense).</p><page local="2" global="141"/><p>The last predicate in the noun phrase sub-grammar, 'adj_ noun_match', tries to match Adjective and Noun to find a compatible pair of senses for the given Adjective and Noun to be combined. The predi­cates 'subj_verb_match' and 'verb_object_match' in the sentence grammar accomplish similar task. All those matches are based on the system of selectional restric­tions proposed by [Katz &amp; Fodor 63] and their cod­ings are omitted here to save space. Later wc will see how they function.</p><p>Then: is a syntactic lexicon in the SDCG of the following form:</p><p>determiner(thc).</p><p>noun(coach, [coachi ,coach2]).</p><p>noun(star, [start ,star2] ).</p><p>adjective(tough, [toughl,tough'2,long li3,tough4]). verb(marry, [marry 1 ,marry2[).</p><p>For instance, the syntactic entry for "coach" is a, noun having two senses( labeled "coachi" and "coach2".</p><p>For each word sense, a semantic interpretation is given in the semantic dictionary:</p><doubt alpha="66.0" length="53" tooSmall="False" monospace="0.0">sem(coachl,[head(thing)])*. (eg. 'a passenger coach')</doubt><doubt alpha="62.5" length="192" tooSmall="False" monospace="0.0">scm(coach2,[head(man)[).   (a trainer) sem(stari,[head(thing)]).   (a celestial object) sem(star2,[head(man)]).   ("a singing star", etc) sem(foughl,[poss(thing)]).    (modifies 'thing', as in</doubt><p>"a tough materaif") "a tough mountaineer ') sem(marryl ,[subj(man),obj(man),head(do)[).</p><doubt alpha="60.0" length="50" tooSmall="False" monospace="0.0">sem(lough2,[poss(man)[).    (modifies 'man', as in</doubt><doubt alpha="65.2" length="23" tooSmall="False" monospace="0.0">("John married Mary. ')</doubt><p>scm(marry2,[subj(raan),obj(tliing),hcad(do)]). (eg.</p><p>in "Me married money.")</p><p>For example, "coachi" labels the sense of "coach" whereby it refers to a "thing". In parsing (3), (3) The tough coach married a star*.</p><p>according to the grammar in (1) the system starts with the predicate 'noun_phrasc', which is presented in (2). After it instantiates the variables <i>Det, Adjective </i>and <i>Noun </i>instantiated to "the", "tough" and "coach", it attempts to apply the predicate 'adj_jioun_match', whose task it is to find the first pair of senses for the words "tough" and "coach", respectively, which are compatible with each other according to our selectional restrictions. Here the first pair found would be 'toughl + coachi', because the semantic category of "coachi" ('thing') fits into the 'poss(thing)' slot of the word sense toughl" (meaning that his adjectival sense is for modifying something whose semantic category is 'thing').</p><p>Now the parser is at the predicate 'is._vcrb' where it finds the verb "marry". It then tries to match <i>Subj_Np </i>('toughl + coachi') with a some sense of the "marry but fails because both " marry 1" and "marry2" prefer the subject to be of the semantic category 'man', which "coachi" cannot satisfy. The system backtracks, trying 'adj_nounjnatch' again and producing the next matching pair of senses for "the tough coach" ('tough2 4 coach2'). When 'subj_verb__match' is tried again and it selects 'marryl' as the appropriate verb sense. The parser proceeds to analyse the rest of the sentence, employing "noun_phrase" to find the object noun phrase sense * The semantic primitives such as 'thing', 'man', etc, are based on the primitive set suggested in [Wilks 75].</p><p>* Modified version of the "semantic garden path" sen­tence by [Charniak 83] ("The astronomer married the star.") and "verb_obj_match" to sec whether this noun phrase sense fits the particular verb sense. 'Start' (a celestial object) is thus tried and rejected, and 'star2' (a cele­brity) is accepted ('marryl' requires the object to be of the semantic category 'man'). A plausible reading of the sentence is thus gained (' The strict trainer married a celebrity.")</p><p>It is clear from the above description that in the SDCG syntax and semantics closely interact: syntax -semantics - syntax, etc. One class of predicate waits for the other to make a decision, then makes its own decision. How much backtracking must be done is unpredictable; the parse might only be completed after several routes have been tried and rejected.</p></section><section number="3." title="Parallel Parsing"><p>The model consists of six processes which com­municate to produce all the semantically compatible parses of a given sentence. Each process will be imple­mented as a tree of processors. The root node of the tree contains a queue of requests and allocates proces­sors to the elements of the queue as they become avail­able. For the purpose of this model it is sufficent to note that each process itself has the capability of pro-cessingsevcral requests in parallel. We identify below each of the processes and describe the communication between them.</p><doubt alpha="0.0" length="2" tooSmall="False" monospace="0.0">1)</doubt><doubt alpha="0.0" length="2" tooSmall="False" monospace="0.0">2)</doubt><p>Sentence master - Controlling process which operates as a modified top down syntactic processor (modified in the sense that infor­mation from other processes influences its decisions).</p><p>3) Semantic dictionary master - Contains the semantic dictionary and provides appropri­ate entries for the current input sentence to the other semantic processes.</p><p>4) Adjective-Noun master (AN-master) -Given an adjective and a noun, finds all possible pairs (adjective word sense, noun word sense) that are compatible.</p><p>5) Subject-Verb master (SV-inaster) - Given a word sense for a noun and a verb, finds all possible word senses for the verb that arc compatible.</p><p>6) Verb-Object master (VO-mastcr) - 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 is compatible.</p><p>The following diagram illustrates the processes and the communication between them.</p><doubt alpha="38.5" length="13" tooSmall="False" monospace="0.0">■-----input -</doubt><doubt alpha="61.5" length="13" tooSmall="False" monospace="0.0">AN-master-*--</doubt><doubt alpha="33.3" length="3" tooSmall="False" monospace="0.0">i /</doubt><doubt alpha="59.3" length="27" tooSmall="False" monospace="0.0">Semantic        ^ SV-master</doubt><p><b>Dictionary-*'</b> <b>* VQ-master</b></p><doubt alpha="100.0" length="6" tooSmall="False" monospace="0.0">master</doubt><doubt alpha="61.5" length="13" tooSmall="False" monospace="0.0">-*-NP-masLcr'</doubt><p>Noun-phrase master (NP-mastcr) - Given an arbitrary string, it identifies syntactically all_ possible initial noun phrases in the string. Through communication with the AN-master, it determines which of these are semantically acceptable.</p><page local="3" global="142"/><p>Input is read simultaneously by the semantic dic­tionary, and the sentence master. The sentence master contains the syntactic dictionary and begins a top-down parse of the sentence guided by the definite clause grammar. Whenever a noun phrase is searched for, the noun phrase master is invoked to produce all possible initial noun phrases in the remainder (the unparscd portion) of the input string. After the main verb of any clause has been identified by the sentence master, the SV-master is invoked to produce all possi­ble verb senses which are meaningful at this point in the parse. In the case that a transitive verb is found and a possible word sense for the object noun is deter­mined, the VO-master is consulted as to whether or not the given verb word sense and object noun word sense are acceptable as a verb-object pair.</p><p>In communicating with the NP-master or SV-master, several possibilities may be returned to the sen­tence master, and the parse is continued for each of these possibilities in parallel.</p><p>The 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 the AN-master for semantic information. This communication is similar to that of the sentence master with the SV-master. After determining an adjective which is fol­lowed by a noun, the NP-master invokes the AN-master to find all meaningful adjective-noun word sense pairs. Multiple adjectives which modify a noun are considered in parallel by the AN-master, which in this case, returns pairs which consist of a list of adjective word senses and a noun word sense. Whenever the NP-master recives a pair from the AN-master, it con­tinues any work that it might have (such as finding prepositional phrases which modify the 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.</p><p>The sentence master produces all the parses of the sentence that have not been blocked. A parse may be blocked for any one of the following three reasons:</p><p>1) The syntactic category needed by the sen­tence master is not satisfied by any initial segment of the unparsed portion of the input.</p><p>2) The SV-master returns a negative response.</p><p>3) The VO-master returns a negative response. We use the example in Section 2 ("The tough</p><p>coach married a star.") to illustrate the above commun­ication of processes and to exhibit a path which is blocked.</p><p>For simplicity, we write the SDCG used previ­ously, without the arguments for the predicates involved. We also add an additional rule for noun__phrase and another entry in the semantic diction­ary for the noun sense of 'tough', tough3 (as in "the tough never suffer"), to make the example interesting.</p><p>sentence —&gt; noun_j&gt;hrase, verb, subject_verb_match, noun_phrase, verb_object_match.</p><p>noun_phrase — &gt; determiner, adjective, noun, adj_noun_match.</p><p>noun_phrase — &gt; determiner, noun.</p><p>determiner --&gt; [the].</p><p>determiner — &gt; [].</p><p>The sentence master receives the input and in this case, 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" (tough3) is returned immedi­ately to the sentence master who begins searching for a verb. Simultaneously, the NP master sends the adjec­tive noun pair, (tough, coach) to the AN-master. The AN-master returns (toughl, coachi) ("rugged vehicle") and (tough2, coach2) ("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 master, who initiates the continuation of the parse for each of these possibilities. The sentence master, in the interim, found a verb (coach) for its first noun-phrase (the tough3) and request a subject-verb match from the SV-master. The SV-master returns coach3 (the verb sense of coach) and the sentence master continues with the remainder of the input string "married a star"; Here, a noun_phrase is needed, and so once again^ the NP-master 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 (toughl,coachi) will be blocked exactly as the descrip­tion in Section 2. The path containing (tough2,coach2) will succeed and produce the correct parse for the sen­tence.</p><p>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 each input word. The semantic dictionary contains an entry for 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 which the word sense belongs. For example, the semantic dictionary entry for the noun "name" (as in the girl's name) is given by:</p><p>sem(namel, [head(sign)]).</p><p>Adjective word senses contain the semantic class of the noun that it prefers to modify. The adjective "specific" has the following entry:</p><p>sem(specificl, [poss(sign)]).</p><p>Word senses corresponding to verbs are described with a structure which contains the class of the subject that is prefered by this verb, the class of the object prefered, and the semantic class of the verb itself. The verb "name" ("to name a dog") is represented as:</p><p>sem(name2, [subj(man), obj(man), head(make)]).</p><p>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 are 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 for any input word can be quickly found by the processes which use these entries.</p></section><section number="4." title="The Design of the system"><p>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 indépendant of the 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 for 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.</p><p>♦Although the actual implementation has not begun, we hope to do so by summer 1986 when the Hypercube multiprocessor will have been ready for use.</p><page local="4" global="143"/><subsection number="4.1." title="The sentence master"><p>The design of the sentence master is based on the following production rules of the SDCG:</p><p>sentence — &gt; sentence body.</p><p>sentence — &gt; sentence_head, <b>scntence_body.</b></p><p>Intuitively, we can consider the scntcncc_head to be whatever appears before the sentence subject (it can be an empty string), and the sentence body to be the remainder of the sentence.</p><p>The sentence master, as illustrated below, can be thought of as the root of a tree which has two children which we will refer to as the sentence monitors: the sentence head monitor (SH-monitor) and the sentence body monitor (SB-monitor). Each sentence monitor is the root of a subtree of child processors (SH-handlers and SB-handlers) and acts as a monitor for these child processors. We later describe the sentence handlers in more detail.</p><p><b>Sentence ma-ster</b></p><p><b>SH-monitor SB-monitor</b></p><p>The sentence master is the process which deter­mines whether or not a string is a sentence. Any input to the sentence master is immediately given to both the SH-monitor and the SB-monitor to examine in parallel the possibilities that the sentence does and does not have a sentence head. The SH-monitors and the SB-monitors each put incoming requests from the sentence master in a queue and allocate the first available child processor to begin its work. In the case of a SH-handler, this work is to identify a possible sentence head, and in the case of an SB-handler, it is to see if the input string is a sentence body. The SH-handlers and SB-handlers monitor child processes which operate in parallel.</p><p>In the case that a sentence head is found by one of the SH-handlers, the result is returned to the sentence master via the SH-monitor. The remainder of the input is then given to the SB-monitor which allocates a free SB-handler to continue the parse of the remainder of the sentence. For example, consider the sentence:</p><p><b>(4) </b>Writing to John was difficult.</p><p>The sentence master gives the sentence to both the SH-handler and the SB-monitor which in turn give it to one of their children, say SH-handlcrl and SB-handlerl. Since the grammar for the SDCG indicates that an ing-elausc is a possible sentence head, SH-handlcrl will identify "writing to John" as a candidate sentence head. The remainder of the sentence "was difficult" is given to a new SB-handler, say SB-handler2 via the SH-monitor and the SB-monitor, to see if this is a pos­sible sentence body. SB-handler2 fails and notifies SB-handlerl (via the SH- and SB-monitors). SH-handlerl and SB-handler2 become available for other processing and SB-handlerl succeeds in showing that "Writing to John was difficult" is a legal sentence body.</p><p>The SH-handlers and the SB-handlers are arrays of processors which implement the or-parallelism of Prolog for the predicates scntence_head and sentence Jjody respectively. Below is a simplified version of the gram­mar rules used in the SDCG for sentencejiead.</p><p>sentence_head — &gt; ing-clause. sentence_head — &gt; prepositional_phrase. <b>sentence_head </b><b>— </b>&gt; adverbial phrase.</p><p>Based on these rules, each SH-handler monitors three child processors:</p><p><b>SH-handler</b> prepositional_phrase ing_clause parenthetical_phrase</p><p>The SB-handlers monitor five processors which arc 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 here a simplified version of the sentencejaody productions in the SDCG for a declara­tive sentence.</p><p>sentence_body — &gt; subject_np, vpl. sentence_body — &gt; subject_np, vp2. sentence_body — &gt; inverted_sentence.</p><p>subject_np — &gt; noun_phrase. subjcct_np <b>— </b><b>&gt; ing_clause.</b></p><p>Here vpl represents a complete verb phrase, like that in the sentence (5) John didn't go to the park yesterday.</p><p>And vp2 represents an elliptical verb phrase, like "didn't'' in (6) No, John didn't.</p><p>An illustration of the SB-handlers in this case is given below.</p><p><b>SB-handler</b></p><p><b>noun_phrase ing_clausc noun__phrasc ing_clause invcrtccPscntence vpl vpl vp2 vp2</b></p><p>In Section <b>3 </b>we indicated that the sentence master communicators 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 the DCG dictates that a noun phrase should be found next in the input string. The NP-master returns all semantically compatible noun phrases. Where there is more than one acceptable noun phrase, a message is sent to the 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 the sentence handlers communicates with the NP- , SV-, and VO-masters via the sentence master.</p><p>It is possible 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 recursive 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. The requesting processor waits.</p><page local="5" global="144"/><p>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*.</p></subsection><subsection number="4.2." title="The Noun-phrase master"><p>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 for 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.</p><p><b>Noun-phrase master</b></p><p>Noun-phrase handlers</p><p>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­tence 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-handlers) 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.</p><p>In the case 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. '</p><p>Each of the child processes of the noun-phrase handler communicates with the AN-master via the noun-phrase handler.</p></subsection><subsection number="4.3." title="The Semantic Processors"><p>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 handlers.</p><p>Semantic   AN-master    SV-master VO-master Dictionary master</p><p>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 <b>3.</b></p><p>The AN-master receives input which is in general a list of adjectives and a 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 pairs 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.</p><p>The SV-master and the VO-master receive input directly from the sentence processors. The input and output of these processes is exactly as described in Sec­tion <b>3. </b>In both cases, the semantically compatible word sense pairs are determined in parallel.</p></subsection></section><section number="5." title="Future work"><p>The Computing Research Laboratory (CRL) has the use of Longman's LDOCE English dictionary, which is realistic in size, provides comprehensive syn­tactic information and also has its semantic entries both syntactically and semantically restricted, and lim­ited to a <b>2000 </b>word vocabulary. We plan to implement the Semantic Dictionary master by providing each of the semantic dictionary handlers with a portion of LDOCE.</p><p>After the initial implementation of the designed parallel parser, we would like to see how Wilksian Preference Semantics [Wilks <b>75, </b>Wilks et al <b>85] </b>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 pragmatics into the system.</p></section><section number="6." title="Acknowledgements"><p>We would like to thank the Natural Language group at the CRL, namely Yorick Wilks, Jerry Ball, Sharon Dorfman, David Farwell, Dan Fass, Chengming Guo, and Sylvia Candelaria de Ram, for their com­ments and suggestions. We also thank Ted Dunning for his many helpful discussions.</p></section><references><p><b>Charniak, E. (1983) </b>"Passing markers: a theory of contextual influence in language comprehension," <i>Cog­nition Science, </i><b>1983, 7. 171-190.</b></p><p><b>Eiselt, K.P. (1985) ''A </b>parallel -process model of on­line inference processing," <i>Proceedings of International Joint Conference on Artificial Intelligence, </i>Los Angles, CA.</p><p><b>Huang, X-M. (1985) </b>"Machine translation in the SDCG formalism," <i>Proceedings of the Conf. on Theoretical and Methodological Issues in Machine Translation of Natural Languages, </i>Colgate University, New York.</p><p>*The system will never invoke the black-sheep proces­sor unless the sentence contains four or more conjoined sentences or a parenthetical sentence with three or more conjuncts m it. In these cases the black-sheep processor is used only for the recursive calls which can­not be handled by the system.</p><page local="6" global="145"/><p><b>Intel, Corp. </b>(1985) <i>iPSC Data Sheet, </i>Intel Scientific Computers, Oregon.</p><p><b>Katz, J. &amp; Fodor, J. </b>(1963) "The structure of a semantic theory," <i>Language </i>39, pp.170-210. <b>Pereira, F. </b><b>&amp;.</b><b> Warren, D. </b>(1980) "Definite clause grammars for language analysis - a survey of the for­malism and a comparison with augmented transition networks," <i>Artificial Intelligence, </i>13:231-278. <b>Waltz, David L. &amp; Pollack, Jordan B. </b>(1985) "Massively   parallel   parsing:   a   strongly interactive model of natural language interprétai ton," mimeo. <b>Wilks, Y.A. </b>(1975) "Preference semantics," Keenan fed), <i>Formal Semantics of Natural Language, </i>Cam­bridge University Press, London.</p><p><b>Wilks, Y., Huang, X-M. and Fass, D. </b>(1985) "Syn­tax, preference and right attachment," <i>Proceedings of IJCAI85, </i>UCLA, Los Angeles.</p><p><b>Winograd, T. </b>(1972) <i>Understanding Natural Language, </i>Academic Press, New York.</p></references></body></article>