Download presentation
Presentation is loading. Please wait.
Published byIsabella Felicia Price Modified over 9 years ago
1
LING 388: Language and Computers Sandiway Fong Lecture 21 11/3
2
Predicate-Argument Structure looking ahead... Predicate-argument mapping from language to language – simpler mapping than parse tree to parse tree because languages may differ greatly with respect to construction format and word order Example 1 (Declarative case): – John bought a book bought(john,book) – Taroo-ga hon-o katta katta(taroo,hon) Example 2 (Subject wh-Question): – Who bought a book bought(who,book) – dare-ga hon-o katta ka katta(dare,hon) Example 3 (Object wh-Question): – What did John buy bought(john,what) – taroo-ga nani-o katta ka katta(taroo,nani)
3
New Topic Let’s write a grammar for simple Japanese
4
Japanese head-final language – we introduced the notion “head of a phrase” (see last lecture) e.g. verb is the head of a verb phrase – hit the ball – ran noun is the head of a noun phrase – the man (that I saw) – the old man – John’s mother – Japanese sentence word order(canonical) Subject Object Verb cf. English word order – Subject Verb Object
5
Japanese head-final language – sentence word order(canonical) Subject Object Verb(Japanese) Subject Verb Object(English) example – John bought a book(English) – John a book bought(Japanese word order) – Taroo-ga hon-o katta(Japanese) – case markers ga = nominative case marker o = accusative case marker – note: no determiner present in the Japanese sentence
6
Japanese head-final language – sentence word order(canonical) Subject Object Verb – Japanese also allows “scrambling” e.g. object and subject can be switched in order Subject Object Verb Object Subject Verb *Subject Verb Object (must still be head-final) Example – John bought a book(English) – John a book bought – Taroo-ga hon-o katta (Japanese - canonical) – hon-o Taroo-ga katta (Japanese - scrambled) – *Taroo-ga katta hon-o (English word order) – ga = nominative case marker – o = accusative case marker
7
Japanese example – John bought a book – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker Parser input – (as a Prolog list with case markers separated) – [taroo,ga,hon,o,katta] Example grammar rules – s(s(Y,Z)) --> np(Y), nomcase, vp(Z). – vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo)) --> [taroo]. – np(np(hon)) --> [hon]. note: new nonterminals nomcase acccase do not create structure order of np, transitive in the VP reflects Japanese word order
8
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker computation tree – ?- s(X,[taroo,ga,hon,o,katta],[]). ?- np(Y,[taroo,ga,hon,o,katta],L1). ?- nomcase(L1,L2). ?- vp(Z,L2,[]). – ?- np(Y,[taroo,ga,hon,o,katta],L1). Y = np(taroo)L1 = [ga,hon,o,katta] – ?- nomcase([ga,hon,o,katta],L2). L2 = [hon,o,katta] – ?- vp(vp(Z’,Y’), [hon,o,katta],[]). Z = vp(Z’,Y’) ?- np(Z’,[hon,o,katta],L1’). ?- acccase(L1’,L2’). ?- transitive(Y’,L2’,[]). 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon].
9
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker computation tree – ?- vp(vp(Z’,Y’), [hon,o,katta],[]). ?- np(Z’,[hon,o,katta],L1’). ?- acccase(L1’,L2’). ?- transitive(Y’,L2’,[]). – ?- np(Z’,[hon,o,katta],L1’) Z’ = np(hon)L1’ = [o,katta] – ?- acccase([o,katta],L2’). L2’ = [katta] – ?- transitive(Y’,[katta],[]). Y’ = v(katta) answer – ?- s(X,[taroo,ga,hon,o,katta],[]). – X = s(np(taroo), vp(np(hon), v(katta))) 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon].
10
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker grammar – can be run “backwards” for sentence generation – we’ll need this query – ?- s(s(np(taroo), vp(np(hon), v(katta))),L,[]). – L = [taroo, ga, hon, o, katta] 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon]. Generator SentenceParse tree Parser SentenceParse tree
11
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker query (generation) – ?- s(s(np(taroo),vp(np(hon),v(katta))),L,[]). Y = np(taroo)Z = vp(np(hon),v(katta))) ?- np(np(taroo),L,L1). ?- nomcase(L1,L2). ?- vp(vp(np(hon),v(katta))),L2,[]). – ?- np(np(taroo),L,L1). L = [taroo|L1] – ?- nomcase(L1,L2). L1 = [ga|L2] – ? - vp(vp(np(hon),v(katta))),L2,[]). Z’ = np(hon)Y’ = v(katta) ?- np(np(hon),L2,L3). ?- acccase(L3,L4). ?- transitive(v(katta),L4,[]). 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon].
12
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker query (generation) – ?- vp(vp(np(hon),v(katta))),L2,[]). Z’ = np(taroo)Y’ = v(katta) ?- np(np(hon),L2,L3). ?- acccase(L3,L4). ?- transitive(v(katta),L4,[]). – ?- np(np(hon),L2,L3). L2 = [hon|L3] – ?- acccase(L3,L4). L3 = [o|L4] – ?- transitive(v(katta),L4,[]). L4 = [katta|[]] 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon].
13
Japanese example – John a book bought – taroo-ga hon-o katta – ga = nominative case marker – o = accusative case marker query (generation) – back-substituting... – ?- np(np(taroo),L,L1). L = [taroo|L1] – ?- nomcase(L1,L2). L1 = [ga|L2] – ?- np(np(hon),L2,L3). L2 = [hon|L3] – ?- acccase(L3,L4). L3 = [o|L4] – ?- transitive(v(katta),L4,[]). L4 = [katta|[]] answer – L = [taroo, ga, hon, o, katta] 1.s(s(Y,Z)) --> np(Y), nomcase, vp(Z). 2.vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). 3.transitive(v(katta)) --> [katta]. 4.nomcase --> [ga]. 5.acccase --> [o]. 6.np(np(taroo)) --> [taroo]. 7.np(np(hon)) --> [hon].
14
Japanese wh-NP phrases – English – examples John bought a book Who bought a book?(subject wh-phrase) *John bought what?(echo-question only) What did John buy?(object wh-phrase) object wh-phrase case – complex operation required from the declarative form: » object wh-phrase must be fronted » do-support (insertion of past tense form of “do”) » bought buy (untensed form) John bought a bookJohn bought whatwhat John boughtwhat did John boughtwhat did John buy
15
Japanese wh-NP phrases – English Who bought a book?(subject wh-phrase) *John bought what?(only possible as an echo-question) What did John buy?(object wh-phrase) – Japanese wh-in-situ: – meaning wh-phrase appears in same position as a regular noun phrase – easy to implement!(no complex series of operations) taroo-ga nani-o katta ka – nani: means what – ka: sentence-final question particle dare-ga hon-o katta ka – dare: means who
16
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y), nomcase, vp(Z). – vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo)) --> [taroo]. – np(np(hon)) --> [hon]. add new wh-words – np(np(dare)) --> [dare]. – np(np(nani)) --> [nani].
17
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y), nomcase, vp(Z). – vp(vp(Z,Y)) --> np(Z), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo)) --> [taroo]. – np(np(hon)) --> [hon]. – np(np(dare)) --> [dare]. – np(np(nani)) --> [nani]. allows sentences – Taroo-ga hon-o katta – Taroo-ga nani-o katta (ka) – dare-ga hon-o katta (ka) Assuming for simplicity that a sentence-final particle is required for wh-questions… How do we enforce the constraint that ka is obligatory when a wh- phrase is in the sentence? Assuming for simplicity that a sentence-final particle is required for wh-questions… How do we enforce the constraint that ka is obligatory when a wh- phrase is in the sentence?
18
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y,Q), nomcase, vp(Z). – vp(vp(Z,Y)) --> np(Z,Q), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo),notwh) --> [taroo]. – np(np(hon),notwh) --> [hon]. – np(np(dare),wh) --> [dare]. – np(np(nani),wh) --> [nani]. answer – employ an extra argument to encode the lexical feature wh (with values wh, notwh ) for nouns
19
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2). – vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo),notwh) --> [taroo]. – np(np(hon),notwh) --> [hon]. – np(np(dare),wh) --> [dare]. – np(np(nani),wh) --> [nani]. answer – employ an extra argument to encode the lexical feature wh for nouns – propagate this feature up to the (top) sentence rule means adding extra argument Q to the VP nonterminal
20
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2). – vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo),notwh) --> [taroo]. – np(np(hon),notwh) --> [hon]. – np(np(dare),wh) --> [dare]. – np(np(nani),wh) --> [nani]. answer – employ an extra argument to encode the lexical feature wh for nouns – propagate this feature up to the s rule – add a sentence-final particle rule ( sf ) that generates ka when this feature is wh
21
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who grammar – s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2). – vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y). – transitive(v(katta)) --> [katta]. – nomcase --> [ga]. – acccase --> [o]. – np(np(taroo),notwh) --> [taroo]. – np(np(hon),notwh) --> [hon]. – np(np(dare),wh) --> [dare]. – np(np(nani),wh) --> [nani]. sentence-final particle rule ( sf/2 ) – sf(wh,notwh) --> [ka]. – sf(notwh,wh) --> [ka]. – sf(notwh,notwh) --> []. (empty) – sf(wh,wh) --> [ka].( example: dare-ga nani-o katta ka: who bought what )
22
Japanese wh-in-situ: – taroo-ga nani-o katta ka nani: means what ka: sentence-final question particle – dare-ga hon-o katta ka dare: means who computation tree – ?- s(X,[taroo,ga,nani,o,katta,ka],[]). – X = s(np(taroo),vp(np(nani),v(katta))) – ?- s(X,[taroo,ga,nani,o,katta],[]). – no s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2). vp(vp(Z,Y),Q) --> np(Z,Q), acccase, transitive(Y). transitive(v(katta)) --> [katta]. nomcase --> [ga]. acccase --> [o]. np(np(taroo),notwh) --> [taroo]. np(np(hon),notwh) --> [hon]. np(np(dare),wh) --> [dare]. np(np(nani),wh) --> [nani]. sf(wh,notwh) --> [ka]. sf(notwh,wh) --> [ka]. sf(notwh,notwh) --> []. sf(wh,wh) --> [ka]. we may want to modifiy the parse tree to represent the sentence-final particle ka as well
23
Japanese Alternative implementations… so far, we used: – s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), sf(Q1,Q2). could have written – s(s(Y,Z)) --> np(Y,notwh), nomcase, vp(Z,notwh). – s(s(Y,Z)) --> np(Y,Q1), nomcase, vp(Z,Q2), {\+ Q1=notwh ; \+ Q2=notwh }, sf. – sf --> [ka]. or – s(s(Y,Z)) --> np(Y,notwh), nomcase, vp(Z,notwh). – s(s(Y,Z,ka)) --> np(Y,Q1), nomcase, vp(Z,Q2), {\+ Q1=notwh ; \+ Q2=notwh }, sf. – sf --> [ka]. – generates different structures for declarative vs. wh-NP questions
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.