<?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="919"/><title>Generation of Paraphrases from Ambiguous Logical Forms</title><author surname="Shemtov" givenname="Hadar"><org  name="Stanford University" country="USA" city="Stanford"/></author></firstpageheader><frontmatter><p><b>Generation of Paraphrases from Ambiguous Logical Forms</b></p><p><b>Hadar Shemtov</b></p><p><b>Stanford University and Xerox PARC 3333 Coyote Hill Road Palo Alto, CA 94304 </b>shemtov@csli.stanford.edu</p></frontmatter><abstract>This paper presents a method for generating multiple paraphrases from ambiguous logical forms. The method is based on a chart structure with edges indexed on semantic information and annotations that relate edges to the seman­tic facts they express. These annotations consist of logical expressions that identify particular realizations encoded in the chart. The method allows simultaneous generation from multiple interpretations, without hindering the genera­tion process or causing any work to be superflu­ously duplicated. </abstract></header><body><section number="1" title="Introduction"><p>This paper describes a new generation method that produces multiple paraphrases from a semantic input which may contain ambiguities. The method is an extension of the chart based generation algorithm described in Kay (1996). The focus in this presentation is on generating multiple paraphrases and the ability to operate on logical forms that contain more than one semantic analysis. The motivation for this is to enable a situation (particularly in machine translation) where the resolution of ambiguity is postponed to after the generation process. This may open the possibility for considering target language statistics (Knight and Hatzivassiloglou, 1995; Dagan <i>et al, </i>1991) or more generally for applying other criteria to select the "best" translation, which take into account properties of both languages - for example, prefering ambiguity preserv­ing translations. It may also enable different kinds of interactions between the translation system and the human expert who operates it - for instance, disambig­uation by a monolingual in the target language.</p><p>The first demonstration of using charts for genera­tion appeared in Shieber (1988). In that paper the emphasis was to show that a uniform architecture can be used for both parsing and generation, however the conception of the chart was limited and the generation algorithm did not appear to be sufficiently attractive.</p><p>Kay ( 1996) provides a more general view of the chart structure which is designed to provide for generation advantages comparable to those it provides for pars­ing. Neumann (1994) proposes another version of a uniform chart architecture where the same data struc­tures are used for both generation and parsing.</p><p>In this discussion of chart generation we will focus on one key advantage of the chart structure: the fact that equivalent phrases can fit into larger structures once, regardless of the number of alternatives that they represent. This is achieved by collapsing different der­ivations that cover the same subset of input (and have the same syntactic potential) under a single edge that represents an equivalence class. This property is the basis for the efficiency gained by using charts as it allows a compact representation in which a polyno­mial number of edges can potentially encode exponen­tially many derivations. Thus, the ability to recognize equivalence is an important aspect of chart processing and it is essential that it will be available to the gener­ation process.</p><p>We will not describe the underlying generation algorithm in detail but we assume that familiarity with chart parsing is sufficient for understanding the pro­posed method - the generator can be thought of as a parser that takes logical forms as input and produces strings as analyses. Like a packed parsing forest which represents multiple parsing results, the chart generator produces a "packed generation forest" to represent the various string realizations of the semantics. In the method we propose here, these forests are annotated with information that enables keeping track of the rela­tion between pieces of the semantics and the various phrases that express them. We will concentrate on a detailed description of these annotations as they are a crucial component of our method and they are the major difference between the current proposal and the one described in Kay (1996). Before we do that we will sketch a version of Kay's algorithm, emphasizing data representations rather than algorithmic details. We will also follow Kay in adopting a "flat" represen­tation of event semantics to represent the logical forms (Davidson, 1980; Parsons, 1990). This style of semantics fits the operation of the generation algorithm very well and it is attractive to translation since it allows for flexibility and simplicity with regard to syntactic real­ization and treatment of structural mismatches between syntax and semantics.<page local="2" global="920"/> The flat structure is also convenient for encoding unresolved ambiguities (Copestakeera/., 1996).</p></section><section number="2" title="Kay's Chart Generation Algorithm"><p>In his algorithm, Kay proposes to use two devices to establish which phrases interact and when phrases can be folded together under a disjunctive edge. One device involves indexing edges on semantic variables and another keeps track of which part of the semantics each derivation expresses. In the semantic representa­tion used in the algorithm, each fact is a predicate specifying a relation between events and entities. The events and entities are represented as variables that appear in the predicates and connect the various facts together. For example, the logical form denotes a chasing event (e) in which young dogs (d) chase young cats (c). Given this semantics as its input, the generator creates nominal edges with indices d and c as a realization of [dogs(d), young(d)] and [cats(c), young(c)], respectively, and verbal edges with index e as a realization of [chase(e,d,c)]. The packed generation forest encoding the four different realizations of the semantics (obtained by freely choosing between two ways of expressing each of the arguments: "young dogs'V'puppies" and "young cats'V'kittens") is given in figure l.<footnote anchor="1"/></p><doubt alpha="57.7" length="52" tooSmall="False" monospace="0.0">[chase(e,d,c), dogs(d), young(d), cats(c), young(c)]</doubt><p>Concentrating on the first argument, the constitu­ents which render facts about the "dog" (nodes 1 to 6) are indexed on variable d; nodes 3 and 5 are folded together under node 6 as they are syntactically and semantically equivalent. The semantic equivalence is established on the basis of the indexing variable and the coverage of facts from the logical form.</p><p>In parsing, identifying the coverage of the input is straightforward since phrases consist of consecutive items and combine at common end-points; the cover­age of each edge is uniquely defined by its string posi'Note that the traditional representation of charts (as transi­tion diagrams) is not suitable for generation charts, essen­tially because of the absence of fixed positions. In order to simplify the exposition, we choose to represent the packed generation forest as an <b>AND-OR </b>tree (in which <b>OR</b>-nodes rep­resent equivalent alternations and <b>AND</b>-nodes represent combination of daughters into larger constituents; <b>OR</b>-nodes are distinguished by the little arcs between their branches). Note that a forest representing multiple paraphrases can be reentrant, as later examples will demonstrate.</p><doubt alpha="18.8" length="16" tooSmall="False" monospace="0.0">&lt;S,e&gt; i5 [11111]</doubt><doubt alpha="21.4" length="14" tooSmall="False" monospace="0.0">&lt;NP,d&gt;6[01100]</doubt><doubt alpha="20.0" length="15" tooSmall="False" monospace="0.0">&lt;VP,e&gt;14[10011]</doubt><doubt alpha="20.0" length="15" tooSmall="False" monospace="0.0">&lt;NP,d&gt;3[01100]'</doubt><doubt alpha="47.6" length="21" tooSmall="False" monospace="0.0">&lt;Adj,d&gt;J[00100] young</doubt><doubt alpha="38.5" length="13" tooSmall="False" monospace="0.0">&lt;NP,d&gt;5&lt;V,e&gt;7</doubt><doubt alpha="0.0" length="7" tooSmall="False" monospace="0.0">[01100]</doubt><doubt alpha="100.0" length="1" tooSmall="False" monospace="0.0">I</doubt><doubt alpha="42.9" length="21" tooSmall="False" monospace="0.0">&lt;N,d&gt;4[01100] puppies</doubt><doubt alpha="33.3" length="18" tooSmall="False" monospace="0.0">&lt;N,d&gt;2[01000] dogs</doubt><doubt alpha="38.5" length="13" tooSmall="False" monospace="0.0">[10000] chase</doubt><doubt alpha="18.8" length="16" tooSmall="False" monospace="0.0">&lt;NP,c&gt; ,3[00011]</doubt><doubt alpha="17.6" length="17" tooSmall="False" monospace="0.0">&lt;NP,c&gt; „) [00011]</doubt><doubt alpha="50.0" length="8" tooSmall="False" monospace="0.0">&lt;Adj,c&gt;8</doubt><doubt alpha="0.0" length="7" tooSmall="False" monospace="0.0">[00001]</doubt><doubt alpha="100.0" length="5" tooSmall="False" monospace="0.0">young</doubt><doubt alpha="25.0" length="16" tooSmall="False" monospace="0.0">&lt;NP,C&gt; j2[00011]</doubt><doubt alpha="50.0" length="6" tooSmall="False" monospace="0.0">&lt;N,c&gt;u</doubt><doubt alpha="0.0" length="7" tooSmall="False" monospace="0.0">[00011]</doubt><doubt alpha="100.0" length="7" tooSmall="False" monospace="0.0">kittens</doubt><p>Figure 1 tions. In generation this is not available since the semantics is unordered and the formation of subsets is relatively free - different lexical entries may cover dif­ferent parts of the input and different syntactic realiza­tions may choose to pack different facts together. Another source of complication comes from the fact that the generation chart encodes multiple paraphrases and we need to guarantee that a piece of semantics will not be expressed more than once.</p><doubt alpha="33.3" length="18" tooSmall="False" monospace="0.0">&lt;N,c&gt;9[00010] cats</doubt><p>The mechanism used for keeping track of the semantic coverage of each edge consists of a bit array that represents the set of semantic facts. Each slot in the array corresponds to one fact and indicates whether the fact is expressed by that edge. When edges com­bine to form a larger constituent, their arrays union together and checked to verify that no fact is dupli­cated.</p><p>The new generation method we propose in this paper is different from Kay's mainly in the criteria for indexing phrases and the mechanism used for deter­mining the semantic coverage. The next sections describe these differences and demonstrate how they can be deployed to enable generation from undisam-biguated semantics.</p></section><section number="3" title="Generation with Annotated Charts"><p>We propose a coarser notion of equivalence in order to let more phrases to be folded together. We still use the semantic variables as indices but we do not let the bit arrays be part of the identification of edges. We com­pensate for this by using a more powerful (and admit­tedly more complicated) mechanism to relate each constituent to the subset of the semantics it realizes.</p><page local="3" global="921"/><p>The mechanism consists of an array of boolean condi­tions, each corresponding to one semantics fact. A condition identifies a certain partial path in the packed generation forest; when this path is selected, the corre­sponding semantic fact is expressed.</p><p>In the simple cases, when a constituent expresses the same semantic facts in all of its realizations, the condition can indeed be thought of as binary: if a slot contains 1 the corresponding fact is expressed by the edge and conversely if it is 0. In more complicated cases, when an edge has different realizations that cover different parts of the semantics, the indications in the arrays are given as boolean expressions com­posed of propositional variables. Each disjunctive edge in the chart is annotated with a set of such vari­ables, each of which mutually exclusively defines a particular alternative derivation of that edge. These propositional variables compose into larger boolean expressions that define derivations of larger structures. For a general explanation of the method for using boolean expressions to handle disjunctions, see Max­well and Kaplan (1989).</p><p>The next example shows a chart with semantic arrays and exemplifies how the conditions appearing in their slots control realizations of the input. Consider the following logical form:</p><doubt alpha="55.3" length="47" tooSmall="False" monospace="0.0">[dog(d), plural(d), big(d), bark(e,d), loud(e)]</doubt><p>and the chart (forest) that would be constructed from it by the generation algorithm:</p><doubt alpha="50.0" length="6" tooSmall="False" monospace="0.0">&lt;S,e&gt;n</doubt><p>[iipiiqd</p><doubt alpha="41.4" length="29" tooSmall="False" monospace="0.0">&lt;S,e&gt;9&lt;S,e&gt;10[llp,10] [llPlH]</doubt><doubt alpha="32.2" length="59" tooSmall="False" monospace="0.0">&lt;Adj,d&gt; ! &lt;N,d&gt;2&lt;V,e&gt;5[00100] [11000] [00010] big dogs bark</doubt><p>Figure 2</p><p>In this drawing, the branches of the <b>OR</b>-nodes are labeled with propositional variables and below each edge is the array that indicates its coverage. For instance, node 2, which expresses "dogs," covers the first 2 facts, hence its array is [11000]; node 5 which expresses "bark" contributes the 4th fact [bark(e,d)] and accordingly, its array is [00010]. Nodes 4 and 11 are disjunctive with choices represented by the propo­sition variables pj 2 and qj 2 respectively. The NP of edge 4 can be realized as "dogs" if p2 is chosen or as "big dogs," if pj is chosen. This is reflected in the third slot of the array. It indicates that the third semantic fact is expressible in condition pj. Likewise, the top-most S (node 11) is disjunctive since there are two ways to form a sentence: either using the VP of node 6 or the one of node 8, which also expresses the fifth fact about the barking event being loud. This explains the reason that expression of the fact [loud(e)] is conditioned on the choice q2 (the 5th slot of the array in node 11). The two conditions taken together mean that a complete expression of the semantic input is conditioned on both p) and q2 being the choices in the relevant dis­junctions.</p><p>This example begins to show how the various com­ponents of the representation control the generation process. Before we continue with examples of more complex boolean conditions, we explain how the bool­ean arrays are constructed and what exactly is their logical interpretation.</p><subsection number="3.1" title="Construction of the Boolean Arrays"><p>In addition to the syntactic composition, the boolean arrays of the daughter constituents union to form the semantic array of the resulting mother constituent. Usually one daughter will have an array like [...ajO...], the other [...Oßj...] and their combination will yield <b>[...oCißj...]. </b>However, if both daughters express a partic­ular semantic item the boolean expressions of the cor­responding slots need to be disjoined (from the point of view of the mother they are alternative renditions). However, to avoid expressing the same facts more than once, a further constraint is required to guarantee that only one of the disjuncts eventually get chosen. This constraint is the negation of the conjunction of the two conditions. So, if we combine [...rx;0...] with [...ßjYj...] the result is [...(oCjlßpYj...] and the negative condition ~(Oj&amp;ßj) is added as a filter to the mother node. Whenever this node is traversed, the constraint needs to be honored. Note that the negative constraints are not composed into the boolean expressions. For a more elaborate explanation of this device, see Shem-tov (1996).</p><p>The meaning of combined conditions is the follow­ing. A disjunction indicates that there are multiple but mutually exclusive ways of expressing a certain semantic fact. In the array [...(oqlßj)...] the fact corre­sponding to the given slot can be rendered either by choosing the ith branch of the a disjunction or the <i>jth </i>branch of the ß disjunction. A conjunction defines a part of a certain path in the forest.<page local="4" global="922"/> It means that at two (or more) different nodes, only certain combinations of branches can be selected. In the array <b>[...(Oj&amp;ßj)...] </b>we get a situation where in one <b>OR</b>-node (the a dis­junction) we need to select the ith branch and in another (the <b>ß </b>disjunction) we need to choose the jth branch.</p><p>Another issue that is solved through the logical interpretation of the conditions is determining that the whole input is consumed. In parsing this is straightfor­ward: there has to be a top-node from string position <b><i>0 </i></b>to string position <i>n. </i>In the generation scheme devel­oped here, this is much more complicated. Facts can be expressed only under certain conditions and it needs to be verified that the conditions are honored in a mutu­ally consistent way. To determine whether all the semantic facts are expressed, the boolean conditions from all the slots in the array of the top node are con­joined and the result is checked for satisfiability. If the result is not satisfiable (no consistent assignment of truth values) or if it is not consistent with the negative constraints, then there is no path in the derivation graph that corresponds to an expression of all the facts. Admittedly, computing a satisfiable assignment to the various propositional variables can be hard (exponen­tial complexity in the general case), however certain computational properties which are likely to exist (independence between sets of variables) will tend to make the computation much more efficient.</p></subsection><subsection number="3.2" title="Paraphrases"><p>Just as a parsing chart excels in compact representa­tion of multiple interpretation of a single string, the generation chart is designed to represent multiple (string) realizations of the semantic interpretation and compute them at a minimal cost. As the following example demonstrates, the explicit encoding of condi­tions in which each fact is expressed provides a pow­erful way of controlling the realizations of the various paraphrases. It also provides a way for verifying that they do not overlap and express certain facts superflu­ously. Let us assume that the verbs "enter" and "rush" both decompose as movement verbs. The former would be represented as [move(e,agent), into(e,loc)] and the latter as [move(e,agent), quick(e)]. Also let us assume that the meaning of a PP headed by "into" is [into(e,loc)] and that [quick(e)] is also the semantics of the adverb "quickly." With that, consider the follow­ing logical form and the packed generation forest representing its vari­ous derivations (figure 3). The interesting action is in the fifth slot, [quick(e)] can be expressed by satisfying the condition qi&amp;pj &amp;r2 which means choosing the left</p><doubt alpha="57.1" length="49" tooSmall="False" monospace="0.0">[John(j), move(ej), into(e,r), room(r), quick(e)]</doubt><doubt alpha="28.6" length="7" tooSmall="False" monospace="0.0">&lt;S,e&gt;16</doubt><doubt alpha="57.1" length="14" tooSmall="False" monospace="0.0">[lllK^&amp;p^kfc)]</doubt><doubt alpha="12.5" length="16" tooSmall="False" monospace="0.0">&lt;S,e&gt; |4 [11111]</doubt><doubt alpha="25.0" length="4" tooSmall="False" monospace="0.0">&amp;r2)</doubt><doubt alpha="36.8" length="19" tooSmall="False" monospace="0.0">&lt;NP,j&gt;4[10000] John</doubt><doubt alpha="31.2" length="16" tooSmall="False" monospace="0.0">&lt;Vpp,e&gt;3[0100r2]</doubt><doubt alpha="44.4" length="45" tooSmall="False" monospace="0.0">&lt;Vpp,e&gt;i &lt;Vpp,e&gt;2[01000] [01001] moved rushed</doubt><doubt alpha="31.2" length="16" tooSmall="False" monospace="0.0">&lt;VP,e&gt;9[011 lr2]</doubt><doubt alpha="45.8" length="24" tooSmall="False" monospace="0.0">&lt;Adv,e&gt;12[00001] quickly</doubt><doubt alpha="50.0" length="14" tooSmall="False" monospace="0.0">&lt;VP,e&gt;10[OHIO]</doubt><doubt alpha="47.8" length="23" tooSmall="False" monospace="0.0">&lt;Vtr,e&gt;5[01100] entered</doubt><doubt alpha="21.4" length="14" tooSmall="False" monospace="0.0">&lt;PP,r&gt;8[00110]</doubt><doubt alpha="33.3" length="48" tooSmall="False" monospace="0.0">&lt;P,r&gt;6&lt;NP,r&gt;7[00100] [00010] into       the room</doubt><p>Figure 3 branches in nodes 16 and 11 and the right branch at node 3. This path corresponds to the sentence "John rushed into the room." Another expression can be obtained by choosing q2 at node 16; this leads to node 13 on whose right branch the adverb "quickly" expresses [quick(e)]. Now, this situation is interesting because this fact is already contained in one of the branches of node 11, as we have already seen. To avoid expressing it twice, a further negative constraint is placed on node 13 which requires pj&amp;r2 to be false. The constraint excludes the path that leads to a selec­tion of the verb "rush" but it allows a choice of p2, which means that "enter" can be used to yield "John entered the room quickly." It also allows a choice of the verb "move" since pj&amp;r; represents a valid path. This way the sentence "John moved into the room quickly" is realized.</p><p>This example demonstrates how multiple para­phrases are constructed out of a variety of lexical entries and syntactic constructions and how a record is kept relating the different phrases to the subsets of the semantic facts that they express. It shows that the gen­eration method is sensitive to the particular lexicaliza-tion patterns that languages use to encode divergent parts of the semantics.</p><doubt alpha="63.6" length="11" tooSmall="False" monospace="0.0">[llll(Pl&amp;r2</doubt><page local="5" global="923"/></subsection></section><section number="4" title="Generation from Ambiguous Semantics"><p>The logical encoding of the boolean conditions may seem complex and indeed simpler solutions have been proposed to encode the semantic coverage (in Kay's algorithm for instance). However, the aim of the gen­eration method we advocate here goes beyond rendi­tion of fully specified semantics.</p><p>One translation situation that the annotated chart approach can address very simply has to do with optional and defeasible specifications. In many situa­tions there may be certain specifications in the input (discourse consideration, indication of preferences, etc.) that may not be crucial to the adequacy of the resulting expressions. For instance, in translation one might prefer to maintain the source language subject as the target language subject but be willing to accept a translation which violates this if generation would otherwise fail. This can happen when the source expression is passive but the corresponding target lan­guage verb docs not passivize. Similarly, certain psy­chological verbs come in pairs ("fear/frighten", "like/ please" etc.) but not in all languages, therefore a spec­ification to express a particular argument as the dis­course topic might lead to a failure. For example, translating "John likes it" into Spanish most naturally comes out as "it pleases John." The idea is that in such cases the generator will attempt to find an expression that conveys (or honors) all the specifications, but if such an expression is not admitted by the grammar it would still produce a grammatical result covering the crucial parts of the input.</p><p>A more interesting problem that a chart with bool­ean conditions can address is how to use ambiguous semantics as an input to the generation process. Given that exhaustive disambiguation is not always possible, the idea is that the choice among the source language analyses will be delayed and the whole set of semantic interpretations will comprise the input to the genera­tion process. The motivation is to gain more informa­tion from the target language in order to improve the quality of the choice. The crucial advantage that the proposed generation method provides is that it enables considering all of the semantic interpretations "at once," avoiding the massive duplicated effort that would result from enumerating the logical forms and considering each one of them individually.</p><p>The next two simplified examples demonstrate how logical forms which contain disjunctions can be processed by the generator and how the rich logical annotations relate the various paraphrases to the alter­nations in the semantics. The first example demon­strates a disjunction resulting from a structural ambiguity. The expression "hydraulic oil filter" lends itself to two different bracketings, corresponding to "filter for hydraulic oil" and "hydraulic filter for oil." These two interpretations are given in the following disjunctive logical form:</p><p>[filtcr(f), oil(o), [hydraulic(o) <b>I </b>hydraulic(f) ) <b>I</b></p><p>Figure 4 shows the packed generation forest that encodes the two (incidentally identical) strings that express this piece of semantics.</p><doubt alpha="50.0" length="6" tooSmall="False" monospace="0.0">&lt;NP,f&gt;</doubt><doubt alpha="50.0" length="8" tooSmall="False" monospace="0.0">&lt;Adj,f&gt;7</doubt><doubt alpha="0.0" length="6" tooSmall="False" monospace="0.0">[0001]</doubt><p>hydraulic</p><doubt alpha="61.5" length="13" tooSmall="False" monospace="0.0">&lt;NP,t&gt;9[UplOl</doubt><doubt alpha="46.2" length="13" tooSmall="False" monospace="0.0">&lt;N',f&gt;6[HpiO]</doubt><doubt alpha="50.0" length="14" tooSmall="False" monospace="0.0">&lt;N',o&gt;4[OlpiO]</doubt><doubt alpha="50.0" length="2" tooSmall="False" monospace="0.0">P2</doubt><doubt alpha="33.3" length="6" tooSmall="False" monospace="0.0">&lt;N,f&gt;5</doubt><doubt alpha="0.0" length="6" tooSmall="False" monospace="0.0">[10001</doubt><doubt alpha="100.0" length="6" tooSmall="False" monospace="0.0">filter</doubt><doubt alpha="42.2" length="45" tooSmall="False" monospace="0.0">&lt;Adj,o&gt; I   &lt;N,o&gt;2[0010] [0100] hydraulic oil</doubt><p>Figure 4</p><p>The generation from a disjunctive input proceeds just as before, as if the disjunction is ignored and all the semantic facts are given equal status. Then, when the results of the generation are to be enumerated, the logical structure of the input reappears and affects the interpretation of the boolean array. In this example, we know that either the third fact or the fourth fact (but not both) can be expressed. Accordingly, we allow either the third or the fourth boolean condition to be satisfied. If we choose to satisfy the former, we let pj be true and q] be false. This forces a traversal of nodes 9 and 3 which amounts to generating from [filter(f), oil(o), hydraulic(o)]. If on the other we choose to express the other interpretation, we reverse the conditions. This requires a selection of the left branch in node 10 (qi) which means that [hydraulic(f)] gets expressed in node 7. At node 4 we refrain from expressing [hydraulic(o)] since we set P[ (the condition in the third slot) to false. This way we reconstruct the logical structure of the disjunctive logical form and select one interpretation at a time from the set of possible paraphrases.</p><p>The next example shows how an NP is generated from a specification that results from a lexical ambigu­ity. Let us consider the following logical form that could be produced from analyzing "little dog" in a language that interprets "little" as an ambiguous adjective denoting either smallness in size or youngness in age.<page local="6" global="924"/></p><doubt alpha="56.7" length="30" tooSmall="False" monospace="0.0">[dog(d), (small(d) I young(d)}</doubt><p>We assume that this semantics licenses "small dog," "young dog" and "puppy" (but not "young puppy" or "small puppy"). Figure 5 shows the generation forest that encodes these renditions of the input.</p><doubt alpha="42.9" length="7" tooSmall="False" monospace="0.0">&lt;NP,d&gt;8</doubt><doubt alpha="35.7" length="28" tooSmall="False" monospace="0.0">[l(r1&amp;p1)((r1&amp;p2)lq2)]rl^\r2</doubt><doubt alpha="42.9" length="7" tooSmall="False" monospace="0.0">&lt;NP,d&gt;7</doubt><doubt alpha="50.0" length="12" tooSmall="False" monospace="0.0">[ipi(P2iq2&gt;]</doubt><doubt alpha="50.0" length="8" tooSmall="False" monospace="0.0">&lt;Adj,d&gt;3</doubt><doubt alpha="46.7" length="15" tooSmall="False" monospace="0.0">[0piP2lPl/^\ P2</doubt><doubt alpha="25.0" length="12" tooSmall="False" monospace="0.0">&lt;N,d&gt;6[10q2]</doubt><doubt alpha="33.3" length="9" tooSmall="False" monospace="0.0">qi /^\&lt;i2</doubt><doubt alpha="20.0" length="60" tooSmall="False" monospace="0.0">&lt;Adj,d&gt; !  &lt;Adj,d&gt;2&lt;N,d&gt;4&lt;N,d&gt;5[010]       [001] [100] [101]</doubt><doubt alpha="52.9" length="34" tooSmall="False" monospace="0.0">small       young        dog puppy</doubt><p>Figure 5</p><p>Node 3 merges two different adjectives which are indexed on the same variable but express two different facts; Node 6 merges two nominal phrases with com­patible but not completely overlapping meanings. Now, if our goal is to enumerate the paraphrases cor­responding to the first interpretation, we satisfy the condition in the second slot [small(d)] and dissatisfy the condition in the third slot [young(d)]. As a result, we select the left branches of nodes 8 and 3 so as to sat­isfy rj&amp;pi. Note that at node 6 we can only choose the left branch because otherwise the condition of the third slot would also be satisfied, contrary to the mutually exclusive nature of the semantic alternation. When the goal is to generate the second interpretation, we reverse the conditions and try to satisfy (r,&amp;p2)lq2. If rl and p2 are set to true we get "young dog." If q2 is selected we choose the right branches of nodes 8 and 6 and get "puppy."</p><p>These two examples demonstrate how we manipu­late the boolean conditions of the semantic coverage arrays to allow generation from a disjunctive input and still gain the benefits of the chart generation algorithm.</p></section><section number="5" title="Future Work"><p>The method we propose in this paper can be deployed as an infrastructure for solving certain other problems in generation and translation. In future work (Shem-tov, 1996) we intend to use the ideas developed here to tackle the problem of ambiguity preserving translation. Our approach is to take a parsing chart as an input, read from it an ambiguous logical form encod­ing multiple source language interpretations and then use it to create a generation chart encoding multiple target language strings. A separate process will then search for strings that express more than one interpre­tation; If such strings are found, we say that the ambi­guity of the source language is preserved by the target language. We hope that by using this approach it will be possible to avoid certain types of disambiguations altogether.</p></section><section title="Acknowledgments"><p>I wish to thank Martin Kay, John Maxwell and Ronald Kaplan for their interest, comments and encourage­ment. I am also indebted to the anonymous reviewers of this paper.</p></section><references><p>Copestake, Ann; Flickinger, Dan; Malouf, Robert; Riehemann, Susanne and Sag, Ivan (1996). "Trans­lation Using Minimal Recursion Semantics." In <i>Proceedings, 6th International Conference on The­oretical and Methodological Issues in Machine Translation.</i></p><p>Dagan, Ido; Itai, Alon and Schwall, Ulrike (1991). 'Two languages are more informative than one." In <i>Proceedings, 29th annual meeting of the ACL. </i>130-137.</p><p>Davidson, David (1980) <i>Essays on Actions and Events. </i>Oxford: The Clarendon Press.</p><p>Kay, Martin (1996). "Chart Generation." In <i>Proceed­ings, 34th annual meeting of the ACL.</i></p><p>Knight, Kevin and Hatzivassiloglou, Vasileios (1995). "Two-Level, Many-Paths Generation." In <i>Pro­ceedings, 33rd annual meeting of the ACL. </i>252-260</p><p>Maxwell, John T. Ill and Kaplan, Ronald M. (1989). "A Method for Disjunctive Constraint Satisfac­tion". In <i>Current Issues in Parsing Technology, </i>edited by Masaru Tomita, 173-190. Kluwer.</p><p>Neumann, Günter (1994). <i>A Uniform Computational Model for Natural Language Parsing and Genera­tion. </i>Ph.D. Thesis, University of the Saarland.</p><p>Parsons, Terence (1990). <i>Events in the Semantics of English. </i>Cambridge, Mass.: MIT Press.</p><p>Shemtov, Hadar (1996). <i>Ambiguity Preserving Trans­lation. </i>Ph.D. Thesis (in preparation), Stanford Uni­versity.</p><p>Shieber, Stuart (1988). "A Uniform Architecture for Parsing and Generation." In <i>Proceedings, COLING-88. </i>614-619.</p></references></body></article>