Академический Документы
Профессиональный Документы
Культура Документы
Department of Linguistics
University of Stuttgart
West Germany
551
attribute appears also in FS2, 'del' finds its value in FS2 Completeness of f - s t r u c t u r e s is tested by existential
and the two values are unified by the first recursive call constraints on the s u b - s t r u c t u r e s required by the semantic
of 'merge'. If an attribute is unspecified in FS2, 'del' form.
will insert it at the end of the structure as a new We t h i n k that the mere existence of a required s u b - s t r u c t u r e
attribute. Eventually, 'merge' will reach the tail variable is not enough. For example, verb entries often introduce a
of FS1 and instantiate it w i t h exactly the attributes which partial f-structure for the subject by specifying its
appear in FS2 but not in FSI, After successful execution of number. This should not lead to the acceptance of a sentence
'merge' FSI and FS2 contain the same attributes with the without a subject. For that reason we use existential
same values (maybe in d i f f e r e n t order) and tail variables at constraints on the ' p r e d ' of a structure to test if it is
any level are shared. So any further unification a f f e c t i n g there.
one of them will affect the other structure in exactly the
same way. Coherence of an f - s t r u c t u r e is e q u i v a l e n t to negative
existential constraints c o n c e r n i n g all governable functions
Example: The goal (i.e. functions that can appear in semantic forms) that are
merge( [subj = [spec = d e f , not required by its semantic form. Introduction of negative
nu~ = sg, existential constraints for all those attributes, as
pred = glrl described above, would be a correct but inefficient
] RSubj I] solution. Instead we use a special m a r k 'ngf', which closes
[ RI] , an f - s t r u c t u r e for governable functions, i.e. the d e f i n i t i o n
[pred = hand(subj,obj2,obj), of 'merge' is e x t e n d e d b y an additional test that prohibits
tense = present, the insertion of a governable function after the ' n g f ' - m a r k .
subj = [num = sg I RSubj2]
I R2]). Example: the lexical entry
both sides of the equation to denote substructures, but which is omitted here Treatment of bounded domination metavariables in two steps
since these cases never occur in realistic grammars.
552
The binding of the bounded domination metavariables consists For a detailed discussion of how this can be achieved for
of two steps. The first step, the identification of the locally left-recursive rules, please refer to [Eisele 85].
domain roots, only depends on the grammar and can be done
during the transforgaation of the grammar rules into PROLOG
clauses. Experience with the System
The main job, the assignment between domain root and
controllee, is performed as follows: We have implemented two versions of the LFG system, both
running on a VAX 11/780. The first version was written by
Each goal has two extra parameters for input and output of a the autlmrs in PROLOG II, using ideas of W.Frey and U.Reyle.
controller list. These lists, which are threaded through all It made use of the built-in predicates 'freeze' and 'dif',
nodes, except the bounding nodes, act as a global stack on which give the possibility of delaying subgoals to optimize
which the controllers are pushed. Each element of the stack the evahmtion of constraints [Eisele 85].
refers to a node which dominates the current goal, and which To improve the flexibility of the user interface, the system
is a domain root. was reimplemented in C-PROLOG by Stefan Schimpf and Andreas
A domain root adds an element to the stack before the parser Eisele. It has been used for the development and testing of
enters its control domain and removes a receipt after the different grammars for fragments of English, German [Netter
domain is left. The element that is pushed consists of the 86] and French, the latter consisting of about 50 grammar
class name (eg. [+wh]) of the controller and its actual rules and more than 200 lexical entries, and turned out to
variable. be a useful tool for this purpose.
If a eontrollee appears, the stack is searched for the first The performance of the system is quite good for simple
element with the same class name (for crossing limit n the grammars with a small amount of nondetermiuism. Using the
first n+l matching elements can be chosen) and replaces it grammar given in [Kaplan/Bresnan 82], parsing the sentence
by a receipt. Now the controUee can use the actual variable
of the controller. "I wondered which violin the sonata is tough for her to play on"
This treatment resembles the hold list device in the ATN
formalism [Winograd 83] a lot, but differs in two important needs about 2.3 seconds cpu time (C-PROLOG interpreter).
aspects. Yet, we don't expect that our system constructs an efficient
By using unification to establish the correspondence parser from an arbitrary grammar mainly for two reasons:
between controller and controllee, information may flow in The complexity of the LFG recognition problem is known to
both directions. be NP-complete [Berwick 82].
A controllee does not cause a pop-operation on the stack, - Our approach to handle nondeterminism by mere backtracking
but a substitution of an element by a receipt. The checking leads to unneccessary duplications of parsing actions.
of the receipt by the domain root ensures that a controllee Whereas the first point is highly questionable as to whether
can only occur within the domain of its domain root. it concerns practical grammars, there are several
possibilities to improve the behaviour of the parser.
As an example, the transformations of LFG rules with Storing intermediate results in a chart could help to
controller and controllee are given: avoid multiple parsing of' the same constituents and would
facilitate error analysis.
N P --, e Explicit representation of ambiguities in f-structures
(instead of a chronological enumeration) would be a step
towards a packaging of local ambiguity.
But in either case, the built-in structure-sharing mechanism
np(Fnp, CLOr CL1, Ex Tests, Ex tests) -->
of PROLOG could not be used as straightforward a way as in
13, our current system and tim definition of unification would
(subst(np/Fnp, rip, CLO, CLI)).
have to be considerably more complex.
S' ~ NP []
References
(t ,:ocus):-$
Aho, A.V. and Ullman, J.D,, "Principles of Compiler Design",
Addison-Wesley, Reading, Mass., 1977.
s bar(Fs_bar, CLO, CL1, Ex_TestsO, ExTests2) -->
np(Fnps [~h/QICLO], [~hICL1], Ex_festsO, Ex_Testsl)~ Berwick, R.C., "Computational Complexity and Lexical-
{merge([q=O, focus=Fnp [3, Fsbar)}, Functional Grammar", ACL Journal, Vol.8, 1982.
s(Fsbar, [np/Fnp], [np], Ex_Testsl, ExTests2).
Eisele, A., "A Lexical Functional Grammar System ill Prolog",
LDV-Forum 2/85.
Treatment of Left Recursion
Kaplan, R.M. and Bresnan, J., "Lexical-Functioual Grammar: A
Definite Clause Grammars do not allow left-recursive grammar Formal System for Grammatical Representation" in "Mental
rules when interpreted by a top-down parser. This is a Representation of Grammatical Relations", Bresnan eds., MIT
serious shortcoming for a natural language system, since Press, 1982
many linguistic phenomena can be most naturally described
with left-recursive rules (coordination, possessive NPs Netter, K., "Getting Things Out Of Order", this volume.
etc.). Sbieber, S.M., "An Introduction to Unification-Based
In the theory of formal languages, there exist several
Approaches to Grammar", Tutorial Session at the 23rd Annual
algorithms to convert a grammar containing left recursion
Meeting of the ACL, Chicago, 1985.
into a weakly equivalent grammar that does not [Aho/Ullman
77]. But in LFG, the c-structures are essential for the
Winograd, T., "Language as a Cognitive Process", Vol. l
correct evaluation of f-structures, so a transformation must
provide a way to get the right interpretation of the Syntax, Addison.-Wesley, Reading, Mass., 1983.
functional description.
553