Transcript Document

CAS LX 502
11b. Summarizing the
fragment analysis, relative
clauses
(F3)
S  NP VP
VP  Vt NP
S  S ConjP
VP  Vi
ConjP  Conj S
NP  Det NC
S  Neg S
NP  NP
VP  Vbe NPpred
NC  Adj NC
NPpred  Detdummy NC
Det  the, a, every
Conj  and, or
Vt  likes, hates
Adj  boring, hungry
NP  Pavarotti, Loren, Bond,
Nemo, Dory, Blinky, Semantics,
The Last Juror, hen, shen, itn,
himn, hern, himselfn, herselfn,
itselfn.
Neg  it is not the case that NC  book, fish, man, woman
Detdummy  a
Vbe  is
Quantifier Raising
Predicate modification
[S X NP Y ][S NP [S i [S X ti Y ]]] [ b]M,g = z [ []M,g(z)  [b]M,g(z) ]
where  and b are predicates
Pass-Up
Functional application
If a node b has only one daughter with a [g  b ]M,g = [b]M,g ( []M,g )
semantic value, , then [b]M,g = []M,g
or []M,g ( [b]M,g )
[Pavarotti]M,g = F(Pavarotti)
(any NP)
[boring]M,g =  x [ x  F(boring) ]
(any NC or Adj or Vi)
[likes]M,g =  y [  x [ <x,y>  F(likes) ] ]
(any Vt)
[and]M,g =  y [  x [ x  y ] ]
(analogous for or)
[it is not the case that]M,g =  x [ x ]
[every]M,g = P [ Q [ xU [P(x)  Q(x)] ] ]
[a]M,g = P [ Q [ xU [P(x)  Q(x)] ] ]
[is]M,g = —
[i]M,g = g(i)
[DETdummy a]M,g = —
[i]M,g = S [x [ [S]M,g[i/x] ] ]
Once more from the top
• Our semantic system (the fragment) is designed to take a
sentence and provide a characterization of the situations
in which the sentence would be true.
• Bond is hungry
• We determine whether this is true by comparing models
of the world, where a model is primarily a specification
of the individuals in the world and their properties.
• This is something that people can do, and by
concentrating on a small fragment of English, we are
attempting to understand something about the
mechanisms by which we compute this.
Models
• The model is based primarily on individuals (like
Bond, Pavarotti, Loren, Nemo). An individual is a
basic type of thing, we refer to it as <e> (generally
writing types between pointed brackets).
• The model of the situation provides not only a list
of the individuals in the situation, but also their
properties in the situation. Some of them are
hungry, some of them are boring. The model
specifies who the boring individuals are and who
the hungry individuals are.
Models
• We represent a property like hungry in the model by naming
it (hungry) and listing the individuals for which the property
holds.
• We use the notation F(hungry) to indicate the collection of
individuals for which the named property holds. F is the
denotation function in the situation.
• So in a particular situation, where F7 is the denotation
function for that situation, we might have:
• F7(hungry) = {Bond, Pavarotti}.
Structures
• Sentences have hierarchical structures, parts that
contain other parts. The sentence as a whole (S)
contains a noun phrase (the subject) and a verb
phrase, and in some cases the verb phrase may
contain a verb and another noun phrase (the
object).
• The syntactic base rules tell us what kinds of
structures are valid sentences in this fragment
(first slide; Bond likes Nemo can be assigned a
structure and is valid, Bond and likes every cannot
and is not).
Interpretation
• The semantic rules tell us, given a syntactic structure (tree),
how we can determine the conditions under which the
sentence is true.
• The most fundamental assumption is that meaning is
compositional: that the meaning of the whole is derived
from the meanings of its component parts (and how they are
arranged). So, to determine the meaning (semantic value) of
S, we need first to determine the meanings of its component
parts (NP and VP).
• At the bottom of the tree (the leaves) are the lexical items,
that have no component parts, but a basic meaning of their
own.
Terminal nodes
• The “leaves” or terminal nodes can be
divided into several categories.
• Some terminal nodes are simply proper
names that denote specific individuals. So,
Bond denotes the individual F(Bond), “the
individual we refer to by the name Bond.”
Individuals, again, we say have a basic type
of <e>.
Terminal nodes
• Other terminal nodes denote properties (predicates) that
can either hold or not hold of individuals. For example,
hungry.
• Our semantic rules treat these as functions. You tell hungry
who you’re talking about, it will tell you whether the
individual is hungry or not. If the individual is hungry, the
function returns “true”, if the individual is not hungry, the
function returns “false”.
• The simplest kind of sentence would be something like
Bond is hungry. This sentence would be true in any
situation where F(Bond) is in the set F(hungry).
Sentences
• A sentence in this system is either true or false,
depending on the situation. True and false are
taken to be a different kind of thing than Bond is.
We say that true and false are truth values, and we
assign the basic type of <t> to truth values.
• Since the meaning of the sentence is derived from
the meanings of its (meaningful) component parts,
whether Bond is hungry is true or false depends on
the meanings of Bond and hungry.
Sentences
• The meaning of Bond is F(Bond) (“the individual
we refer to as Bond in the situation”), an
individual, basic type <e>.
• The intuition is that the whole thing will be true
depending on whether F(hungry) contains the
individual F(Bond). So, we say that the meaning
of hungry is such that, if you give it an individual
that is in F(hungry), the result is true.
Predicates
• The translation of hungry, then is that it will take an
individual and yield true or false:
• [hungry]M,g =  x [ x  F(hungry) ]
• The  x signifies that this is a function. It is “waiting for
something to call x”. When it gets something, the result is
whatever is in the brackets. We provide this function with an
individual by writing the individual in parentheses after the
function:
•  x [ x  F(hungry) ] ( F(Bond) )
• This means we’re giving the function what it is waiting for;
it should call F(Bond) x. The result boils down to:
• F(Bond)  F(hungry)
• This could be true, it could be false; it depends on the
situation (more specifically, it depends on F).
Alphabetic variants
• One thing about functions like this is that it doesn’t
matter what we call the thing it is waiting for. We could
call it x:
•  x [ x  F(hungry) ]
• We could call it y:
•  y [ y  F(hungry) ]
• We could call it Edward:
•  Edward [ Edward  F(hungry) ]
• We could call it :
•   [   F(hungry) ]
• These are all the same function.
Interpreting sisters
• The basic principle behind our
interpretation rules (once we get past the
lexical items), is that when two nodes are
sisters, the meaning of the unit containing
the two is the result of providing one sister
as the argument to the other. This is
encoded as the Functional Application rule.
Types again
• A function like  y [ y  F(hungry) ]
S <t>
is one that is waiting for an
individual, and the thing inside the
Bond
hungry
brackets will be either true or false
<e>
<e,t>
depending on the situation.
• We say that the function has type <e,t>: it is waiting for an
<e> and when it gets it, the combination will be of type <t>.
• Because meaning is assigned using Function Application,
we can also read these complex types as <sister-type,
mother-type>. That is, even if we didn’t know already that
hungry was <e,t>, we could deduce that it is given that the
sister is type <e> and the mother is type <t>.
• Another category of lexical item we
•
•
•
•
Relations
have are relations. These are things like
like, and, or every which relate two
meanings (truthfully or not, depending
on the situation). Because our structures
S3 <t>
only ever have binary branches,
relations need to proceed in two stages.
ConjP <t,t>
S2
And is waiting for a truth value
<t>
(provided by S1), and provides
Conj
S1
something that is waiting for a (second)
and
<t>
truth value (provided by S2), the result
<t,<t,t>>
of which will be true iff both S1 and S2
are true.
[and]M,g =  y [  x [ x  y ] ]
[ConjP]M,g =  y [  x [ x  y ] ] ([S1]M,g) =  x [ x  [S1]M,g ]
[S3]M,g =  x [ x  [S1]M,g ] ([S2]M,g) = [S2]M,g  [S1]M,g
• Likes works the same way; it is waiting
Relations
for an individual (provided by Loren),
and provides something that is waiting
for a (second) individual (provided by
S <t>
Bond), the result of which will be true
iff Bond likes Loren in the situation;
VP <e,t>
NP2
that is, <F(Bond), F(Loren)>  F(likes). Bond
<e> Vt
NP1
likes
Loren
<e,<e,t>> <e>
• [likes]M,g =  y [  x [ <x,y>  F(likes) ] ]
• [VP]M,g =  y [  x [ <x,y>  F(likes) ] ] ( F(Loren) )
=  x [ <x, F(Loren)>  F(likes) ]
• [S]M,g =  x [ <x, F(Loren)>  F(likes) ] ( F(Bond) )
= <F(Bond), F(Loren)>  F(likes)
• every is one step more complicated, but its
Relations
basic structure is just likes and and and; it is
waiting for a predicate (provided by fish),
and provides something that is waiting for
a (second) predicate (provided by hungry),
the result of which will be true iff for all
individuals, being a fish implies being hungry; <et,t> NP
that is, xU [xF(fish)  xF(hungry)]
S <t>
VP
hungry
<e,t>
Det
NC
every
fish
<et,<et,t>> <e,t>
M,g
• [every] = P [ Q [ xU [P(x)  Q(x)] ] ]
• [NP]M,g = P [ Q [ xU [P(x)  Q(x)] ] ] ( y[y  F(fish)] )
= Q [ xU [ y[y  F(fish)](x)  Q(x)] ]
= Q [ xU [ x  F(fish)  Q(x)] ]
• [S]M,g = Q [ xU [ x  F(fish)  Q(x)] ] ( y[y  F(hungry)] )
= xU [ x  F(fish)  y[y  F(hungry)](x) ]
= xU [ x  F(fish)  x  F(hungry)]
• (Note: et is shorthand for <e,t>)
Object quantifiers
VP ???
• When a quantificational NP like
every book is in the object
position, there is a type mismatch
and without anything further, the
structure can not be interpreted.
• [NP]M,g is waiting for <e,t>, but
[Vt]M,g is not <e,t>.
• [Vt]M,g is waiting for <e>, but [NP]M,g
is not <e>.
Vt
likes
<e,et> Det
NP <et,t>
NC
every
book
<et,<et,t>> <e,t>
Quantifier Raising
VP ???
• Quantifier Raising (QR) is a
solution to this problem.
• Among other things, it replaces the
NP every book with tn for some
index n (here, 6) the semantic
value of which is an individual.
• [n]M,g = g(n)
• [t6]M,g = g(6)
Vt
likes
<e,et> Det
NP <et,t>
NC
every
book
<et,<et,t>> <e,t>
VP <e,t>
Vt
likes
<e,et>
t6 <e>
Quantifier
Raising
• Quantifier Raising replaces the original
position of every book with tn for some
index n (here, 6), and puts every book up
at the top of the structure.
S2 ???
Det
NC
every
fish
<et,<et,t>> <e,t>
• Notice that every book can’t simply be
the sister to S. S is type <t>, and we
would still have a type mismatch.
• We need the sister of every book to be
S1
…t6…
<t>
<et,t> NP
S2 <t>
<et,t> NP
S <e,t>
Det
NC
6
S1
type <e,t>. This is what the index (6)
every
fish <t,et> …t6…
node provides. 6 converts a sentence
<et,<et,t>> <e,t>
<t>
<t> into a predicate <e,t>.
Quantifier
Raising
• If the sentence is Bond likes
every fish, then QR results
in S1 being Bond likes t6.
S2 <t>
<et,t> NP
S <e,t>
Det
NC
6
S1
every
fish <t,et> …t6…
<et,<et,t>> <e,t>
<t>
• [S1]M,g = < F(Bond), g(6) >  F(likes)
• 6 converts this into a predicate (“something Bond likes”) by:
• Putting S1 inside x[…]
• Rewriting g(6) as x.
• [S]M,g = x [ < F(Bond), x >  F(likes) ]
• [S2]M,g says: being a fish implies being something Bond likes.
Quantifier
Raising
S2 <t>
<et,t> NP
• [S1]M,g = < F(Bond), g(6) >  F(likes)
• 6 converts this into a predicate
S <e,t>
Det
NC
6
S1
every
fish <t,et> …t6…
<et,<et,t>> <e,t>
<t>
(“something Bond likes”) by:
• Putting S1 inside x[…]
• Rewriting g(6) as x.
• The way 6 does this is by guaranteeing that the pointing function
will point to x for index 6. We use a pointing function that does
that (namely g[6/x]) instead of using g. We know that (no matter
what g is): g[6/x] (6) = x
• So, if we evaluate S1 with the pointing function g[6/x] instead of g,
we’ll effectively replace all g(6)es with xes.
• Policy: From now on, you do not need to write out what [n]M,g is
for any index n. Just write [S]M,g according to above (embed S1 in
x[…] and replace g(n) with x).
Where to go from here
• That’s a summary of the interpretation system for the
English fragment F3.
• There are a number of things that we have not yet
incorporated into F3, if we want to have a more
complete interpretation system.
• For example, tense. Bond was hungry is true under
different conditions from Bond is hungry. Or Bond will
have been hungry.
• A common approach to this is to treat the time as another
part of the situation; i.e., [S]M,g,t is true iff S is true at time t
in the situation M with “pointing function” g.
Where to go from here
• Another thing we might add are verbs like say, think,
believe, where the “object” of these verbs is another
(embedded) sentence:
• Bond believes that Loren likes Nemo.
• Bond said that every fish is hungry.
• Notice that Bond believes that Loren likes Nemo can be true
even if Loren likes Nemo is false. We need to evaluate Loren
likes Nemo with respect to Bond’s “beliefs” and not with
respect to the actual world, again something we could add to
the “situation”: [S]M,g,t,w is true iff S is true at time t in the
situation M in possible world w with “pointing function” g.
Where to go from here
• When we start dealing with “Bond’s beliefs” and
possible worlds in general, we can start
considering a formalization of modals:
• Bond must like Nemo.
• Bond might be hungry.
• Bond might be hungry will be true iff in some
possible world w (in the set of worlds comprising
the modal base), [S]M,g,t,w is true. Bond must like
Nemo will be true iff in all possible worlds w (in
the modal base), [S]M,g,t,w is true.
Where to go from here
• As hinted at the end of the last handout, we
can also add relative clauses to our
fragment, allowing for:
• The fish that likes Bond is hungry.
• A man that every fish likes likes the woman
that likes a book a fish likes.
• We’ll take this last step, as a final
augmentation of our fragment.
Relative clauses
• A relative clause acts something like an
adjective:
• a happy fish
• A fish that Bond likes
• The first holds of an x such that x is a fish
and x is happy.
• The second holds of an x such that x is a
fish and Bond likes x.
Forming relative clauses
• The way we will form relative clauses is to
effectively take a sentence:
• Bond likes every fish
• And turn it into a noun phrase:
• Every fish that Bond likes
• Which can then go anywhere an NP can go.
• To do this, we are going to need another
transformation, like Quantifier Raising.
The base structure
• We start by saying that we can expand NP
not only to NP or to Det NC, but to Rel S:
• NP  NP
• NP  Det NC
• NP  Rel S
• Rel  that
Relative clauses
• The goal is to
get: Every fish
that is hungry is
happy.
S
NP
Rel
VP
S
that NP
Det
every
VP
NC Vbe
fish
is
Vbe
Adj
is
happy
Adj
hungry
Relative
clauses
S
NP
Det
NC
every NC
fish
• Our existing
VP
N
4
Vbe
Adj
is
happy
NP
Rel
S
that t4
VP
Vbe
Adj
is
hungry
interpretation
rules can
interpret this
structure,
once we add:
• [that]M,g = —
[NP that [S X [NP Det NC] Y ] ]
[NP Det [Nc NC [S i [S that [S X ti Y ] ] ] ] ]
S
NP
Det
every NC
fish
• The relative
VP
NC
S
4
Vbe
Adj
is
happy
S
Rel
S
that t4
Relative
clauses
VP
Vbe
Adj
is
hungry
clause
formation rule
(above) must
apply
whenever the
conditions are
met.
Homework 8
• Homework 8: Due Tuesday 4/6.
• 1. Work out the truth conditions for Every fish that
is hungry is happy using the structure on the
previous slide.
• 2. Draw the structure for Every hungry fish is
happy and work out the truth conditions for it.
They should end up being the same as those you
got in part 1 for Every fish that is hungry is happy.
• Note: You do not need to explicitly write the
semantic value of index nodes (like 4 on the
preceding tree). See “policy” a few slides back.









