2132 lines
103 KiB
Plaintext
2132 lines
103 KiB
Plaintext
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Research Report XXXXXXXXXX
|
|
|
|
Artificial Intelligence Programs
|
|
|
|
The University of Georgia
|
|
|
|
Athens, Georgia 30602
|
|
|
|
|
|
Available by ftp from
|
|
|
|
aisun1.ai.uga.edu
|
|
|
|
(128.192.12.9)
|
|
|
|
|
|
Series editor:
|
|
|
|
Michael Covington
|
|
|
|
mcovingt@aisun1.ai.uga.edu
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Handling Constrained Clauses in
|
|
|
|
Discourse Representation Theory
|
|
|
|
|
|
William H. Smith
|
|
|
|
|
|
Piedmont College
|
|
|
|
Demorest, GA 30535
|
|
|
|
|
|
Artificial Intelligence Research Group
|
|
|
|
The University of Georgia
|
|
|
|
Athens, GA 30602
|
|
|
|
|
|
August 8, 1990
|
|
|
|
|
|
Introduction
|
|
|
|
|
|
This report describes a Prolog program that transforms a
|
|
|
|
natural language input into a knowledge base of Prolog clauses.
|
|
|
|
The key element of the program is its ability to handle
|
|
|
|
constrained clauses--embedded clauses whose truth evaluation is
|
|
|
|
different from that of independent clauses. Consider sentence
|
|
|
|
(0.1.a):
|
|
|
|
|
|
(0.1.a) Bob, who is a farmer, believes that Carol
|
|
|
|
regrets that she kissed Ted.
|
|
|
|
(b) Bob is a farmer.
|
|
|
|
(c) Carol regrets that she kissed Ted.
|
|
|
|
(d) Carol kissed Ted.
|
|
|
|
|
|
Clauses (0.1.b,c,d) are embedded in (0.1.a). (0.1.b) is not
|
|
|
|
constrained; it is subject to the same truth evaluation that
|
|
|
|
(0.1.a) is. (0.1.c) and (0.1.d) are constrained. (0.1.a)
|
|
|
|
reports what Bob believes, but Bob may be wrong, so the truth of
|
|
|
|
(0.1.a) should not depend on the truth value of (0.1.c). As we
|
|
|
|
shall see in Section 3 of this report, (0.1.d) should be
|
|
|
|
subjected to truth evaluation; the difference between (0.1.c) and
|
|
|
|
(0.1.d) is determined by the difference between the constrainers
|
|
|
|
believe and regret.
|
|
|
|
|
|
The theoretical basis of this program is an extension of
|
|
|
|
Discourse Representation Theory (Kamp 1981). Kamp proposed
|
|
|
|
Discourse Representation Theory (DRT) as a bridge between the
|
|
|
|
output of a syntactic parse and model theoretic semantics, a
|
|
|
|
bridge that would combine "a definition of truth with a
|
|
|
|
systematic account of semantic representations." (277) The DRT
|
|
|
|
algorithm produces a representation that can be used to determine
|
|
|
|
the truth conditions of a discourse. Subsequent research has
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2
|
|
|
|
|
|
extended the original theory and has implemented it in computer
|
|
|
|
programs.
|
|
|
|
|
|
Section 1 of this report presents a description of the
|
|
|
|
theoretical framework of DRT, a description that will further
|
|
|
|
clarify what is meant by 'constrained clause' and 'truth
|
|
|
|
contribution.' Section 2 examines suggested extensions to DRT
|
|
|
|
that enable it to handle a wider range of sentences. Section 3
|
|
|
|
presents the linguistic theory underlying the difference between
|
|
|
|
(0.1.c) and (0.1.d).
|
|
|
|
|
|
In the remaining sections the report shifts its focus from
|
|
|
|
theory to implementation. Section 4 describes the Prolog program
|
|
|
|
of which this is an extension, and Section 5 describes the
|
|
|
|
extensions to that program. Section 6 evaluates the success of
|
|
|
|
the program and suggests other extensions that are needed.
|
|
|
|
|
|
|
|
1. DISCOURSE REPRESENTATION THEORY
|
|
|
|
|
|
A model consists of two sets: a set of entities (the
|
|
|
|
universe) and a set of properties of those entities and relations
|
|
|
|
that hold among them. DRT seeks to provide a representation for
|
|
|
|
discourse that will be suitable for truth evaluation in a model.
|
|
|
|
DRT takes as input the output of a syntactic parse (e.g. the
|
|
|
|
Logical Form of Government and Binding Theory) and produces a
|
|
|
|
representation whose structure parallels that of the model.
|
|
|
|
|
|
The central notion of DRT is the Discourse Representation
|
|
|
|
Structure (DRS). A DRS K is a pair <U,C>, where U is a set of
|
|
|
|
reference markers (the universe) and C is a set of conditions
|
|
|
|
(properties, relations, or complex conditions--negation,
|
|
|
|
disjunction, or implication). The initial DRS, K0, contains none
|
|
|
|
of the information in the discourse. As the discourse is
|
|
|
|
processed, the DRS construction algorithm, taking the output of a
|
|
|
|
syntactic parse as its input, produces a sequence of K' as it
|
|
|
|
incorporates new material from the discourse into K. For
|
|
|
|
example:
|
|
|
|
|
|
(1.1) Bob saw a woman.
|
|
|
|
K:<U:{R1, R2},
|
|
|
|
C:{Bob(R1),
|
|
|
|
woman(R2)
|
|
|
|
saw(R1, R2) }>
|
|
|
|
|
|
At any point in the construction, the current DRS may be
|
|
|
|
evaluated for truth in the model. Discourse truth in model
|
|
|
|
theoretic semantics is determined by a mapping from a
|
|
|
|
representation of the discourse (in DRT, a DRS) to the model, a
|
|
|
|
mapping that preserves the properties and relationships expressed
|
|
|
|
in the discourse. A discourse is held to be true in a model if
|
|
|
|
there is a mapping such that the set of referenced items (the
|
|
|
|
discourse referents in DRT) maps to a subset of the universe of
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
the model and each property or relation expressed by the
|
|
|
|
discourse (the set of conditions in DRT) is true of the
|
|
|
|
corresponding entities in the model. (For ease of exposition, I
|
|
|
|
refer to the truth evaluation of a clause or discourse; it is in
|
|
|
|
fact the DRS that is evaluated.)
|
|
|
|
|
|
In DRT, each proper noun and each indefinite noun phrase
|
|
|
|
(NP) in the input is taken to have existential quantification.
|
|
|
|
(In a DRS, quantifiers are implicit; with exceptions to be noted
|
|
|
|
shortly, all discourse referents are understood as being
|
|
|
|
existentially quantified.) Thus, when the construction algorithm
|
|
|
|
encounters a proper noun or indefinite NP, a new discourse
|
|
|
|
referent is added to U (R1 and R2 in (1.1)). Each definite NP
|
|
|
|
(including each pronoun) in the discourse must be coreferential
|
|
|
|
with a discourse referent. Antecedent assignment is accomplished
|
|
|
|
by finding an item in U that agrees with the anaphoric expression
|
|
|
|
(for pronouns, an entity that agrees in gender and number). (It
|
|
|
|
should be noted that the fragment of natural language that can be
|
|
|
|
handled by current versions of DRT is quite limited, excluding
|
|
|
|
plural and generic NPs.) Thus, (1.2) shows an extension of
|
|
|
|
(1.1).
|
|
|
|
|
|
(1.2) He kissed her.
|
|
|
|
K:<U,
|
|
|
|
C := C + {kissed(R1, R2) }>
|
|
|
|
|
|
As in Pascal, := is an assignment operator and + indicates
|
|
|
|
union of sets. Thus, the third line of (1.2) means that the new
|
|
|
|
C is the union of the old C and the set {kissed(R1, R2)}.
|
|
|
|
|
|
The basic theory would add R3, R4 to U, and then set them
|
|
|
|
equal to R1, R2, respectively. A later "clean-up" operation
|
|
|
|
would eliminate these redundant discourse referents by equating
|
|
|
|
coreferential discourse referents. In the implementation to be
|
|
|
|
described here, resolution of anaphoric relations is accomplished
|
|
|
|
during the syntactic parse, so the redundancy does not occur.
|
|
|
|
|
|
If U contains two or more possible antecedents, the
|
|
|
|
conflict is resolved by selecting the most recent one.
|
|
|
|
Consequently, U must be ordered, contrary to Kamp (1981) in which
|
|
|
|
U is a set, and must be re-ordered each time an entity is
|
|
|
|
referenced (see, for example, Goodman 1988).
|
|
|
|
|
|
Kamp (1985) describes the DRS construction algorithm as "a
|
|
|
|
set of rules that operate, in a roughly top-down manner, on the
|
|
|
|
nodes of the parse tree," (2) converting those nodes into the
|
|
|
|
conditions of C and, when appropriate, introducing new discourse
|
|
|
|
referents into U. The basic version of DRT is directed toward
|
|
|
|
the role of NP nodes in the discourse--their relationship to U.
|
|
|
|
|
|
The special value of DRT is its ability to handle in-
|
|
|
|
definite NPs that should not introduce new discourse referents.
|
|
|
|
Consider the following extension of (1.2):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4
|
|
|
|
|
|
(1.3.a) She did not wear a ring.
|
|
|
|
|
|
We must extend the algorithm, because as described so far it
|
|
|
|
would produce something like (1.3.b):
|
|
|
|
|
|
(1.3.b) K:<U := U + {R3},
|
|
|
|
C := C + {ring(R3),
|
|
|
|
not wear(R2, R3) }>
|
|
|
|
|
|
The truth contribution of (1.3.a) to the truth of the discourse
|
|
|
|
will depend on the existence in the model of a ring that she did
|
|
|
|
not wear. But that is not what (1.3.a) means; (1.3.a) is true in
|
|
|
|
the model only if there is no ring in the model such that she
|
|
|
|
wore it. That is, (1.3.c) must be false:
|
|
|
|
|
|
(1.3.c) She wore a ring.
|
|
|
|
|
|
Thus, the truth evaluation of a negative clause demands a special
|
|
|
|
representation.
|
|
|
|
Kamp's solution is to add to C a sub-DRS for (1.3.a):
|
|
|
|
|
|
(1.3.d) K:<U, C := C + {not(K1,
|
|
|
|
K1:<U1: {R3},
|
|
|
|
C1: {ring(R3),
|
|
|
|
wear(R2, R3) }> ) }>
|
|
|
|
|
|
Discourse referents in U are visible to conditions in C1, but
|
|
|
|
those in U1 are not visible to C. Since the sub-DRS is
|
|
|
|
controlled by negation, its truth contribution is the opposite of
|
|
|
|
the truth value of K1; that is, if K1 can be satisfactorily
|
|
|
|
mapped to the model, the discourse is false.
|
|
|
|
|
|
I shall speak of clauses such as (1.3.c) in (1.3.a) as
|
|
|
|
'constrained clauses' because their truth contributions to the
|
|
|
|
DRS in which they are embedded are constrained, in this case by
|
|
|
|
negation. (This definition of 'constrained clause' may seem to
|
|
|
|
be at odds with that offered in the introduction, since (1.3.c)
|
|
|
|
is not, in traditional terms, an embedded clause. Some
|
|
|
|
syntacticians, however, treat negation as a 'higher predicate'
|
|
|
|
whose argument is the embedded clause to be negated. (e.g.
|
|
|
|
McCawley 1988)).
|
|
|
|
|
|
Other constrained clauses handled by Kamp's original
|
|
|
|
theory are those in disjunctions, implications, and universally
|
|
|
|
quantified NPs. In each case, the constrained clauses are
|
|
|
|
represented by sub-DRSs. The truth contribution of a disjunction
|
|
|
|
is 'true' if one of the disjuncts evaluates to true; that of an
|
|
|
|
implication is 'true' provided that in any mapping in which the
|
|
|
|
antecedent is true the consequent is true also.
|
|
|
|
|
|
An important feature of DRT is that it treats sentences
|
|
|
|
containing universally quantified NPs as implications. The
|
|
|
|
information within the universally quantified NP restricts the
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
set of entities in the universe to which the NP can refer, and
|
|
|
|
the remainder of the sentence is the scope of the quantifier.
|
|
|
|
For example, the scope of the subject NP is the VP, and the scope
|
|
|
|
of the direct object is the verb. Kamp treats the information in
|
|
|
|
the universally quantified NP as the antecedent of an implication
|
|
|
|
whose consequent is the information in the scope of that NP.
|
|
|
|
Thus, (1.4.a) is represented as (1.4.b).
|
|
|
|
|
|
(1.4.a) Every sad man loves a pretty woman.
|
|
|
|
(b) K:<U:{},
|
|
|
|
C:{K1 ==> K2,
|
|
|
|
K1: <U1:{R1},
|
|
|
|
C1:{man(R1),
|
|
|
|
sad(R1) }>
|
|
|
|
K2: <U2:{R2},
|
|
|
|
C2:{woman(R2),
|
|
|
|
pretty(R2),
|
|
|
|
loves(R1, R2) }> }>
|
|
|
|
|
|
The effects of sentence connectives as constrainers is
|
|
|
|
uncomplicated, as they are taken directly from formal logic. The
|
|
|
|
treatment of other constrainers is more complex, as will be seen
|
|
|
|
when extensions to the basic theory are considered.
|
|
|
|
|
|
|
|
2. EXTENSIONS TO THE BASIC THEORY
|
|
|
|
|
|
Events and Propositions
|
|
|
|
|
|
The basic theory is confined to a very limited subset of
|
|
|
|
natural language. In particular, it is limited to singular, non-
|
|
|
|
generic NPs, to anaphoric reference (i.e. the referent is present
|
|
|
|
in the discourse), and to sentences whose main verbs do not take
|
|
|
|
propositions (i.e. DRSs) as arguments. Reducing the first two
|
|
|
|
limitations requires a full theory of reference that must take
|
|
|
|
into account grammar, pragmatics, and knowledge of the real
|
|
|
|
world, and is beyond the scope of this study. Here we are
|
|
|
|
concerned with reducing the third limitation.
|
|
|
|
|
|
Guenthner et al. (1986) extend the basic theory by adding
|
|
|
|
two new types of discourse referent: event markers and time
|
|
|
|
markers. These researchers also include meaning rules in the DRS
|
|
|
|
construction algorithm that assign an event marker to each verb
|
|
|
|
and to each noun that refers to an action (e.g. accident). Each
|
|
|
|
time reference (i.e. time of day or extent of duration) is
|
|
|
|
assigned to a time marker. Events are temporally ordered with
|
|
|
|
respect to each other and to time references: an event may
|
|
|
|
precede or overlap another event or time, it may be given an
|
|
|
|
argument expressing its duration, or it may be a subset of
|
|
|
|
another event. The addition of event markers makes it possible
|
|
|
|
for predicates to take DRSs as arguments. Guenthner et al.
|
|
|
|
(1986) do not include any examples of such a use of event
|
|
|
|
markers, but Guenthner (1987) does. In that article he also
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6
|
|
|
|
|
|
makes a notational distinction between events, which advance the
|
|
|
|
time of discourse, and situations, which do not.
|
|
|
|
Spencer-Smith (1987) does not use event markers, but adds
|
|
|
|
a different type of discourse referent, a proposition marker.
|
|
|
|
This extension makes it possible to include embedded predicates,
|
|
|
|
such as infinitival complements and beliefs, in the DRS:
|
|
|
|
|
|
(2.1) Carol wants to kiss a rich man.
|
|
|
|
K:<U: {R1, P1
|
|
|
|
C: {Carol(R1), want(R1, P1),
|
|
|
|
P1: <U: {R2},
|
|
|
|
C: {rich(R2),
|
|
|
|
man(R2),
|
|
|
|
kiss(R1, R2) }> }>
|
|
|
|
|
|
The embedded DRS of (2.1) is an example of a constrained clause,
|
|
|
|
in this case constrained by want. (2.1) may evaluate to true
|
|
|
|
even if no such R2 exists in the model. (Note that this reading
|
|
|
|
gives narrow scope to rich man; Carol does not know which rich
|
|
|
|
man she wants to kiss.)
|
|
|
|
|
|
|
|
Beliefs
|
|
|
|
|
|
Kamp (1985) also explored the representation of beliefs.
|
|
|
|
His treatment requires two further additions to DRT: internal and
|
|
|
|
external anchors. Anchors are used to connect discourse
|
|
|
|
referents to entities in the world. External anchors are ordered
|
|
|
|
pairs, <Entity, Marker>, that associate the two as they actually
|
|
|
|
are, while internal anchors are DRS-like structures that
|
|
|
|
associate items as a subject believes they are. The use of
|
|
|
|
anchors makes it possible to represent propositions that are in
|
|
|
|
fact contradictory but are not so in the subject's belief system
|
|
|
|
because his internal anchors differ from the external anchors:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7
|
|
|
|
|
|
(2.2) Bob believes that Hesperus is pretty and
|
|
|
|
Phosphorus is not pretty.
|
|
|
|
|
|
External Anchors: <R1,Bob>,
|
|
|
|
<R2, Venus>,
|
|
|
|
<R3, Venus>
|
|
|
|
Internal Anchors:
|
|
|
|
L: <U: {R2, R3},
|
|
|
|
C: {evening_star(R2),
|
|
|
|
morning_star(R3)}>
|
|
|
|
K: <U: {R1, P1},
|
|
|
|
C: {Bob(R1),
|
|
|
|
believes(R1, P1),
|
|
|
|
P1: <U: {R2, R3},
|
|
|
|
C: {pretty(R2),
|
|
|
|
�K1,
|
|
|
|
K1: <C1: {pretty(R3)}> }> }>
|
|
|
|
|
|
The extension of DRT with internal and external anchors
|
|
|
|
give the theory considerable power, but is far from giving it the
|
|
|
|
power necessary to represent adequately the full range of
|
|
|
|
meanings of natural language. It does not, for example, specify
|
|
|
|
whose internal anchor is to be invoked. Asher (1986) combined
|
|
|
|
the concepts of proposition markers and of anchors in order to
|
|
|
|
handle the problem, again with considerable modification to DRT
|
|
|
|
and the DRS construction algorithm.
|
|
|
|
|
|
Asher dealt with the problem of Pierre, who, as a child in
|
|
|
|
Paris, saw Londres--London--in a picture book, and who, as an
|
|
|
|
adult, lives in a London slum. It is now reported that
|
|
|
|
|
|
(2.3) Pierre believes that Londres is pretty and London
|
|
|
|
is not pretty.
|
|
|
|
|
|
Sentences like (2.2) and (2.3) have been a serious problem for
|
|
|
|
traditional logic, which holds that the set of true sentences is
|
|
|
|
closed under substitution of coreferential terms (SC), such as
|
|
|
|
Londres and London. The belief cannot be added to the toplevel
|
|
|
|
DRS because under SC it is contradictory in the model and its
|
|
|
|
truth value is false, although it is actually a true report of
|
|
|
|
Pierre's belief. The belief must somehow be constrained in a
|
|
|
|
sub-DRS whose truth is evaluated according to Pierre's cognitive
|
|
|
|
state. But the belief remains contradictory in a simple sub-DRS
|
|
|
|
such as that used for (2.2).
|
|
|
|
|
|
Asher made use of a proposition marker that refers to a
|
|
|
|
sub-DRS rather than an entity, one that represents the content of
|
|
|
|
the complement of believes. This sub-DRS, a 'delineated DRS', is
|
|
|
|
more complex than those of the basic theory. It is augmented
|
|
|
|
with DRS-like structure representing the cognitive state of the
|
|
|
|
believer--entities and properties that are not explicit in the
|
|
|
|
discourse but must be true in the possible world in which the
|
|
|
|
belief is true. This internal anchor may contain a condition
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8
|
|
|
|
|
|
that distinguishes between two referents that are coreferential
|
|
|
|
in the model, as in Pierre's case, or vice versa. In addition,
|
|
|
|
Asher argues that SC does not hold in natural language; two NPs
|
|
|
|
that are coreferential but different in form convey different
|
|
|
|
information and are not substitutable.
|
|
|
|
|
|
In Smith (1989), I applied DRT, the basic theory augmented
|
|
|
|
by the extensions suggested above, to a narrative that had been
|
|
|
|
normed at sixth-grade comprehensibility in order to detect
|
|
|
|
further extensions to DRT that would be necessary in order to
|
|
|
|
represent adequately a natural language discourse. That study
|
|
|
|
suggested the need for additional mechanisms for handling the
|
|
|
|
truth contributions of constrained clauses; mechanisms that deal
|
|
|
|
with the influence of the constrainer on the constrained clause
|
|
|
|
and mechanisms that determine whether, on the basis of subsequent
|
|
|
|
information, a constrained clause should be elevated to the
|
|
|
|
toplevel. These topics are the focus of this study, and will be
|
|
|
|
considered in the next section.
|
|
|
|
|
|
|
|
3. THE TRUTH-CONTRIBUTIONS OF CONSTRAINED CLAUSES
|
|
|
|
|
|
Clearly, beliefs are constrained clauses; their truth
|
|
|
|
evaluation is constrained by believe to a method such as that
|
|
|
|
described by Asher. However, while Asher's procedure answers a
|
|
|
|
number of problems when truth is considered from the standpoint
|
|
|
|
of philosophical logic, it is rather awkward when truth is
|
|
|
|
considered from the point of view of information retrieval. For
|
|
|
|
an information retrieval system, truth may simply be the ability,
|
|
|
|
given (2.3), to answer such questions as (3):
|
|
|
|
|
|
(3.1.a) What does Pierre believe?
|
|
|
|
(b) Does Pierre believe that London is pretty?
|
|
|
|
|
|
Although Pierre's belief is contradictory, the report of
|
|
|
|
that belief is not. Perhaps the user does not care that the
|
|
|
|
answer to (3.1.a) is contradictory (the user may even want to
|
|
|
|
know if it is contradictory); or that the answer to (3.1.b) is
|
|
|
|
one of two possible answers. Furthermore, the software necessary
|
|
|
|
to construct a possible world in which Pierre's belief is true
|
|
|
|
(if such a program can be constructed at all) comes at a
|
|
|
|
considerable cost in production time, program size, and run time,
|
|
|
|
and the world it describes might be even less acceptable than
|
|
|
|
Pierre's contradictory belief system. We turn now to a method by
|
|
|
|
which constrained clauses can be handled, from an information
|
|
|
|
retrieval point of view, by a much less elaborate method.
|
|
|
|
|
|
|
|
Truth Evaluation in an Information Retrieval System
|
|
|
|
|
|
From the information retrieval point of view, truth is
|
|
|
|
what the user claims to be true; input is taken to be true unless
|
|
|
|
it is constrained, as in (2.3) (unless, perhaps, it is
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9
|
|
|
|
|
|
inconsistent with the knowledge base). However, constrained
|
|
|
|
clauses are not always blocked from toplevel truth evaluation. I
|
|
|
|
turn now to an examination of various constraining terms and
|
|
|
|
their effects on truth evaluation. This examination is limited
|
|
|
|
to constrained clauses whose truth value is available; that is,
|
|
|
|
the event or state reported has already occurred or failed to
|
|
|
|
occur. Consider the 'neutral' constrainer in (3.2):
|
|
|
|
|
|
(3.2.a) Ted said that Bob kissed Alice.
|
|
|
|
(b) Ted said, "Yecch!"
|
|
|
|
(c) She does not kiss yuppies.
|
|
|
|
(d) Ted was right.
|
|
|
|
|
|
(3.2.a) is true if Ted uttered the constrained clause (or
|
|
|
|
words to that effect), even if the user knows Ted to be a
|
|
|
|
pathological liar. Thus, the constrained clause should not be
|
|
|
|
evaluated for truth at all. The simplest representation of
|
|
|
|
(3.2.a) would assign a discourse referent to the constrained
|
|
|
|
clause in its surface form, without analysis, as is necessarily
|
|
|
|
the case for (3.2.b). However, there are at least four reasons
|
|
|
|
for representing the constrained clause as a sub-DRS, albeit a
|
|
|
|
DRS that is shielded from truth evaluation:
|
|
|
|
|
|
(3.3.a) The user might have applied SC to Ted's actual
|
|
|
|
utterance. If the system includes a facility for
|
|
|
|
calculating a confidence factor (i.e. How reliable is
|
|
|
|
Ted?), it will be necessary to analyze the
|
|
|
|
constrained clause in order to allow for SC in
|
|
|
|
checking for corroboration.
|
|
|
|
|
|
(b) (3.2.a) might be followed by (3.2.c). If the
|
|
|
|
constrained clause has not been analyzed, the
|
|
|
|
discourse referent for Alice will not be available
|
|
|
|
as an antecedent for she.
|
|
|
|
|
|
(c) If (3.2.a) is the first occurrence of either
|
|
|
|
proper NP, a discourse referent for that entity
|
|
|
|
should be added to the toplevel universe; that
|
|
|
|
entity is 'pragmatically presupposed' by the
|
|
|
|
proper NP (McCawley 1981). This addition can only
|
|
|
|
be made if the constrained clause is first
|
|
|
|
analyzed.
|
|
|
|
|
|
(d) If (3.2.a) is sometime later followed by (3.2.d),
|
|
|
|
provided by the user, the discourse referents and
|
|
|
|
conditions for the constrained clause should be
|
|
|
|
added to the toplevel DRS, and that addition
|
|
|
|
should be based on the context available at the
|
|
|
|
time of (3.2.a), excluding anything that might
|
|
|
|
have been added by intervening sentences. While the
|
|
|
|
necessary analysis could be carried out at the time
|
|
|
|
of (3.2.d), it would be much simpler if it were done
|
|
|
|
at the time of (3.2.a).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10
|
|
|
|
|
|
Types of Constrainers
|
|
|
|
|
|
The procedure described above, which blocks the truth
|
|
|
|
evaluation of the constrained clause, may, depending on the
|
|
|
|
requirements of the information retrieval system, be satisfactory
|
|
|
|
for a number of constrainers that report utterances or cognitive
|
|
|
|
states, including the following:
|
|
|
|
|
|
(3.4) SAY CLASS (OBJECT)
|
|
|
|
say suppose allege believe deem
|
|
|
|
assert assume charge fancy conclude
|
|
|
|
maintain intimate deny conjecture
|
|
|
|
|
|
(The list of constrainers in (3.4), as well as those lists that
|
|
|
|
follow, is taken largely from Kiparsky and Kiparsky (1970), as is
|
|
|
|
the analysis on which what follows is based.)
|
|
|
|
|
|
Note that if a sentence whose main verb is deny is later
|
|
|
|
confirmed, it is the negation of the constrained clause that must
|
|
|
|
be added to the toplevel DRS. The same would be true of (3.2.a)
|
|
|
|
followed by (3.2.d) with right replaced by wrong. Assuming this
|
|
|
|
fact to be self-evident, I shall not make special note of other
|
|
|
|
constrainers of this type.
|
|
|
|
|
|
The representation described above will allow an infor-
|
|
|
|
mation retrieval system to answer questions such as those in
|
|
|
|
(3.1). However, there remains an implementation problem to be
|
|
|
|
resolved. Should the system respond only when the constrainer in
|
|
|
|
the inquiry is identical to that in the original input, or should
|
|
|
|
it respond when one constrainer in (3.4) is replaced by another?
|
|
|
|
If the answer is the latter, which constrainers are
|
|
|
|
substitutable? The answer depends on the needs of the particular
|
|
|
|
system, and will not be examined further here.
|
|
|
|
|
|
A group of constrainers whose truth evaluation should be
|
|
|
|
treated in the same fashion is illustrated in (3.5):
|
|
|
|
|
|
(3.5) It seems that Bob kissed Alice.
|
|
|
|
|
|
Constrainers such as seem question or hedge on the truth of their
|
|
|
|
subjects, which are often extraposed, as in (3.5). Similar
|
|
|
|
constrainers are shown in (3.6):
|
|
|
|
|
|
(3.6) SAY CLASS (SUBJECT)
|
|
|
|
seems is likely is possible
|
|
|
|
appears is probable
|
|
|
|
|
|
Kiparsky and Kiparsky point out the fact that some of these
|
|
|
|
constrainers allow non-finite for-to clauses (e.g. 'for Bob to
|
|
|
|
kiss Carol') as their subjects, but do not allow poss-ing (e.g.
|
|
|
|
'Bob's kissing Carol') subjects. I shall return to this fact
|
|
|
|
shortly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11
|
|
|
|
|
|
Many of the Say Class of constrainers have adverbial
|
|
|
|
forms:
|
|
|
|
|
|
(3.6.a) It is probable that Ted kissed Carol.
|
|
|
|
(b) Ted probably kissed Carol.
|
|
|
|
|
|
Although the two sentences in (3.6) are synonymous, the
|
|
|
|
constrained clause in (3.6.a) is dependent while the same clause
|
|
|
|
in (3.6.b) is independent. Nevertheless, synonymous clauses
|
|
|
|
should be treated in the same manner; that is, the constrained
|
|
|
|
clause should not be evaluated for truth in the toplevel DRS.
|
|
|
|
|
|
The group of constrainers shown in (3.7) is syntactically
|
|
|
|
identical to those in (3.6), but the truth contribution is quite
|
|
|
|
different.
|
|
|
|
|
|
(3.7) TRUE CLASS (SUBJECT)
|
|
|
|
true happens certain
|
|
|
|
chances sure
|
|
|
|
false turns out
|
|
|
|
|
|
These constrainers assert the truth (or falsity) of the
|
|
|
|
constrained clause. Thus, the constrained clause should not be
|
|
|
|
shielded from the truth evaluation of the toplevel DRS. The
|
|
|
|
simplest representation of a sentence containing one of these
|
|
|
|
constrainers would ignore the constrainer and add the
|
|
|
|
representation of the constrained clause to the toplevel DRS.
|
|
|
|
Such a representation would make it impossible to refer to the
|
|
|
|
constrained clause (cf. 3.2.d), but such reference seems
|
|
|
|
unlikely. If such references must be allowed, sentences
|
|
|
|
containing those constrainers can be handled in the manner of
|
|
|
|
(3.2.a) followed by (3.2.d).
|
|
|
|
|
|
Note that if one of the True Class of constrainers appears
|
|
|
|
in negated form, it is the negation of the constrained clause
|
|
|
|
that is added to the DRS. (However, the negation of certain is a
|
|
|
|
Say Class constrainer. The converse is true of possible.)
|
|
|
|
|
|
A fourth group of constrainers, although syntactically
|
|
|
|
identical to the Say and True Classes, makes a truth contribution
|
|
|
|
that is different from either.
|
|
|
|
|
|
(3.8) REGRET CLASS (SUBJECT)
|
|
|
|
surprising exciting amuses matters
|
|
|
|
significant relevant counts suffices
|
|
|
|
tragic odd bothers makes sense
|
|
|
|
|
|
These constrainers ('factives' for Kiparsky and Kiparsky)
|
|
|
|
semantically presuppose the truth of their complement clauses.
|
|
|
|
That is, the complement clause is held to be true, whether the
|
|
|
|
constrainer appears in positive or negative, declarative or
|
|
|
|
interrogative form. Therefore, the constrained clause should not
|
|
|
|
be shielded from toplevel truth evaluation. In addition, these
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12
|
|
|
|
|
|
constrainers have semantic content of their own, unlike those in
|
|
|
|
the True Class. (e.g. The user may want to know what the signif-
|
|
|
|
icance is.) It is thus necessary to assign a discourse referent
|
|
|
|
to the constrained clause so that it can appear as an argument to
|
|
|
|
the constrainer. These considerations suggest that a clause
|
|
|
|
constrained by one of these terms should be represented twice,
|
|
|
|
once as an independent sentence and once in the manner of a
|
|
|
|
clause constrained by a Say Class constrainer.
|
|
|
|
|
|
The fifth group of constrainers functions syntactically
|
|
|
|
like the Say Class (Object), but makes a truth contribution like
|
|
|
|
that of the Regret Class (Subject).
|
|
|
|
|
|
(3.9) REGRET CLASS (OBJECT)
|
|
|
|
regret forget (about) be aware (of)
|
|
|
|
resent make clear bear in mind
|
|
|
|
deplore ignore take into
|
|
|
|
mind comprehend account/
|
|
|
|
care (about) grasp consideration
|
|
|
|
|
|
These verbs also have semantic content, so discourse referents
|
|
|
|
for the constrained clauses must be added to the toplevel DRS.
|
|
|
|
These verbs allow the fact that and poss-ing complements, but not
|
|
|
|
for-to complements (at least, not with presuppositional value).
|
|
|
|
Some (regret, forget) have presuppositional value under equi-NP
|
|
|
|
deletion, but others do not.
|
|
|
|
|
|
Kiparsky and Kiparsky note that the truth contribution of
|
|
|
|
a clause depends only on the immediate constrainer, no matter how
|
|
|
|
deeply it is embedded:
|
|
|
|
|
|
(3.10.a) Carol appears to believe that Bob regrets that he
|
|
|
|
kissed Alice.
|
|
|
|
(b) Bob kissed Alice.
|
|
|
|
|
|
Thus, (3.10.a) presupposes (3.10.b), because it is constrained by
|
|
|
|
regret, in spite of the fact that the intervening appear and
|
|
|
|
believe are Say Class constrainers.
|
|
|
|
|
|
The next class of constrainers is labeled 'indifferent' by
|
|
|
|
Kiparsky and Kiparsky because the truth of the constrained clause
|
|
|
|
may or may not be presupposed.
|
|
|
|
|
|
(3.11) SUSPECT CLASS (OBJECT)
|
|
|
|
suspect acknowledge announce emphasize
|
|
|
|
anticipate admit report remember
|
|
|
|
deduce
|
|
|
|
|
|
With poss-ing complements, these verbs are factives, Regret Class
|
|
|
|
constrainers. With finite and for-to complements, however, it is
|
|
|
|
unclear whether they are Say Class or True Class constrainers.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
It may have been noted that there is no list of True Class
|
|
|
|
(Object) constrainers. This gap is particularly striking when
|
|
|
|
one considers that two of the verbs in (3.7), certain and sure,
|
|
|
|
can constrain object clauses.
|
|
|
|
|
|
(3.12.a) It was certain that Bob kissed Alice.
|
|
|
|
(b) Ted was certain that Bob kissed Alice.
|
|
|
|
(c) Ted was certain of Bob's kissing Alice.
|
|
|
|
(d) Bob kissed Alice.
|
|
|
|
(e) I am certain that Bob kissed Alice.
|
|
|
|
|
|
Sentence (3.12.a) asserts the user's belief that (3.12.d) is
|
|
|
|
true, but (3.12.b) only asserts Ted's belief; the user may know
|
|
|
|
Ted to be wrong. Sentence (3.12.c) is even worse; Ted may have
|
|
|
|
believed that (3.12.d) had already occurred, or that it was
|
|
|
|
potential. Thus, while these verbs are True Class (Subject)
|
|
|
|
constrainers, they are Say Class (Object) constrainers.
|
|
|
|
|
|
Almost paradoxically, this class shift holds even with a
|
|
|
|
first-person subject. Sentence (3.12.e) seems to assert what
|
|
|
|
(3.12.a) asserts, the user's belief that (3.12.d) is true in the
|
|
|
|
model. However, the user's choice of (3.12.e) rather than
|
|
|
|
(3.12.a) is a hedge on that assertion.
|
|
|
|
|
|
Another complex group of constrainers is that shown in
|
|
|
|
(3.13):
|
|
|
|
|
|
(3.13) KNOW CLASS (OBJECT)
|
|
|
|
know comprehend learn
|
|
|
|
see understand realize
|
|
|
|
|
|
When one of these verbs is used in a past tense, it is factive;
|
|
|
|
the truth of its constrained clause is presupposed, regardless of
|
|
|
|
the subject or the polarity (affirmative or negative). With a
|
|
|
|
third-person subject, the constrained clause is presupposed in
|
|
|
|
the present tense. (It is assumed here that the constrainer is
|
|
|
|
provided by the user and is not his ironic quotation of the
|
|
|
|
subject.)
|
|
|
|
|
|
It is when the verb has a first-person subject in a
|
|
|
|
present tense that the complexity arrives. In this case, the
|
|
|
|
verbs in (3.13) must be treated on an individual basis. To do
|
|
|
|
so, it will help to use the template in (3.14), where the blank
|
|
|
|
is to be filled in by a (possibly negated) constrainer.
|
|
|
|
|
|
(3.14) I __________ a. (that) Bob kissed Alice.
|
|
|
|
b. (of/about) Bob's kissing Alice.
|
|
|
|
c. (for) Bob (to) kiss Alice.
|
|
|
|
|
|
The constrainer know allows (3.14.a,b). In either case,
|
|
|
|
it is like certain: in the affirmative it is a True Class
|
|
|
|
constrainer, but in the negative it shifts to the Say Class. As
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14
|
|
|
|
|
|
in the case of certain, the poss-ing complement is not
|
|
|
|
presupposed.
|
|
|
|
|
|
In (3.14.b), comprehend and understand presuppose their
|
|
|
|
complement clauses. The verb understand allows (3.14.a), but
|
|
|
|
only in the affirmative, in which case it is a Say Class
|
|
|
|
constrainer, with a meaning something like "Someone said that Bob
|
|
|
|
kissed Alice." The constrainer realize is acceptable only in
|
|
|
|
(3.14.a) and presupposes its complement clause; thus, if it is
|
|
|
|
negated, it denies its own presupposition and the sentence makes
|
|
|
|
no sense.
|
|
|
|
|
|
The simple present tense of learn does not work in (3.14)
|
|
|
|
except in special contexts (e.g. an actor referring to his role
|
|
|
|
as himself), and the present progressive requires that the
|
|
|
|
learning process be extended, so that what is learned is
|
|
|
|
(usually) not a simple fact. While in some special contexts the
|
|
|
|
constrained clause is presupposed, it is more practical to treat
|
|
|
|
first-person present tense learn as a Say Class constrainer. The
|
|
|
|
verb see is ambiguous between an act of perception and a state of
|
|
|
|
cognition. In the former case it allows (3.14.c) (without
|
|
|
|
prepositions) and is a True Class constrainer. In (3.14.a), see
|
|
|
|
reports a cognitive state; in the affirmative it acts as does
|
|
|
|
understand, but in the negative it is a Say Class constrainer.
|
|
|
|
|
|
This section has examined clauses whose truth contribu-
|
|
|
|
tions to a DRS are constrained by a certain group of predicates
|
|
|
|
(verbs and adjectives). It has found five classes of
|
|
|
|
constrainer, some with subclasses according to whether the
|
|
|
|
constrained clause is the subject (perhaps extraposed) or the
|
|
|
|
object of the predicate:
|
|
|
|
|
|
(3.15.a) SAY CLASS: The constrainer makes no claim about
|
|
|
|
the truth contribution of the constrained clause, so
|
|
|
|
that clause should be shielded from toplevel truth eval-
|
|
|
|
uation. However, the clause should be identified
|
|
|
|
by a discourse referent because it may later be
|
|
|
|
confirmed or contradicted.
|
|
|
|
|
|
(b) TRUE CLASS: The constrained clause is added to the
|
|
|
|
toplevel DRS because the constrainer asserts the truth
|
|
|
|
of its complement. (If the constrainer is negated, it
|
|
|
|
is the negation of the constrained clause that is
|
|
|
|
added.) Such clauses might not require discourse
|
|
|
|
referents, although no harm is done if referents are
|
|
|
|
assigned.
|
|
|
|
|
|
(c) REGRET CLASS: The constrainer presupposes the
|
|
|
|
truth of the complement clause, so that clause is added
|
|
|
|
to the toplevel DRS. This addition is independent of
|
|
|
|
the form of the matrix clause (i.e. affirmative-
|
|
|
|
negative, declarative-interrogative).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15
|
|
|
|
|
|
(d) SUSPECT CLASS: Presupposition depends on the
|
|
|
|
syntactic form of the constrained clause. poss-ing
|
|
|
|
complements are presupposed, but other complements are
|
|
|
|
unclear about presupposition and are to be treated as
|
|
|
|
those under Say Class constrainers.
|
|
|
|
|
|
(e) KNOW CLASS: The constrained clause is presupposed
|
|
|
|
unless the constrainer is first-person, present tense.
|
|
|
|
In the latter case, each verb requires its own
|
|
|
|
treatment.
|
|
|
|
|
|
It was noted that some True Class constrainers have
|
|
|
|
corresponding adverbs. Other adverbs can act as constrainers,
|
|
|
|
and their truth contributions must be examined. Modal
|
|
|
|
auxiliaries and verbs with similar semantic value (e.g. ought to,
|
|
|
|
want to) also require such analysis. Associated with the modal
|
|
|
|
class is the case of constrained clauses whose truth is not yet
|
|
|
|
known; should they be left unevaluated, or should they become
|
|
|
|
'demons' whose truth must eventually be evaluated? These
|
|
|
|
questions remain to be answered.
|
|
|
|
|
|
In the next section we examine a computer implementation
|
|
|
|
of DRT that is able to handle certain of the constrained clauses
|
|
|
|
described here.
|
|
|
|
|
|
|
|
4. AN IMPLEMENTATION OF DRT
|
|
|
|
|
|
In this section and the next we describe a computer
|
|
|
|
implementation of DRT. It takes as input a 'discourse' of one or
|
|
|
|
more English sentences, parses the input and constructs a DRS for
|
|
|
|
it, and then asserts the set of conditions in that DRS to a
|
|
|
|
Prolog knowledge base. The language it accepts includes both the
|
|
|
|
types of sentence described in Section 2 and a subset of those
|
|
|
|
described in Section 3. Specifically, it handles noun clause
|
|
|
|
complements of a selected group of Say, True, and Regret Class
|
|
|
|
Constrainers.
|
|
|
|
|
|
This implementation is an extension of From English to
|
|
|
|
Prolog via Discourse Representation Theory (Covington, Nute,
|
|
|
|
Schmitz, & Goodman, 1988; henceforth CNS&G). That program is "a
|
|
|
|
set of techniques for translating the discourse representation
|
|
|
|
structures of Kamp (1981) into semantically equivalent clauses in
|
|
|
|
a slightly extended form of Prolog. (1)" That program is in turn
|
|
|
|
an extension of An Implementation of Discourse Representation
|
|
|
|
Theory (Covington & Schmitz, 1988; henceforth C&S), "a program
|
|
|
|
that constructs discourse representation structures from ordinary
|
|
|
|
English input. (1)" It, in turn, is an extended version of the
|
|
|
|
program described in Johnson & Klein (1986). (The extension to
|
|
|
|
be described in Section 5 of this report is designated CONSTRAIN.
|
|
|
|
Note that the abbreviations C&S and CNS&G will be used to refer
|
|
|
|
both to the programs and to the documents describing them.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16
|
|
|
|
|
|
Phrase Structure Rules
|
|
|
|
|
|
C&S is a top-down parser, written in definite clause
|
|
|
|
grammar (DCG) notation, for a phrase structure (PS) grammar. The
|
|
|
|
PS rules are augmented with a hold mechanism that allows the
|
|
|
|
parsing of certain empty categories, and with a feature structure
|
|
|
|
that allows syntactic and semantic information to be passed from
|
|
|
|
one node of the parse tree to another. Although Kamp employs a
|
|
|
|
top-down procedural algorithm, CNS&G view the PS-to-DRT mapping
|
|
|
|
as a static relation defined in terms of unification of feature
|
|
|
|
structures. (The CNS&G view follows that of Johnson & Klein
|
|
|
|
(1986) and is in the spirit of Zeevat (1989)).
|
|
|
|
|
|
The addition of a hold mechanism and a feature structure,
|
|
|
|
although necessary to give the program its power, can make the
|
|
|
|
description of the parser complicated; the reader who is only
|
|
|
|
concerned with the syntactic rules is likely to be confused by
|
|
|
|
the presence of the feature unification rules. To avoid that
|
|
|
|
confusion, this description will be presented in three passes.
|
|
|
|
The first pass will treat the parser as if it consisted of DCG
|
|
|
|
rules only, the second will add the hold mechanism to that
|
|
|
|
description, and the final pass will treat the feature structure.
|
|
|
|
Because of the interaction between the three, this neat
|
|
|
|
simplification is not entirely possible. For the first two
|
|
|
|
passes the reader must accept without explanation the fact that
|
|
|
|
the semantic features carry the DRS for the portion of the
|
|
|
|
discourse already processed.
|
|
|
|
|
|
C&S accepts discourses that conform to the PS rules shown
|
|
|
|
below. (Parentheses indicate optional elements; the parser
|
|
|
|
actually has separate rules for these possibilities. Words in
|
|
|
|
brackets are terminal symbols.)
|
|
|
|
|
|
(4.1) discourse --> statement, (discourse).
|
|
|
|
discourse --> question, (discourse).
|
|
|
|
statement --> sentence.
|
|
|
|
question --> [does], np, vp.
|
|
|
|
question --> [is], np, adj.
|
|
|
|
question --> [is], np, np.
|
|
|
|
sentence --> np, vp.
|
|
|
|
sentence --> np, [does, not], vp.
|
|
|
|
sentence --> np, [is], adj.
|
|
|
|
sentence --> np, [is, not], adj.
|
|
|
|
sentence --> np, [is], np.
|
|
|
|
sentence --> np, [is, not], np.
|
|
|
|
sentence --> [if], sentence, [then], sentence.
|
|
|
|
|
|
The PS rules for VP and Adj are straightforward, as is
|
|
|
|
shown in (4.2). (Form is a variable representing a terminal
|
|
|
|
symbol.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17
|
|
|
|
|
|
(4.2.a) vp --> v, np.
|
|
|
|
(b) vp --> v.
|
|
|
|
(c) v --> [Form].
|
|
|
|
(d) adj --> [Form].
|
|
|
|
|
|
As we shall see below, syntactic features prevent (4.2.c) from
|
|
|
|
selecting a transitive verb for (4.2.b), or an intransitive for
|
|
|
|
(4.2.a).
|
|
|
|
|
|
While the rules for VP are essentially those of Chomsky
|
|
|
|
(1965), the NP rules make use of X-bar theory. NP is bar-3, and
|
|
|
|
numeric suffixes indicate the other bar levels. As is the case
|
|
|
|
for VP, syntactic features subcategorize Form for lexical
|
|
|
|
insertion--proper or common noun. (Pronoun is a notational
|
|
|
|
device; each gender of pronoun requires a separate rule. C&S is
|
|
|
|
not sensitive to pronoun case.)
|
|
|
|
|
|
(4.3.a) np --> n. (Proper noun)
|
|
|
|
(b) np --> [Pronoun].
|
|
|
|
(c) np --> []. (Empty category)
|
|
|
|
(d) np --> det, n2.
|
|
|
|
(e) n2 --> n1.
|
|
|
|
(f) n2 --> n1, relcl. (NP with relative clause)
|
|
|
|
(g) n1 --> n.
|
|
|
|
(h) n1 --> adj, n1.
|
|
|
|
(i) n --> [Form].
|
|
|
|
|
|
Rules (4.3.c) and (4.3.f) will be discussed with the hold
|
|
|
|
mechanism. Rule (4.3.b) searches the incoming DRS for the most
|
|
|
|
recent discourse referent that matches Pronoun in gender.
|
|
|
|
(Remember that this version of DRT does not handle plural NPs.)
|
|
|
|
Rule (4.3.h) is recursive, so n1 may contain any number of
|
|
|
|
adjectives.
|
|
|
|
|
|
In order to handle empty categories, C&S adds to each
|
|
|
|
phrasal rule two arguments, an input and an output hold list.
|
|
|
|
When rule (4.3.f) is applied, the discourse referent of n1 is
|
|
|
|
placed at the head of the input list and that list is passed to
|
|
|
|
relcl. When (4.3.c) is applied while processing relcl, the first
|
|
|
|
referent on the hold list is removed and assigned to the empty
|
|
|
|
category. This procedure insures that empty categories are
|
|
|
|
instantiated on a last-in-first-out basis. The rules for
|
|
|
|
discourse, statement and question require that the hold lists be
|
|
|
|
empty, since empty categories cannot be bound across sentence
|
|
|
|
boundaries.
|
|
|
|
|
|
|
|
Unification of Feature Structures
|
|
|
|
|
|
The C&S parser incorporates a unification based grammar
|
|
|
|
(Schieber 1986) that passes feature structures from one node of
|
|
|
|
the parse tree to another. Since features are passed by means of
|
|
|
|
unification, it is possible to pass a feature from one node to
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
18
|
|
|
|
|
|
another before it has been instantiated. For example, rule
|
|
|
|
(4.2.a) unifies the discourse referent of np with the second
|
|
|
|
argument of v before either (4.2.c) or (4.3) is applied.
|
|
|
|
|
|
The use of feature structures is facilitated by the use of
|
|
|
|
the GULP extension to Prolog (Covington 1987). GULP makes it
|
|
|
|
possible for the programmer to refer to features by name, rather
|
|
|
|
than by position in the feature structure. In consequence, a
|
|
|
|
parser written in GULP is much easier to read than is one written
|
|
|
|
in standard Prolog notation. The C&S parser uses syntactic
|
|
|
|
features that constrain the parse procedure and semantic features
|
|
|
|
that construct DRSs during the parse procedure.
|
|
|
|
|
|
The syntactic features employed by C&S are syn:index,
|
|
|
|
syn:class, syn:arg1 and, syn:arg2. syn:index is a unique integer
|
|
|
|
that is generated for each noun in the discourse; its value is
|
|
|
|
the discourse referent that is used to bind pronouns and empty
|
|
|
|
categories. syn:arg1 and syn:arg2 are also integers; they are
|
|
|
|
unified with the syn:index features of the nouns in a sentence
|
|
|
|
and become the arguments of its predicates. The syn:class
|
|
|
|
feature of a noun (proper or common) or verb (transitive or
|
|
|
|
intransitive) is a subcategorization that serves to constrain the
|
|
|
|
parse procedure, as was noted above.
|
|
|
|
|
|
The semantic features are sem:in, sem:out, sem:res:in,
|
|
|
|
sem:res:out, sem:scope:in, sem:scope:out. GULP makes it possible
|
|
|
|
to address an individual feature or a bundle of features; for
|
|
|
|
example, a variable may be bound to sem:res:in, to sem:res (both
|
|
|
|
in and out are bound), or to sem (all features are bound).
|
|
|
|
Features may be cross-unified, so that sem:res of one node may be
|
|
|
|
bound to sem of another node.
|
|
|
|
|
|
The value of a semantic feature is a list of one or more
|
|
|
|
structures of the form drs(U, Con), where U is a list of
|
|
|
|
discourse referents and Con is a list of conditions. The first
|
|
|
|
drs/2 on the list is the representation currently being
|
|
|
|
processed. Not all of the features are instantiated for every
|
|
|
|
node; in fact, most nodes use only the sem:in/out features. Each
|
|
|
|
parent node instantiates the sem:in of its daughter(s) to the DRS
|
|
|
|
for the portion of the discourse already processed. The daughter
|
|
|
|
then adds its own discourse referents to U and its conditions to
|
|
|
|
Con, and returns the expanded drs/2 as sem:out to its parent.
|
|
|
|
(The initial sem:in for a discourse is [drs([], [])].)
|
|
|
|
|
|
Consider, for example, (4.4), which gives the full form of
|
|
|
|
(4.2.d) along with the rules that it calls.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
(4.4.a) adj(Adj) --> [Form],
|
|
|
|
{adjective_features(Form, Adj)}.
|
|
|
|
(b) adjective_features(Form,Adj):-
|
|
|
|
append(Semantics, Con, NewCon),
|
|
|
|
Adj = syn: (index:I) ::
|
|
|
|
sem: (in : [drs(U, Con)| Super] ::
|
|
|
|
out: [drs(U, NewCon)| Super]).
|
|
|
|
(c) adjective(big, lambda(I, [big(I)])).
|
|
|
|
|
|
The N1-rule that calls (4.4.a) unifies the syn features of
|
|
|
|
Adj with those of the noun that the adjective modifies. It also
|
|
|
|
unifies the sem:in feature of Adj with the appropriate feature of
|
|
|
|
that noun (which feature it is unified with depends on the
|
|
|
|
calling rule). The entire feature structure of Adj is then
|
|
|
|
passed to (4.4.b).
|
|
|
|
|
|
Rule (4.4.b) unifies I with the syn:index feature of the
|
|
|
|
modified noun and passes it to (4.4.c), which in turn unifies it
|
|
|
|
with the argument of Form, the adjective being processed. The
|
|
|
|
resulting structure is appended to Con, the condition list on the
|
|
|
|
input DRS, and the result, NewCon, is passed in the output DRS.
|
|
|
|
|
|
The sem:res and sem:scope features are needed in order to
|
|
|
|
handle universally quantified NPs. DRT treats a sentence with a
|
|
|
|
universally quantified NP as an implication. The antecedent, the
|
|
|
|
sem:res feature, consists of the information in the NP itself,
|
|
|
|
information that restricts the set to which the NP refers. The
|
|
|
|
consequent, the sem:scope feature, consists of the information in
|
|
|
|
the remainder of the sentence, the scope of the NP. Scope is
|
|
|
|
determined by the left-to-right ordering of NPs; the verb falls
|
|
|
|
within the scope of all NPs, and the object NP is within the
|
|
|
|
scope of the subject NP.
|
|
|
|
|
|
C&S follows Johnson & Klein (1986) in treating the
|
|
|
|
determiner as the key element in determining quantification.
|
|
|
|
Thus, the sem of a sentence is the sem of the subject NP, which
|
|
|
|
in turn is the sem of the determiner of that NP. Consider (4.5).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20
|
|
|
|
|
|
(4.5) det(Det) --> [every],
|
|
|
|
{ Det = sem:in:A,
|
|
|
|
Det = sem:res:in:[drs([],[])|A),
|
|
|
|
Det = sem:res:out:B,
|
|
|
|
Det = sem:scope:in:[drs([],[])|B],
|
|
|
|
Det = sem:scope:out:
|
|
|
|
[Scope,Res,drs(U,Con)|Super],
|
|
|
|
Det = sem:out:[drs(U,[ifthen(Res,Scope)|
|
|
|
|
Con])|Super] }.
|
|
|
|
|
|
Let us assume that (4.5) is called by an NP-rule that is
|
|
|
|
called directly by an S-rule (i.e. the NP in question is the
|
|
|
|
subject of the sentence), and let us trace the feature
|
|
|
|
unifications through the parse tree. At this point, the only
|
|
|
|
feature that has been instantiated is sem:in (A in rule (4.5)),
|
|
|
|
which contains the DRS for the preceding portion of the
|
|
|
|
discourse. The NP-rule unifies its entire sem feature with that
|
|
|
|
of Det, and the S-rule likewise unifies its sem feature with that
|
|
|
|
of NP. The S-rule also unifies the sem of VP with the sem:scope
|
|
|
|
of NP, from which it is passed to the sem:scope of Det. The NP-
|
|
|
|
rule also unifies the sem of N2 with sem:res of Det.
|
|
|
|
|
|
Rule (4.5) unifies A with sem:in, the incoming DRS list,
|
|
|
|
and conses to A a DRS with empty universe and condition lists.
|
|
|
|
The resulting list becomes sem:res:in, and therefore sem:in of
|
|
|
|
N2. The N2-rule fills those empty lists and returns them as B,
|
|
|
|
the sem:res:out of Det. (4.5) then prefixes an empty DRS to B,
|
|
|
|
producing the sem:scope:in of Det and NP, and the sem:in of VP.
|
|
|
|
The VP-rule fills the empty DRS and returns it as sem:scope:out
|
|
|
|
of NP and Det. (4.5) extracts from sem:scope:out the first three
|
|
|
|
DRSs: Scope, the now filled DRS from VP, Res, the now filled DRS
|
|
|
|
from N2, and the first DRS in A (the input DRS list), drs(U,
|
|
|
|
Con). Finally, Res and Scope are made arguments to the functor
|
|
|
|
ifthen, which is prefixed to Con. The result is the sem:out of
|
|
|
|
Det, NP, and S.
|
|
|
|
|
|
Rule (4.5) is more complicated than most of the C&S rules,
|
|
|
|
but all phrasal rules work in the same general fashion. The
|
|
|
|
reader is referred to C&S for complete specification of the
|
|
|
|
grammar; here we are concerned with the extensions to that
|
|
|
|
program necessary in order to handle constrained clauses.
|
|
|
|
|
|
|
|
Prologization of a DRS
|
|
|
|
|
|
CNS&G adds to C&S procedures that translate the DRS in the
|
|
|
|
sem:out feature of a discourse into Prolog clauses
|
|
|
|
(Prologization) and then assert/process those clauses. Again, we
|
|
|
|
are concerned primarily with those portions that must be modified
|
|
|
|
or extended for the present implementation. The reader is
|
|
|
|
referred to CNS&G for a complete specification of that program.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21
|
|
|
|
|
|
Before translating the set of conditions of the output DRS
|
|
|
|
into Prolog, two "clean-up" steps must be performed. The lexical
|
|
|
|
insertion rules of the parser provide two conditions for each
|
|
|
|
noun in the discourse: the property denoted by the noun and the
|
|
|
|
gender of the noun. The latter is needed only for anaphora
|
|
|
|
resolution and is discarded before that set is processed.
|
|
|
|
|
|
The second clean-up step involves unifying equated
|
|
|
|
discourse referents. The original C&S parser assigns to each
|
|
|
|
noun a unique integer, even in sentences such as (4.6):
|
|
|
|
|
|
(4.6) Pedro is a farmer.
|
|
|
|
|
|
The parser would then add a condition that equates the discourse
|
|
|
|
referent of Pedro with that of farmer. The parser in CNS&G is
|
|
|
|
modified to defer the assignment of integers to discourse
|
|
|
|
referents to the Prologization module. That delay makes it
|
|
|
|
possible to unify the discourse referents for (4.6) so that only
|
|
|
|
one integer is assigned to them. With that unification
|
|
|
|
accomplished, the universe of the DRS is no longer needed, and
|
|
|
|
Prologization converts the list of properties/relations in the
|
|
|
|
conditions into a list of Prolog clauses.
|
|
|
|
|
|
Prologization works its way through the list of conditions
|
|
|
|
and produces a new list that is suitable for asserting or
|
|
|
|
querying. If a condition is a simple property or relation, the
|
|
|
|
output of a lexical rule, it is simply added to the new list. If
|
|
|
|
the condition is query(DRS), DRS itself has to be cleaned up,
|
|
|
|
Prologized, and converted into a conjunction of clauses. If the
|
|
|
|
condition is ifthen(DRSA, DRSC), DRSA (the antecedent) and DRSC
|
|
|
|
(the consequent) must be cleaned up and Skolemized before they
|
|
|
|
can be Prologized and converted into conjunctions of goals.
|
|
|
|
Skolemization involves binding each uninstantiated variable in
|
|
|
|
DRSC that does not appear in DRSA to a list whose head is a
|
|
|
|
unique integer and whose tail is the universe of DRSA.
|
|
|
|
Skolemization insures that such variables have existential import
|
|
|
|
and narrow scope.
|
|
|
|
|
|
|
|
Processing Prologized Clauses
|
|
|
|
|
|
The output of Prologization is a list of clauses, each in
|
|
|
|
one of the following forms:
|
|
|
|
|
|
(4.7.a) Clause
|
|
|
|
(b) neg(Clause)
|
|
|
|
(c) (ClauseList1 ::- ClauseList2)
|
|
|
|
(d) query(Clause)
|
|
|
|
|
|
Processing (4.7.a) in the assert/query module is a simple matter
|
|
|
|
of asserting Clause. CNS&G does not support negation; (4.7.b) is
|
|
|
|
processed simply by noting that negation is not supported. The
|
|
|
|
symbol ::- in (4.7.c) is a functor corresponding roughly to :- in
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22
|
|
|
|
|
|
Prolog; processing involves converting the list of clauses into a
|
|
|
|
conjunction of Prolog terms and asserting them. Similarly,
|
|
|
|
Clause in (4.7.d) is converted to a conjunction of Prolog terms
|
|
|
|
and called, and the result is reported to the user.
|
|
|
|
|
|
Actually, CNS&G does not assert or query anything; it
|
|
|
|
simply announces what it would do if it did. One of the first
|
|
|
|
extensions to that implementation made by CONSTRAIN is to make
|
|
|
|
the processing step work. In essence, this extension is a matter
|
|
|
|
of making the program do what the CNS&G program says it would
|
|
|
|
do. In the case of (4.7.b), Clause is not converted to a
|
|
|
|
conjunction of terms; it remains a list, the single argument to
|
|
|
|
neg.
|
|
|
|
|
|
This treatment of negation is rather cursory, but the
|
|
|
|
treatment of negation is not the focus of this study. CONSTRAIN
|
|
|
|
extends the C&S grammar to include disjunction, to which the
|
|
|
|
processing step pays similar lip service. This limitation is due
|
|
|
|
to the fact that a disjunction such as (4.8.a) is not a Horn
|
|
|
|
clause and cannot be represented directly in Prolog (although a
|
|
|
|
disjunction may appear in the body of a rule). (4.8.a) could be
|
|
|
|
represented as (4.8.b) and (4.8.c), but it would be unwise to do
|
|
|
|
so before the details of neg/1 are worked out.
|
|
|
|
|
|
(4.8.a) p OR q
|
|
|
|
(b) p ::- neg(q)
|
|
|
|
(c) q ::- neg(p)
|
|
|
|
(d) query(p)
|
|
|
|
|
|
Further extensions to the grammar require more significant
|
|
|
|
refinement of the assert/query module especially in the case of
|
|
|
|
questions; we shall return to these after examining the
|
|
|
|
extensions to the parser.
|
|
|
|
|
|
|
|
5. EXTENDING THE IMPLEMENTATION OF DRT
|
|
|
|
|
|
CONSTRAIN is divided, for ease of development, into eleven
|
|
|
|
modules:
|
|
|
|
|
|
(5.1) DRT_LOAD.GLP
|
|
|
|
DRT_UTIL.GLP
|
|
|
|
DRT_PS1.GLP
|
|
|
|
DRT_PS2.GLP
|
|
|
|
DRT_PS3.GLP
|
|
|
|
DRT_LEX.GLP
|
|
|
|
DRT_RED_GLP
|
|
|
|
DRT_PRO1.GLP
|
|
|
|
DRT_PRO2.GLP
|
|
|
|
DRT_TRY.GLP
|
|
|
|
DRT.TEST.GLP
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
DRT_LOAD loads the program. Files that include feature
|
|
|
|
structures make use of the GULP load/1 command, which converts
|
|
|
|
GULP feature notation into Prolog form. Those that do not use
|
|
|
|
feature structures are consulted because that procedure is
|
|
|
|
faster. DRT_LOAD also defines the goal loadred/0, which is used
|
|
|
|
to load the lexical redundancy rules in DRT_RED, a process that
|
|
|
|
must be repeated every time the knowledge base is cleared with
|
|
|
|
newkb/0. Placing all of the load commands in one file
|
|
|
|
facilitates relocating the program. If, for example, the program
|
|
|
|
is to be run from the A: drive, only DRT_LOAD need be edited.
|
|
|
|
|
|
DRT_UTIL contains general utility routines, such as list
|
|
|
|
manipulation procedures, and procedures for displaying a DRS in a
|
|
|
|
readable form.
|
|
|
|
|
|
DRT_PS1, DRT_PS2, and DRT_PS3 contain the phrase structure
|
|
|
|
rules. DRT_PS1 contains lexical insertion rules: rules that make
|
|
|
|
direct calls to the lexicon (DRT_LEX). DRT_PS3 contains rules
|
|
|
|
that deal with whole clauses (discourse, question, statement).
|
|
|
|
DRT_PS2 contains rules that rewrite intermediate structures.
|
|
|
|
|
|
DRT_LEX and DRT_RED contain the lexicon. The former
|
|
|
|
contains the lexicon proper, while DRT_RED contains lexical
|
|
|
|
redundancy rules, such as the rule that allows the program to
|
|
|
|
infer that Bob is a man.
|
|
|
|
|
|
DRT_PRO1 and DRT_PRO2 contain the rules that apply the DRS
|
|
|
|
output by the parser to a Prolog knowledge base. DRT_PRO1
|
|
|
|
contains the Prologization module that translates the conditions
|
|
|
|
of the DRS into Prolog clauses, and DRT_PRO2 contains the
|
|
|
|
assert/query module that asserts these clauses to the knowledge
|
|
|
|
base or calls them as queries to that knowledge base.
|
|
|
|
|
|
DRT_TRY and DRT_TEST contain the user interface. DRT_TRY
|
|
|
|
contains the rules that accept an input and send it to the
|
|
|
|
program for processing, while DRT_TEST contains a test suite that
|
|
|
|
calls DRT_TRY for processing.
|
|
|
|
|
|
|
|
Knowledge Representation
|
|
|
|
|
|
Most of the changes to C&S involve the addition of PS
|
|
|
|
rules to DRT_PS2 or DRT_PS3. These additions, of course, entail
|
|
|
|
concomitant modifications to the other modules. These
|
|
|
|
modifications, however, are based on a more fundamental
|
|
|
|
modification, a change in the form of knowledge representation in
|
|
|
|
DRT_LEX.
|
|
|
|
|
|
In Kamp's version of DRT, conditions are represented as
|
|
|
|
predicate-argument structures: Pred(Arg) or Pred(Arg1, Arg2).
|
|
|
|
Pred is the natural language word (noun, verb, or adjective), and
|
|
|
|
Arg is a discourse referent. C&S follows that representation,
|
|
|
|
with one modification: rather than being treated as predicates,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24
|
|
|
|
|
|
proper nouns are second arguments to the predicate named/2.
|
|
|
|
Thus, (5.2.a) is represented by the conditions in (5.2.b).
|
|
|
|
|
|
(5.2.a) Bob kisses Alice.
|
|
|
|
(b) [named(1, bob), named(2, alice), kiss(1, 2)]
|
|
|
|
|
|
This representation poses several problems for the design
|
|
|
|
goals of CONSTRAIN: First, with such a representation it is
|
|
|
|
awkward to distinguish between events and states. Although that
|
|
|
|
distinction plays a relatively minor role in this implementation,
|
|
|
|
it could play a major role in an extension that incorporates
|
|
|
|
Guenthner's (1987) proposals.
|
|
|
|
|
|
Second, as was noted in Section 3 of this report, some
|
|
|
|
constrainers behave differently depending on the tense of the
|
|
|
|
sentence, so it is necessary to include tense in the
|
|
|
|
representation. It would, of course, be possible to add an
|
|
|
|
argument for tense to the structure shown above, but such a
|
|
|
|
solution would be, at best, unesthetic.
|
|
|
|
|
|
Third, in order to query a knowledge base using the format
|
|
|
|
shown above, it is necessary to know the predicate in advance.
|
|
|
|
One can ask who Bob kisses, but one cannot ask what Bob does.
|
|
|
|
Finally, the use of redundancy rules is very awkward with this
|
|
|
|
format. Given (5.3.a), one would like to get an affirmative
|
|
|
|
response to
|
|
|
|
(5.3.b).
|
|
|
|
|
|
(5.3.a) Bob knows that Ted kissed Alice.
|
|
|
|
(b) Does Bob believe that Ted kissed Alice?
|
|
|
|
|
|
Using the knowledge representation in (5.2.b), it is necessary
|
|
|
|
to have a separate rule for each verb that entails believe.
|
|
|
|
|
|
In order to overcome these difficulties, this program
|
|
|
|
reifies natural language predicates so that they become arguments
|
|
|
|
to Prolog predicates. (This, in effect, is the reverse of Kamp
|
|
|
|
(1981), who uses proper nouns as predicates.) Thus, the
|
|
|
|
conditions in a DRS have one of the four forms in (5.4).
|
|
|
|
|
|
(5.4.a) named(Index, Name)
|
|
|
|
(b) isa(Noun, Index)
|
|
|
|
(c) event(Tense, Event, [Arg1|Rest])
|
|
|
|
(d) state(Tense, State, [Arg1|Rest])
|
|
|
|
|
|
Event is an action verb, while State is a stative verb or an
|
|
|
|
adjective. Representing the argument(s) to a natural language
|
|
|
|
predicate as a list makes it unnecessary to have separate rules
|
|
|
|
for addressing one- and two-place predicates.
|
|
|
|
|
|
Representations (5.4.a,b) are adequate for the current
|
|
|
|
implementation, which assumes that the name and/or class of an
|
|
|
|
entity does not change during the time covered by a discourse.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25
|
|
|
|
|
|
If the program is to cover greater periods of time, tense
|
|
|
|
arguments must be added to these predicates in order to account
|
|
|
|
for (5.5.a, b), for example.
|
|
|
|
|
|
(5.5.a) Bob was a boy.
|
|
|
|
(b) Bob is a man.
|
|
|
|
|
|
For affirmative statements, the addition of time reference
|
|
|
|
to the knowledge representation requires, at first glance, only a
|
|
|
|
simple modification of the lexical rules. That is, the C&S rule
|
|
|
|
in (5.6.a) need only be changed to that in (5.6.b) and an
|
|
|
|
additional rule be added for saw.
|
|
|
|
|
|
(5.6.a) transitive_verb(sees,
|
|
|
|
lambda(A1, A2, [see(A1,A2)]))
|
|
|
|
(b) transitive_verb(sees,
|
|
|
|
lambda(pres,A1, A2,
|
|
|
|
[event(pres, see, [A1,A2])])
|
|
|
|
|
|
For negatives and questions, however, tense is determined
|
|
|
|
by the form of the auxiliary, not that of the main verb. It is
|
|
|
|
necessary, therefore, to add a syntactic feature, syn:tense, to
|
|
|
|
the GULP feature structure in order to pass tense from the
|
|
|
|
clause-level rule to the lexical rules. Thus, for example, the
|
|
|
|
question rule of (4.1), repeated as (5.7.a), is modified to the
|
|
|
|
form of (5.7.b). (For clarity of exposition, hold arguments are
|
|
|
|
not shown, and only those feature unification rules that are
|
|
|
|
relevant to the present discussion are displayed.)
|
|
|
|
|
|
(5.7.a) question(Q) --> [does],np(NP),vp(VP).
|
|
|
|
(b) question(Q) --> {DO = syn:tense:Tense,
|
|
|
|
VP = syn:tense:Tense,
|
|
|
|
NP = syn:tense:Tense},
|
|
|
|
do(DO), np(NP), vp(VP).
|
|
|
|
|
|
(5.7.b) requires the addition of a lexical insertion rule for do
|
|
|
|
and lexical rules for do and does. The variable Tense is bound
|
|
|
|
in the do rule, and its value is passed, by way of VP, to the
|
|
|
|
lexical rule for the verb. Similar modifications are needed for
|
|
|
|
the PS rules that include the copula is, passing tense to the
|
|
|
|
subject complement.
|
|
|
|
|
|
(5.7.b) does not pass syn:tense only to VP; it also
|
|
|
|
unifies that feature with the corresponding feature in NP.
|
|
|
|
Although nouns do not have tense (at least, in the present
|
|
|
|
system, but see the discussion of isa/2 above), nouns may be
|
|
|
|
modified by attributive adjectives--states that require tense
|
|
|
|
arguments--which receive their tense from the matrix clause.
|
|
|
|
Thus, every clause-level rule must pass a tense feature to its
|
|
|
|
subject, and a VP rule must pass that feature to the direct
|
|
|
|
object.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26
|
|
|
|
|
|
Even within the limits noted above, the addition of time
|
|
|
|
reference to the knowledge representation introduces a further
|
|
|
|
difficulty: the frame problem. Given that a state obtained in
|
|
|
|
the past, does it continue into the present? For the human
|
|
|
|
processor of natural language, the frame problem is rarely a
|
|
|
|
problem. He knows which states can be assumed to be permanent
|
|
|
|
(in the absence of evidence to the contrary) and which can be
|
|
|
|
assumed to be momentary. For those states that fall in between,
|
|
|
|
he is able to assign a probable length of duration. This
|
|
|
|
assignment is based on real-world knowledge of the state and the
|
|
|
|
participants. Acquiring and programming such knowledge, however,
|
|
|
|
is a daunting problem for artificial intelligence. As is the
|
|
|
|
case for negation, CONSTRAIN adopts a simplistic approach: a
|
|
|
|
state that was true in the past remains true in the present
|
|
|
|
unless its negation in the present has been asserted. This
|
|
|
|
approach is encoded in a meaning postulate in the file DRT_RED:
|
|
|
|
|
|
(5.8) state(pres, Verb, Args) :-
|
|
|
|
state(past, Verb, Args),
|
|
|
|
not neg([state(pres, Verb, Args)])
|
|
|
|
|
|
|
|
Proper Nouns
|
|
|
|
|
|
A further extension that is independent of processing
|
|
|
|
constrained clauses is the treatment of proper nouns. Kamp
|
|
|
|
(1981) assigns a discourse referent to each proper noun, and then
|
|
|
|
equates those referents that are arguments to the same name;
|
|
|
|
thus, there can be only one individual for each name. CNS&G take
|
|
|
|
the opposite approach, allowing for more than one individual with
|
|
|
|
a particular name. Each proper noun is assigned a unique
|
|
|
|
integer, and there is no way to show that two instances of Bob
|
|
|
|
refer to the same individual.
|
|
|
|
|
|
CONSTRAIN takes a middle road. Within a discourse (a list
|
|
|
|
of words and punctuation marks), all instances of a proper noun
|
|
|
|
are assumed to refer to the same individual. The first rule for
|
|
|
|
a proper noun treats it as a pronoun, seeking a match in the
|
|
|
|
input universe. If a match is found, the new instance is
|
|
|
|
assigned the same discourse referent; otherwise a new discourse
|
|
|
|
referent is generated.
|
|
|
|
|
|
Between discourses that apply to the same knowledge base,
|
|
|
|
however, the program allows for the possibility that a new
|
|
|
|
instance of a name refers to a different individual. Before the
|
|
|
|
input string is sent to the parser, the rule preprocess/2 creates
|
|
|
|
a list of the proper nouns in the input, eliminates duplication,
|
|
|
|
and queries the user about each of the names that appears in the
|
|
|
|
knowledge base. If the user responds that this is the same (i.e.
|
|
|
|
last mentioned) or the previous individual of that name, the ap-
|
|
|
|
propriate named/2 and gender/2 propositions are placed in the
|
|
|
|
initial DRS, K0; otherwise the parser will generate a new
|
|
|
|
discourse referent for the name. To allow correct application of
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27
|
|
|
|
|
|
this procedure, when the assert/query module of DRT_PRO2
|
|
|
|
encounters a named/2 clause it first retracts that clause, if it
|
|
|
|
is present in the knowledge base, and then adds it with asserta/1
|
|
|
|
to insure that it will be the next such clause to be accessed.
|
|
|
|
|
|
(Note that pronominal anaphora can only be resolved within
|
|
|
|
a discourse. In order to address a discourse referent in the
|
|
|
|
knowledge base, it is necessary to refer to that individual by
|
|
|
|
name.)
|
|
|
|
|
|
|
|
Answering a Query
|
|
|
|
|
|
A final modification to CNS&G that is necessary for the
|
|
|
|
handling of constrained clauses but also applies to other clauses
|
|
|
|
is an extension of the mechanism for querying the knowledge base.
|
|
|
|
A query in CNS&G can only ask a yes/no question: given (5.9.a),
|
|
|
|
one may query (5.9.b), but not (5.9.c,d).
|
|
|
|
|
|
(5.9.a) Bob kissed Carol.
|
|
|
|
(b) Did Bob kiss Carol?
|
|
|
|
(c) Who kissed Carol?
|
|
|
|
(d) Whom did Bob kiss?
|
|
|
|
|
|
The first problem is to find a place to put the answer.
|
|
|
|
The CNS&G program would handle questions by converting the list
|
|
|
|
of queried propositions to a conjunction in the Prologization
|
|
|
|
step and passing that conjunction to assert_or_process/1, That
|
|
|
|
predicate in turn calls test(Goal, Result) and prints Result.
|
|
|
|
test/2 uses the built-in predicate call/1 to test that
|
|
|
|
conjunction. Result is bound to 'yes' if the call succeeds and
|
|
|
|
'no' if it fails.
|
|
|
|
|
|
The first step in this extension to that program is to
|
|
|
|
expand the possibilities for Result. test(Goal, Result), after
|
|
|
|
displaying the goal that is being queried, calls test_list(Goal,
|
|
|
|
Result). If the latter call fails, Result is bound to
|
|
|
|
'INSUFFICIENT DATA'; otherwise it returns the value assigned by
|
|
|
|
test_list/2.
|
|
|
|
|
|
test_list/2 tries three methods for assigning a value to
|
|
|
|
Result. The first method is that of CNS&G, converting the list
|
|
|
|
of propositions to be queried into a conjunction and calling that
|
|
|
|
conjunction; if the call is successful, Result is bound to
|
|
|
|
'AFFIRMATIVE.' The next method checks the knowledge base for
|
|
|
|
neg(Goal); if that check succeeds, Result is bound to 'NEGATIVE.'
|
|
|
|
Thus, this implementation replaces Prolog's negation-as-failure
|
|
|
|
with true negation. However, this procedure is not complete; a
|
|
|
|
query will return 'NEGATIVE' only if an identical list of
|
|
|
|
propositions exists as an argument to neg. Consequently, the
|
|
|
|
response to (5.10.b) will be 'INSUFFICIENT DATA.'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28
|
|
|
|
|
|
(5.10.a) Bob did not kiss a woman.
|
|
|
|
named(p0, bob),
|
|
|
|
neg([isa(X, woman), event(past, kiss, [p0, X])])
|
|
|
|
(b) Did he kiss a pretty woman?
|
|
|
|
query([isa(Y, woman), state(past, pretty, [Y]),
|
|
|
|
event(past,kiss,[p0, Y]) ])
|
|
|
|
|
|
If neither of the above methods succeeds, test_list/2
|
|
|
|
enters a recursive loop that calls query(Goal, Result) on the
|
|
|
|
head of the list of queries and than calls
|
|
|
|
test_list/2 on the remainder of the list. This recursion is
|
|
|
|
necessary in order to handle wh-questions.
|
|
|
|
|
|
At first glance, the treatment of wh-questions might seem
|
|
|
|
a trivial matter. One need only leave the discourse referent for
|
|
|
|
the interrogative word unbound, so that query/2 will seek to
|
|
|
|
bind it. However, the CNS&G parser leaves the discourse
|
|
|
|
referents of all common nouns unbound until the clean-up step is
|
|
|
|
reached, at which point it is impossible to distinguish the
|
|
|
|
referents that should be bound from those that should remain
|
|
|
|
free. To overcome this difficulty, the CONSTRAIN parser unifies
|
|
|
|
the pertinent syn:arg with the atom wh. A query containing wh
|
|
|
|
will not unify with any clause in the knowledge base, so the
|
|
|
|
first two methods for test/2 will fail for such a clause. (Note
|
|
|
|
that the treatment of interrogative who/who is quite distinct
|
|
|
|
from that for relative who/whom, which unifies the syn:index of
|
|
|
|
the relative pronoun with that of its antecedent.) When query/2
|
|
|
|
encounters such a clause, it uses the built-in predicate set_of/3
|
|
|
|
on a copy of the clause with wh replaced by a variable. It then
|
|
|
|
uses get_id_list/2 to produce a list of names of those discourse
|
|
|
|
referents or, if they are not named, of their classes. Result is
|
|
|
|
then bound to that list.
|
|
|
|
|
|
The recursion on test_list terminates when one of three
|
|
|
|
conditions is met:
|
|
|
|
|
|
(5.11.a) The input list is empty and Result is bound.
|
|
|
|
|
|
(b) The input list is empty and Result is free (it is
|
|
|
|
neither 'NEGATIVE' nor a discourse referent).
|
|
|
|
Result is then bound to 'AFFIRMATIVE.'
|
|
|
|
|
|
(c) The input list can be satisfied by one of the
|
|
|
|
non-recursive methods. Result is then bound to
|
|
|
|
that Result.
|
|
|
|
|
|
Note that if Result is bound by query/2, test_list(Goal, Result)
|
|
|
|
cannot unify with the non-recursive methods.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29
|
|
|
|
|
|
Constrained Clauses: Say Class
|
|
|
|
|
|
The extensions to CNS&G described above provide the tools
|
|
|
|
necessary for the addition of constrained clauses to the language
|
|
|
|
handled by the extended program. The first step in adding such
|
|
|
|
clauses is the development of a representation of the embedded
|
|
|
|
clause, an implementation of the proposition markers used by
|
|
|
|
Spencer-Smith (1987) and Asher (1986). The representation chosen
|
|
|
|
is an additional knowledge base predicate, prop(Index, Clause).
|
|
|
|
This structure is created by the following PS rule:
|
|
|
|
|
|
(5.12) nouncl(NC, [], []) -->
|
|
|
|
{ NC = syn:index:Index,
|
|
|
|
NC = sem:in:A,
|
|
|
|
S = sem:in:[drs([],[])|A],
|
|
|
|
S = sem:out:[DRS,drs(U, Con)|Super],
|
|
|
|
NC = sem:scope:in:[drs([Index|U],
|
|
|
|
[prop(Index,DRS)|Con])|Super],
|
|
|
|
NC = sem:scope:out:DRSList,
|
|
|
|
NC = sem:out:NewDRSList },
|
|
|
|
[that], s(S, [], []),
|
|
|
|
{ add_to_topmost_drs(Index,
|
|
|
|
[prop(Index, DRS)],
|
|
|
|
DRSList, NewDRSList) }.
|
|
|
|
|
|
The hold lists in (5.12) must be empty in order to prevent
|
|
|
|
an empty category's referring to an element outside its governing
|
|
|
|
category. Like the rules for quantified NPs and negated
|
|
|
|
sentences, (5.12) first conses an empty DRS to the input DRS;
|
|
|
|
that DRS is filled in as S is processed, becoming DRS. The
|
|
|
|
remaining NC unification rules convert Index and DRS into a
|
|
|
|
prop/2 structure and create the output. After the DCG rule has
|
|
|
|
instantiated those bindings, the rule add_to_topmost_drs/4
|
|
|
|
elevates Index and the prop/2 structure to the toplevel DRS.
|
|
|
|
|
|
The nouncl rule is called by the rules VP --> V NC and
|
|
|
|
S --> it BE (not) Adj NC, which bind the syn:class feature of V
|
|
|
|
to 'mental.' The 'mental' feature contrasts with the features
|
|
|
|
'transitive' and 'intransitive,' in the case of verbs, and
|
|
|
|
'common,' in the case of adjectives. The syn:class feature in a
|
|
|
|
lexical insertion rule determines which lexical rule will be
|
|
|
|
called, and the distinction must be reflected in the lexicon.
|
|
|
|
|
|
These modifications allow the program to handle clauses
|
|
|
|
constrained by the Say Class of constrainers. Such clauses are
|
|
|
|
simply added to the DRS and are shielded from further truth
|
|
|
|
evaluation. Thus, the program at this point will properly handle
|
|
|
|
the discourse in (5.13). (Responses to queries are shown below
|
|
|
|
the queries.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30
|
|
|
|
|
|
(5.13.a) Bob said that Ted kissed Alice.
|
|
|
|
(b) Did Bob say that Ted kissed Alice?
|
|
|
|
AFFIRMATIVE
|
|
|
|
(c) Who said that Ted kissed Alice?
|
|
|
|
bob
|
|
|
|
(d) Did Ted kiss Alice?
|
|
|
|
INSUFFICIENT DATA
|
|
|
|
(e) What did Bob say?
|
|
|
|
event(past, kiss, [ted, alice])
|
|
|
|
|
|
|
|
Regret Class Constrainers
|
|
|
|
|
|
In order to extend the set of constrainers that the
|
|
|
|
program handles to the Regret Class, the PS rule that calls the
|
|
|
|
nouncl-rule must call check_factive(NC, X) after the DCG rule
|
|
|
|
completes feature bindings. NC is the feature structure of the
|
|
|
|
constrained clause (actually, only the sem:out feature is used),
|
|
|
|
and X is that of the constrainer's category (verb or adjective).
|
|
|
|
check_factive/2 tests the constrainer with factive(Constrainer),
|
|
|
|
a redundancy rule in DRT_LEX. If the test succeeds,
|
|
|
|
add_to_topmost_drs/4 elevates the discourse referent(s) and
|
|
|
|
condition(s) of the constrained clause to the toplevel DRS and
|
|
|
|
the sem:out feature of X is bound to the result. If the test
|
|
|
|
fails, the sem:out feature of X is bound to that of NC.
|
|
|
|
Crucially, check_factive/2 makes no distinction between positive
|
|
|
|
and negative constrainers, although different rules are necessary
|
|
|
|
to handle the two structures.
|
|
|
|
|
|
Given this addition to the program, if say in (5.13) is
|
|
|
|
replaced by regret, the response to (5.13.c) is AFFIRMATIVE.
|
|
|
|
Thus, the program is able to handle Regret Class constrainers
|
|
|
|
properly. Since the Know Class differs from the Regret Class
|
|
|
|
only for first-person subjects, and since this parser does not
|
|
|
|
handle first-person NPs, the latter class is subsumed by the
|
|
|
|
former; in fact, three of the five factive constrainers included
|
|
|
|
in the program are effectively in the Know Class. The parser is
|
|
|
|
also limited to constrained clauses in the that S form, and
|
|
|
|
Suspect Class constrainers are factive only in the poss-ing form,
|
|
|
|
so that class is omitted from consideration.
|
|
|
|
|
|
Implicational relationships between know on the one hand
|
|
|
|
and think and believe on the other are captured in lexical
|
|
|
|
redundancy rules in DRT_RED. Another redundancy rule takes a
|
|
|
|
rather optimistic view of learning: that if someone has learned
|
|
|
|
something, he knows it. With these additions, the program will
|
|
|
|
handle the following discourse:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31
|
|
|
|
|
|
(5.14.a) Carol learned that Bob kissed Alice.
|
|
|
|
|
|
(b) Did Bob kiss Alice?
|
|
|
|
AFFIRMATIVE
|
|
|
|
|
|
(c) Does Carol know that Bob kissed Alice?
|
|
|
|
AFFIRMATIVE
|
|
|
|
|
|
(d) Does Carol believe that Bob kissed Alice?
|
|
|
|
AFFIRMATIVE
|
|
|
|
|
|
|
|
True Class Constrainers
|
|
|
|
|
|
As Kiparsky and Kiparsky (1970) note, the truth con-
|
|
|
|
tribution of a clause embedded under a factive verb depends only
|
|
|
|
on the immediate constrainer; depth of embedding is irrelevant.
|
|
|
|
It is for this reason that check_factive/2 can work in the
|
|
|
|
parser, even though depth of embedding is not available at the
|
|
|
|
time the rule is called. In fact, if the treatment of such
|
|
|
|
clauses were deferred, the constrainer might be buried in a list
|
|
|
|
(e.g. within prop/2) and not available for examination. That
|
|
|
|
independence does not hold for clauses constrained by True Class
|
|
|
|
constrainers. Such clauses are true only if the constrainer is
|
|
|
|
true (i.e. a toplevel assertion or the complement of a factive),
|
|
|
|
and the constrainer's truth value is not available when the con-
|
|
|
|
strainer is being parsed. Furthermore, the effect of a True
|
|
|
|
Class constrainer is dependent on its polarity, and that informa-
|
|
|
|
tion also may not be available when the constrainer is being
|
|
|
|
parsed. Thus, the treatment of complements of such constrainers
|
|
|
|
must be deferred to the processing step of the program.
|
|
|
|
|
|
CNS&G uses the predicate note/1 to assert the output of
|
|
|
|
the Prologization step to the knowledge base. That rule would
|
|
|
|
simply assert its argument. CONSTRAIN expands note/1
|
|
|
|
considerably so that it tests its argument before asserting it.
|
|
|
|
One modification that has gone unremarked is that note/1 first
|
|
|
|
attempts to retract the clause before asserting it, then uses
|
|
|
|
asserta/1 rather than assertz/1, as in CNS&G. These steps
|
|
|
|
eliminate duplication in the knowledge base and insure that the
|
|
|
|
most recently evoked clauses are at the head of the knowledge
|
|
|
|
base. It is the latter feature that allows proper nouns to be
|
|
|
|
identified across discourses. A further modification that is
|
|
|
|
made necessary by the addition of True Class constrainers is the
|
|
|
|
elimination of double negation; if the argument to neg/1 is
|
|
|
|
itself a neg/1, the argument of the inner negation is processed
|
|
|
|
and asserted.
|
|
|
|
|
|
The only clauses that reach note/1 for processing are
|
|
|
|
those that are not shielded from truth evaluation--initially,
|
|
|
|
toplevel assertions and conditions that have been raised to
|
|
|
|
toplevel by check_factive/2. Implications, including those
|
|
|
|
created from universally quantified NPs, have been converted into
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
proper Prolog rules and are subject to the constraints imposed by
|
|
|
|
the interpreter. Clauses that constitute the conditions of
|
|
|
|
negations and of embedded clauses remain in a list, an argument
|
|
|
|
to neg/1 or prop/1, and are not sent to note/1 on their own.
|
|
|
|
|
|
The representation of a True Class constrainer has the
|
|
|
|
form state(Tense, State, [X]), where State is the constrainer and
|
|
|
|
X is the discourse referent for the embedded prop/1. When note/1
|
|
|
|
encounters a clause of that form, it calls the disjunctive query
|
|
|
|
(true(State); certain(State)). These predicates, similar to
|
|
|
|
factive/1, identify those constrainers whose complements are to
|
|
|
|
be asserted to the knowledge base when the constrainer is
|
|
|
|
positive. If the call succeeds, prop(X, PropList) is called and
|
|
|
|
PropList is Skolemized and processed. The original argument to
|
|
|
|
note/1 is also asserted.
|
|
|
|
|
|
Processing PropList may bring a new True Class constrainer
|
|
|
|
to note/1. Thus, a clause embedded successively under True Class
|
|
|
|
constrainers will eventually come to note/1 to be asserted.
|
|
|
|
However, if a Say Class constrainer intervenes, the sequence will
|
|
|
|
be blocked. Thus, (5.15.c) will receive AFFIRMATIVE if (5.15.a)
|
|
|
|
has been entered, but INSUFFICIENT DATA if only (5.15.b) has been
|
|
|
|
entered.
|
|
|
|
|
|
(5.15.a) It is true that it is certain that Ted kissed Carol.
|
|
|
|
(b) It is true that it is possible that Ted kissed Carol.
|
|
|
|
(c) Did Ted kiss Carol?
|
|
|
|
|
|
Since PropList is a list of conditions, there is no
|
|
|
|
universe to provide the set of discourse referents to be
|
|
|
|
Skolemized, so set_of_args(PropList, Args) must be called to
|
|
|
|
collect those referents. Actually, this predicate was already
|
|
|
|
necessary. This program, like C&S, raises the discourse
|
|
|
|
referents of proper nouns to toplevel during parsing. CNS&G does
|
|
|
|
not do so, so these referents are available in the subordinate
|
|
|
|
universe when an implication is Skolemized. Thus, this program
|
|
|
|
must call set_of_args/2 before Skolemizing an implication.
|
|
|
|
|
|
note/1 follows a similar procedure in the case of
|
|
|
|
neg([state(Tense, State, [X])]). In this case, however, the
|
|
|
|
disjunctive query is (true(State); possible(State)); which
|
|
|
|
identifies those constrainers for which, when negated, the
|
|
|
|
negation of the complement should be asserted.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33
|
|
|
|
|
|
note/1 is also used to handle the discourse shown in
|
|
|
|
(5.16), the last of the extensions to CNS&G.
|
|
|
|
|
|
(5.16.a) Alice thinks that Ted kissed Carol.
|
|
|
|
|
|
(b) Alice is right.
|
|
|
|
|
|
(c) Did Ted kiss Carol?
|
|
|
|
AFFIRMATIVE
|
|
|
|
|
|
Because think is a Say Class constrainer, (5.16.c) will receive
|
|
|
|
INSUFFICIENT DATA if it only has (5.16.a) to work on. In order
|
|
|
|
to handle (5.16.b), it is necessary to find what she is right
|
|
|
|
about and process that proposition appropriately. The following
|
|
|
|
clause for note/1 accomplishes that.
|
|
|
|
|
|
(5.17) note(state(Tense, Truth, [X])):-
|
|
|
|
(Truth == right ; Truth == wrong),
|
|
|
|
(event(Tense, _, [X,P]) ;
|
|
|
|
state(Tense, _, [X,P])),
|
|
|
|
prop(P, Prop),
|
|
|
|
note_truth(Prop, Truth).
|
|
|
|
|
|
If Truth is bound to 'right' or 'wrong,' note/1 seeks an event or
|
|
|
|
state whose subject is X and whose complement is an embedded
|
|
|
|
clause. It then passes Prop and Truth to note_truth/2, which
|
|
|
|
asserts Prop or its negation, according to the value of Truth.
|
|
|
|
If the clause to be asserted already exists in the knowledge
|
|
|
|
base, note_truth/2 simply advises the user; if the opposite of
|
|
|
|
the clause exists there, it is retracted before the new clause is
|
|
|
|
asserted. This is a rather simple-minded treatment of belief re-
|
|
|
|
vision, but CONSTRAIN assumes that anything entered by the user
|
|
|
|
is true unless it is constrained.
|
|
|
|
|
|
|
|
6. CONCLUSION
|
|
|
|
|
|
This report has presented an extension of Discourse
|
|
|
|
Representation Theory that allows the representation of embedded
|
|
|
|
noun phrases whose truth evaluation demands special treatment
|
|
|
|
(constrained clauses), treatment that is determined by the
|
|
|
|
constrainer (verb or adjective) of the embedded noun phrase. It
|
|
|
|
has also described an implementation of DRT, CONSTRAIN, that
|
|
|
|
takes an English language input (which may contain such clauses)
|
|
|
|
and transforms it into a Prolog knowledge base that can be
|
|
|
|
queried. Both the theory and the implementation remain at the
|
|
|
|
experimental stage; both must be extended considerably before
|
|
|
|
they can be used as a natural language interface for practical
|
|
|
|
programs. In this section we consider some of the necessary
|
|
|
|
extensions.
|
|
|
|
|
|
The most needed extension to the implementation is a
|
|
|
|
proper treatment of negation. CONSTRAIN replaces the negation-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34
|
|
|
|
|
|
as-failure of Prolog with true negation, but in so doing it
|
|
|
|
trades one form of unsoundness for another. CONSTRAIN will
|
|
|
|
return NEGATIVE as the response to a query only if the knowledge
|
|
|
|
base contains a clause neg(Query) such that the elements in the
|
|
|
|
query exactly match those in Query. Thus, CONSTRAIN may return
|
|
|
|
INSUFFICIENT DATA to a query when the knowledge base contains
|
|
|
|
information that entails the response NEGATIVE.
|
|
|
|
|
|
With a more complete treatment of negation, proper
|
|
|
|
treatment of disjunction may be added. CONSTRAIN can parse a
|
|
|
|
disjunction and add it to the knowledge base, but it is unable to
|
|
|
|
use those disjunctions in order to infer conclusions. As was
|
|
|
|
noted in Section 4, a more complete treatment of negation will
|
|
|
|
make possible a more adequate treatment of disjunction.
|
|
|
|
|
|
Improved treatment of negation and disjunction are matters
|
|
|
|
of the DRT-to-Prolog portion of CONSTRAIN. An extension needed
|
|
|
|
at the other end of CONSTRAIN, the parser, is the ability to
|
|
|
|
handle other syntactic types of constrained clauses: poss-ing and
|
|
|
|
for-to complements. That extension is made difficult by the fact
|
|
|
|
that either construction may involve equi-NP deletion. Given
|
|
|
|
such an extension to the parser, it should be possible to add
|
|
|
|
other constrainers that take VP complements to the language
|
|
|
|
handled by CONSTRAIN.
|
|
|
|
|
|
Other needed additions to the parser are the facilities to
|
|
|
|
handle subordinating conjunctions and sentence adverbials (e.g.
|
|
|
|
probably, certainly). The former require a knowledge
|
|
|
|
representation that allows non-constrained clauses to be
|
|
|
|
addressed in a manner like those that are arguments to prop/2.
|
|
|
|
One possibility for such a representation is the event markers of
|
|
|
|
Guenthner (1987). Handling sentence adverbials is a relatively
|
|
|
|
simple but time-consuming matter. The machinery for DRS
|
|
|
|
construction already exists in CONSTRAIN, but it will be
|
|
|
|
necessary to add to each sentence rule a new version for each
|
|
|
|
possible adverbial position.
|
|
|
|
|
|
Extensions of the implementation will, of, course, be
|
|
|
|
required by extensions to the theory. The current version of DRT
|
|
|
|
is limited to a very small subset of natural language. Many
|
|
|
|
extensions to the theory are required before it can handle a
|
|
|
|
useful range of natural language. The most obviously needed
|
|
|
|
extensions are the ability to handle definite NPs and plural NPs.
|
|
|
|
Although definite NPs are usually anaphoric and thus could be
|
|
|
|
treated in the same fashion as pronouns, the head noun of a
|
|
|
|
definite NP is often not identical to that of its antecedent
|
|
|
|
(e.g. the two may be synonyms). Furthermore, definite NPs are
|
|
|
|
not infrequently exophoric or generic, and an implementation
|
|
|
|
would need to have some means of distinguishing between the
|
|
|
|
possibilities.
|
|
|
|
|
|
Another needed extension to the theory is a formalism for
|
|
|
|
specifying arguments that are not syntactically indicated (e.g.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35
|
|
|
|
|
|
sell requires, conceptually, a price, but that argument is not
|
|
|
|
syntactically obligatory). Handling this argument requires
|
|
|
|
default specifications and a means of determining whether the
|
|
|
|
default value applies.
|
|
|
|
|
|
These extensions, both to the implementation and to the
|
|
|
|
theory, probably require user interaction. The implementation
|
|
|
|
may need to query the user about the scope of negation, non-
|
|
|
|
anaphoric definite NPs, and default values. With these
|
|
|
|
extensions, DRT can provide a useful natural language interface
|
|
|
|
to a knowledge base.
|
|
|
|
|
|
|
|
|
|
WORKS CITED
|
|
|
|
|
|
Asher, N. 1986. Belief in discourse representation theory.
|
|
|
|
Journal of Philosophical Logic 15:127-89.
|
|
|
|
|
|
Chomsky, N. 1965. Aspects of the Theory of Syntax. Cambridge, MA:
|
|
|
|
MIT Press.
|
|
|
|
|
|
Covington, M. 1987. GULP 1.1: An extension of Prolog for
|
|
|
|
unification-based grammar. ACMC Research Report
|
|
|
|
01-0021, The University of Georgia, Athens.
|
|
|
|
|
|
Covington, M., D. Nute, N. Schmitz, and D. Goodman. 1988.
|
|
|
|
From English to Prolog via Discourse Representation
|
|
|
|
Theory. ACMC Research Report 01-0024, the University
|
|
|
|
of Georgia, Athens.
|
|
|
|
|
|
Covington, M. and N. Schmitz. 1988. An Implementation of
|
|
|
|
Discourse Representation Theory. ACMC Research Report
|
|
|
|
01-0023, The University of Georgia, Athens.
|
|
|
|
|
|
Goodman, D. 1988. An Implementation of and extension to
|
|
|
|
discourse representation theory: Translating natural
|
|
|
|
language to discourse representation structures to
|
|
|
|
Prolog clauses. Unpublished master's thesis, The
|
|
|
|
University of Georgia, Athens.
|
|
|
|
|
|
Guenthner, F. 1987. Linguistic meaning in discourse
|
|
|
|
representation theory. Synthese 73:569-98.
|
|
|
|
|
|
Guenthner, F., H. Lehman, and W. Schonfeld. 1986. A Theory for
|
|
|
|
the representation of knowledge. IBM Journal of Research
|
|
|
|
and Development 30:1.39-56.
|
|
|
|
|
|
Johnson, M., and Klein, E. 1986. Discourse, Anaphora, and
|
|
|
|
Parsing. CSLI Research Report 86-63,Stanford
|
|
|
|
University.
|
|
|
|
|
|
Kamp, H. 1981. A Theory of truth and semantic representation. In
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36
|
|
|
|
|
|
J. Groendendijk, T. Janssen, and M. Stokhof (eds.) Formal
|
|
|
|
methods in the Study of Language, 277-322. University of
|
|
|
|
Amsterdam.
|
|
|
|
|
|
Kamp, H. 1985. Unpublished discourse representation theory project
|
|
|
|
description, University of Texas, Austin.
|
|
|
|
|
|
Kiparsky, P., and C. Kiparsky. 1971. Fact. In D.
|
|
|
|
Steinberg and L. Jakobovits (eds.), Semantics,
|
|
|
|
345-369. New York: Cambridge University Press.
|
|
|
|
|
|
McCawley, J. 1981. Everything that Linguists have Always Wanted
|
|
|
|
to know about Logic. Chicago: The University of Chicago
|
|
|
|
Press.
|
|
|
|
|
|
McCawley, J. 1988. The Syntactic Phenomena of English.
|
|
|
|
Chicago: The University of Chicago Press.
|
|
|
|
|
|
Shieber, S. 1986. An Introduction to Unification-based
|
|
|
|
Approaches to Grammar. CSLI Lecture Notes No. 4,
|
|
|
|
Stanford University.
|
|
|
|
|
|
Spencer-Smith, R. 1987. Semantics and discourse representation.
|
|
|
|
Mind and Language 2:1.1-26.
|
|
|
|
|
|
Smith, W. 1989. Problems in applying discourse representation
|
|
|
|
theory. Research Report AI-1989-04, The University of
|
|
|
|
Georgia, Athens.
|
|
|
|
|
|
Zeevat, H. 1989. A compositional approach to discourse
|
|
|
|
representation theory. Linguistics and Philosophy
|
|
|
|
12:95-131.
|
|
|
|
|