File Information

File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/98/p98-2154_metho.xml

Size: 14,460 bytes

Last Modified: 2025-10-06 14:15:02

<?xml version="1.0" standalone="yes"?>
<Paper uid="P98-2154">
  <Title>Translating a Unification Grammar with Disjunctions into Logical Constraints</Title>
  <Section position="3" start_page="934" end_page="934" type="metho">
    <SectionTitle>
2 Unification Grammar Formalisms with
</SectionTitle>
    <Paragraph position="0"> Disjunctive Information The main difference between PATR and FF-DDM is that there can be only one definition for one macro in PATR while multiple definitions are possible in FF-DDM. These definitions are disjuncts. If the conditions in one of the definitions of a macro are satisfied, the condition the macro represents is satisfied. In FF-DDM, the grammar is described using four kinds of elements: type definitions, phrase structure rules, lexical entries, and macro definitions.</Paragraph>
    <Paragraph position="1"> Some examples are shown below. The first is an example of type definition.</Paragraph>
    <Paragraph position="2"> (1) (deftype sign pos agr subj) This means that there is a type named sign and the feature structures of type sign can have POS, AGR, and SUBJ features.</Paragraph>
    <Paragraph position="3"> This is an example of a phrase structure rule. (2) (defrule psrl (s -&gt; np vp)</Paragraph>
    <Paragraph position="5"> Here psrl is the name of this rule. Variable s denotes the feature structure of the mother node, and np and v-p are variables that denote the feature structures of the daughter nodes. Rule psrl denotes the relationship between three feature structures s, np, and v-p. The fourth argument is a set of path equations. The path equation &lt;s pos&gt; = sentence indicates that the POS feature value in the feature structure represented by the variable s is sentence. The path equation &lt;vp subj&gt; = &lt;np&gt; means the suaJ feature value ofvp is identical to the feature structure np. A path can be a list of pairs of labels and values, although we do not explain this in detail in this paper.</Paragraph>
    <Paragraph position="6"> Next we show an example of a lexical item.</Paragraph>
    <Paragraph position="8"> Here sign is the variable that represents the lexical feature structure for walk. The disjunctively defined macro (not3s &lt;sign agr&gt;) in the last line shows that the AGR feature value of sign must satisfy one of the definitions of not3 s.</Paragraph>
    <Paragraph position="9"> Examples of macro definitions, or definitions of no t 3 s, are shown below.</Paragraph>
    <Paragraph position="11"> If one of these is satisfied, the condition for macro not3 s is satisfied. Two definitions, (4) and (5) stand in a disjunction relation. 3</Paragraph>
  </Section>
  <Section position="4" start_page="934" end_page="935" type="metho">
    <SectionTitle>
3 Logical-Constraint-Based Grammar
</SectionTitle>
    <Paragraph position="0"/>
    <Section position="1" start_page="934" end_page="935" type="sub_section">
      <SectionTitle>
Representation
3.1 Logical Constraint Representation of
Disjunctive Feature Structures
</SectionTitle>
      <Paragraph position="0"> We will first define logical constraints. A logical constraint (constraint for short) is a set of positive literals of first-order logic. Each positive literal that is an element of a constraint is called a constraint element.</Paragraph>
      <Paragraph position="1"> An example of a constraint is (6). Constraint elements are written in the DEC-10 Prolog notation. The names  of variables start with capital letters.</Paragraph>
      <Paragraph position="2"> (6) {p(X), q(X, f(r))} A definition clause of a predicate is a Horn clause having that predicate as the predicate of its head. For example, (7) is a definition clause ofp. 4 (7) p(f(X, Y)) ,--{r(X), s(Y)}  The bodies of definition clauses can be considered as constraints, that is, bodies can be considered to constrain the variables in the head. For example, definition clause (7) means that, for a pair of the variables X and Y, p(f(X, Y)) is true if the instances satisfy the constraint {r(X), s(Y)}. We omit the body when it is empty. The set of definition clauses registered in the system is called a database.</Paragraph>
      <Paragraph position="3"> Feature structures that do not include any disjunctions can be represented by first-order terms. For example, (8) is described by (9).</Paragraph>
      <Paragraph position="4"> POS v \] (8) sign AGRsuBJ signagr \[ PER 3rd sing \] \[ agr 3rd J  (9) sign(v, agr( sing, 3rd), sign(_, agr( sing, 3rd), _)) Feature structure (8) is a O'ped feature structure used in typed unification grammars (Emele and Zajac, 1990). The set of features that a feature structure can have is specified according to types. In this paper, we do not consider type hierarchies. Symbol &amp;quot;_&amp;quot; in (9) is an anonymous variable. The arguments of function symbol sign correspond to POS feature, AGR feature, and SUBJ feature values.</Paragraph>
      <Paragraph position="5"> Disjunctions are represented by the bodies of definition clauses. A constraint element in a body whose predicate has multiple definition clauses represents a disjunction. For example, in our framework a disjunctive feature descri ~tlon (10) 5 is represented by (11).</Paragraph>
      <Paragraph position="6">  POS v list &amp;quot;\[ sign AGR *1 agr PER \[2ndJ (10) l agr \[NUM plural\] suB, sign \[ AO, *1 \] POS n \] sign AGR agr\[ NUMPER 3rdSing\] (11) pCsign(v, Agr, sign(_, Agr,_)))</Paragraph>
      <Paragraph position="8"> Literal p(X) means that variable X is a candidate for the disjunctive feature structure (DFS) specified by predicate p. The constraint element lst_or_2nd(Per) in (11) constrains variable Per to be either 1st or 2nd. In a similar way, not_3s(Agr) means that Agr is a term having the form agr(Num, Per), and that either Num is sing and Per is subject to 1 st_or_2nd(Per) or that Num is plural. As this example shows, constraint elements in bodies represent disjunctions and each definition clause of their predicates represents a disjunct.</Paragraph>
    </Section>
    <Section position="2" start_page="935" end_page="935" type="sub_section">
      <SectionTitle>
3.2 Unification by Logical Constraint
Transformation
</SectionTitle>
      <Paragraph position="0"> Unification of DFSs corresponds to logical constraint satisfaction. For example, the unification of DFSs p(X) and q(Y) is equivalent to obtaining all instances of X that satisfy {p(X), q(X)}.</Paragraph>
      <Paragraph position="1"> In order to be able to use the result of one unification in another unification, it would be useful to output results in the form of constraints. Such a method of satisfaction is called constraint transformation (Hasida, 1986). Constraint transformation returns a constraint equivalent to the input when it is satisfiable, but it fails otherwise.</Paragraph>
    </Section>
  </Section>
  <Section position="5" start_page="935" end_page="935" type="metho">
    <SectionTitle>
5 Braces represent disjunctions.
</SectionTitle>
    <Paragraph position="0"> The efficiency of another unification using the resulting constraint depends on which form of constraint the transformation process has returned. Obtaining compact constraints corresponds to avoiding unnecessary expansions of disjunctions in graph unification (Kasper, 1987; Eisele and DSrre, 1988). Some constraint transformation methods whose resulting constraints are compact have been proposed (Hasida, 1986; Nakano, 1991). By using these algorithms, we can efficiently analyze using LCGR.</Paragraph>
    <Section position="1" start_page="935" end_page="935" type="sub_section">
      <SectionTitle>
3.3 Grammar Representation
</SectionTitle>
      <Paragraph position="0"> LCGR consists of a set of phrase structure rules, a set of lexical items, and a database.</Paragraph>
      <Paragraph position="1"> Each phrase structure role is a triplate ( V --, ~, C /, where V is a variable, ~ is a list of variables, and C is a constraint on V and variables in ~. This means if instances of the variables satisfy constraint C, they form the syntactic structure permitted by this rule. For example, ( X --~ Y Z, {psrl(X,Y,Z)} ) means if there is a set of instances x, y, and z of X, Y, and Z that satisfies {psrl(X, Y, Z)}, the sequence of a phrase having feature structure y and that having feature structure z can be recognized as a phrase having feature structure x.</Paragraph>
      <Paragraph position="2"> Each lexical item is a pair (w,p), where w is a word and p is a predicate. This means an instance of X that satisfies {p(X)} can be a lexical feature structure for word w. For example, (walk, lex_walk I means instances of X that satisfy {lex_walk(X)} are lexical feature structures for walk.</Paragraph>
      <Paragraph position="3"> The database is a set of definite clauses. Predicates used in the constraints and predicates that appear in the bodies of the definite clauses in the database should have their definition clauses in the database.</Paragraph>
    </Section>
  </Section>
  <Section position="6" start_page="935" end_page="936" type="metho">
    <SectionTitle>
4 Translation Algorithm
</SectionTitle>
    <Paragraph position="0"> LCGR representation is generated from the grammar in the FF-DDM formalism as follows. (i) Predicates that represent feature values are generated from type definitions. (ii) Phrase structure rules, lexical items, and macro definitions are translated into LCGR elements.</Paragraph>
    <Paragraph position="1"> (iii) Redundancies are removed from definite clauses by reduction. Below we explain the algorithm through examples.</Paragraph>
    <Paragraph position="2"> Creating predicates that represent feature values Let us consider the following type definition.</Paragraph>
    <Paragraph position="3"> (12) (deftype sign pos agr subj) Then a feature structure of the type sign is represented by three-argument term sign(_, _, _), and its arguments represent Pos, AGR, and SUBJ features. By using this, the following three definite clauses are created and added to the database.</Paragraph>
    <Paragraph position="5"> Translation of phrase structure rules, lexical items, and macro definitions Each of the phrase structure rules, lexical items, and macro definitions is translated into a definite clause and added to the database. This is done as follows.</Paragraph>
    <Paragraph position="6"> (I) Create a literal to be the head. In the case of a phrase structure rule and a lexical item, let a newly created symbol be the predicate and all the variables in the third element be the arguments.</Paragraph>
    <Paragraph position="7"> With macro definition, let the macro name be the predicate and all the variables in the third element be the arguments.</Paragraph>
    <Paragraph position="8"> (II) Compute the body by using path equations and disjunctively defined macros, and add the created Horn clause to the database.</Paragraph>
    <Paragraph position="9"> By using the predicates created at the step (I), phrase structure rules and lexical items in LCGR are created.</Paragraph>
    <Paragraph position="10"> For example, let us consider the following lexical item for verb walk.</Paragraph>
    <Paragraph position="12"> First at the step (I), a new predicate cO and LCGR variable Sign that corresponds to sign are created, cO(Sign) being the head. At the step (II), &lt;sign pos&gt; in the second line is replaced by the variable X1 and pos(Sign, X1 ) is added to the body. The symbol verb is replaced by the LCGR constant verb.</Paragraph>
    <Paragraph position="13"> Then eq(X l, verb) is added to the body, where eq is a predicate that represents the identity relation and that has the following definition clause.</Paragraph>
    <Paragraph position="14"> eq(X, X) ~--As for the third line, the path &lt;sign agr&gt; at the left-hand side is replaced by X2, &lt;sign subj agr&gt; at the right-hand side is replaced by X4, and {agr(Sign, X2), subj(Sign, X3), agr(X3, X4)} is added to the body. Then eq(X2, X4) is added to the body. For macro (not3s &lt;sign agr&gt;), &lt;sign agr&gt; is replaced by X5, and agr(Sign, X5) and not3s(X5) are added to the body. Then (15) is added to the database.</Paragraph>
    <Paragraph position="15"> (15) c0(Sign) *-- { pos( Sign, X 1), eq( X 1, verb), agr(Sign, X2), subj(Sign, X3), agr(X3, X4), eq(X2, X4), agr(Sign, X5), not3s(X5)} Finally, (walk, cO) is registered as a lexical item. Phrase structure rules and macro definitions are translated in the (III) same way. Horn clause (16) is generated from (2), and ( S ~ NP VP, {el(S, NP, VP)} ) is registered.</Paragraph>
    <Paragraph position="16"> (16) el(S, NP, VP) (---{ pos(S, X1), eq(Xl, sentence), pos(NP, X2), eq(X2, noun), pos(VP, X3), eq(X3, verb), subj(VP, X4), eq(X4, NP), agr(NP, X5), agr(VP, X6), eq(X5, X6), agr(S, X7), agr(VP, X8), eq(X7, X8)} In the same way, Horn clauses (17) are generated from  the macro definitions (4) and (5).</Paragraph>
    <Paragraph position="17"> (17) not3s( A gr ) *--{num( Agr, X 1), eq( X l, sing), per( Agr, X2), l st_or_2nd( X 2 ) } not3s( Agr ) ~{num( Agr, X 1), eq( X 1, plural)}  In the above translation process, ifa macro m has multiple definitions, predicate m' also has multiple definitions. This means disjunctions are not expanded during this process.</Paragraph>
    <Paragraph position="18"> Removing Redundancy by Reduction In the definition clauses created by the above proposed method, many predicates that have only one definition clause are used, such as predicate eq, predicates representing feature values, and predicates representing macro that have only one definition. We call these predicates definite predicates. If these definition clauses are used in analysis as they are, it will be inefficient because the definition clause of definite predicates must be investigated every time these clauses are used.</Paragraph>
    <Paragraph position="19"> Therefore, by using the procedure reduce (Tsuda, 1994) each literal whose predicate is definite in the body is replaced by the body of its definition clause. Let us consider (18) below as an example. If the sole definition clause of c2 is (19), c2(X, Y) in (18) is unified with the head of (19). Then, (18) is transformed into (20).</Paragraph>
    <Paragraph position="20">  (18) cl(f(X), Y) ,--{eZ(X, Y)} (19) c2(g(A, B), Y) *-{c3(A), c4(B)} (20) cl(f(g(A, B)), Y) ~--{c3(A), c4(B)}  By using this operation, Horn clause (15) above is transformed into the following one.</Paragraph>
    <Paragraph position="22"> Since not3s has two definitions, not3s(X6) is not replaced. Consequently, the disjunction denoted by not3s is not expanded in this translation.</Paragraph>
  </Section>
class="xml-element"></Paper>
Download Original XML