File Information

File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/96/w96-0413_metho.xml

Size: 17,052 bytes

Last Modified: 2025-10-06 14:14:26

<?xml version="1.0" standalone="yes"?>
<Paper uid="W96-0413">
  <Title>An Algorithm for Generating Quantifiers</Title>
  <Section position="2" start_page="123" end_page="129" type="metho">
    <SectionTitle>
9 a R&gt;S,R&gt;C
b S&gt;R&gt;C
c C&gt;R&gt;S
d S&gt;R,C&gt;R
</SectionTitle>
    <Paragraph position="0"> It is clear from (8) and (9) that this framework undergenerates in comparison with Hobbs and Shieber's. However, in the context of language generation, undergeneration is not necessarily a serious problem, provided that there is the ability to adequately describe any model. In fact there is an argument to be made in favour ofa scoping framework which undergenerates with respect to Hobbs and Shieber's as a general approach to quantifier scoping (Park 1995). This is the subject of a future paper.</Paragraph>
    <Paragraph position="1"> Dependency functions, partitions and focus sets Each variable in a PAS has a candidate set which is defined by its restriction and the model under consideration.</Paragraph>
    <Paragraph position="2"> Definition 1: candidate set A variables candidate set is the set of individuals from the model which satisfy the variables restriction.</Paragraph>
    <Paragraph position="3"> For the PAS: saw(every(R,rep(R)), a(S,sample(S)) ) and model (1), R's candidate set is {rl,r2,r3,r4} and S's is {sl,s2,s3}.</Paragraph>
    <Paragraph position="4"> When we say that &amp;quot;Every representative&amp;quot; has wide scope we are saying that there is a function which maps R's candidate set onto the power set of S's candidate set. This  dependencyffunction is computed from model (1) and is exhaustively listed in (lO) below.</Paragraph>
    <Paragraph position="6"> Alternatively, ifS is given wide scope the following dependency function is computed.</Paragraph>
    <Paragraph position="8"> Focus sets were discussed briefly above and are made more precise now in the context of dependency function partitions.</Paragraph>
    <Paragraph position="9"> Any dependency function can be partitioned by choosing a arbitrary subset of the mappings it contains as its focus, the remainder being its complement. Of course, the domains and ranges of these sub-functions are appropriately adjusted.</Paragraph>
    <Paragraph position="10"> The partitions (12a-c) are among the possible partitions of dependency function ( I 0).</Paragraph>
    <Paragraph position="12"> The mapping from partitioned dependency f,mction to quantifiers is non-deterministic as (13) shows. For instance, partition (12b) gives, at least, the three sentences (13bi,ii,iii).  compt: saw: {rl} ~ power({sl}) rl -~ {sl} Definition 2: focus set  The focus set for a variable, given a particular partition is either: o the domain of the partition's focus o the union of the range of the partition's focus depending on the variable of interest. Not all sentences provide equally good descriptions of the model but they are all true in it. For example, (13ai) is true in (1), assuming &amp;quot;a&amp;quot; means at least one, but is not very informative. Bigger focus sets tend to give more information and sound more natural however the generation algorithm is concerned only with presenting alternatives and not with selecting between them.</Paragraph>
    <Paragraph position="13"> For example, (12a-c) define the following candidate sets for R and S.</Paragraph>
    <Paragraph position="15"> It is useful to note that a variable's candidate set is related to an unpartititioned dependency function in exactly the same way that its focus set is related to the focus of the partitioned function. These relationships are illustrated in appendix 1.</Paragraph>
    <Paragraph position="16"> Individual quantifiers are selected for generation on the basis of dependency function partitions. For example, the descriptions (13a-c) are licensed by the partitions (12a-c) respectively.</Paragraph>
    <Paragraph position="17">  The process of generating quantifiers takes place after a scoping has been chosen and a dependency function has been constructed and partitioned, so that all decisions are made in the context of a particular partitioning of a particular dependency function.</Paragraph>
    <Paragraph position="18"> Generation consists of going through the list of all possible quantifiers and checking whether or not each one is consistent with the appropriate variable in the current dependency function partition. Those which are consistent are then generated and those which are inconsistent are rejected. To check the consistency of a particular quantifier with a particular variable it is first necessary to compute the variable's candidate set, focus set, and focus maximum and focus minimum.</Paragraph>
    <Paragraph position="19"> Definition 3: Focus maximum and minimum For a variable with wide scope the focus maximum (Fmax) and focus minimum (Fmin) are the same. They are simply the size of the focus set or, equivalently, the number of mappings in the focus of the dependency function.</Paragraph>
    <Paragraph position="20"> e.g. R in (12a): Fmax=Fmin= I{rl}l = 1 R in (12c): Fmax=Fmin= I {r2,r3,r4} I = 3 For a variable with narrow scope the focus maximum (Fmax) is equal to the size of the  biggest member of the range of the focus of the dependency function.</Paragraph>
    <Paragraph position="22"> The focus minimum is defined along the same lines as he focus maximum except that the minimum set size is taken.</Paragraph>
    <Paragraph position="24"> The checking procedure varies according to the type of quantifier under consideration where quantifiers are classified as one of three types monotone increasing, monotone decreasing or cardinal (Barwise and Cooper 1981).</Paragraph>
    <Paragraph position="25"> o Monotone increasing quantifiers are those with an at least N interpretation. They include; a, some_sing, some_plur, the, both, many, at least four o Monotone decreasing quantifiers are ones with an at most N interpretation. They include; no, few, at most three, less than three quarters o Cardinal quantifiers are of the form exactly N ?- q_inc( 1, 4, QR ).</Paragraph>
    <Paragraph position="26"> which returns the following quantifiers: a, some_sing, at least one. Similarly, for 9 in (12a) the appropriate call is: ?- q_inc( 1, 3, QS ).</Paragraph>
    <Paragraph position="27"> which returns the same set ofquantifiers. Hence sentence (13ai) is generated, as is: Some representatives saw _a sample At least one representative saw a sample A representative saw some samples and other similar sentences formed by selecting from the above quantifiers.</Paragraph>
    <Paragraph position="28"> The check for monotone increasing quantifiers is simplest. The acceptability of each quantifier is as defined by a call to the following Prolog goal: ?- q_inc( Fmin, Nc, QUANT ).</Paragraph>
    <Paragraph position="29"> For a monotone decreasing quantifier the check depends on whether it is in wide scope position or narrow scope position. In narrow scope position the check is similar to the one for monotone increasing quantifiers except that: where; Fmin = the focus minimum, Nc = I candidate set\], and the q_inc/3 relation is defined along the following lines.</Paragraph>
    <Paragraph position="30">  o a different collection of quantifiers is checked - the monotone decreasing ones o the focus maximum is input rather than the focus minimum.</Paragraph>
    <Paragraph position="31"> ?- q_dec( Fmax, Nc, QUANT ).</Paragraph>
    <Paragraph position="32"> where; Fmax = the focus maximum, Nc = I candidate set\[, and the q_dec/3 relation is defined along the following lines.</Paragraph>
    <Paragraph position="33">  q_dec( 0, _, \[no\] ).</Paragraph>
    <Paragraph position="34"> q_dec( 2, _, \[at, most, two\] ).</Paragraph>
    <Paragraph position="35"> q_dec( N, M, \[few\] ) :- M &lt; 2*N.</Paragraph>
    <Paragraph position="36"> q_dec( 0, 2, \[neither\] ).</Paragraph>
    <Paragraph position="37">  The check for monotone decreasing quantifiers in wide scope position is a little bit trickier. For example, to check the consistency of the quantifier at most two in &amp;quot;At most two representatives saw a sample&amp;quot;, assuming R &gt; S, the following checks need to be made.</Paragraph>
    <Paragraph position="38"> O There must be a set of at most two of R's who may or may not have seen a sample. This entails checking that R's focus set contains exactly two members.</Paragraph>
    <Paragraph position="39"> All other R's outside this set must certainly not have seen a sample. This entails checking the complement of the dependency function to make sure that the quantifier a fails to be consistent with the variable S.</Paragraph>
    <Paragraph position="40"> These checks are carried by calls to q_dec/3 an q_inc/3 with appropriate input values. The check for cardinal quantifiers is defined in terms of two sub checks: one for a monotone increasing quantifier and one for a monotone decreasing. This follows from the observation that exactly N meant the same as (at least N)A(at most N).</Paragraph>
    <Paragraph position="41"> Embedded quantifiers The preceding discussion concentrated on simp!e linguistic structures like (2-7) which contain one main verb and noun phrases with no recursive structure. The processing of a more complex structure like:</Paragraph>
    <Paragraph position="43"> is done by breaking it down into sub-structures (17) which are processed almost independently.</Paragraph>
    <Paragraph position="44"> 17 a saw( QR(R .... ), Qs(S, sample(S))) b of( QR,(R, rep(R)), Qc(C, com(C)) ) The variable R is assigned the quantifier OR in (1 7a) and the quantifier OR, in ( 1 7b) but clearly only one of these will ultimately be generated and some special treatment is required. Thes are called R's outer and inner quantifiers respectively. PAS (17b) is processed first. A scoping is chosen for R and C and a dependency function is constructed in the normal way but when it comes to partitioning the function and generating a quantifier for C some care must be taken.</Paragraph>
    <Paragraph position="45"> Some choices of partition and quantifier must be excluded. What is required is that the resulting focus set for R is the set of all representatives who satisfy restriction (17b) under the chosen partition and quantifier.</Paragraph>
    <Paragraph position="46"> Consider the following dependency function and associated partition.</Paragraph>
    <Paragraph position="48"> Based on the focus in (18b) the quantifier exactly one might be generated for C. The corresponding candidate set for R is {rl,r2} but this is not the set of all representatives who satisfy the restriction since r3 also satisfies it. It is to avoid this anomaly that the following constraint on the acceptability of dependency function partitions in this context.</Paragraph>
    <Paragraph position="49">  19 If variable R is in wide scope position in (17b) then QR' must be of the form exactly  N but is not generated in the final output. Constraint (19) restricts the range of acceptable partitions by restricting the range of acceptable inner quantifiers for R. It also specifies R's outer quantifier as the one which is to be finally generated. It guarantees that R's focus set is maximal in the sense that it contains all possible R's which satisfy the restriction and avoids the above anomoly by failing to allow partition (18b). A parallel but different constraint is applied whenever R is in narrow scope position.</Paragraph>
    <Paragraph position="50"> 20 If variable R is in narrow scope position in (17b) then QR must be the quantifier V but is not generated in the final output.</Paragraph>
    <Paragraph position="51"> The algorithm The overall strategy is to process a PAS recursively, assigning quantifiers to the most deeply nested structures first. As a variable's restriction is processed the resulting focus set is passed back up to act as the candidate set for the same variable in the embedding structure. An inner quantifier is also returned together with a flag which indicates scoping choices within the restriction. The algorithm is as follows, where the choose construct indicates non-determinism.</Paragraph>
    <Paragraph position="52">  % is given wide scope within restriction, % '&lt;' if it has narrow scope or 'nil' if there % are no other variables within the rest'n choose a scoping for X and Y; construct the dependency function; choose a partition; choose outer quantifiers Qx&amp;quot; and Qy&amp;quot;;  % must be consistent with consts. 19&amp;20 if ScpX = &gt; or ScpX = nil then Qx := Qx&amp;quot; else Qx := Qx'; if ScpY = &gt; or ScpX = nil then Qy := Qy&amp;quot; else Qy := Qy'; end process_PAS; to process_RES RX % X is head of phrase % this procedure returns: Xs, Qx &amp; ScpX case 1: RX = p(Qx(X,RX),Qy(Y,RY)) % i.e. RX contains an embedded NP process_RES RY; % returns Ys Qy' ScpY</Paragraph>
    <Paragraph position="54"> choose a scoping for X and Y; % and so assign a value to ScpX construct a dependency function; choose a partition; choose quantifiers Qx and Qy&amp;quot;; % must be consistent with constraints</Paragraph>
    <Paragraph position="56"> An example Consider the following model: rep( rl ). of( rl, cl ). saw( rl, sl ). rep( r2 ). of( r2, c2 ). saw( rl, s2 ). rep( r3 ). saw( r2, sl ).</Paragraph>
    <Paragraph position="57"> rep( r4 ). samp( sl ). saw( r2, s2 ). samp( s2 ). saw( r3, sl ).</Paragraph>
    <Paragraph position="58"> corn( cl ). saw( r4, s2 ).</Paragraph>
    <Paragraph position="59"> corn( c2 ).</Paragraph>
    <Paragraph position="60"> and the target PAS (16). According to process_PAS the following restrictions must be processed first.</Paragraph>
    <Paragraph position="62"> The following partition is chosen.</Paragraph>
    <Paragraph position="64"> The quantifier a is chosen for C and the candidate set {rl ,r22} is returned.</Paragraph>
    <Paragraph position="65"> Processing (22b) is straightforward and consists of returning the value {sl,s2}, the set of all samples. Now both restrictions have been processed and PAS (16) is processed with the candidate sets {rl ,r2} and {sa ,s2}. candidate set R = { rl, r2 } candidate set S = { sl, s2 } choose scoping R &gt; S The following dependency function is constructed.</Paragraph>
    <Paragraph position="67"> and the following partition is chosen.</Paragraph>
    <Paragraph position="68"> 26 focus: saw: {rl,r2} ~ power( {sl,s2} )</Paragraph>
    <Paragraph position="70"> compt: saw: { } ~ power( { } ) The quantifiers every and both are now chosen for R and S respectively giving the following sentence.</Paragraph>
    <Paragraph position="71"> 27 Ever~ representative of _a company saw both samples Of course different scoping and partitioning choices may have generated different quantifiers. Those in (27) are based on the scoping choices R &gt; C and R &gt; S with the partition choice shown in (26).</Paragraph>
    <Paragraph position="72"> Conclusion An algorithm has been described for generating quantifiers in English sentences which describe small models containing collections of individuals which are inter-related in various ways.</Paragraph>
    <Paragraph position="73"> The algorithm performs a great deal of search with three levels of non-determinism corresponding to.</Paragraph>
    <Paragraph position="74"> o quantifier scoping choices o choice of focus sets / dependency function partitions o choice of individual quantifiers constrained by the above two choices This is not necessarily a problem in the context of language generation where only one solution is sought.</Paragraph>
    <Paragraph position="75"> An obvious improvement to the algorithm would be to generate a preferred sentence or to rank the outputs as to how well they describe the model. We are currently looking at how this might be done by incorporating something like the preference heuristics that have been used successfully to select quantifier scopings in natural language analysis (Grosz et al 1987). After the choose scoping step in the algorithm quantifiers can be proposed which are preferred in the given scoping position. These proposed quantifiers are then checked first by q_inc/3 and q_dec/3. The details of this have not yet been worked out.</Paragraph>
    <Paragraph position="76"> The description given of the algorithm is based on binary predicates for the sake of brevity and clarity but the generalisation to predicates with three or more arguments is not difficult. For example, sentences of the following form can be generated: 28 Every boy gave most girls a kiss where there is a different kiss for each &lt;boy,girl&gt; pair. The resulting dependency functions are, however, much bigger, and consequently the search space is also.</Paragraph>
    <Paragraph position="77"> It is well documented (Webber 1978, Park 1995) that some plural noun phrases are capable of collective interpretations which are not sensitive to quantifer scoping. For  example, the sentence &amp;quot;'Three men lifted two boxes&amp;quot; has an interpretation in which three men combined their efforts in a single act of lifting two boxes. The algorithm does not deal with collective interpretations like this.</Paragraph>
  </Section>
class="xml-element"></Paper>
Download Original XML