File Information
File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/evalu/87/j87-1005_evalu.xml
Size: 7,435 bytes
Last Modified: 2025-10-06 14:00:01
<?xml version="1.0" standalone="yes"?> <Paper uid="J87-1005"> <Title>AN ALGORITHM FOR GENERATING QUANTIFIER SCOPINGS</Title> <Section position="18" start_page="0" end_page="0" type="evalu"> <SectionTitle> c.2 TERMINATION </SectionTitle> <Paragraph position="0"> We will give an informal proof of termination for the nondeterministic algorithm by induction on this metric p.</Paragraph> <Paragraph position="1"> But first, we present without proof three simple but useful properties of the metric.</Paragraph> <Paragraph position="2"> Lemmal If a is a wff, then p(a) = 0if and only if a contains no complex terms.</Paragraph> <Paragraph position="3"> Lemma 2 If a is a wff and/3 is a subexpression of a and p(a) > O, then p(/3) < p(a) Lemma 3 If a is a wff and/3 is a subexpression of a and p(a) = O, then p(/3) = O.</Paragraph> <Paragraph position="4"> We now prove the following theorem, and its corollary which gives the termination of the algorithm. We assume that calls to the auxiliary functions wff, term, wff?, term?, predicate, arguments, opaque, map, exists, not, applicableterm, subst, and so forth always terminate if the computation of their arguments terminates.</Paragraph> <Paragraph position="5"> Theorem 1. For all expressions a, the following six Jerry R. Hobbs and Stuart M. Shieber An Algorilhm for Generating Quanlifier Scopings Proof.&quot; We first prove the base case, for p(a) = 0. By Lemma 1, a must contain no complex terms. Three of the conditions are easily proved.</Paragraph> <Paragraph position="6"> Condition 2: Since, by Lemma 1, there are no complex terms in a, this condition holds vacuously.</Paragraph> <Paragraph position="7"> Condition 3: Again, the absence of complex terms in a causes the call to apply-terms to return with result a, and p(a) = 0, so the condition holds.</Paragraph> <Paragraph position="8"> Condition 4: Similarly, and p(a) < p(a) trivially.</Paragraph> <Paragraph position="9"> Conditions 1,5, and 6: These conditions follow directly from Lemma 4 given below.</Paragraph> <Paragraph position="10"> Lemma 4 For all expressions a such that p(a) = 0, pull(a,x) and pull-opaque-args(a) terminate with result a.</Paragraph> <Paragraph position="11"> Proof sketch: The proof is by a simple induction on the length of the expression, and uses the base case for conditions 3 and 4 proved above.</Paragraph> <Paragraph position="12"> For the induction step for Theorem 1, we assume the induction hypotheses that the six conditions hold for all a such that p(a) < n and prove the conditions for p(a) = n, for n>0. The conditions are proved sequentially. In particular, earlier conditions for the case p(a) = n are used in the proofs of later ones. (Since there is no use of later conditions in earlier ones, this does not introduce any circularity in the proof.) Condition 1: We must show that pull-opaque-args(a) terminates with result/3 such that 0(\[3) < o(a). If a is not a wff, then the condition holds vacuously, so we assume that a = f(a I ..... a~). By definition of p,</Paragraph> <Paragraph position="14"> (The inequality is necessary because p(/3) may be zero.) Now/3~ is either a~ or pull(a~false). In the first case, p(/3) < p(a~) trivially. In the second case, since a~ is a subexpression of a, by Lemma 2 we have that p(a~) < p(a) and we can use the induction hypothesis to show the termination of the call to pull. Also by the induction hypothesis, p(fl,) < p(a~).</Paragraph> <Paragraph position="15"> Thus, we see that in either case, p(/3~) < p(a~). So</Paragraph> <Paragraph position="17"> apply(t,a) terminates with result /3 such that p(/3) < p(a). Suppose t= <qvr>. Then /3 = apply(<q v r>, a) = q(v, 3&quot;, 6) where 3' = pull(r, false) and 6 = subst(v, <q v r>, a).</Paragraph> <Paragraph position="18"> Now, let p(r) = m. By Lemma 2, m < n. So by the induction hypothesis, the computation of 3, terminates and p(3') < m. Also, the computation of 6 is assumed to terminate (as mentioned above) with 6 missing the complex term t that occurs in a (and possibly other complex terms embedded within t). So p(a) _< p(a)--p(t) =n- (2+p(r)) =n--2--m.</Paragraph> <Paragraph position="19"> Finally, by definition of p we have p(fl) < 1 + p(3,) + p(6) < 1 +m+n-2-m=n-1 <n.</Paragraph> <Paragraph position="20"> We will use the two conditions just proved in the proofs of the final four conditions.</Paragraph> <Paragraph position="21"> Cond#ion 3: We must show that apply-terms(a,true) terminates with result /3 such that 0(/3) = 0. By Lemma 1, we know that complex terms exist in a so the else clause is taken. Let t = applicable-term(a) and 3, = apply(t,a). By the second condition just proved above, the latter computation terminates with</Paragraph> <Paragraph position="23"> true). Again, by the induction hypothesis, this computation terminates with p(C/) = 0. Since complete? = true, we return C/ as/3, so p(/3) = 0 as required.</Paragraph> <Paragraph position="24"> Condition 4: We must show that apply-terms(a false) terminates with result /3 such that p(/3) < p(a). By Lemma 1, we know that complex terms exist in a so the else clause is taken. Let t = applicable-term(a) and 3' = apply(t,a). By the second condition just proved above, this computation terminates with p(3') < p(a) - 1 < n. Now let C/ = apply-terms(3'false).</Paragraph> <Paragraph position="25"> Again by the induction hypothesis, this computation terminates with p(e) < p(3') < n. Since complete? = false, we return * or a as /3. In either case, 0(/3) < p(a) as required.</Paragraph> <Paragraph position="26"> We will use the four conditions just proved in the proofs of the final two conditions.</Paragraph> <Paragraph position="27"> Condition 5: We must show that pull(a,true) terminates with result/3 such that p(/3) = 0. Let 3' = pull-opaqueargs(a). By the first condition just proved above, we know this computation terminates and 0(3') < n. Now, let e = apply-terms(3&quot;,true). Again by the third condition just proved above, this computation terminates with p(e) = 0. Since complete? = true, we return C/ as/3, so p(/3) = 0 as required.</Paragraph> <Paragraph position="28"> Condition 6: We must show that pull(a false) terminates with result fl such that p(/3) < p(a). The argument is similar to that for condition 5. Let 3' = pull-opaqueargs(a). By the first condition just proved above, we know this computation terminates and P(3,) < n. Now, let c = apply-terms(3&quot;, false). Again by the fourth condition just proved above, this computation terminates with p(C/) < p(3') _< n. Since complete? = false, we return either E or a as /3. In either case, p(/3) < p(a) as rquired.</Paragraph> <Paragraph position="29"> This completes the proof of the six conditions, given the induction hypotheses, and thus completes the inductive proof of the theorem.</Paragraph> <Paragraph position="30"> Corollary 1 For all wffs a, gen(a) terminates with result /3 such that/3 has no complex terms as subexpressions.</Paragraph> <Paragraph position="31"> Proof: This follows immediately from the fifth condition in Theorem 1 and Lemma 1.</Paragraph> <Paragraph position="32"> Computational Linguistics, Volume 13, Numbers 1-2, January-June 1987 61 Jerry R. Hobbs and SIuart M. Shieber An Algorithm for Generaling Quantifier Scopings</Paragraph> </Section> class="xml-element"></Paper>