File Information
File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/92/c92-3140_metho.xml
Size: 8,993 bytes
Last Modified: 2025-10-06 14:13:03
<?xml version="1.0" standalone="yes"?> <Paper uid="C92-3140"> <Title>PARTIAL SYNTHESIS OF SENTENCES BY COROUT1NING CONSTRAINTS ON DIFFERENT LEVELS OF WELL-FORMEDNESS</Title> <Section position="5" start_page="0" end_page="0" type="metho"> <SectionTitle> 2. PARTIAL SYNTHESIS FOR GUIDED COMPOSITION </SectionTitle> <Paragraph position="0"> Using the ILLICO interface, one can compose sentences in a &quot;free&quot; mode or by means of various kind linguistic and conceptual information dynamically synthesized by the interface. This last situation, called the &quot;guided composition&quot; mode, occurs when the user directly asks the interface for help, or as soon as the interface has detected an unexpected expression typed by the user. Guided composition is done by partial synthesis of sentences, a principle discussed in \[Sabatier 1989\], \[Rincel and Sabatier 1990\]. The same system is used both for analyzing a given sentence and for providing partial synthesis of a sentence.</Paragraph> <Paragraph position="1"> According to a general point of view, we assume that a sentence is correct if it is well-formed at different levels : the lexical, syntactic, conceptual and contextual levels, in AcrEs DE COLING-92, NANTES, 23-28 AO~&quot; 1992 9 2 6 PROC. OF COLING-92, NANTES, AUG. 23-28, 1992 particular. A sentence is lexically well-formed if all the words and expressions it contains belong to the lexicon. It is syntactically well-formed if its structure is described by the grammar. A sentence is conceptually well-formed if the relations and the objects it describes are compatible. It is contextuaily well-formed if the conceptual situation it describes agrees with the discourse context, hi practice, a given sentence may be analyzed in different manners. One way is to process it via successive stages. Each analysis produces a result with respect to which the next analysis takes place. The ordered stages and analyses are the following: the lexical, syntactic, conceptual and contextual analyses. A process with successive stages is not efficient if one wants the system to stop the analysis of a (complete or unc0mplete) sentence as soon as a lexical, a syntactical or a conceptual error is detected. In order to halt the process as soon as possible, the process must be done in one pass and must take all the levels into account at the same time. It is the same problem in the framework of a partial synthesis process. A realistic manner to ensure that a partially synthesized sentence is well-formed is to produce it in one pass by taking all the levels of well-formedness into account sinmhaneously.</Paragraph> </Section> <Section position="6" start_page="0" end_page="0" type="metho"> <SectionTitle> 3. MODULAR I,INGUISTIC KNOWLEDGE </SectionTitle> <Paragraph position="0"> One could take all the levels of well-formedness into account simuhaneously by merging them into one fommlism as is done for instance in &quot;semantic grammars&quot;. We do not follow such an approach because it leads to the development of interfaces not easily portable to different application domains. When we have to port an interface to a different application domain, we must modify at least lexical and conceptual knowledge. One could develop a grammar with symbols reflecting linguistic properties, and associate to particular symbols general conditions for processing, for example, conceptual constraints, as described in \[Rincel and Sabatier 199011. Our approach is different Within an ILLICO interface, knowledge that comes under different levels is clearly separated into distinct modules. Four modules are available : * A lexicou (lexical level) containing expected words and expressions * A grammar (syntactic level) specifying expected structnres of sentences and grammatical agreement. Syntactic rules are expressed in the Metamorphosis Grammar formalism.</Paragraph> <Paragraph position="1"> * A set of compositional semantic rules expressed by lambda-expressions for producing semantic representations from the syntactic rules of the grammar.</Paragraph> <Paragraph position="2"> * A conceptual model (conceptual level) specifying, in terms of domains and relations, the lexical presuppositions associated with expected word and expressions \[Milhaud 1990\], \[Godbert 1991\].</Paragraph> <Paragraph position="3"> Formalisms in which this linguistic knowledge is expressed are independant of any programming language.</Paragraph> </Section> <Section position="7" start_page="0" end_page="0" type="metho"> <SectionTitle> 4. COROUTINING CONSTRAINTS : THE CORE PROLOG PROGRAM </SectionTitle> <Paragraph position="0"> The reversibility of certain Prolog programs is well known. So, in order to facilitate the implementation of a system running both ill analysis and in synthesis, the run time of the ILLICO interface is a Prolog program. Lexical rules (the lexicon), syntactic rules (the grammar) and compositional semantic rules are translated into a Prolog program according to the following schema : Lexical rules Syntactic rules Semantic rules</Paragraph> <Paragraph position="2"> The top call of the Prolog program produced by tim translator is sentence (D, R) . From the axiom sentence of the grammar, it generates all the couples (D,a~ where D is a derivation tree and a its associated semantic representation. Derivation trees are generated according to a top-down, depth-first, left-to-right and non-deterministic strategy. According to this method, a sentence s is lexically and syntactically well-formed if s is the list of leaves of a derivation tree D generated by sentence (D,R). We have the following</Paragraph> <Paragraph position="4"> This program is used both for analyzing and synthesizing sentences. In the analysis mode ACRES DE COL1NG-92, NANTES, 23-28 AO~I 1992 9 2 7 I'ROC. OV COLING-92, NAI'CrEs. AUG. 23-28, 1992 (i.e. when s is bound), for reasons of efficiency, as soon as a leaf of a derivation tree is generated, one must verify that this leaf is identical to the current word (or expression) to be analyzed in tile sentence. If they are identical, the generation of the current derivation tree goes on ; else backtracking automatically occurs in the process of the derivation tree generation. In order to do that, the call to the predicate list of leaves is placed before the call to sentence. AS defined m \[Giannesini et al. 1985\], it is coroutined by using the built-in predicate freeze.</Paragraph> <Paragraph position="5"> list of leaves (D, S) :freeze (D, leaf (D, \[\],S) ) .</Paragraph> <Paragraph position="7"> ... etc.</Paragraph> <Paragraph position="8"> The first clause leaf tests if unification is possible between the current leaf of the derivation tree (Leaf) and the current word of the sentence (Word). If unification succeeds, the process goes on, else backtracking automatically occurs in tile generation of the derivation tree. This process runs both tbr analysis (Word is bound) and for synthesis (word is free). In order to do partial synthesis in one pass, one must record the generated set of leaves as possible current words for the sentence. Current leaves must be recorded as soon as a current word is unexpected (analysis) or absent (synthesis) in the sentence. In order to do that, we must modify the first clause of leaf. We now describe the algorithm.</Paragraph> <Paragraph position="9"> The process associates with each word an integer corresponding to its position in the sentence. The algorithm needs two counters Rightmost and Current. The value of Rightmost is tile integer associated to tile rightmost expected word in the sentence.</Paragraph> <Paragraph position="10"> Rightmost increases according to the words accepted, but never decreases : backtracking in the generation of tile derivation tree has no effect on it. The value of current is the integer associated to the current word of the sentence. It increases and decreases according to the evolution of the derivation tree generation. The first clause leaf is now as follows : leaf(Leaf,L,\[WordlL\]) :atom(Leaf), null test(Leaf,Word).</Paragraph> <Paragraph position="11"> The test procedure is based on the following In order to verify (in analysis mode) or to specify (in synthesis mode) that a sentence s is conceptually well-formed, one coroutines an initial constraint conceptually_well_formed on the semantic representation R associated to s. This condition is a call to the rules specifying the conceptual model related to the application domain of the system. The correctness of a semantic representation R (associated with a sentence s) is verified during its composition.</Paragraph> <Paragraph position="12"> Finally, The core Prolog program ensuring that a sentence is well-formed is the following :</Paragraph> <Paragraph position="14"> Here, the two last calls list of leaves and sentence express the constraint lexically and syntactically well-formed defined above.</Paragraph> </Section> class="xml-element"></Paper>