File Information

File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/90/w90-0107_metho.xml

Size: 11,201 bytes

Last Modified: 2025-10-06 14:12:39

<?xml version="1.0" standalone="yes"?>
<Paper uid="W90-0107">
  <Title>Using Bidirectional Semantic Rules for Generation</Title>
  <Section position="2" start_page="48" end_page="48" type="metho">
    <SectionTitle>
ISA Computer)(Z Equals Lisp)(W CanRunLanguage
</SectionTitle>
    <Paragraph position="0"> Z), distinguished variable W, and syntax NP. There is no lexical item covering all these assertions, or any lexical functor covering part of them (i.e., &amp;quot;Lisp&amp;quot; is not in the lexicon as an adjective.) Thus, even in best-first mode, we will end up applying the Software-Machine rule to this goal, resulting in the decomposition shown in Figure 2.</Paragraph>
    <Paragraph position="2"> isfy the other. Combining the sub-goal solutions yields &amp;quot;Lisp machine&amp;quot; as a solution to the original goal.</Paragraph>
    <Paragraph position="3"> Multiple compounds are handled by repeated invocations of the rules. Suppose we have a Mechanism-Maintenance rule, stating that if &amp;quot;x&amp;quot; denotes a Machine and &amp;quot;y&amp;quot; denotes any kind of MaintenanceOperalion, &amp;quot;x y&amp;quot; denotes a MaintenanceOperation y with y Maintains x. Given input semantics (Y ISA Repair-</Paragraph>
  </Section>
  <Section position="3" start_page="48" end_page="51" type="metho">
    <SectionTitle>
Operation)(Y Maintains X)(X ISA Computer)(X Can-
</SectionTitle>
    <Paragraph position="0"> RunLanguage Z)(Z Equals Lisp), with distinguished referent Y, the maintenance rule will eventually fire, generating patterns for a head (Y ISA RepairOperation) and a modifier (X ISA Computer)(X CanRunLanguage Z)(Z Equals Lisp). The head's goal will be satisfied by the entry for &amp;quot;repair&amp;quot;, but processing of the modifier will invoke the Software-Machine rule, just as in the example above. The output will be &amp;quot;Lisp machine repair&amp;quot;, with the left-branching structure \[\[Lisp machine\] repair\].</Paragraph>
    <Paragraph position="1"> For an example of a right-branching compound, suppose we have a Product-Manufacturer rule stating that if &amp;quot;x&amp;quot; is the name of a Product and &amp;quot;y&amp;quot; is the name of a Company, then &amp;quot;a y x&amp;quot; is a Product x that is  Recursing on the sub-goals, the lexical item &amp;quot;Lisp&amp;quot; will satisfy the left sub-goal, and &amp;quot;machine&amp;quot; will sat-Suppose we have an Artist rule licensing the use of an artist's name to refer to his works, and are trying to generate an NP with semantics (X ISA Book)(X HasCrealor JamesJoyce). If we are in all-paths mode, or if the strategic component has requested a succinct  rule, we need to compute the inverse of the relation. 4 To do this we reverse the order of the statements and replace each Bind statement (which computes a relation between variable bindings) with its inverse. Here we rely on the fact that the CYC KB automatically maintains inverses for all relations defined in it (for KBs without this feature, we would have to define inverses for all relations used in rules). If CreatorOffis the inverse of HasGreator, then the inverse of (Bind Z (X CreatorOf)) is simply (Bind X (Z HasCreator)).</Paragraph>
    <Paragraph position="2"> A few more details are necessary to complete the implementation. First, we define tlie relation Instances, which maps from classes to their elements, as the inverse of ISA. Next we define a concatenation operator + on relations, so that (Z (Instances + ttasGreator)) returns all the creators of instances of the class Z. 5 Next, we stipulate that if the variable X is already bound,</Paragraph>
    <Paragraph position="4"> for reasons of efficiency, we cache separate patterns for backward and forward application, instead of reversing the expressions at run time. The generation and understanding patterns for the Artist rule are given below:  W, Z to Book and Y to JamesJoyce. The Bind expression serves as a filter in this case, checking that Y is in fact the CrealorOfsome instance of Z, the Filter expression checks that Y is a Person, and the output is (X Equals JamesJoyce), which will match the lexical semantics for &amp;quot;Joyce&amp;quot; permitting us to use that NP to refer to the book. Running the rule forward on (X Equals JamesJoyce), Yis bound to JamesJoyce, the Filter expression again checks that Yis a Person, and the Bind expression binds Z to all the classes of objects Yis the CreatorOf(in this case, the class Book). The output is an expression denoting any Book which HasCreator JamesJoyce, thus letting us understand &amp;quot;Joyce&amp;quot; as referring to a Book.</Paragraph>
    <Paragraph position="5"> The rule format is similar for noun compounds, except that there are two input patterns (in the forward direction) and a single output pattern. During understanding, the two patterns are unified with the inter4Mathematically, a relation is a set of ordered pairs, and its inverse is the set of inverted pairs. Any relation is therefore guaranteed to have a unique inverse.</Paragraph>
    <Paragraph position="6"> 5The inverse of (rl + r2) is ((inverse r2) + (inverse rl)). pretations of the head and modifier nouns, the Filters and Binds work as before, and the output pattern is the interpretation of the compound. Backward application is as before, except that the output is a pair of instantiated patterns which the generation routine then uses as new goals.</Paragraph>
    <Section position="1" start_page="49" end_page="51" type="sub_section">
      <SectionTitle>
Related Work
</SectionTitle>
      <Paragraph position="0"> A variety of systems have used rules of the kind we are considering, either explicitly or implicitly, for use in understanding compounds, vague expressions, and metonymy, for example, \[DaM et at. 87\], \[Hobbs et al. 88\], \[Grosz et at. 85\], \[Stallard 87\], but no mention is made of reversing these rules for generation. null A number of systems generate compounds, but most apparently do so using either phrasal lexicons (e.g., \[Hovy 88\], \[Jacobs 88b\], \[Wilensky 88\]), or multiple lexical senses (e.g., \[Pustejovsky et at. 87\], \[Nirenburg et al. 88\]), rather than rules of the sort we propose. Other generation systems apparently construct noun compounds via specialized (uni-directional) strategies specified in the interface to the tactical component \[McDonald et at. 88\], or a combination of these techniques \[McKeown 82\]. We have been unable to find discussions of generation of metonymy, though at least some cases of it could obviously be handled via lexical ambiguity.</Paragraph>
      <Paragraph position="1">  The use of semantic rules seems to us to handle most of the technical problems in providing an economical, bi-directional treatment of a variety of non-literal and/or vague constructions. At the heart of any reversible system is the notion of being able to run mappings forwards or backwards, so that, for example, the understanding and generation lexicons are inverses of each other. These rules are a natural extension of this mechanism to more complex constructions. Furthermore, these rules can handle a wide variety of phenomena. In addition to the examples discussed above, we have used semantic rules for the lexical semantics of vague words like &amp;quot;have&amp;quot; and &amp;quot;of&amp;quot;, which are like noun compounding and metonymy in that the only alternative to massive lexical ambiguity is to compute the nature of the relation based on the interpretation of the arguments. This use of semantic rules for lexical semantics amounts to permitting a lexical item to further decompose its subgoal, instead of satisfying it immediately in the manner of Figure 1. Finally, these rules do not commit us to any particular analysis of the constructions in question (except insofar as they assume separate levels of syntactic and semantic representation.) To take noun compounding as an example, we can implement a wide variety of theories of the kinds of relations compounds express and of the hierarchies among them.</Paragraph>
      <Paragraph position="2">  The main open issue is the development of strategies for the use of these expressions. The problem is most acute in the case of metonymy. At present, the strategic component can force the use of metonymous expressions by requiring brevity. However, use of metonymy is not just a matter of succinctness since it also tends to indicate informality and familiarity. In more extreme uses, it may have a poetic or humorous force.</Paragraph>
      <Paragraph position="3"> To use metonymy, compounds, or other vague expressions successfully, we need a theory of how they effect the discourse, as well as a strategic component which is sophisticated enough to exploit the theory. As a first step in this direction, we are implementing a discourse module which will allow us to address some of these issues. For example, metonymous expressions are safer when used to refer to classes of objects that have already been described than when used to introduce new ones. If &amp;quot;an Orris fishing rod&amp;quot; has already been mentioned, then &amp;quot;an Orris&amp;quot; is likely to make sense, even to people who wouldn't have understood it the first time around. However, such individual heuristics will be of limited usefulness until they are integrated into a comprehensive model of communication.</Paragraph>
    </Section>
  </Section>
  <Section position="4" start_page="51" end_page="51" type="metho">
    <SectionTitle>
Acknowledgments
</SectionTitle>
    <Paragraph position="0"> We are grateful to Elaine Rich for comments on an earlier draft of this paper.</Paragraph>
    <Paragraph position="1"> Appendix: Generation Algorithm The psuedocode for the generation algorithm is shown below, identifying the point of departure from the \[Calder at al. 89\] algorithm. The lexical lookup-step of line 1 is replaced with the more general top-down step of line la, by calling the new function ge,erafe-tp-dn. The rest of the (pseudo)code remains unchanged.</Paragraph>
    <Paragraph position="2"> Here are the language constructs used in the pseudocode. We denote local variable assignment as X := Y, with scope extending to the immediate containing construct. Destructuring by pattern matching is allowed, e.g. &lt; X1 X2 X3 &gt;:= Y simultaneously binds X1, X2 and X3 to the corresponding components in Y.</Paragraph>
    <Paragraph position="3"> AND and OR have exactly the behavior of Common Lisp AND and OR.</Paragraph>
    <Paragraph position="4"> For the sake of conciseness,the function choose is used as a shorthand for control strategies: in all-paths mode, it finds all solutions; in best-first mode it imposes a heuristic ordering on the choices and finds a single solution, finding any subsequent solutions on backtracking. The function choose-tp-dn-operatio, heuristically picks the best operation based on the goal. The functions match and satisfy are as defined earlier. The functions apply-unavy-bup-rule and apply-bi.avy-buprule constitute the rule application interface to grammar rules; similarly, the functions apply-uuary-tp-dnrule and apply-binary-tp-d.-rule constitute the rule application interface for the semantic rules.</Paragraph>
  </Section>
class="xml-element"></Paper>
Download Original XML