Verb complements
4.1 Introduction
In order to parse a verb, after having matched a verb class tag and a compatible verb code with a call of verb from section 2.8, we next need to establish the complement consequences for the verb. This starts with verb_complements_top_layer, which has the non-recursive rule of (4.1) to call verb_complements_by_code:
- (4.1)
-
verb_complements_top_layer(Code,Store,SbjType,Voice,L,L0) -->
verb_complements_by_code(Code,Store,SbjType,Voice,L,L0).
There are also the recursive rules of (4.2) to:
- [rule 1] integrate as a clause final element a notional subject when the SbjType setting is provisional_sbj, discussed in section 6.5
- [rule 2] integrate as a clause final element a notional subject that is a to-infinitive clause with passive voice when the Code setting is ;~La and the SbjType setting is derived_sbj, discussed in section 6.6
- [rule 3] integrate as a clause final element a notional subject that is a to-infinitive clause with active voice when the Code setting is ;~La and the SbjType setting is derived_sbj, discussed in section 6.6
- [rule 4] include negation with neg (from section 2.10)
- [rule 5] include an adverbial prior to the verb complements
- [rule 6] include an adverbial after the verb complements
- (4.2)
-
verb_complements_top_layer(Code,Store,provisional_sbj,Voice,L,L0) -->
verb_complements_top_layer(Code,Store,filled_sbj,Voice,L,L1),
notional_item('-NSBJ',L1,L0).
verb_complements_top_layer(';~La',Store,derived_sbj,active,L,L0) -->
verb_complements_top_layer(';~La',[],filled_sbj,active,L,[node('IP-INF-NSBJ',VL)|L0]),
{
member(SbjType,[filled_sbj,unfilled_sbj])
},
to_inf_layer(Store,SbjType,passive,VL,[]).
verb_complements_top_layer(';~La',Store,derived_sbj,active,L,L0) -->
verb_complements_top_layer(';~La',[],filled_sbj,active,L,[node('IP-INF-NSBJ',VL)|L0]),
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_top_layer(Code,Store,SbjType,Voice,L,L0) -->
neg(L,L1),
verb_complements_top_layer(Code,Store,SbjType,Voice,L1,L0).
verb_complements_top_layer(Code,Store,SbjType,Voice,L,L0) -->
adverbial(L,L1),
verb_complements_top_layer(Code,Store,SbjType,Voice,L1,L0).
verb_complements_top_layer(Code,Store,SbjType,Voice,L,L0) -->
verb_complements_top_layer(Code,Store,SbjType,Voice,L,L1),
adverbial(L1,L0).
With [rules 5 and 6] of (4.2), an adverbial is included with a call to an adverbial rule of (4.3), which can pick up:
- [rule 1] adverb phrases with -NIM (unselected adverbial) function
- [rule 2] preposition phrases with -NIM (unselected adverbial) function
- [rule 3] the subordinate component of a subordinate conjunction
- (4.3)
-
adverbial(L,L0) -->
adverb_phrase('-NIM',non_privileged,L,L0).
adverbial(L,L0) -->
preposition_phrase('-NIM',non_privileged,L,L0).
adverbial(L,L0) -->
scon_clause(L,L0).
The rest of this chapter gives the rules of verb_complements_by_code needed to complete calls of the non-recursive verb_complements_top_layer rule of (4.1).
4.2 Linking verbs
This section establishes selection criteria for linking verbs.
Code ;~La selects an adjective phrase with subject predicative function (ADJP-PRD2). For calls of the verb_complements_by_code rules of (4.4), either:
- [rules 1 and 2] the word list should only have content for an adjective phrase
- [rule 3] the word list should be empty and there should be adj(ICH) information for a stored adjective phrase index
Also, the rules of (4.4) differ in the setting of the SbjType parameter:
- [rules 1 and 3] filled_sbj
- [rule 2] expletive_sbj
One thing the rules of (4.4) have in common is that each sets the Voice parameter to active.
- (4.4)
-
verb_complements_by_code(';~La',[],filled_sbj,active,L,L0) -->
{
member(Type,[catenative,non_privileged])
},
adjective_phrase('-PRD2',Type,L,L0).
verb_complements_by_code(';~La',[],expletive_sbj,active,L,L0) -->
adjective_phrase('-PRD2',non_privileged,L,L0).
verb_complements_by_code(';~La',[adjp(ICH)],filled_sbj,active,[node('ADJP-PRD2',[ICH])|L],L) -->
[].
Parsing word list (4.5) as a sentence leads to the verb_complements_by_code call seen with (4.6).
- (4.5)
-
[w('PRO','He'), w('VBD',';~La','appeared'), w('ADJ','tall'), w('PUNC','.')]
- (4.6)
-
| ?- tphrase_set_string([w('ADJ','tall')]), parse(verb_complements_by_code(';~La',[],filled_sbj,active)).
(ADJP-PRD2 (ADJ tall))
yes
Word list content for (4.6) is the adjective w('ADJ','tall'). This is material for an adjective phrase when Type information is set to non_privileged, and so success is possible under [rule 1] of (4.4) with its adjective_phrase call.
Parsing word list (4.7) as a sentence leads to the verb_complements_by_code call seen with (4.8).
- (4.7)
-
[w('PRO','He'), w('BED',';~La','was'), w('ADJ;_cat_','unable'), w('TO','to'), w('VB',';~I','move'), w('PUNC','.')]
- (4.8)
-
| ?- tphrase_set_string([w('ADJ;_cat_','unable'), w('TO','to'), w('VB',';~I','move')]), parse(verb_complements_by_code(';~La',[],filled_sbj,active)).
(ADJP-PRD2 (ADJ;_cat_ unable)
(IP-INF (TO to)
(VB;~I move)))
yes
Word list content for (4.8) is the adjective w('ADJ;_cat_','unable') together with following material for a to-infinitive clause. This is material for an adjective phrase when Type information is set to catenative, and so success is possible under [rule 1] of (4.4) with its adjective_phrase call.
Parsing word list (4.9) as a sentence leads to the verb_complements_by_code call seen with (4.10).
- (4.9)
-
[w('PRO;_expletive_','It'), w('BEP',';~La','is'), w('ADJ','cold'), w('PUNC','.')]
- (4.10)
-
| ?- tphrase_set_string([w('ADJ','cold')]), parse(verb_complements_by_code(';~La',[],expletive_sbj,active)).
Note the expletive_sbj setting for the SbjType parameter in (4.10) inherited from the expletive it of (4.9). Also, there is an adjective as word list content for (4.10), making success possible under [rule 2] of (4.4) with its adjective_phrase call.
Parsing word list (4.11) as a sentence leads to the verb_complements_by_code call seen with (4.12).
- (4.11)
-
[w('WADV','How'), w('ADJ','annoying'), w('MD',';~cat_Vi','would'), w('D;_nphd_','that'), w('BE',';~La','be'), w('PUNC','?')]
- (4.12)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~La',[adjp(node('*ICH*-122',[]))],filled_sbj,active)).
(ADJP-PRD2 *ICH*-122)
yes
With (4.12), the word list is empty, yet [w('WADV','How'),w('ADJ','annoying')] of (4.11) brings about a stored adjective phrase index (adjp(node('*ICH*-122',[]))), allowing the verb_complements_by_code call to succeed under [rule 2] of (4.4).
Code ;~Ln selects a noun phrase with subject predicative function (NP-PRD2). For calls of the verb_complements_by_code rules of (4.13), either:
- [rules 1 and 2] the word list should only have content for a noun phrase
- [rule 3] the word list should be empty and there should be np(ICH) information for a stored noun phrase index
Also, the rules of (4.13) differ in the setting of the SbjType parameter:
- [rules 1 and 3] filled_sbj
- [rule 2] expletive_sbj
One thing the rules of (4.13) have in common is that each sets the Voice parameter to active.
- (4.13)
-
verb_complements_by_code(';~Ln',[],filled_sbj,active,L,L0) -->
noun_phrase('-PRD2',non_privileged,L,L0).
verb_complements_by_code(';~Ln',[],expletive_sbj,active,L,L0) -->
noun_phrase('-PRD2',non_privileged,L,L0).
verb_complements_by_code(';~Ln',[np(ICH)],filled_sbj,active,[node('NP-PRD2',[ICH])|L],L) -->
[].
Parsing word list (4.14) as a sentence leads to the verb_complements_by_code call seen with (4.15).
- (4.14)
-
[w('PRO','I'), w('VBD',';~Tf','thought'), w('PRO','you'), w('BED',';~Ln','were'), w('D','the'), w('NPR','Egyptian'), w('PUNC','.')]
- (4.15)
-
| ?- tphrase_set_string([w('D','the'), w('NPR','Egyptian')]), parse(verb_complements_by_code(';~Ln',[],filled_sbj,active)).
(NP-PRD2 (D the)
(NPR Egyptian))
yes
There is a determiner followed by a noun as word list content for (4.15). This is material for a noun phrase, making success possible under [rule 1] of (4.13) with its noun_phrase call.
Parsing word list (4.16) as a sentence leads to the verb_complements_by_code call seen with (4.17).
- (4.16)
-
[w('PRO;_expletive_','It'), w('BED',';~Ln','was'), w('N','night'), w('PUNC','.')]
- (4.17)
-
| ?- tphrase_set_string([w('N','night')]), parse(verb_complements_by_code(';~Ln',[],expletive_sbj,active)).
(NP-PRD2 (N night))
yes
Note the expletive_sbj settings for the SbjType parameter in (4.17) inherited from the expletive it of (4.16). Also, there is a noun as word list content for (4.17), making success possible under [rule 2] of (4.13) with its noun_phrase call.
Parsing word list (4.18) as a noun phrase leads to the verb_complements_by_code call seen with (4.19).
- (4.18)
-
[w('D','the'), w('N','man'), w('PRO','I'), w('VBD',';~Tf','thought'), w('PRO','you'), w('BED',';~Ln','were')]
- (4.19)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Ln',[np(node('*T*',[]))],filled_sbj,active)).
(NP-PRD2 *T*)
yes
The word list is empty for (4.19), yet information is stored about a relative clause trace (np(node('*T*',[]))) (see section 6.9), allowing the verb_complements_by_code call to succeed under [rule 3] of (4.13).
4.3 Intransitive verbs
This section establishes selection criteria for intransitive verbs.
With code ;~I, there are no selected complement elements. Both rules of (4.20) expect an empty word list and no stored information ([]). They both return the content of L (gathered content of the clause layer) without change. They differ in the setting of the SbjType parameter:
- [rule 1] filled_sbj
- [rule 2] expletive_sbj
- (4.20)
-
verb_complements_by_code(';~I',[],filled_sbj,active,L,L) -->
[].
verb_complements_by_code(';~I',[],expletive_sbj,active,L,L) -->
[].
Parsing word list (4.21) as a sentence leads to the verb_complements_by_code call seen with (4.22) where the word list is empty.
- (4.21)
-
[w('PRO','He'), w('VBD',';~I','smiled'), w('PUNC','.')]
- (4.22)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~I',[],filled_sbj,active)).
yes
Because there is content in (4.21) for a contentful subject ([w('PRO','He')]), the SbjType setting is filled_sbj in (4.22) for success under [rule 1] of (4.20). Also, note how the result of (4.22) reflects an absence of any tree structure being created.
Parsing word list (4.23) as a sentence leads to the verb_complements_by_code call seen with (4.24) where the word list is empty.
- (4.23)
-
[w('PRO;_expletive_','It'), w('VBD',';~I','rained'), w('PUNC','.')]
- (4.24)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~I',[],expletive_sbj,active)).
yes
Because there is content in (4.23) for an expletive subject ([w('PRO;_expletive_','It')]), the SbjType setting is expletive_sbj in (4.24) for success under [rule 2] of (4.20).
Question
Why does query (4.25) fail?
- (4.25)
-
| ?- tphrase_set_string([w('EX','There'), w('VBD',';~I','rained'), w('PUNC','.')]), parse(sentence).
no
Code ;~Ip selects an adverbial particle that is the head of an adverb phrase with a function closely related to the meaning of the verb (ADVP-CLR). For calls of the verb_complements_by_code rules of (4.26), either:
- [rule 1] the word list should only have content for an adverb phrase
- [rule 2] the word list should be empty and there should be advp(ICH) information for a stored adverb phrase index
- (4.26)
-
verb_complements_by_code(';~Ip',[],filled_sbj,active,L,L0) -->
adverb_phrase('-CLR',particle,L,L0).
verb_complements_by_code(';~Ip',[advp(ICH)],filled_sbj,active,[node('ADVP-CLR',[ICH])|L],L) -->
[].
Parsing word list (4.27) as a sentence leads to the verb_complements_by_code call seen with (4.28).
- (4.27)
-
[w('NPR','Nasha'), w('VBD',';~Ip','looked'), w('RP','back'), w('PUNC','.')]
- (4.28)
-
| ?- tphrase_set_string([w('RP','back')]), parse(verb_complements_by_code(';~Ip',[],filled_sbj,active)).
(ADVP-CLR (RP back))
yes
The only remaining content of the word list for (4.28) is an adverbial particle, and so success happens with [rule 1] of (4.26) that consists of an adverb_phrase call with Type set to particle.
Parsing word list (4.29) as a sentence leads to the verb_complements_by_code call seen with (4.30).
- (4.29)
-
[w('D','the'), w('N','place'), w('RADV','where'), w('PRO','you'), w('BEP',';~cat_Vg','are'), w('VAG',';~Ip','standing')]
- (4.30)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Ip',[advp(node('*ICH*-178',[]))],filled_sbj,active)).
(ADVP-CLR *ICH*-178)
yes
There is no remaining word list information for (4.30) but there is Store information for an adverb phrase that has yet to integrate with the overall parse structure, and so success is possible with [rule 2] of (4.26).
Code ;~Ipr selects a preposition phrase with a function closely related to the meaning of the verb (PP-CLR). For calls of the verb_complements_by_code rules of (4.31), either:
- [rule 1] the word list should only have content for a preposition phrase
- [rule 2] the word list should only have content for a preposition and there should be np(ICH) information for a stored noun phrase index
- [rule 3] the word list should be empty and there should be pp(ICH) information for a stored preposition phrase index
- [rule 4] the word list should only have content for a preposition and the Voice setting should be passive
- (4.31)
-
verb_complements_by_code(';~Ipr',[],filled_sbj,active,L,L0) -->
preposition_phrase('-CLR',non_privileged,L,L0).
verb_complements_by_code(';~Ipr',[np(ICH)],filled_sbj,active,[node('PP-CLR',[Role,node('NP',[ICH])])|L],L) -->
role([Role],[]).
verb_complements_by_code(';~Ipr',[pp(ICH)],filled_sbj,active,[node('PP-CLR',[ICH])|L],L) -->
[].
verb_complements_by_code(';~Ipr',[],filled_sbj,passive,[node('PP-CLR',[Role])|L],L) -->
role([Role],[]).
Parsing word list (4.32) as a sentence leads to the verb_complements_by_code call seen with (4.33).
- (4.32)
-
[w('PRO','They'), w('VBD',';~Ipr','went'), w('P-ROLE','to'), w('N','bed'), w('PUNC','.')]
- (4.33)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('N','bed')]), parse(verb_complements_by_code(';~Ipr',[],filled_sbj,active)).
(PP-CLR (P-ROLE to)
(NP (N bed)))
yes
The word list for (4.33) is left with a preposition word and a following noun word, so content to identify a preposition phrase. Consequently, success happens with [rule 1] of (4.31) with its preposition_phrase call.
Parsing word list (4.34) as a sentence leads to the verb_complements_by_code call seen with (4.35).
- (4.34)
-
[w('D','a'), w('N','place'), w('RPRO','that'), w('PRO','they'), w('ADV','all'), w('VBD',';~Ipr','went'), w('P-ROLE','to')]
- (4.35)
-
| ?- tphrase_set_string([w('P-ROLE','to')]), parse(verb_complements_by_code(';~Ipr',[np(node('*ICH*-182',[]))],filled_sbj,active)).
(PP-CLR (P-ROLE to)
(NP *ICH*-182))
yes
The only remaining content of the word list for (4.35) is a preposition word. Because there is also Store information for a noun phrase that has yet to integrate with the overall parse structure, success is possible with [rule 2] of (4.31) that has only a role call for identifying a preposition word.
Parsing word list (4.36) as a noun phrase leads to the verb_complements_by_code call seen with (4.37).
- (4.36)
-
[w('D','the'), w('NS','leaks'), w('P-ROLE','through'), w('RPRO','which'), w('D','the'), w('ADJ','precious'), w('N','air'), w('BED',';~cat_Vg','was'), w('VAG',';~Ipr','rushing')]
- (4.37)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Ipr',[pp(node('*ICH*-182',[]))],filled_sbj,active)).
(PP-CLR *ICH*-182)
yes
While the word list is empty for (4.30), there is Store information for a preposition phrase that has yet to integrate with the overall parse structure. Consequently, success is possible with [rule 3] of (4.31).
Parsing word list (4.38) as a sentence leads to the verb_complements_by_code call seen with (4.39).
- (4.38)
-
[w('D;_nphd_','These'), w('BEP',';~cat_Ve_passive_','are'), w('VVN',';~Ipr','looked'), w('P-ROLE','after'), w('P-ROLE','by'), w('PRO','us'), w('PUNC','.')]
- (4.39)
-
| ?- tphrase_set_string([w('P-ROLE','after')]), parse(verb_complements_by_code(';~Ipr',[],filled_sbj,passive)).
(PP-CLR (P-ROLE after))
yes
The only remaining content of the word list for (4.39) is a preposition word. Although the Store information is empty, the clause Type information is set to passive, and so success is possible with [rule 4] of (4.31).
Code ;~In/pr selects either a noun phrase (NP-CLR) or a preposition phrase (PP-CLR). For calls of the verb_complements_by_code rules of (4.40), either:
- [rule 1] the word list should only have content for a noun phrase
- [rule 2] the word list should only have content for a preposition phrase
- (4.40)
-
verb_complements_by_code(';~In/pr',[],filled_sbj,active,L,L0) -->
noun_phrase('-CLR',non_privileged,L,L0).
verb_complements_by_code(';~In/pr',[],filled_sbj,active,L,L0) -->
preposition_phrase('-CLR',non_privileged,L,L0).
Parsing word list (4.41) as a sentence leads to the verb_complements_by_code call seen with (4.42).
- (4.41)
-
[w('PRO','We'), w('VBD',';~In/pr','stayed'), w('D','a'), w('N','fortnight'), w('PUNC','.')]
- (4.42)
-
| ?- tphrase_set_string([w('D','a'), w('N','fortnight')]), parse(verb_complements_by_code(';~In/pr',[],filled_sbj,active)).
(NP-CLR (D a)
(N fortnight))
yes
The word list for (4.42) is left with a determiner word and a following noun word, so content to identify a noun phrase. Consequently, success happens with [rule 1] of (4.40) with its noun_phrase call.
Parsing word list (4.43) as a sentence leads to the verb_complements_by_code call seen with (4.44).
- (4.43)
-
[w('PRO','We'), w('VBD',';~In/pr','stayed'), w('P-ROLE','for'), w('D','a'), w('N','fortnight'), w('PUNC','.')]
- (4.44)
-
| ?- tphrase_set_string([w('P-ROLE','for'), w('D','a'), w('N','fortnight')]), parse(verb_complements_by_code(';~In/pr',[],filled_sbj,active)).
(PP-CLR (P-ROLE for)
(NP (D a)
(N fortnight)))
yes
The word list for (4.44) is left with a preposition word, a determiner word and a noun word, so content to identify a preposition phrase. Consequently, success happens with [rule 2] of (4.40) with its preposition_phrase call.
Code ;~It selects a to-infinitive clause (IP-INF-CLR). For a call of the verb_complements_by_code rule of (4.45), the word list should only have content for a to-infinitive clause.
- (4.45)
-
verb_complements_by_code(';~It',[],filled_sbj,active,L,L0) -->
ip_to_inf('-CLR',[],L,L0).
Parsing word list (4.46) as a sentence leads to the verb_complements_by_code call seen with (4.47).
- (4.46)
-
[w('PRO','We'), w('MD',';~cat_Vi','will'), w('NEG','not'), w('VB',';~It','hesitate'), w('TO','to'), w('VB',';~Ip','go'), w('RP','further'), w('PUNC','.')]
- (4.47)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~Ip','go'), w('RP','further')]), parse(verb_complements_by_code(';~It',[],filled_sbj,active)).
(IP-INF-CLR (TO to)
(VB;~Ip go)
(ADVP-CLR (RP further)))
yes
The word list for (4.47) is left with content to identify a to-infinitive clause. Consequently, success happens with (4.45) with its ip_to_inf call.
Parsing word list (4.48) as a sentence leads to the verb_complements_by_code call seen with (4.49).
- (4.48)
-
[w('PRO','We'), w('VBD',';~It','waited'), w('P-CONN','for'), w('PRO','it'), w('TO','to'), w('VB',';~I','start'), w('PUNC','.')]
- (4.49)
-
| ?- tphrase_set_string([w('P-CONN','for'), w('PRO','it'), w('TO','to'), w('VB',';~I','start')]), parse(verb_complements_by_code(';~It',[],filled_sbj,active)).
(IP-INF-CLR (P-CONN for)
(NP-SBJ (PRO it))
(TO to)
(VB;~I start))
yes
The word list for (4.49) is left with content to identify a to-infinitive clause with a clause initial for connective word and material for a subject noun phrase prior to the to word. Consequently, success happens with (4.45) with its ip_to_inf call.
4.4 Mono-transitive verbs
This section establishes selection criteria for mono-transitive verbs.
Code ;~Tn selects a noun phrase with object function (NP-OB1). For calls of the verb_complements_by_code rules of (4.50) with filled_sbj and active settings, the object noun phrase can occur either:
- [rule 1] as content from the word list
- [rule 2] as a stored np(ICH)
When the Voice setting is passive:
- [rule 3] there is only the filled_sbj requirement, so displacement and word lists have to be empty
- (4.50)
-
verb_complements_by_code(';~Tn',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L0).
verb_complements_by_code(';~Tn',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L) -->
[].
verb_complements_by_code(';~Tn',[],filled_sbj,passive,L,L) -->
[].
Parsing word list (4.51) as a sentence leads to the verb_complements_by_code call seen with (4.52).
- (4.51)
-
[w('D','The'), w('N','teacher'), w('VBD',';~Tn','scolded'), w('NPR','John'), w('PUNC','.')]
- (4.52)
-
| ?- tphrase_set_string([w('NPR','John')]), parse(verb_complements_by_code(';~Tn',[],filled_sbj,active)).
(NP-OB1 (NPR John))
yes
The word list for (4.52) is left with a proper noun word, so content to identify a noun phrase. Consequently, success happens with [rule 1] of (4.50) with its noun_phrase call.
Parsing word list (4.53) as a sentence leads to the verb_complements_by_code call seen with (4.54).
- (4.53)
-
[w('D','a'), w('N','student'), w('RPRO','that'), w('D','the'), w('N','teacher'), w('VBD',';~Tn','scolded')]
- (4.54)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Tn',[np(node('*ICH*-114',[]))],filled_sbj,active)).
(NP-OB1 *ICH*-114)
yes
While the word list is empty for (4.54), there is Store information for a noun phrase that has yet to integrate with the overall parse structure. Consequently, success happens with [rule 2] of (4.50)
Parsing word list (4.55) as a sentence leads to the verb_complements_by_code call seen with (4.56).
- (4.55)
-
[w('NPR','John'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Tn','scolded'), w('PUNC','.')]
- (4.56)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Tn',[],filled_sbj,passive)).
yes
The word list is empty for (4.56). Although the Store information is also empty, the clause Type information is set to passive, and so success is possible with [rule 3] of (4.50).
Code ;~Tn.p selects a noun phrase with object function (NP-OB1) and an adverbial particle that is the head of an adverb phrase with a function closely related to the verb meaning (ADVP-CLR). For calls of the verb_complements_by_code rules of (4.57) with filled_sbj and active settings, either:
- [rule 1] content for the object noun phrase occurs before the adverbial particle in the word list
- [rule 2] content for the object noun phrase occurs after the adverbial particle in the word list
- [rule 3] the word list has only the adverbial particle, while the object noun phrase occurs as a stored np(ICH)
- [rule 4] the word list has only content for the object noun phrase, while a stored adverb phrase advp(ICH) achieves the adverbial particle requirement
When the Voice setting is passive, either:
- [rule 5] there is the filled_sbj requirement and the word list has only content for the adverbial particle
- [rule 6] there is the filled_sbj requirement and a stored adverb phrase advp(ICH) achieves the adverbial particle requirement
- (4.57)
-
verb_complements_by_code(';~Tn.p',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
adverb_phrase('-CLR',particle,L1,L0).
verb_complements_by_code(';~Tn.p',[],filled_sbj,active,L,L0) -->
adverb_phrase('-CLR',particle,L,L1),
noun_phrase('-OB1',non_privileged,L1,L0).
verb_complements_by_code(';~Tn.p',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
adverb_phrase('-CLR',particle,L,L0).
verb_complements_by_code(';~Tn.p',[advp(ICH)],filled_sbj,active,[node('ADVP-CLR',[ICH])|L],L0) -->
noun_phrase('-OB1',non_privileged,L,L0).
verb_complements_by_code(';~Tn.p',[],filled_sbj,passive,L,L0) -->
adverb_phrase('-CLR',particle,L,L0).
verb_complements_by_code(';~Tn.p',[advp(ICH)],filled_sbj,passive,[node('ADVP-CLR',[ICH])|L],L) -->
[].
Parsing word list (4.58) as a sentence leads to the verb_complements_by_code call seen with (4.59).
- (4.58)
-
[w('NPR','Susan'), w('VBD',';~Tn.p','turned'), w('D','the'), w('N','gas'), w('RP','on'), w('PUNC','.')]
- (4.59)
-
| ?- tphrase_set_string([w('D','the'), w('N','gas'), w('RP','on')]), parse(verb_complements_by_code(';~Tn.p',[],filled_sbj,active)).
( (NP-OB1 (D the)
(N gas))
(ADVP-CLR (RP on)))
yes
The success of (4.59) is possible with [rule 1] of (4.57).
Parsing word list (4.60) as a sentence leads to the verb_complements_by_code call seen with (4.61).
- (4.60)
-
[w('NPR','Nasha'), w('VBD',';~Tn.p','sucked'), w('RP','in'), w('PRO;_genm_','her'), w('N','breath'), w('PUNC','.')]
- (4.61)
-
| ?- tphrase_set_string([w('RP','in'), w('PRO;_genm_','her'), w('N','breath')]), parse(verb_complements_by_code(';~Tn.p',[],filled_sbj,active)).
( (ADVP-CLR (RP in))
(NP-OB1 (NP-GENV (PRO;_genm_ her))
(N breath)))
yes
The success of (4.61) is possible with [rule 2] of (4.57).
Parsing word list (4.62) as a noun phrase leads to the verb_complements_by_code call seen with (4.63).
- (4.62)
-
[w('ADJR','more'), w('N','stuff'), w('TO','to'), w('VB',';~Tn.p','put'), w('RP','in')]
- (4.63)
-
| ?- tphrase_set_string([w('RP','in')]), parse(verb_complements_by_code(';~Tn.p',[np(node('*T*',[]))],filled_sbj,active)).
( (NP-OB1 *T*)
(ADVP-CLR (RP in)))
yes
The success of (4.63) is possible with [rule 3] of (4.57).
Parsing word list (4.64) as a sentence leads to the verb_complements_by_code call seen with (4.65).
- (4.64)
-
[w('PRO','I'), w('VBP',';~Tw','wonder'), w('WADV','where'), w('PRO','she'), w('HVP',';~cat_Ve','<apos>s'), w('VVN',';~Tn.p','put'), w('D','the'), w('NS','dogs'), w('PUNC','.')]
- (4.65)
-
| ?- tphrase_set_string([w('D','the'), w('NS','dogs')]), parse(verb_complements_by_code(';~Tn.p',[advp(node('*ICH*-158',[]))],filled_sbj,active)).
( (ADVP-CLR *ICH*-158)
(NP-OB1 (D the)
(NS dogs)))
yes
The success of (4.65) is possible with [rule 4] of (4.57).
Parsing word list (4.66) as a sentence leads to the verb_complements_by_code call seen with (4.67).
- (4.66)
-
[w('D','The'), w('N','straw'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Tn.p','peeled'), w('RP','off'), w('PUNC','.')]
- (4.67)
-
| ?- tphrase_set_string([w('RP','off')]), parse(verb_complements_by_code(';~Tn.p',[],filled_sbj,passive)).
(ADVP-CLR (RP off))
yes
The success of (4.67) is possible with [rule 5] of (4.57).
Parsing word list (4.68) as a sentence leads to the verb_complements_by_code call seen with (4.69).
- (4.68)
-
[w('PRO','I'), w('VBP',';~Tw','wonder'), w('WADV','where'), w('D','the'), w('NS','dogs'), w('BED',';~cat_Ve_passive_','were'), w('VVN',';~Tn.p','put'), w('PUNC','.')]
- (4.69)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Tn.p',[advp(node('*ICH*-168',[]))],filled_sbj,passive)).
(ADVP-CLR *ICH*-168)
yes
The success of (4.69) is possible with [rule 6] of (4.57).
Code ;~Tn.pr selects a noun phrase with object function (NP-OB1) and a preposition phrase with a function closely related to the verb meaning (PP-CLR). For calls of the verb_complements_by_code rules of (4.70) with filled_sbj and active settings, either:
- [rule 1] content for the object noun phrase occurs before content for the preposition phrase in the word list
- [rule 2] content for the object noun phrase occurs after content for the preposition phrase in the word list
- [rule 3] the word list first has a provisional it pronoun as the object noun phrase followed by content for the preposition phrase followed by content for a notional object (-NOB1)
- [rule 4] the word list has content for the object noun phrase followed by a preposition word for the preposition phrase whose complement occurs as a stored np(ICH)
- [rule 5] the word list has content for the object noun phrase only, while the preposition phrase occurs as a stored pp(ICH)
- [rule 6] the word list has content for the preposition phrase only, while the object noun phrase occurs as a stored np(ICH)
When Voice setting is passive, either:
- [rule 7] there is the filled_sbj requirement and the word list has only content for the preposition phrase
- [rule 8] there is the filled_sbj requirement and the word list has only content for a preposition of a preposition phrase whose complement occurs as a stored np(ICH)
- [rule 9] there is the filled_sbj requirement and the preposition phrase occurs as a stored pp(ICH)
- (4.70)
-
verb_complements_by_code(';~Tn.pr',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
preposition_phrase('-CLR',non_privileged,L1,L0).
verb_complements_by_code(';~Tn.pr',[],filled_sbj,active,L,L0) -->
preposition_phrase('-CLR',non_privileged,L,L1),
noun_phrase('-OB1',non_privileged,L1,L0).
verb_complements_by_code(';~Tn.pr',[],filled_sbj,active,[node('NP-OB1',[node('PRO;_provisional_',[node(Word,[])])])|L],L0) -->
[w('PRO;_provisional_',Word)],
preposition_phrase('-CLR',non_privileged,L,L1),
notional_item('-NOB1',L1,L0).
verb_complements_by_code(';~Tn.pr',[np(ICH)],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,[node('PP-CLR',[Role,node('NP',[ICH])])|L0]),
role([Role],[]).
verb_complements_by_code(';~Tn.pr',[pp(ICH)],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,[node('PP-CLR',[ICH])|L0]).
verb_complements_by_code(';~Tn.pr',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
preposition_phrase('-CLR',non_privileged,L,L0).
verb_complements_by_code(';~Tn.pr',[],filled_sbj,passive,L,L0) -->
preposition_phrase('-CLR',non_privileged,L,L0).
verb_complements_by_code(';~Tn.pr',[np(ICH)],filled_sbj,passive,[node('PP-CLR',[Role,node('NP',[ICH])])|L],L) -->
role([Role],[]).
verb_complements_by_code(';~Tn.pr',[pp(ICH)],filled_sbj,passive,[node('PP-CLR',[ICH])|L],L) -->
[].
Parsing word list (4.71) as a sentence leads to the verb_complements_by_code call seen with (4.72).
- (4.71)
-
[w('PRO','It'), w('VBD',';~Tn.pr','filled'), w('PRO','me'), w('P-ROLE','with'), w('N','fear'), w('PUNC','.')]
- (4.72)
-
| ?- tphrase_set_string([w('PRO','me'), w('P-ROLE','with'), w('N','fear')]), parse(verb_complements_by_code(';~Tn.pr',[],filled_sbj,active)).
( (NP-OB1 (PRO me))
(PP-CLR (P-ROLE with)
(NP (N fear))))
yes
The success of (4.72) is possible with [rule 1] of (4.70).
Parsing word list (4.73) as a sentence leads to the verb_complements_by_code call seen with (4.74).
- (4.73)
-
[w('NPR','taskW'), w('VBP',';~Tn.pr','runs'), w('P-ROLE','in'), w('D','a'), w('N','taskwindow'), w('D','an'), w('N','executable'), w('PUNC','.')]
- (4.74)
-
| ?- tphrase_set_string([w('P-ROLE','in'), w('D','a'), w('N','taskwindow'), w('D','an'), w('N','executable')]), parse(verb_complements_by_code(';~Tn.pr',[],filled_sbj,active)).
( (PP-CLR (P-ROLE in)
(NP (D a)
(N taskwindow)))
(NP-OB1 (D an)
(N executable)))
yes
The success of (4.74) is possible with [rule 2] of (4.70).
Parsing word list (4.75) as a sentence leads to the verb_complements_by_code call seen with (4.76).
- (4.75)
-
[w('PRO','I'), w('VBP',';~Tn.pr','leave'), w('PRO;_provisional_','it'), w('P-ROLE','to'), w('PRO','you'), w('TO','to'), w('VB',';~I','decide'), w('PUNC','.')]
- (4.76)
-
| ?- tphrase_set_string([w('PRO;_provisional_','it'), w('P-ROLE','to'), w('PRO','you'), w('TO','to'), w('VB',';~I','decide')]), parse(verb_complements_by_code(';~Tn.pr',[],filled_sbj,active)).
( (NP-OB1 (PRO;_provisional_ it))
(PP-CLR (P-ROLE to)
(NP (PRO you)))
(IP-INF-NOB1 (TO to)
(VB;~I decide)))
yes
The success of (4.76) is possible with [rule 3] of (4.70).
Parsing word list (4.77) as a noun phrase leads to the verb_complements_by_code call seen with (4.78).
- (4.77)
-
[w('D','the'), w('NS','people'), w('RPRO','that'), w('PRO','I'), w('VBP',';~Tn.pr','take'), w('N','items'), w('P-ROLE','over_to')]
- (4.78)
-
| ?- tphrase_set_string([w('N','items'), w('P-ROLE','over_to')]), parse(verb_complements_by_code(';~Tn.pr',[np(node('*ICH*-212',[]))],filled_sbj,active)).
( (NP-OB1 (N items))
(PP-CLR (P-ROLE over_to)
(NP *ICH*-212)))
yes
The success of (4.78) is possible with [rule 4] of (4.70).
Parsing word list (4.79) as a noun phrase leads to the verb_complements_by_code call seen with (4.80).
- (4.79)
-
[w('D','the'), w('NS','people'), w('P-ROLE','over_to'), w('RPRO','who'), w('PRO','I'), w('VBP',';~Tn.pr','take'), w('N','items')]
- (4.80)
-
| ?- tphrase_set_string([w('N','items')]), parse(verb_complements_by_code(';~Tn.pr',[pp(node('*ICH*-222',[]))],filled_sbj,active)).
( (NP-OB1 (N items))
(PP-CLR *ICH*-222))
yes
The success of (4.80) is possible with [rule 5] of (4.70).
Parsing word list (4.81) as a noun phrase leads to the verb_complements_by_code call seen with (4.82).
- (4.81)
-
[w('D','the'), w('NS','items'), w('RPRO','that'), w('PRO','I'), w('VBP',';~Tn.pr','take'), w('P-ROLE','over_to'), w('PRO;_genm_','my'), w('N','mother')]
- (4.82)
-
| ?- tphrase_set_string([w('P-ROLE','over_to'), w('PRO;_genm_','my'), w('N','mother')]), parse(verb_complements_by_code(';~Tn.pr',[np(node('*ICH*-232',[]))],filled_sbj,active)).
( (NP-OB1 *ICH*-232)
(PP-CLR (P-ROLE over_to)
(NP (NP-GENV (PRO;_genm_ my))
(N mother))))
yes
The success of (4.82) is possible with [rule 6] of (4.70).
Parsing word list (4.83) as a sentence leads to the verb_complements_by_code call seen with (4.84).
- (4.83)
-
[w('Q','Two'), w('NS','certificates'), w('BEP',';~cat_Ve_passive_','are'), w('VVN',';~Tn.pr','pinned'), w('P-ROLE','on'), w('D','the'), w('N','wall'), w('PUNC','.')]
- (4.84)
-
| ?- tphrase_set_string([w('P-ROLE','on'), w('D','the'), w('N','wall')]), parse(verb_complements_by_code(';~Tn.pr',[],filled_sbj,passive)).
(PP-CLR (P-ROLE on)
(NP (D the)
(N wall)))
yes
The success of (4.84) is possible with [rule 7] of (4.70).
Parsing word list (4.85) as a noun phrase leads to the verb_complements_by_code call seen with (4.86).
- (4.85)
-
[w('D','the'), w('N','place'), w('PRO','he'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Tn.pr','put'), w('P-ROLE','on')]
- (4.86)
-
| ?- tphrase_set_string([w('P-ROLE','on')]), parse(verb_complements_by_code(';~Tn.pr',[np(node('*T*',[]))],filled_sbj,passive)).
(PP-CLR (P-ROLE on)
(NP *T*))
yes
The success of (4.86) is possible with [rule 8] of (4.70).
Parsing word list (4.87) as a noun phrase leads to the verb_complements_by_code call seen with (4.88).
- (4.87)
-
[w('D','the'), w('N','place'), w('P-ROLE','on'), w('RPRO','which'), w('PRO','he'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Tn.pr','put')]
- (4.88)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Tn.pr',[pp(node('*ICH*-242',[]))],filled_sbj,passive)).
(PP-CLR *ICH*-242)
yes
The success of (4.88) is possible with [rule 9] of (4.70).
Code ;~Tf selects a that-clause with object function (CP-THT-OB1). For a call of the verb_complements_by_code rule of (4.89), there has to be content from the word list for a that-clause.
- (4.89)
-
verb_complements_by_code(';~Tf',Store,filled_sbj,active,L,L0) -->
cp_that('-OB1',_,Store,L,L0).
Parsing word list (4.90) as a sentence leads to the verb_complements_by_code call seen with (4.91).
- (4.90)
-
[w('WPRO','What'), w('DOP','','do'), w('PRO','you'), w('VB',';~Tf','suppose'), w('D','an'), w('N','exploring'), w('N','party'), w('MD',';~cat_Vi','would'), w('VB',';~Tn','find'), w('PUNC','?')]
- (4.91)
-
| ?- tphrase_set_string([w('D','an'), w('N','exploring'), w('N','party'), w('MD',';~cat_Vi','would'), w('VB',';~Tn','find')]), parse(verb_complements_by_code(';~Tf',[np(node('*ICH*-192',[]))],filled_sbj,active)).
(CP-THT-OB1 (IP-SUB (NP-SBJ (D an)
(N exploring)
(N party))
(MD;~cat_Vi would)
(IP-INF-CAT (VB;~Tn find)
(NP-OB1 *ICH*-192))))
yes
Code ;~Tw selects an embedded question clause with object function (CP-QUE-OB1). For a call of the verb_complements_by_code rule of (4.92), there has to be content from the word list for an embedded question clause.
- (4.92)
-
verb_complements_by_code(';~Tw',Store,filled_sbj,active,L,L0) -->
cp_embedded_que('-OB1',Store,L,L0).
Parsing word list (4.93) as a sentence leads to the verb_complements_by_code call seen with (4.94).
- (4.93)
-
[w('D','A'), w('N','parse'), w('VBP',';~Tw','tells'), w('WADV','how'), w('N','information'), w('VBP',';~Ipr','flows'), w('P-ROLE','through'), w('N','structure'), w('PUNC','.')]
- (4.94)
-
| ?- tphrase_set_string([w('WADV','how'), w('N','information'), w('VBP',';~Ipr','flows'), w('P-ROLE','through'), w('N','structure')]), parse(verb_complements_by_code(';~Tw',[],filled_sbj,active)).
(CP-QUE-OB1 (IP-SUB (ADVP-NIM (WADV how))
(NP-SBJ (N information))
(VBP;~Ipr flows)
(PP-CLR (P-ROLE through)
(NP (N structure)))))
yes
Parsing word list (4.95) as a sentence leads to the verb_complements_by_code call seen with (4.96).
- (4.95)
-
[w('PRO','I'), w('DOP','','do'), w('NEG;_clitic_','n<apos>t'), w('VB',';~Tw','know'), w('WPRO','what'), w('TO','to'), w('DO',';~Tn','do'), w('PUNC','.')]
- (4.96)
-
| ?- tphrase_set_string([w('WPRO','what'), w('TO','to'), w('DO',';~Tn','do')]), parse(verb_complements_by_code(';~Tw',[],filled_sbj,active)).
(CP-QUE-OB1 (IP-INF (NP-363 (WPRO what))
(TO to)
(DO;~Tn do)
(NP-OB1 *ICH*-363)))
yes
Code ;~Tr selects an utterance that is reported speech with object function (utterance-OB1). For calls of the verb_complements_by_code rules of (4.97), the object utterance can occur either:
- [rule 1] as content from the word list, preceded and followed by quotation punctuation
- [rule 2] as a stored utterance(ICH)
- (4.97)
-
verb_complements_by_code(';~Tr',[],filled_sbj,active,L,L0) -->
optional_punc_non_final(L,L3),
punc(left_quotation_mark,L3,L2),
utterance('-OB1',L2,L1),
punc(right_quotation_mark,L1,L0).
verb_complements_by_code(';~Tr',[utterance(ICH)],filled_sbj,active,[node('utterance-OB1',[ICH])|L],L) -->
[].
Parsing word list (4.98) as a sentence leads to the verb_complements_by_code call seen with (4.99).
- (4.98)
-
[w('PRO','He'), w('VBD',';~Tr','said'), w('PULQ','<ldquo>'), w('PRO','I'), w('BEP',';~cat_Vg','<apos>m'), w('VAG',';~Ipr','going'), w('P-ROLE','to'), w('N','bed'), w('PUNC','.'), w('PURQ','<rdquo>'), w('PUNC','.')]
- (4.99)
-
| ?- tphrase_set_string([w('PULQ','<ldquo>'), w('PRO','I'), w('BEP',';~cat_Vg','<apos>m'), w('VAG',';~Ipr','going'), w('P-ROLE','to'), w('N','bed'), w('PUNC','.'), w('PURQ','<rdquo>')]), parse(verb_complements_by_code(';~Tr',[],filled_sbj,active)).
( (PULQ <ldquo>)
(utterance-OB1 (IP-MAT (NP-SBJ (PRO I))
(BEP;~cat_Vg <apos>m)
(IP-PPL-CAT (VAG;~Ipr going)
(PP-CLR (P-ROLE to)
(NP (N bed))))
(PUNC .)))
(PURQ <rdquo>))
yes
The success of (4.99) is possible with [rule 1] of (4.97).
Parsing word list (4.100) as a sentence leads to the verb_complements_by_code call seen with (4.101).
- (4.100)
-
[w('PULQ','<ldquo>'), w('D','A'), w('N','paradox'), w('PUNC','.'), w('PURQ','<rdquo>'), w('PUNC',','), w('NPR','Nasha'), w('VBD',';~Tr','said'), w('PUNC','.')]
- (4.101)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Tr',[utterance(node('*ICH*-224',[]))],filled_sbj,active)).
(utterance-OB1 *ICH*-224)
yes
The success of (4.101) is possible with [rule 2] of (4.97).
Code ;~Tt selects a to-infinitive clause with object function (IP-INF-OB1). For a call of the verb_complements_by_code rule of (4.102), there has to be content from the word list for a to-infinitive clause.
- (4.102)
-
verb_complements_by_code(';~Tt',Store,filled_sbj,active,L,L0) -->
ip_to_inf('-OB1',Store,L,L0).
Parsing word list (4.103) as a sentence leads to the verb_complements_by_code call seen with (4.104).
- (4.103)
-
[w('PRO','We'), w('HVD',';~cat_Ve','had'), w('VVN',';~Tt','planned'), w('TO','to'), w('VB',';~I','meet'), w('PUNC','.')]
- (4.104)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~I','meet')]), parse(verb_complements_by_code(';~Tt',[],filled_sbj,active)).
(IP-INF-OB1 (TO to)
(VB;~I meet))
yes
Code ;~Tnt selects a noun phrase with derived object function (NP-DOB1) and a to-infinitive clause with object function (IP-INF-OB1). For calls of the verb_complements_by_code rules of (4.105) with filled_sbj and active settings, while content for the to-infinitive clause comes from the word list, the derived object noun phrase can occur either:
- [rule 1] as content from the word list before the content of the to-infinitive clause
- [rule 2] as word w('PRO;_expletive_',Word) of the word list before the content of the to-infinitive clause
- [rule 3] as a stored np(ICH)
When the Voice setting is passive:
- [rule 4] there is the filled_sbj requirement and the word list should only have content for the to-infinitive clause
There is also the possibility of a provisional object:
- [rule 5] the derived object noun phrase occurs as content from the word list for a provisional it noun phrase followed by the content of the to-infinitive clause followed by content for a notional object
- (4.105)
-
verb_complements_by_code(';~Tnt',Store,filled_sbj,active,L,L0) -->
noun_phrase('-DOB1',non_privileged,L,[node('IP-INF-OB1',VL)|L0]),
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_by_code(';~Tnt',Store,filled_sbj,active,[node('NP-DOB1',[node('PRO;_expletive_',[node(Word,[])])]),node('IP-INF-OB1',VL)|L],L) -->
[w('PRO;_expletive_',Word)],
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_by_code(';~Tnt',[np(ICH)],filled_sbj,active,[node('NP-DOB1',[ICH]),node('IP-INF-OB1',VL)|L],L) -->
to_inf_layer([],filled_sbj,active,VL,[]).
verb_complements_by_code(';~Tnt',Store,filled_sbj,passive,[node('IP-INF-OB1',VL)|L],L) -->
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_by_code(';~Tnt',Store,filled_sbj,active,[node('NP-DOB1',[node('PRO;_provisional_',[node(Word,[])])]),node('IP-INF-OB1',VL)|L],L0) -->
[w('PRO;_provisional_',Word)],
to_inf_layer(Store,filled_sbj,active,VL,[]),
notional_item('-NOB1',L,L0).
Note that the to-infinitive clause integrates into the parse with the call of to_inf_layer (see section 6.3) in all of the rules of (4.105). This has the consequence that there can be no for-introduced subject internal to the object to-infinitive clause, ensuring no disruption of control inheritance from the derived object (/subject when passive).
Parsing word list (4.106) as a sentence leads to the verb_complements_by_code call seen with (4.107).
- (4.106)
-
[w('PRO','We'), w('VBP',';~Tnt','want'), w('PRO','you'), w('TO','to'), w('VB',';~I','know'), w('PUNC','.')]
- (4.107)
-
| ?- tphrase_set_string([w('PRO','you'), w('TO','to'), w('VB',';~I','know')]), parse(verb_complements_by_code(';~Tnt',[],filled_sbj,active)).
( (NP-DOB1 (PRO you))
(IP-INF-OB1 (TO to)
(VB;~I know)))
yes
The success of (4.107) is possible with [rule 1] of (4.105).
Parsing word list (4.108) as a sentence leads to the verb_complements_by_code call seen with (4.109).
- (4.108)
-
[w('NPR','John'), w('VBD',';~Tnt','needed'), w('PRO;_expletive_','it'), w('TO','to'), w('VB',';~I','rain'), w('PUNC','.')]
- (4.109)
-
| ?- tphrase_set_string([w('PRO;_expletive_','it'), w('TO','to'), w('VB',';~I','rain')]), parse(verb_complements_by_code(';~Tnt',[],filled_sbj,active)).
( (NP-DOB1 (PRO;_expletive_ it))
(IP-INF-OB1 (TO to)
(VB;~I rain)))
yes
The success of (4.109) is possible with [rule 2] of (4.105).
Parsing word list (4.110) as a noun phrase leads to the verb_complements_by_code call seen with (4.111).
- (4.110)
-
[w('NS','people'), w('RPRO','who'), w('PRO','it'), w('VBP',';~Tnt','believes'), w('TO','to'), w('BE',';~La','be'), w('ADJ','subversive')]
- (4.111)
-
| ?- tphrase_set_string([w('TO','to'), w('BE',';~La','be'), w('ADJ','subversive')]), parse(verb_complements_by_code(';~Tnt',[np(node('*ICH*-243',[]))],filled_sbj,active)).
( (NP-DOB1 *ICH*-243)
(IP-INF-OB1 (TO to)
(BE;~La be)
(ADJP-PRD2 (ADJ subversive))))
yes
The success of (4.111) is possible with [rule 3] of (4.105).
Parsing word list (4.112) as a sentence leads to the verb_complements_by_code call seen with (4.113).
- (4.112)
-
[w('PRO','We'), w('BED',';~cat_Ve_passive_','were'), w('VVN',';~Tnt','allowed'), w('TO','to'), w('VB',';~I','go'), w('PUNC','.')]
- (4.113)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~I','go')]), parse(verb_complements_by_code(';~Tnt',[],filled_sbj,passive)).
(IP-INF-OB1 (TO to)
(VB;~I go))
yes
The success of (4.113) is possible with [rule 4] of (4.105).
Parsing word list (4.114) as a sentence leads to the verb_complements_by_code call seen with (4.115).
- (4.114)
-
[w('NPR','Kim'), w('VBD',';~Tnt','expected'), w('PRO;_provisional_','it'), w('TO','to'), w('BE',';~La','be'), w('ADJ','easy'), w('TO','to'), w('VB',';~Tn','impress'), w('NPR','Sandy'), w('PUNC','.')]
- (4.115)
-
| ?- tphrase_set_string([w('PRO;_provisional_','it'), w('TO','to'), w('BE',';~La','be'), w('ADJ','easy'), w('TO','to'), w('VB',';~Tn','impress'), w('NPR','Sandy')]), parse(verb_complements_by_code(';~Tnt',[],filled_sbj,active)).
( (NP-DOB1 (PRO;_provisional_ it))
(IP-INF-OB1 (TO to)
(BE;~La be)
(ADJP-PRD2 (ADJ easy)))
(IP-INF-NOB1 (TO to)
(VB;~Tn impress)
(NP-OB1 (NPR Sandy))))
yes
The success of (4.115) is possible with [rule 5] of (4.105).
Code ;~Tni selects a noun phrase with derived object function (NP-DOB1) and a bare infinitive clause with object function (IP-INF-OB1). For calls of the verb_complements_by_code rules of (4.116), while content for the bare infinitive clause comes from the word list, the derived object noun phrase can occur either:
- [rule 1] as content from the word list that is before the content for the bare infinitive clause
- [rule 2] as a stored np(ICH)
- (4.116)
-
verb_complements_by_code(';~Tni',[],filled_sbj,active,L,L0) -->
noun_phrase('-DOB1',non_privileged,L,[node('IP-INF-OB1',VL)|L0]),
verb_phrase_layer([],filled_sbj,infinitive,active,VL,[]).
verb_complements_by_code(';~Tni',[np(ICH)],filled_sbj,active,[node('NP-DOB1',[ICH]),node('IP-INF-OB1',VL)|L],L) -->
verb_phrase_layer([],filled_sbj,infinitive,active,VL,[]).
Parsing word list (4.117) as a sentence leads to the verb_complements_by_code call seen with (4.118).
- (4.117)
-
[w('PRO','You'), w('MD',';~cat_Vi','can'), w('VB',';~Tni','see'), w('D','the'), w('N','blood'), w('VB',';~Ipr','run'), w('P-ROLE','from'), w('PRO;_genm_','their'), w('N','face'), w('PUNC','.')]
- (4.118)
-
| ?- tphrase_set_string([w('D','the'), w('N','blood'), w('VB',';~Ipr','run'), w('P-ROLE','from'), w('PRO;_genm_','their'), w('N','face')]), parse(verb_complements_by_code(';~Tni',[],filled_sbj,active)).
( (NP-DOB1 (D the)
(N blood))
(IP-INF-OB1 (VB;~Ipr run)
(PP-CLR (P-ROLE from)
(NP (NP-GENV (PRO;_genm_ their))
(N face)))))
yes
The success of (4.118) is possible with [rule 1] of (4.116).
Parsing word list (4.119) as a sentence leads to the verb_complements_by_code call seen with (4.120).
- (4.119)
-
[w('EX','There'), w('BEP',';~ex_V','is'), w('D;_nphd_','someone'), w('RPRO','whom'), w('NPR','Helen'), w('VBD',';~Tni','saw'), w('VB',';~Tn','answer'), w('D','the'), w('N','phone'), w('PUNC','.')]
- (4.120)
-
| ?- tphrase_set_string([w('VB',';~Tn','answer'), w('D','the'), w('N','phone')]), parse(verb_complements_by_code(';~Tni',[np(node('*ICH*-253',[]))],filled_sbj,active)).
( (NP-DOB1 *ICH*-253)
(IP-INF-OB1 (VB;~Tn answer)
(NP-OB1 (D the)
(N phone))))
yes
The success of (4.120) is possible with [rule 2] of (4.116).
Code ;~Tg selects a present participle (-ing) clause with object function (IP-PPL-OB1). For a call of the verb_complements_by_code rule of (4.121), there has to be content from the word list for a present participle (-ing) clause.
- (4.121)
-
verb_complements_by_code(';~Tg',Store,filled_sbj,active,L,L0) -->
ip_ppl_active('-OB1',Store,filled_sbj,ing_participle,L,L0).
Parsing word list (4.122) as a sentence leads to the verb_complements_by_code call seen with (4.123).
- (4.122)
-
[w('VB',';~Tg','Stop'), w('VAG',';~I','shouting'), w('PUNC','.')]
- (4.123)
-
| ?- tphrase_set_string([w('VAG',';~I','shouting')]), parse(verb_complements_by_code(';~Tg',[],filled_sbj,active)).
(IP-PPL-OB1 (VAG;~I shouting))
yes
Code ;~Tng selects a noun phrase with derived object function (NP-DOB1) and a present participle (-ing) clause with object function (IP-PPL-OB1). For calls of the verb_complements_by_code rules of (4.124) with filled_sbj and active settings, while content for the participle clause comes from the word list, the derived object noun phrase can occur either:
- [rule 1] as content from the word list that is before the content for the participle clause
- [rule 2] as a stored np(ICH)
When the Voice setting is passive:
- [rule 3] there is the filled_sbj requirement and the word list should only have content for the participle clause
- (4.124)
-
verb_complements_by_code(';~Tng',[],filled_sbj,active,L,L0) -->
noun_phrase('-DOB1',non_privileged,L,L1),
ip_ppl_active('-OB1',[],filled_sbj,ing_participle,L1,L0).
verb_complements_by_code(';~Tng',[np(ICH)],filled_sbj,active,[node('NP-DOB1',[ICH])|L],L0) -->
ip_ppl_active('-OB1',[],filled_sbj,ing_participle,L,L0).
verb_complements_by_code(';~Tng',[],filled_sbj,passive,L,L0) -->
ip_ppl_active('-OB1',[],filled_sbj,ing_participle,L,L0).
Note that ip_ppl_active (see section 5.4.3) in all of the rules of (4.124) takes the filled_sbj setting. This ensure no disruption of control inheritance from the derived object (/subject when passive).
Parsing word list (4.125) as a sentence leads to the verb_complements_by_code call seen with (4.126).
- (4.125)
-
[w('PRO','She'), w('MD',';~cat_Vi','could'), w('VB',';~Tng','feel'), w('PRO','it'), w('VAG',';~I','coming'), w('PUNC','.')]
- (4.126)
-
| ?- tphrase_set_string([w('PRO','it'), w('VAG',';~I','coming')]), parse(verb_complements_by_code(';~Tng',[],filled_sbj,active)).
( (NP-DOB1 (PRO it))
(IP-PPL-OB1 (VAG;~I coming)))
yes
The success of (4.126) is possible with [rule 1] of (4.124).
Parsing word list (4.127) as a sentence leads to the verb_complements_by_code call seen with (4.128).
- (4.127)
-
[w('EX','There'), w('BEP',';~ex_V','is'), w('D;_nphd_','someone'), w('RPRO','whom'), w('NPR','Helen'), w('VBD',';~Tng','saw'), w('VAG',';~Tn','hoeing'), w('NS','onions'), w('PUNC','.')]
- (4.128)
-
| ?- tphrase_set_string([w('VAG',';~Tn','hoeing'), w('NS','onions')]), parse(verb_complements_by_code(';~Tng',[np(node('*ICH*-263',[]))],filled_sbj,active)).
( (NP-DOB1 *ICH*-263)
(IP-PPL-OB1 (VAG;~Tn hoeing)
(NP-OB1 (NS onions))))
yes
The success of (4.128) is possible with [rule 2] of (4.124).
Parsing word list (4.129) as a sentence leads to the verb_complements_by_code call seen with (4.130).
- (4.129)
-
[w('D','The'), w('NS','raiders'), w('MD',';~cat_Vi','can'), w('BE',';~cat_Ve_passive_','be'), w('VVN',';~Tng','seen'), w('VAG',';~Ipr','hovering'), w('P-ROLE','around'), w('D','the'), w('N','surface'), w('PUNC','.')]
- (4.130)
-
| ?- tphrase_set_string([w('VAG',';~Ipr','hovering'), w('P-ROLE','around'), w('D','the'), w('N','surface')]), parse(verb_complements_by_code(';~Tng',[],filled_sbj,passive)).
(IP-PPL-OB1 (VAG;~Ipr hovering)
(PP-CLR (P-ROLE around)
(NP (D the)
(N surface))))
yes
The success of (4.130) is possible with [rule 3] of (4.124).
Code ;~Tsg selects a noun phrase that is the internal subject (-SBJ) of a selected present participle (-ing) clause with object function (IP-PPL-OB1). For calls of the verb_complements_by_code rules of (4.131) with filled_sbj and active settings, content for the noun phrase and the participle clause comes from the word list, with the internal form of noun phrase being either:
- [rule 1] a genitive noun phrase with content found by noun_phrase_genm_layer of section 2.4
- [rule 2] an ordinary noun phrase with content found by noun_phrase_top of section 3.2
- (4.131)
-
verb_complements_by_code(';~Tsg',[],filled_sbj,active,[node('IP-PPL3-OB1',[node('NP-SBJ',NL)|VL])|L],L) -->
noun_phrase_genm_layer(non_privileged,NL,[]),
verb_phrase_layer([],filled_sbj,ing_participle,active,VL,[]).
verb_complements_by_code(';~Tsg',[],filled_sbj,active,[node('IP-PPL3-OB1',[node('NP-SBJ',NL)|VL])|L],L) -->
noun_phrase_top(non_privileged,NL,[]),
verb_phrase_layer([],filled_sbj,ing_participle,active,VL,[]).
Parsing word list (4.132) as a sentence leads to the verb_complements_by_code call seen with (4.133).
- (4.132)
-
[w('DOP','','Do'), w('NEG;_clitic_','n<apos>t'), w('PRO','you'), w('VB',';~Tsg','remember'), w('PRO;_genm_','my'), w('VAG',';~Dn.*','telling'), w('PRO','you'), w('PUNC','?')]
- (4.133)
-
| ?- tphrase_set_string([w('PRO;_genm_','my'), w('VAG',';~Dn.*','telling'), w('PRO','you')]), parse(verb_complements_by_code(';~Tsg',[],filled_sbj,active)).
(IP-PPL3-OB1 (NP-SBJ (PRO;_genm_ my))
(VAG;~Dn.* telling)
(NP-OB2 (PRO you)))
yes
The success of (4.133) is possible with [rule 1] of (4.131).
Parsing word list (4.134) as a sentence leads to the verb_complements_by_code call seen with (4.135).
- (4.134)
-
[w('DOP','','Do'), w('NEG;_clitic_','n<apos>t'), w('PRO','you'), w('VB',';~Tsg','remember'), w('PRO','me'), w('VAG',';~Dn.*','telling'), w('PRO','you'), w('PUNC','?')]
- (4.135)
-
| ?- tphrase_set_string([w('PRO','me'), w('VAG',';~Dn.*','telling'), w('PRO','you')]), parse(verb_complements_by_code(';~Tsg',[],filled_sbj,active)).
(IP-PPL3-OB1 (NP-SBJ (PRO me))
(VAG;~Dn.* telling)
(NP-OB2 (PRO you)))
yes
The success of (4.135) is possible with [rule 2] of (4.131).
4.5 Ditransitive verbs
This section establishes selection criteria for ditransitive verbs.
Code ;~Dn.n selects a noun phrase with indirect object function (NP-OB2) and a noun phrase with direct object function (NP-OB1). For calls of the verb_complements_by_code rules of (4.136) with filled_sbj and active settings, either:
- [rule 1] the word list consists of content for both objects, the indirect object content occurring first
- [rule 2] the word list has only content for a single noun phrase as the indirect object, while the direct object occurs as a stored np(ICH)
- [rule 3] the word list has only content for a single noun phrase as the direct object, while the indirect object occurs as a stored np(ICH)
When the Voice setting is passive, either:
- [rule 4] there is the filled_sbj requirement and the word list should only have content for a single noun phrase as the direct object
- [rule 5] there is the filled_sbj requirement and a stored np(ICH) provides the direct object noun phrase
- (4.136)
-
verb_complements_by_code(';~Dn.n',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,L1),
noun_phrase('-OB1',non_privileged,L1,L0).
verb_complements_by_code(';~Dn.n',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
noun_phrase('-OB2',non_privileged,L,L0).
verb_complements_by_code(';~Dn.n',[np(ICH)],filled_sbj,active,[node('NP-OB2',[ICH])|L],L0) -->
noun_phrase('-OB1',non_privileged,L,L0).
verb_complements_by_code(';~Dn.n',[],filled_sbj,passive,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L0).
verb_complements_by_code(';~Dn.n',[np(ICH)],filled_sbj,passive,[node('NP-OB1',[ICH])|L],L) -->
[].
Parsing word list (4.137) as a sentence leads to the verb_complements_by_code call seen with (4.138).
- (4.137)
-
[w('N','Daddy'), w('VBD',';~Dn.n','bought'), w('PRO','me'), w('D','a'), w('ADJ','new'), w('N','bike'), w('PUNC','.')]
- (4.138)
-
| ?- tphrase_set_string([w('PRO','me'), w('D','a'), w('ADJ','new'), w('N','bike')]), parse(verb_complements_by_code(';~Dn.n',[],filled_sbj,active)).
( (NP-OB2 (PRO me))
(NP-OB1 (D a)
(ADJP (ADJ new))
(N bike)))
yes
The success of (4.138) is possible with [rule 1] of (4.136).
Parsing word list (4.139) as a noun phrase leads to the verb_complements_by_code call seen with (4.140).
- (4.139)
-
[w('D','the'), w('N','task'), w('PRO','he'), w('VBD',';~Dn.n','set'), w('PNX','himself')]
- (4.140)
-
| ?- tphrase_set_string([w('PNX','himself')]), parse(verb_complements_by_code(';~Dn.n',[np(node('*T*',[]))],filled_sbj,active)).
( (NP-OB1 *T*)
(NP-OB2 (PNX himself)))
( (NP-OB2 *T*)
(NP-OB1 (PNX himself)))
yes
The success of (4.140) is possible with [rule 2] of (4.136).
Parsing word list (4.141) as a sentence leads to the verb_complements_by_code call seen with (4.142).
- (4.141)
-
[w('D','the'), w('N','student'), w('PRO','he'), w('VBD',';~Dn.n','set'), w('D','the'), w('N','task')]
- (4.142)
-
| ?- tphrase_set_string([w('D','the'), w('N','task')]), parse(verb_complements_by_code(';~Dn.n',[np(node('*T*',[]))],filled_sbj,active)).
( (NP-OB1 *T*)
(NP-OB2 (D the)
(N task)))
( (NP-OB2 *T*)
(NP-OB1 (D the)
(N task)))
yes
The success of (4.142) is possible with [rule 3] of (4.136).
Parsing word list (4.143) as a sentence leads to the verb_complements_by_code call seen with (4.144).
- (4.143)
-
[w('PRO','We'), w('BED',';~cat_Ve_passive_','were'), w('VVN',';~Dn.n','played'), w('Q','two'), w('NS','recordings'), w('PUNC','.')]
- (4.144)
-
| ?- tphrase_set_string([w('Q','two'), w('NS','recordings')]), parse(verb_complements_by_code(';~Dn.n',[],filled_sbj,passive)).
(NP-OB1 (Q two)
(NS recordings))
yes
The success of (4.144) is possible with [rule 4] of (4.136).
Parsing word list (4.145) as a noun phrase leads to the verb_complements_by_code call seen with (4.146).
- (4.145)
-
[w('Q;_nphd_','everything'), w('Q;_nphd_','everyone'), w('HVP',';~cat_Ve','has'), w('BEN',';~cat_Ve_passive_','been'), w('VVN',';~Dn.n','taught')]
- (4.146)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Dn.n',[np(node('*T*',[]))],filled_sbj,passive)).
(NP-OB1 *T*)
yes
The success of (4.146) is possible with [rule 5] of (4.136).
Code ;~Dn.f selects a noun phrase with indirect object function (NP-OB2) and a that-clause with direct object function (CP-THT-OB1). For calls of the verb_complements_by_code rules of (4.147) with filled_sbj and active settings:
- [rule 1] the word list consists of content for both the indirect object noun phrase and the direct object that-clause, the indirect object content occurring first
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the direct object that-clause
- (4.147)
-
verb_complements_by_code(';~Dn.f',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,L1),
cp_that('-OB1',_,Store,L1,L0).
verb_complements_by_code(';~Dn.f',Store,filled_sbj,passive,L,L0) -->
cp_that('-OB1',_,Store,L,L0).
Note how, for both rules of (4.147), inherited Store information passes on to the cp_that call.
Parsing word list (4.148) as a sentence leads to the verb_complements_by_code call seen with (4.149).
- (4.148)
-
[w('D;_nphd_','That'), w('BEP',';~equ_Vw','is'), w('WPRO','what'), w('D','the'), w('N','advice'), w('VBP',';~Dn.f','tells'), w('PRO','us'), w('PRO','we'), w('MD',';~cat_Vi','must'), w('DO',';~Tn','do'), w('PUNC','.')]
- (4.149)
-
| ?- tphrase_set_string([w('PRO','us'), w('PRO','we'), w('MD',';~cat_Vi','must'), w('DO',';~Tn','do')]), parse(verb_complements_by_code(';~Dn.f',[np(node('*ICH*-274',[]))],filled_sbj,active)).
( (NP-OB2 (PRO us))
(CP-THT-OB1 (IP-SUB (NP-SBJ (PRO we))
(MD;~cat_Vi must)
(IP-INF-CAT (DO;~Tn do)
(NP-OB1 *ICH*-274)))))
yes
The success of (4.149) is possible with [rule 1] of (4.147).
Parsing word list (4.150) as a sentence leads to the verb_complements_by_code call seen with (4.151).
- (4.150)
-
[w('PRO','We'), w('VBD',';~cat_Ve_passive_','got'), w('VVN',';~Dn.f','told'), w('C','that'), w('D','that'), w('N','laser'), w('MD',';~cat_Vi','can'), w('VB',';~Ipr','cut'), w('P-ROLE','through'), w('N','concrete'), w('PUNC','.')]
- (4.151)
-
| ?- tphrase_set_string([w('C','that'), w('D','that'), w('N','laser'), w('MD',';~cat_Vi','can'), w('VB',';~Ipr','cut'), w('P-ROLE','through'), w('N','concrete')]), parse(verb_complements_by_code(';~Dn.f',[],filled_sbj,passive)).
(CP-THT-OB1 (IP-SUB (C that)
(NP-SBJ (D that)
(N laser))
(MD;~cat_Vi can)
(IP-INF-CAT (VB;~Ipr cut)
(PP-CLR (P-ROLE through)
(NP (N concrete))))))
yes
The success of (4.151) is possible with [rule 2] of (4.147).
Code ;~Dn.w selects a noun phrase with indirect object function (NP-OB2) and an embedded question clause with direct object function (CP-QUE-OB1). For calls of the verb_complements_by_code rules of (4.152) with filled_sbj and active settings:
- [rule 1] the word list consists of content for both the indirect object noun phrase and the direct object embedded question clause, the indirect object content occurring first
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the direct object embedded question clause
- (4.152)
-
verb_complements_by_code(';~Dn.w',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,L1),
cp_embedded_que('-OB1',Store,L1,L0).
verb_complements_by_code(';~Dn.w',Store,filled_sbj,passive,L,L0) -->
cp_embedded_que('-OB1',Store,L,L0).
Note how, for both rules of (4.147), inherited Store information passes on to the cp_embedded_que call.
Parsing word list (4.153) as a sentence leads to the verb_complements_by_code call seen with (4.154).
- (4.153)
-
[w('PRO;_genm_','My'), w('N','uncle'), w('VBD',';~Dn.w','showed'), w('PRO','me'), w('WADV','how'), w('TO','to'), w('VB',';~Tn','milk'), w('D','the'), w('NS','cows'), w('PUNC','.')]
- (4.154)
-
| ?- tphrase_set_string([w('PRO','me'), w('WADV','how'), w('TO','to'), w('VB',';~Tn','milk'), w('D','the'), w('NS','cows')]), parse(verb_complements_by_code(';~Dn.w',[],filled_sbj,active)).
( (NP-OB2 (PRO me))
(CP-QUE-OB1 (IP-INF (ADVP-NIM (WADV how))
(TO to)
(VB;~Tn milk)
(NP-OB1 (D the)
(NS cows)))))
yes
The success of (4.154) is possible with [rule 1] of (4.152).
Parsing word list (4.155) as a sentence leads to the verb_complements_by_code call seen with (4.156).
- (4.155)
-
[w('PRO','They'), w('BED',';~cat_Ve_passive_','were'), w('VVN',';~Dn.w','asked'), w('WQ','if'), w('PRO','they'), w('VBD',';~Tf','believed'), w('NPR','Windows_98'), w('BED',';~Ln','was'), w('D','the'), w('ADJ','correct'), w('N','system'), w('TO','to'), w('HV',';~Tn','have'), w('PUNC','.')]
- (4.156)
-
| ?- tphrase_set_string([w('WQ','if'), w('PRO','they'), w('VBD',';~Tf','believed'), w('NPR','Windows_98'), w('BED',';~Ln','was'), w('D','the'), w('ADJ','correct'), w('N','system'), w('TO','to'), w('HV',';~Tn','have')]), parse(verb_complements_by_code(';~Dn.w',[],filled_sbj,passive)).
(CP-QUE-OB1 (IP-SUB (WQ if)
(NP-SBJ (PRO they))
(VBD;~Tf believed)
(CP-THT-OB1 (IP-SUB (NP-SBJ (NPR Windows_98))
(BED;~Ln was)
(NP-PRD2 (D the)
(ADJP (ADJ correct))
(N system)
(IP-INF-REL (TO to)
(HV;~Tn have)
(NP-OB1 *T*)))))))
yes
The success of (4.156) is possible with [rule 2] of (4.152).
Code ;~Dn.r selects a noun phrase with indirect object function (NP-OB2) and an utterance that is reported speech with direct object function (utterance-OB1). For calls of the verb_complements_by_code rules of (4.157) with filled_sbj and active settings:
- [rule 1] the word list consists of content for both the indirect object noun phrase and the direct object utterance, the indirect object content occurring first and the utterance preceded and followed by quotation punctuation
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the direct object utterance preceded and followed by quotation punctuation
- (4.157)
-
verb_complements_by_code(';~Dn.r',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,L4),
optional_punc_non_final(L4,L3),
punc(left_quotation_mark,L3,L2),
utterance('-OB1',L2,L1),
punc(right_quotation_mark,L1,L0).
verb_complements_by_code(';~Dn.r',[],filled_sbj,passive,L,L0) -->
optional_punc_non_final(L,L3),
punc(left_quotation_mark,L3,L2),
utterance('-OB1',L2,L1),
punc(right_quotation_mark,L1,L0).
Parsing word list (4.158) as a sentence leads to the verb_complements_by_code call seen with (4.159).
- (4.158)
-
[w('PRO','She'), w('VBD',';~Dn.r','asked'), w('D','the'), w('NPR','Prime'), w('NPR','Minister'), w('PULQ','<ldquo>'), w('BEP',';~La','Is'), w('PRO','it'), w('ADJ','true'), w('PUNC','?'), w('PURQ','<rdquo>'), w('PUNC','.')]
- (4.159)
-
| ?- tphrase_set_string([w('D','the'), w('NPR','Prime'), w('NPR','Minister'), w('PULQ','<ldquo>'), w('BEP',';~La','Is'), w('PRO','it'), w('ADJ','true'), w('PUNC','?'), w('PURQ','<rdquo>')]), parse(verb_complements_by_code(';~Dn.r',[],filled_sbj,active)).
( (NP-OB2 (D the)
(NPR Prime)
(NPR Minister))
(PULQ <ldquo>)
(utterance-OB1 (CP-QUE-MAT (IP-SUB (BEP;~La Is)
(NP-SBJ (PRO it))
(ADJP-PRD2 (ADJ true)))
(PUNC ?)))
(PURQ <rdquo>))
yes
The success of (4.159) is possible with [rule 1] of (4.157).
Parsing word list (4.160) as a sentence leads to the verb_complements_by_code call seen with (4.161).
- (4.160)
-
[w('D','The'), w('NPR','Prime'), w('NPR','Minister'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Dn.r','asked'), w('PULQ','<ldquo>'), w('BEP',';~La','Is'), w('PRO','it'), w('ADJ','true'), w('PUNC','?'), w('PURQ','<rdquo>'), w('PUNC','.')]
- (4.161)
-
| ?- tphrase_set_string([w('PULQ','<ldquo>'), w('BEP',';~La','Is'), w('PRO','it'), w('ADJ','true'), w('PUNC','?'), w('PURQ','<rdquo>')]), parse(verb_complements_by_code(';~Dn.r',[],filled_sbj,passive)).
( (PULQ <ldquo>)
(utterance-OB1 (CP-QUE-MAT (IP-SUB (BEP;~La Is)
(NP-SBJ (PRO it))
(ADJP-PRD2 (ADJ true)))
(PUNC ?)))
(PURQ <rdquo>))
yes
The success of (4.161) is possible with [rule 2] of (4.157).
Code ;~Dn.t selects a noun phrase with indirect object function (NP-OB2) and a to-infinitive clause with direct object function (IP-INF-OB1). For calls of the verb_complements_by_code rules of (4.162) with filled_sbj and active settings:
- [rule 1] the word list consists of content for both the indirect object noun phrase and the direct object to-infinitive clause, the indirect object content occurring first
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the direct object to-infinitive clause
- (4.162)
-
verb_complements_by_code(';~Dn.t',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,[node('IP-INF-OB1',VL)|L0]),
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_by_code(';~Dn.t',Store,filled_sbj,passive,[node('IP-INF-OB1',VL)|L],L) -->
to_inf_layer(Store,filled_sbj,active,VL,[]).
Note that the to-infinitive clause integrates into the parse with the call of to_inf_layer (see section 6.3) in both rules of (4.105). This has the consequence that there can be no for-introduced subject internal to the object to-infinitive clause, ensuring no disruption of control inheritance from the indirect object (/subject when passive). Also, note how the calls of to_inf_layer inherit any Store information.
Parsing word list (4.163) as a sentence leads to the verb_complements_by_code call seen with (4.164).
- (4.163)
-
[w('PRO','I'), w('VBD',';~Dn.t','asked'), w('NPR','Andrew'), w('TO','to'), w('HV',';~Tn','have'), w('D','a'), w('N','go'), w('PUNC','.')]
- (4.164)
-
| ?- tphrase_set_string([w('NPR','Andrew'), w('TO','to'), w('HV',';~Tn','have'), w('D','a'), w('N','go')]), parse(verb_complements_by_code(';~Dn.t',[],filled_sbj,active)).
( (NP-OB2 (NPR Andrew))
(IP-INF-OB1 (TO to)
(HV;~Tn have)
(NP-OB1 (D a)
(N go))))
yes
The success of (4.164) is possible with [rule 1] of (4.162).
Parsing word list (4.165) as a sentence leads to the verb_complements_by_code call seen with (4.166).
- (4.165)
-
[w('PRO','I'), w('HVP',';~cat_Ve','have'), w('ADV','now'), w('BEN',';~cat_Ve_passive_','been'), w('VVN',';~Dn.t','forbidden'), w('TO','to'), w('VB',';~Tn','make'), w('D;_nphd_','anything'), w('PUNC','.')]
- (4.166)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~Tn','make'), w('D;_nphd_','anything')]), parse(verb_complements_by_code(';~Dn.t',[],filled_sbj,passive)).
(IP-INF-OB1 (TO to)
(VB;~Tn make)
(NP-OB1 (D;_nphd_ anything)))
yes
The success of (4.166) is possible with [rule 2] of (4.162).
Code ;~Dn.* selects a noun phrase with indirect object function (NP-OB2) and there is no element with direct object function. For a call of the verb_complements_by_code rule of (4.167), there has to be content from the word list for a noun phrase.
- (4.167)
-
verb_complements_by_code(';~Dn.*',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB2',non_privileged,L,L0).
Parsing word list (4.168) as a sentence leads to the verb_complements_by_code call seen with (4.169).
- (4.168)
-
[w('PRO','You'), w('DOD','','did'), w('VB',';~Dn.*','tell'), w('PRO','me'), w('PUNC','.')]
- (4.169)
-
| ?- tphrase_set_string([w('PRO','me')]), parse(verb_complements_by_code(';~Dn.*',[],filled_sbj,active)).
(NP-OB2 (PRO me))
yes
Code ;~Dpr.n selects a preposition phrase with indirect object function (PP-OB2) and a noun phrase with direct object function (NP-OB1). For calls of the verb_complements_by_code rules of (4.170) with filled_sbj and active settings, either:
- [rule 1] the word list consists of content for both objects, the direct object noun phrase content occurring before the indirect object preposition phrase
- [rule 2] the word list consists of content for both objects, the direct object noun phrase content occurring after the indirect object preposition phrase
- [rule 3] the word list has only content for a preposition phrase as the indirect object, while the direct object occurs as a stored np(ICH)
- [rule 4] the word list has only content for a noun phrase as the direct object, while the indirect object occurs as a stored pp(ICH)
When the Voice setting is passive:
- [rule 5] there is the filled_sbj requirement and the word list should only have content for a preposition phrase as the indirect object
- (4.170)
-
verb_complements_by_code(';~Dpr.n',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
preposition_phrase('-OB2',non_privileged,L1,L0).
verb_complements_by_code(';~Dpr.n',[],filled_sbj,active,L,L0) -->
preposition_phrase('-OB2',non_privileged,L,L1),
noun_phrase('-OB1',non_privileged,L1,L0).
verb_complements_by_code(';~Dpr.n',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
preposition_phrase('-OB2',non_privileged,L,L0).
verb_complements_by_code(';~Dpr.n',[pp(ICH)],filled_sbj,active,[node('PP-OB2',[ICH])|L],L0) -->
noun_phrase('-OB1',non_privileged,L,L0).
verb_complements_by_code(';~Dpr.n',[],filled_sbj,passive,L,L0) -->
preposition_phrase('-OB2',non_privileged,L,L0).
Parsing word list (4.171) as a sentence leads to the verb_complements_by_code call seen with (4.172).
- (4.171)
-
[w('N','Daddy'), w('VBD',';~Dpr.n','bought'), w('D','a'), w('ADJ','new'), w('N','bike'), w('P-ROLE','for'), w('PRO','me'), w('PUNC','.')]
- (4.172)
-
| ?- tphrase_set_string([w('D','a'), w('ADJ','new'), w('N','bike'), w('P-ROLE','for'), w('PRO','me')]), parse(verb_complements_by_code(';~Dpr.n',[],filled_sbj,active)).
( (NP-OB1 (D a)
(ADJP (ADJ new))
(N bike))
(PP-OB2 (P-ROLE for)
(NP (PRO me))))
yes
The success of (4.172) is possible with [rule 1] of (4.170).
Parsing word list (4.173) as a sentence leads to the verb_complements_by_code call seen with (4.174).
- (4.173)
-
[w('PRO','I'), w('VBP',';~Tt','want'), w('TO','to'), w('VB',';~Dpr.n','say'), w('P-ROLE','to'), w('PRO','you'), w('D;_nphd_','something'), w('PUNC','.')]
- (4.174)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('PRO','you'), w('D;_nphd_','something')]), parse(verb_complements_by_code(';~Dpr.n',[],filled_sbj,active)).
( (PP-OB2 (P-ROLE to)
(NP (PRO you)))
(NP-OB1 (D;_nphd_ something)))
yes
The success of (4.174) is possible with [rule 2] of (4.170).
Parsing word list (4.175) as a noun phrase leads to the verb_complements_by_code call seen with (4.176).
- (4.175)
-
[w('D','the'), w('ADJ','maximum'), w('N','loan'), w('RPRO','that'), w('D','the'), w('N','state'), w('MD',';~cat_Vi','could'), w('VB',';~Dpr.n','make'), w('P-ROLE','to'), w('D','a'), w('N','project')]
- (4.176)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('D','a'), w('N','project')]), parse(verb_complements_by_code(';~Dpr.n',[np(node('*ICH*-283',[]))],filled_sbj,active)).
( (NP-OB1 *ICH*-283)
(PP-OB2 (P-ROLE to)
(NP (D a)
(N project))))
yes
The success of (4.176) is possible with [rule 3] of (4.170).
Parsing word list (4.177) as a sentence leads to the verb_complements_by_code call seen with (4.178).
- (4.177)
-
[w('NS','Details'), w('P-ROLE','of'), w('Q','all'), w('NS','negotiations'), w('BEP',';~cat_Ve_passive_','are'), w('VVN',';~Dpr.n','sent'), w('P-ROLE','to'), w('N','Head'), w('N','Office'), w('PUNC','.')]
- (4.178)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('N','Head'), w('N','Office')]), parse(verb_complements_by_code(';~Dpr.n',[],filled_sbj,passive)).
(PP-OB2 (P-ROLE to)
(NP (N Head)
(N Office)))
yes
The success of (4.178) is possible with [rule 4] of (4.170).
Code ;~Dpr.f selects a preposition phrase with indirect object function (PP-OB2) and a that-clause with direct object function (NP-OB1). For a call of the verb_complements_by_code rule of (4.179), there has to be content from the word list for a preposition phrase followed by a that-clause.
- (4.179)
-
verb_complements_by_code(';~Dpr.f',Store,filled_sbj,active,L,L0) -->
preposition_phrase('-OB2',non_privileged,L,L1),
cp_that('-OB1',_,Store,L1,L0).
Parsing word list (4.180) as a sentence leads to the verb_complements_by_code call seen with (4.181).
- (4.180)
-
[w('PRO','They'), w('DOD','','did'), w('NEG;_clitic_','n<apos>t'), w('VB',';~Dpr.f','say'), w('P-ROLE','to'), w('D','the'), w('N','man'), w('C','that'), w('PRO','they'), w('BED',';~La','were'), w('ADJ','sorry'), w('PUNC','.')]
- (4.181)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('D','the'), w('N','man'), w('C','that'), w('PRO','they'), w('BED',';~La','were'), w('ADJ','sorry')]), parse(verb_complements_by_code(';~Dpr.f',[],filled_sbj,active)).
( (PP-OB2 (P-ROLE to)
(NP (D the)
(N man)))
(CP-THT-OB1 (IP-SUB (C that)
(NP-SBJ (PRO they))
(BED;~La were)
(ADJP-PRD2 (ADJ sorry)))))
yes
Code ;~Dpr.r selects a preposition phrase with indirect object function (PP-OB2) and an utterance that is reported speech with direct object function (utterance-OB1). For a call of the verb_complements_by_code rule of (4.182), there has to be content from the word list for a preposition followed by left quotation punctuation followed by an utterance followed by right quotation punctuation.
- (4.182)
-
verb_complements_by_code(';~Dpr.r',[],filled_sbj,active,L,L0) -->
preposition_phrase('-OB2',non_privileged,L,L4),
optional_punc_non_final(L4,L3),
punc(left_quotation_mark,L3,L2),
utterance('-OB1',L2,L1),
punc(right_quotation_mark,L1,L0).
Parsing word list (4.183) as a sentence leads to the verb_complements_by_code call seen with (4.184).
- (4.183)
-
[w('PRO','She'), w('VBD',';~Dpr.r','said'), w('P-ROLE','to'), w('PRO','me'), w('PULQ','<ldquo>'), w('BEP',';~cat_Vg','are'), w('PRO','you'), w('VAG',';~I','going'), w('PUNC','?'), w('PURQ','<rdquo>'), w('PUNC','.')]
- (4.184)
-
| ?- tphrase_set_string([w('P-ROLE','to'), w('PRO','me'), w('PULQ','<ldquo>'), w('BEP',';~cat_Vg','are'), w('PRO','you'), w('VAG',';~I','going'), w('PUNC','?'), w('PURQ','<rdquo>')]), parse(verb_complements_by_code(';~Dpr.r',[],filled_sbj,active)).
( (PP-OB2 (P-ROLE to)
(NP (PRO me)))
(PULQ <ldquo>)
(utterance-OB1 (CP-QUE-MAT (IP-SUB (BEP;~cat_Vg are)
(NP-SBJ (PRO you))
(IP-PPL-CAT (VAG;~I going)))
(PUNC ?)))
(PURQ <rdquo>))
yes
4.6 Complex-transitive verbs
This section establishes selection criteria for complex-transitive verbs.
Code ;~Cn.a selects a noun phrase with object function (NP-OB1) and an adjective phrase with object predicative function (ADJP-PRD). For calls of the verb_complements_by_code rules of (4.185) with filled_sbj and active settings, either:
- [rule 1] content for the object noun phrase occurs before content for the object predicative adjective phrase in the word list
- [rule 2] content for the object noun phrase occurs after content for the object predicative adjective phrase in the word list
- [rule 3] the word list has only content for a single adjective phrase as the object predicative, while the object occurs as a stored np(ICH)
- [rule 4] the word list first has a provisional it pronoun as the object noun phrase followed by content for an adjective phrase as the object predicative followed by content for a notional object (-NOB1)
- [rule 5] the word list first has noun phrase content for a derived object followed by content for an adjective phrase as the object predicative followed by content for a notional object (-NOB1)
- [rule 6] the word list first has content for an adjective phrase as the object predicative followed by content for a notional object (-NOB1), while a derived object occurs as a stored np(ICH)
When the Voice setting is passive:
- [rule 7] there is the filled_sbj requirement and the word list should only have content for a single preposition phrase as the object predicative
- [rule 8] there is the filled_sbj requirement and the word list should has content for an adjective phrase as the object predicative followed by content for a notional object (-NOB1).
- (4.185)
-
verb_complements_by_code(';~Cn.a',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
adjective_phrase('-PRD',non_privileged,L1,L0).
verb_complements_by_code(';~Cn.a',[],filled_sbj,active,L,L0) -->
adjective_phrase('-PRD',non_privileged,L,L1),
noun_phrase('-OB1',non_privileged,L1,L0).
verb_complements_by_code(';~Cn.a',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
adjective_phrase('-PRD',non_privileged,L,L0).
verb_complements_by_code(';~Cn.a',[],filled_sbj,active,[node('NP-OB1',[node('PRO;_provisional_',[node(Word,[])])])|L],L0) -->
[w('PRO;_provisional_',Word)],
adjective_phrase('-PRD',non_privileged,L,L1),
notional_item('-NOB1',L1,L0).
verb_complements_by_code(';~Cn.a',Store,filled_sbj,active,L,L0) -->
noun_phrase('-DOB1',non_privileged,L,L2),
adjective_phrase('-PRD',non_privileged,L2,[node('IP-INF-NOB1',VL)|L0]),
to_inf_layer(Store,filled_sbj,passive,VL,[]).
verb_complements_by_code(';~Cn.a',[np(ICH)],filled_sbj,active,[node('NP-DOB1',[ICH])|L],L0) -->
adjective_phrase('-PRD',non_privileged,L,[node('IP-INF-NOB1',VL)|L0]),
to_inf_layer([],filled_sbj,passive,VL,[]).
verb_complements_by_code(';~Cn.a',[],filled_sbj,passive,L,L0) -->
adjective_phrase('-PRD',non_privileged,L,L0).
verb_complements_by_code(';~Cn.a',[],filled_sbj,passive,L,L0) -->
adjective_phrase('-PRD',non_privileged,L,[node('IP-INF-NOB1',VL)|L0]),
to_inf_layer([],filled_sbj,passive,VL,[]).
Parsing word list (4.186) as a sentence leads to the verb_complements_by_code call seen with (4.187).
- (4.186)
-
[w('D','The'), w('ADJ','setting'), w('N','sun'), w('VBD',';~Cn.a','painted'), w('D','the'), w('ADJ','western'), w('N','sky'), w('ADJ','red'), w('PUNC','.')]
- (4.187)
-
| ?- tphrase_set_string([w('D','the'), w('ADJ','western'), w('N','sky'), w('ADJ','red')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,active)).
( (NP-OB1 (D the)
(ADJP (ADJ western))
(N sky))
(ADJP-PRD (ADJ red)))
yes
The success of (4.187) is possible with [rule 1] of (4.185).
Parsing word list (4.188) as a sentence leads to the verb_complements_by_code call seen with (4.189).
- (4.188)
-
[w('PRO','He'), w('VBD',';~Cn.a','flung'), w('ADJ','open'), w('D','the'), w('N','canopy'), w('PUNC','.')]
- (4.189)
-
| ?- tphrase_set_string([w('ADJ','open'), w('D','the'), w('N','canopy')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,active)).
( (ADJP-PRD (ADJ open))
(NP-OB1 (D the)
(N canopy)))
yes
The success of (4.189) is possible with [rule 2] of (4.185).
Parsing word list (4.190) as a noun phrase leads to the verb_complements_by_code call seen with (4.191).
- (4.190)
-
[w('PRO;_genm_','her'), w('NS','habits'), w('RPRO','that'), w('Q;_nphd_','most'), w('MD',';~cat_Vi','would'), w('VB',';~Cn.a','find'), w('ADJ','annoying')]
- (4.191)
-
| ?- tphrase_set_string([w('ADJ','annoying')]), parse(verb_complements_by_code(';~Cn.a',[np(node('*ICH*-296',[]))],filled_sbj,active)).
( (NP-OB1 *ICH*-296)
(ADJP-PRD (ADJ annoying)))
yes
The success of (4.191) is possible with [rule 3] of (4.185).
Parsing word list (4.192) as a sentence leads to the verb_complements_by_code call seen with (4.193).
- (4.192)
-
[w('D','The'), w('N','decline'), w('VBP',';~Cn.a','makes'), w('PRO;_provisional_','it'), w('ADJR','easier'), w('TO','to'), w('VB',';~I','accept'), w('PUNC','.')]
- (4.193)
-
| ?- tphrase_set_string([w('PRO;_provisional_','it'), w('ADJR','easier'), w('TO','to'), w('VB',';~I','accept')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,active)).
( (NP-OB1 (PRO;_provisional_ it))
(ADJP-PRD (ADJR easier))
(IP-INF-NOB1 (TO to)
(VB;~I accept)))
yes
The success of (4.193) is possible with [rule 4] of (4.185).
Parsing word list (4.194) as a sentence leads to the verb_complements_by_code call seen with (4.195).
- (4.194)
-
[w('PRO','I'), w('VBP',';~Cn.a','find'), w('D;_nphd_','this'), w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe'), w('PUNC','.')]
- (4.195)
-
| ?- tphrase_set_string([w('D;_nphd_','this'), w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,active)).
( (NP-DOB1 (D;_nphd_ this))
(ADJP-PRD (ADJ difficult))
(IP-INF-NOB1 (NP-LGS *)
(TO to)
(VB;~Tn believe)))
yes
The success of (4.195) is possible with [rule 5] of (4.185).
Parsing word list (4.196) as a sentence leads to the verb_complements_by_code call seen with (4.197).
- (4.196)
-
[w('WPRO','What'), w('DOD','','did'), w('PRO','you'), w('VB',';~Cn.a','find'), w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe'), w('PUNC','?')]
- (4.197)
-
| ?- tphrase_set_string([w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe')]), parse(verb_complements_by_code(';~Cn.a',[np(node('*ICH*-311',[]))],filled_sbj,active)).
( (NP-DOB1 *ICH*-311)
(ADJP-PRD (ADJ difficult))
(IP-INF-NOB1 (NP-LGS *)
(TO to)
(VB;~Tn believe)))
yes
The success of (4.197) is possible with [rule 6] of (4.185).
Parsing word list (4.198) as a sentence leads to the verb_complements_by_code call seen with (4.199).
- (4.198)
-
[w('D','The'), w('ADJ','western'), w('N','sky'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Cn.a','painted'), w('ADJ','red'), w('PUNC','.')]
- (4.199)
-
| ?- tphrase_set_string([w('ADJ','red')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,passive)).
(ADJP-PRD (ADJ red))
yes
The success of (4.199) is possible with [rule 7] of (4.185).
Parsing word list (4.200) as a sentence leads to the verb_complements_by_code call seen with (4.201).
- (4.200)
-
[w('D;_nphd_','This'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Cn.a','found'), w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe'), w('PUNC','.')]
- (4.201)
-
| ?- tphrase_set_string([w('ADJ','difficult'), w('TO','to'), w('VB',';~Tn','believe')]), parse(verb_complements_by_code(';~Cn.a',[],filled_sbj,passive)).
( (ADJP-PRD (ADJ difficult))
(IP-INF-NOB1 (NP-LGS *)
(TO to)
(VB;~Tn believe)))
yes
The success of (4.201) is possible with [rule 8] of (4.185).
Code ;~Cn.n selects a noun phrase with object function (NP-OB1) and a noun phrase with object predicative function (NP-PRD). For calls of the verb_complements_by_code rules of (4.202) with filled_sbj and active settings, either:
- [rule 1] content for the object noun phrase occurs before content for the object predicative noun phrase in the word list
- [rule 2] the word list first has a provisional it pronoun as the object noun phrase followed by content for a noun phrase as the object predicative followed by content for a notional object (-NOB1)
- [rule 3] the word list has only content for a single noun phrase as the object predicative, while the object occurs as a stored np(ICH)
When the Voice setting is passive, either:
- [rule 4] there is the filled_sbj requirement and the word list should only have content for a single noun phrase as the object predicative
- [rule 5] there is the filled_sbj requirement and the word list is empty while the object predicative occurs as a stored np(ICH)
- (4.202)
-
verb_complements_by_code(';~Cn.n',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
noun_phrase('-PRD',non_privileged,L1,L0).
verb_complements_by_code(';~Cn.n',[],filled_sbj,active,[node('NP-OB1',[node('PRO;_provisional_',[node(Word,[])])])|L],L0) -->
[w('PRO;_provisional_',Word)],
noun_phrase('-PRD',non_privileged,L,L1),
notional_item('-NOB1',L1,L0).
verb_complements_by_code(';~Cn.n',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH])|L],L0) -->
noun_phrase('-PRD',non_privileged,L,L0).
verb_complements_by_code(';~Cn.n',[],filled_sbj,passive,L,L0) -->
noun_phrase('-PRD',non_privileged,L,L0).
verb_complements_by_code(';~Cn.n',[np(ICH)],filled_sbj,passive,[node('NP-PRD',[ICH])|L],L) -->
[].
Parsing word list (4.203) as a sentence leads to the verb_complements_by_code call seen with (4.204).
- (4.203)
-
[w('PRO','He'), w('HVP',';~cat_Ve','has'), w('VVN',';~Cn.n','made'), w('PRO','it'), w('PRO;_ppge_','his'), w('PUNC','.')]
- (4.204)
-
| ?- tphrase_set_string([w('PRO','it'), w('PRO;_ppge_','his')]), parse(verb_complements_by_code(';~Cn.n',[],filled_sbj,active)).
( (NP-OB1 (PRO it))
(NP-PRD (NP-GENV (PRO;_ppge_ his))))
yes
The success of (4.204) is possible with [rule 1] of (4.202).
Parsing word list (4.205) as a sentence leads to the verb_complements_by_code call seen with (4.206).
- (4.205)
-
[w('VB',';~Cn.n','Make'), w('PRO;_provisional_','it'), w('D','a'), w('N','rule'), w('TO','to'), w('VB',';~Ip','get'), w('RP','up'), w('PUNC','.')]
- (4.206)
-
| ?- tphrase_set_string([w('PRO;_provisional_','it'), w('D','a'), w('N','rule'), w('TO','to'), w('VB',';~Ip','get'), w('RP','up')]), parse(verb_complements_by_code(';~Cn.n',[],filled_sbj,active)).
( (NP-OB1 (PRO;_provisional_ it))
(NP-PRD (D a)
(N rule))
(IP-INF-NOB1 (TO to)
(VB;~Ip get)
(ADVP-CLR (RP up))))
yes
The success of (4.206) is possible with [rule 2] of (4.202).
Parsing word list (4.207) as a noun phrase leads to the verb_complements_by_code call seen with (4.208).
- (4.207)
-
[w('D','a'), w('N','kitten'), w('RPRO','who'), w('PRO','we'), w('VBD',';~Cn.n','called'), w('NPR','Ruffels')]
- (4.208)
-
| ?- tphrase_set_string([w('NPR','Ruffels')]), parse(verb_complements_by_code(';~Cn.n',[np(node('*ICH*-301',[]))],filled_sbj,active)).
( (NP-OB1 *ICH*-301)
(NP-PRD (NPR Ruffels)))
yes
The success of (4.208) is possible with [rule 3] of (4.202).
Parsing word list (4.209) as a sentence leads to the verb_complements_by_code call seen with (4.210).
- (4.209)
-
[w('D','The'), w('N','kitten'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Cn.n','called'), w('NPR','Ruffels'), w('PUNC','.')]
- (4.210)
-
| ?- tphrase_set_string([w('NPR','Ruffels')]), parse(verb_complements_by_code(';~Cn.n',[],filled_sbj,passive)).
(NP-PRD (NPR Ruffels))
yes
The success of (4.210) is possible with [rule 4] of (4.202).
Parsing word list (4.211) as a sentence leads to the verb_complements_by_code call seen with (4.212).
- (4.211)
-
[w('WPRO','What'), w('BED',';~cat_Ve_passive_','was'), w('D','the'), w('N','city'), w('VVN',';~Cn.n','called'), w('PUNC','?')]
- (4.212)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~Cn.n',[np(node('*ICH*-314',[]))],filled_sbj,passive)).
(NP-PRD *ICH*-314)
yes
The success of (4.212) is possible with [rule 5] of (4.202).
Code ;~Cn.n/a selects a noun phrase with object function (NP-OB1) and a preposition phrase with object predicative function (PP-PRD). For calls of the verb_complements_by_code rules of (4.213) with filled_sbj and active settings:
- [rule 1] content for the object noun phrase occurs before content for the object predicative preposition phrase in the word list
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the object predicative preposition phrase
- (4.213)
-
verb_complements_by_code(';~Cn.n/a',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
preposition_phrase('-PRD',non_privileged,L1,L0).
verb_complements_by_code(';~Cn.n/a',[],filled_sbj,passive,L,L0) -->
preposition_phrase('-PRD',non_privileged,L,L0).
Parsing word list (4.214) as a noun phrase leads to the verb_complements_by_code call seen with (4.215).
- (4.214)
-
[w('PRO','They'), w('VBD',';~Cn.n/a','accepted'), w('PRO','it'), w('P-ROLE','as'), w('D','a'), w('ADJ','natural'), w('N','thing'), w('PUNC','.')]
- (4.215)
-
| ?- tphrase_set_string([w('PRO','it'), w('P-ROLE','as'), w('D','a'), w('ADJ','natural'), w('N','thing')]), parse(verb_complements_by_code(';~Cn.n/a',[],filled_sbj,active)).
( (NP-OB1 (PRO it))
(PP-PRD (P-ROLE as)
(NP (D a)
(ADJP (ADJ natural))
(N thing))))
yes
verb_complements_by_code
The success of (4.215) is possible with [rule 1] of (4.213).
Parsing word list (4.216) as a noun phrase leads to the verb_complements_by_code call seen with (4.217).
- (4.216)
-
[w('D','The'), w('N','alliance'), w('VBD',';~cat_Ve_passive_','became'), w('VVN',';~Cn.n/a','known'), w('P-ROLE','as'), w('D','the'), w('NPR','Delian'), w('NPR','League'), w('PUNC','.')]
- (4.217)
-
| ?- tphrase_set_string([w('P-ROLE','as'), w('D','the'), w('NPR','Delian'), w('NPR','League')]), parse(verb_complements_by_code(';~Cn.n/a',[],filled_sbj,passive)).
(PP-PRD (P-ROLE as)
(NP (D the)
(NPR Delian)
(NPR League)))
yes
The success of (4.217) is possible with [rule 2] of (4.213).
Code ;~Cn.pr selects a noun phrase with object function (NP-OB1) and a preposition phrase with object predicative function (PP-PRD). For calls of the verb_complements_by_code rules of (4.218) with filled_sbj and active settings:
- [rule 1] content for the object noun phrase occurs before content for the object predicative preposition phrase in the word list
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the object predicative preposition phrase
- (4.218)
-
verb_complements_by_code(';~Cn.pr',[],filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
preposition_phrase('-PRD',non_privileged,L1,L0).
verb_complements_by_code(';~Cn.pr',[],filled_sbj,passive,L,L0) -->
preposition_phrase('-PRD',non_privileged,L,L0).
Parsing word list (4.219) as a noun phrase leads to the verb_complements_by_code call seen with (4.220).
- (4.219)
-
[w('NPR','Geoffrey'), w('MD',';~cat_Vi','could'), w('VB',';~Cn.pr','imagine'), w('PNX','himself'), w('P-ROLE','in'), w('D','an'), w('ADJ','upper'), w('N','gallery'), w('PUNC','.')]
- (4.220)
-
| ?- tphrase_set_string([w('PNX','himself'), w('P-ROLE','in'), w('D','an'), w('ADJ','upper'), w('N','gallery')]), parse(verb_complements_by_code(';~Cn.pr',[],filled_sbj,active)).
( (NP-OB1 (PNX himself))
(PP-PRD (P-ROLE in)
(NP (D an)
(ADJP (ADJ upper))
(N gallery))))
yes
The success of (4.220) is possible with [rule 1] of (4.218).
Parsing word list (4.221) as a noun phrase leads to the verb_complements_by_code call seen with (4.222).
- (4.221)
-
[w('NPR','Thorn'), w('BEP',';~cat_Ve_passive_','is'), w('VVN',';~Cn.pr','involved'), w('P-ROLE','in'), w('ADJ','parallel'), w('N','computing'), w('PUNC','.')]
- (4.222)
-
| ?- tphrase_set_string([w('P-ROLE','in'), w('ADJ','parallel'), w('N','computing')]), parse(verb_complements_by_code(';~Cn.pr',[],filled_sbj,passive)).
(PP-PRD (P-ROLE in)
(NP (ADJP (ADJ parallel))
(N computing)))
yes
The success of (4.222) is possible with [rule 2] of (4.218).
Code ;~Cn.t selects a noun phrase with object function (NP-OB1) and a to-infinitive clause with object predicative function (IP-INF-PRD). For calls of the verb_complements_by_code rules of (4.223) with filled_sbj and active settings, while content for the to-infinitive clause comes from the word list, the derived object noun phrase can occur either:
- [rule 1] as content from the word list before the content of the to-infinitive clause
- [rule 2] as a stored np(ICH)
When the Voice setting is passive:
- [rule 3] there is the filled_sbj requirement and the word list should only have content for the to-infinitive clause
- (4.223)
-
verb_complements_by_code(';~Cn.t',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,[node('IP-INF-PRD',VL)|L0]),
to_inf_layer(Store,filled_sbj,active,VL,[]).
verb_complements_by_code(';~Cn.t',[np(ICH)],filled_sbj,active,[node('NP-OB1',[ICH]),node('IP-INF-PRD',VL)|L],L) -->
to_inf_layer([],filled_sbj,active,VL,[]).
verb_complements_by_code(';~Cn.t',Store,filled_sbj,passive,[node('IP-INF-PRD',VL)|L],L) -->
to_inf_layer(Store,filled_sbj,active,VL,[]).
Parsing word list (4.224) as a sentence leads to the verb_complements_by_code call seen with (4.225).
- (4.224)
-
[w('PRO','I'), w('VBD',';~Cn.t','persuaded'), w('PRO','it'), w('TO','to'), w('VB',';~Ipr','get'), w('P-ROLE','off'), w('PRO','me'), w('PUNC','.')]
- (4.225)
-
| ?- tphrase_set_string([w('PRO','it'), w('TO','to'), w('VB',';~Ipr','get'), w('P-ROLE','off'), w('PRO','me')]), parse(verb_complements_by_code(';~Cn.t',[],filled_sbj,active)).
( (NP-OB1 (PRO it))
(IP-INF-PRD (TO to)
(VB;~Ipr get)
(PP-CLR (P-ROLE off)
(NP (PRO me)))))
yes
The success of (4.225) is possible with [rule 1] of (4.223).
Parsing word list (4.226) as a noun phrase leads to the verb_complements_by_code call seen with (4.227).
- (4.226)
-
[w('D','the'), w('N','person'), w('RPRO','that'), w('PRO','he'), w('MD',';~cat_Vi','<apos>ll'), w('VB',';~Cn.t','get'), w('TO','to'), w('DO',';~Tn','do'), w('PRO;_genm_','his'), w('ADJ','dirty'), w('N','work')]
- (4.227)
-
| ?- tphrase_set_string([w('TO','to'), w('DO',';~Tn','do'), w('PRO;_genm_','his'), w('ADJ','dirty'), w('N','work')]), parse(verb_complements_by_code(';~Cn.t',[np(node('*ICH*-325',[]))],filled_sbj,active)).
( (NP-OB1 *ICH*-325)
(IP-INF-PRD (TO to)
(DO;~Tn do)
(NP-OB1 (NP-GENV (PRO;_genm_ his))
(ADJP (ADJ dirty))
(N work))))
yes
The success of (4.227) is possible with [rule 2] of (4.223).
Parsing word list (4.228) as a sentence leads to the verb_complements_by_code call seen with (4.229).
- (4.228)
-
[w('ADJ','Such'), w('NS','receptors'), w('BEP',';~cat_Ve_passive_','are'), w('VVN',';~Cn.t','thought'), w('TO','to'), w('BE',';~Ln','be'), w('NS','neurons'), w('PUNC','.')]
- (4.229)
-
| ?- tphrase_set_string([w('TO','to'), w('BE',';~Ln','be'), w('NS','neurons')]), parse(verb_complements_by_code(';~Cn.t',[],filled_sbj,passive)).
(IP-INF-PRD (TO to)
(BE;~Ln be)
(NP-PRD2 (NS neurons)))
yes
The success of (4.229) is possible with [rule 3] of (4.223).
Code ;~Cn.i selects a noun phrase with object function (NP-OB1) and a bare infinitive clause with object predicative function (IP-INF-PRD). For a call of the verb_complements_by_code rule of (4.230), there has to be content from the word list for a noun phrase followed by a bare infinitive clause.
- (4.230)
-
verb_complements_by_code(';~Cn.i',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,[node('IP-INF-PRD',VL)|L0]),
verb_phrase_layer(Store,filled_sbj,infinitive,active,VL,[]).
Parsing word list (4.231) as a sentence leads to the verb_complements_by_code call seen with (4.232).
- (4.231)
-
[w('VB',';~Cn.i','Let'), w('PRO','me'), w('HV',';~Tn','have'), w('D','a'), w('N','go'), w('PUNC','.')]
- (4.232)
-
| ?- tphrase_set_string([w('PRO','me'), w('HV',';~Tn','have'), w('D','a'), w('N','go')]), parse(verb_complements_by_code(';~Cn.i',[],filled_sbj,active)).
( (NP-OB1 (PRO me))
(IP-INF-PRD (HV;~Tn have)
(NP-OB1 (D a)
(N go))))
yes
Code ;~Cn.g selects a noun phrase with object function (NP-OB1) and a present participle (-ing) clause with object predicative function (IP-PPL-PRD). For calls of the verb_complements_by_code rules of (4.233) with filled_sbj and active settings:
- [rule 1] content for the object noun phrase occurs before content for the object predicative participle clause in the word list
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the object predicative predicative clause
- (4.233)
-
verb_complements_by_code(';~Cn.g',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
ip_ppl_active('-PRD',Store,filled_sbj,ing_participle,L1,L0).
verb_complements_by_code(';~Cn.g',Store,filled_sbj,passive,L,L0) -->
ip_ppl_active('-PRD',Store,filled_sbj,ing_participle,L,L0).
Parsing word list (4.234) as a sentence leads to the verb_complements_by_code call seen with (4.235).
- (4.234)
-
[w('ADV','So'), w('PRO','they'), w('HVD',';~cat_Ve','<apos>d'), w('VVN',';~Cn.g','got'), w('D','a'), w('ADJ','ticking'), w('N','clock'), w('VAG',';~I','running'), w('PUNC','.')]
- (4.235)
-
| ?- tphrase_set_string([w('D','a'), w('ADJ','ticking'), w('N','clock'), w('VAG',';~I','running')]), parse(verb_complements_by_code(';~Cn.g',[],filled_sbj,active)).
( (NP-OB1 (D a)
(ADJP (ADJ ticking))
(N clock))
(IP-PPL-PRD (VAG;~I running)))
yes
The success of (4.235) is possible with [rule 1] of (4.233).
Parsing word list (4.236) as a sentence leads to the verb_complements_by_code call seen with (4.237).
- (4.236)
-
[w('D','The'), w('N','unit'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Cn.g','assumed'), w('VAG',';~I','working'), w('PUNC','.')]
- (4.237)
-
| ?- tphrase_set_string([w('VAG',';~I','working')]), parse(verb_complements_by_code(';~Cn.g',[],filled_sbj,passive)).
(IP-PPL-PRD (VAG;~I working))
yes
The success of (4.237) is possible with [rule 2] of (4.233).
4.7 VP24 verbs
This section details VP24 codes from Hornby (1975).
Code ;~VP24A selects a noun phrase with object function (NP-OB1) and a passive voice past participle (-ed/-en) clause with object predicative function (IP-PPL-PRD). The ;~VP24A code is used when the verb is neither GET with the ;~VP24C meaning nor HAVE. For calls of the verb_complements_by_code rules of (4.238) with filled_sbj and active settings:
- [rule 1] content for the object noun phrase occurs before content for the passive voice past participle clause in the word list
When the Voice setting is passive:
- [rule 2] there is the filled_sbj requirement and the word list should only have content for the passive voice past participle clause
- (4.238)
-
verb_complements_by_code(';~VP24A',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
ip_ppl_passive('-PRD',Store,filled_sbj,en_participle,L1,L0).
verb_complements_by_code(';~VP24A',Store,filled_sbj,passive,L,L0) -->
ip_ppl_passive('-PRD',Store,filled_sbj,en_participle,L,L0).
Parsing word list (4.239) as a sentence leads to the verb_complements_by_code call seen with (4.240).
- (4.239)
-
[w('PRO','She'), w('VBD',';~VP24A','made'), w('PRO','me'), w('VVN',';~Tn.pr','obliged'), w('P-ROLE','to'), w('PRO','her'), w('PUNC','.')]
- (4.240)
-
| ?- tphrase_set_string([w('PRO','me'), w('VVN',';~Tn.pr','obliged'), w('P-ROLE','to'), w('PRO','her')]), parse(verb_complements_by_code(';~VP24A',[],filled_sbj,active)).
( (NP-OB1 (PRO me))
(IP-PPL-PRD (NP-LGS *)
(VVN;~Tn.pr obliged)
(PP-CLR (P-ROLE to)
(NP (PRO her)))))
yes
The success of (4.240) is possible with [rule 1] of (4.238).
Parsing word list (4.241) as a sentence leads to the verb_complements_by_code call seen with (4.242).
- (4.241)
-
[w('D','A'), w('ADJ','prominent'), w('N','journalist'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~VP24A','found'), w('VVN',';~Cn.a','shot'), w('ADJ','dead'), w('PUNC','.')]
- (4.242)
-
| ?- tphrase_set_string([w('VVN',';~Cn.a','shot'), w('ADJ','dead')]), parse(verb_complements_by_code(';~VP24A',[],filled_sbj,passive)).
(IP-PPL-PRD (NP-LGS *)
(VVN;~Cn.a shot)
(ADJP-PRD (ADJ dead)))
yes
The success of (4.242) is possible with [rule 2] of (4.238).
Code ;~VP24B selects a noun phrase with object function (NP-OB1) and a passive voice past participle (-ed/-en) clause with predicative function (IP-PPL-PRD). The ;~VP24B code is used when the main verb is HAVE indicating what its subject experiences, undergoes or suffers. For a call of the verb_complements_by_code rule of (4.243), there has to be content from the word list for a noun phrase followed by a passive voice past participle clause.
- (4.243)
-
verb_complements_by_code(';~VP24B',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
ip_ppl_passive('-PRD',Store,filled_sbj,en_participle,L1,L0).
Parsing word list (4.244) as a sentence leads to the verb_complements_by_code call seen with (4.245).
- (4.244)
-
[w('PRO','I'), w('HVD',';~cat_Ve','<apos>d'), w('HVN',';~VP24B','had'), w('D','a'), w('N','novel'), w('VVN',';~Tn','published'), w('PUNC','.')]
- (4.245)
-
| ?- tphrase_set_string([w('D','a'), w('N','novel'), w('VVN',';~Tn','published')]), parse(verb_complements_by_code(';~VP24B',[],filled_sbj,active)).
( (NP-OB1 (D a)
(N novel))
(IP-PPL-PRD (NP-LGS *)
(VVN;~Tn published)))
yes
Code ;~VP24C selects a noun phrase with object function (NP-OB1) and a passive voice past participle (-ed/-en) clause with predicative function (IP-PPL-PRD). The ;~VP24C code is used when the main verb is HAVE or GET meaning ‘cause to be’. For a call of the verb_complements_by_code rule of (4.246), there has to be content from the word list for a noun phrase followed by a passive voice past participle clause.
- (4.246)
-
verb_complements_by_code(';~VP24C',Store,filled_sbj,active,L,L0) -->
noun_phrase('-OB1',non_privileged,L,L1),
ip_ppl_passive('-PRD',Store,filled_sbj,en_participle,L1,L0).
Parsing word list (4.247) as a sentence leads to the verb_complements_by_code call seen with (4.248).
- (4.247)
-
[w('PRO','She'), w('HVP',';~cat_Ve','<apos>s'), w('VVN',';~VP24C','got'), w('PRO;_genm_','her'), w('N','hair'), w('VVN',';~Tn','cut'), w('PUNC','.')]
- (4.248)
-
| ?- tphrase_set_string([w('PRO;_genm_','her'), w('N','hair'), w('VVN',';~Tn','cut')]), parse(verb_complements_by_code(';~VP24C',[],filled_sbj,active)).
( (NP-OB1 (NP-GENV (PRO;_genm_ her))
(N hair))
(IP-PPL-PRD (NP-LGS *)
(VVN;~Tn cut)))
yes
4.8 Existential verbs
This section establishes selection criteria for existential verbs.
Code ;~ex_V selects a noun phrase with existential subject function (NP-ESBJ). For calls of the verb_complements_by_code rules of (4.249), the selected noun phrase occurs either:
- [rule 1] as content from the word list
- [rule 2] as a stored np(ICH)
- (4.249)
-
verb_complements_by_code(';~ex_V',[],there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,L0).
verb_complements_by_code(';~ex_V',[np(ICH)],there_sbj,active,[node('NP-ESBJ',[ICH])|L],L) -->
[].
Parsing word list (4.250) as a sentence leads to the verb_complements_by_code call seen with (4.251).
- (4.250)
-
[w('EX','There'), w('BEP',';~ex_V','are'), w('ADJ','other'), w('NS','complications'), w('PUNC','.')]
- (4.251)
-
| ?- tphrase_set_string([w('ADJ','other'), w('NS','complications')]), parse(verb_complements_by_code(';~ex_V',[],there_sbj,active)).
(NP-ESBJ (ADJP (ADJ other))
(NS complications))
yes
The success of (4.251) is possible with [rule 1] of (4.249).
Parsing word list (4.252) as a sentence leads to the verb_complements_by_code call seen with (4.253).
- (4.252)
-
[w('WADV','How'), w('ADJ','many'), w('NS','flats'), w('BEP',';~ex_V','are'), w('EX','there'), w('PUNC','?')]
- (4.253)
-
| ?- tphrase_set_string([]), parse(verb_complements_by_code(';~ex_V',[np(node('*ICH*-338',[]))],there_sbj,active)).
(NP-ESBJ *ICH*-338)
yes
The success of (4.253) is possible with [rule 2] of (4.249).
Code ;~ex_Vp selects a noun phrase with existential subject function (NP-ESBJ) and an adverbial particle that is the head of an adverb phrase (ADVP-CLR). For a call of the verb_complements_by_code rule of (4.254), while content for the adverb phrase has to come from the word list as an adverbial particle, the noun phrase can occur either:
- [rule 1] as initial content of the word list
- [rule 2] as a stored noun phrase np(ICH)
- (4.254)
-
verb_complements_by_code(';~ex_Vp',[],there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,L1),
adverb_phrase('-CLR',particle,L1,L0).
verb_complements_by_code(';~ex_Vp',[np(ICH)],there_sbj,active,[node('NP-ESBJ',[ICH])|L],L0) -->
adverb_phrase('-CLR',particle,L,L0).
Parsing word list (4.255) as a sentence leads to the verb_complements_by_code call seen with (4.256).
- (4.255)
-
[w('EX','There'), w('BEP',';~ex_Vp','<apos>s'), w('Q;_nphd_','nothing'), w('ADV','there'), w('PUNC','.')]
- (4.256)
-
| ?- tphrase_set_string([w('Q;_nphd_','nothing'), w('ADV','there')]), parse(verb_complements_by_code(';~ex_Vp',[],there_sbj,active)).
( (NP-ESBJ (Q;_nphd_ nothing))
(ADVP-CLR (ADV there)))
yes
The success of (4.256) is possible with [rule 1] of (4.254).
Parsing word list (4.257) as a sentence leads to the verb_complements_by_code call seen with (4.258).
- (4.257)
-
[w('WADV','How'), w('ADJ','many'), w('NS','flats'), w('BEP',';~ex_Vp','are'), w('EX','there'), w('ADV','here'), w('PUNC','?')]
- (4.258)
-
| ?- tphrase_set_string([w('ADV','here')]), parse(verb_complements_by_code(';~ex_Vp',[np(node('*ICH*-338',[]))],there_sbj,active)).
( (NP-ESBJ *ICH*-338)
(ADVP-CLR (ADV here)))
yes
The success of (4.258) is possible with [rule 2] of (4.254).
Code ;~ex_Vpr selects a noun phrase with existential subject function (NP-ESBJ) and a preposition phrase (PP-CLR). For a call of the verb_complements_by_code rule of (4.259), there has to be content from the word list for a noun phrase followed by a preposition phrase.
- (4.259)
-
verb_complements_by_code(';~ex_Vpr',[],there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,L1),
preposition_phrase('-CLR',non_privileged,L1,L0).
Parsing word list (4.260) as a sentence leads to the verb_complements_by_code call seen with (4.261).
- (4.260)
-
[w('EX','There'), w('BED',';~ex_Vpr','was'), w('ADJ','open'), w('N','mockery'), w('P-ROLE','in'), w('PRO;_genm_','his'), w('N','tone'), w('PUNC','.')]
- (4.261)
-
| ?- tphrase_set_string([w('ADJ','open'), w('N','mockery'), w('P-ROLE','in'), w('PRO;_genm_','his'), w('N','tone')]), parse(verb_complements_by_code(';~ex_Vpr',[],there_sbj,active)).
( (NP-ESBJ (ADJP (ADJ open))
(N mockery))
(PP-CLR (P-ROLE in)
(NP (NP-GENV (PRO;_genm_ his))
(N tone))))
yes
Code ;~ex_cat_Vt selects a noun phrase with existential subject function (NP-ESBJ) and a to-infinitive clause with catenative complement function (IP-INF-CAT). For a call of the verb_complements_by_code rule of (4.262), while content for the to-infinitive clause has to come from the word list, the noun phrase can occur either:
- [rule 1] as initial content of the word list
- [rule 2] as a stored noun phrase np(ICH)
- (4.262)
-
verb_complements_by_code(';~ex_cat_Vt',Store,there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,[node('IP-INF-CAT',VL)|L0]),
to(VL,VL1),
verb_phrase_layer(Store,filled_sbj,infinitive,active,VL1,[]).
verb_complements_by_code(';~ex_cat_Vt',[np(ICH)|Store],there_sbj,active,[node('NP-ESBJ',[ICH]),node('IP-INF-CAT',VL)|L],L) -->
to(VL,VL1),
verb_phrase_layer(Store,filled_sbj,infinitive,active,VL1,[]).
Parsing word list (4.263) as a sentence leads to the verb_complements_by_code call seen with (4.264).
- (4.263)
-
[w('EX','There'), w('BEP',';~ex_cat_Vt','is'), w('Q','no'), w('N','evidence'), w('TO','to'), w('VB',';~Tf','prove'), w('NPR','Hollis'), w('BED',';~Ln','was'), w('D','a'), w('ADJ','Russian'), w('N','mole'), w('PUNC','.')]
- (4.264)
-
| ?- tphrase_set_string([w('Q','no'), w('N','evidence'), w('TO','to'), w('VB',';~Tf','prove'), w('NPR','Hollis'), w('BED',';~Ln','was'), w('D','a'), w('ADJ','Russian'), w('N','mole')]), parse(verb_complements_by_code(';~ex_cat_Vt',[],there_sbj,active)).
( (NP-ESBJ (Q no)
(N evidence))
(IP-INF-CAT (TO to)
(VB;~Tf prove)
(CP-THT-OB1 (IP-SUB (NP-SBJ (NPR Hollis))
(BED;~Ln was)
(NP-PRD2 (D a)
(ADJP (ADJ Russian))
(N mole))))))
yes
The success of (4.264) is possible with [rule 1] of (4.262).
4.8.5 ex_cat_Vt_passive_
Code ;~ex_cat_Vt_passive_ selects a noun phrase with existential subject function (NP-ESBJ) and a passive voice to-infinitive clause with catenative complement function (IP-INF-CAT). For a call of the verb_complements_by_code rule of (4.265), while content for the to-infinitive clause has to come from the word list, the noun phrase can occur either:
- [rule 1] as initial content of the word list
- [rule 2] as a stored noun phrase np(ICH)
- (4.265)
-
verb_complements_by_code(';~ex_cat_Vt_passive_',Store,there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,[node('IP-INF-CAT',VL)|L0]),
{
member(SbjType,[filled_sbj,unfilled_sbj])
},
to_inf_layer(Store,SbjType,passive,VL,[]).
verb_complements_by_code(';~ex_cat_Vt_passive_',[np(ICH)|Store],there_sbj,active,[node('NP-ESBJ',[ICH]),node('IP-INF-CAT',VL)|L],L) -->
{
member(SbjType,[filled_sbj,unfilled_sbj])
},
to_inf_layer(Store,SbjType,passive,VL,[]).
Parsing word list (4.266) as a sentence leads to the verb_complements_by_code call seen with (4.267).
- (4.266)
-
[w('WPRO','What'), w('BEP',';~ex_cat_Vt_passive_','is'), w('EX','there'), w('P-CONN','for'), w('PRO','her'), w('TO','to'), w('DO',';~Tn','do'), w('PUNC','?')]
- (4.267)
-
| ?- tphrase_set_string([w('P-CONN','for'), w('PRO','her'), w('TO','to'), w('DO',';~Tn','do')]), parse(verb_complements_by_code(';~ex_cat_Vt_passive_',[np(node('*ICH*-348',[]))],there_sbj,active)).
( (NP-ESBJ *ICH*-348)
(IP-INF-CAT (P-CONN for)
(NP-LGS (PRO her))
(TO to)
(DO;~Tn do)))
yes
The success of (4.267) is possible with [rule 1] of (4.265).
Code ;~ex_cat_Vg selects a noun phrase with existential subject function (NP-ESBJ) and a present participle (-ing) clause with catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.268), while content for the participle clause has to come from the word list, the noun phrase can occur either:
- [rule 1] as initial content of the word list
- [rule 2] as a stored noun phrase np(ICH)
- (4.268)
-
verb_complements_by_code(';~ex_cat_Vg',Store,there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,L1),
ip_ppl_active('-CAT',Store,filled_sbj,ing_participle,L1,L0).
verb_complements_by_code(';~ex_cat_Vg',[np(ICH)|Store],there_sbj,active,[node('NP-ESBJ',[ICH])|L],L0) -->
ip_ppl_active('-CAT',Store,filled_sbj,ing_participle,L,L0).
Parsing word list (4.269) as a sentence leads to the verb_complements_by_code call seen with (4.270).
- (4.269)
-
[w('EX','There'), w('BEP',';~ex_cat_Vg','<apos>s'), w('D','a'), w('N','bear'), w('VAG',';~Ipr','sitting'), w('P-ROLE','in'), w('D','the'), w('N','corner'), w('PUNC','.')]
- (4.270)
-
| ?- tphrase_set_string([w('D','a'), w('N','bear'), w('VAG',';~Ipr','sitting'), w('P-ROLE','in'), w('D','the'), w('N','corner')]), parse(verb_complements_by_code(';~ex_cat_Vg',[],there_sbj,active)).
( (NP-ESBJ (D a)
(N bear))
(IP-PPL-CAT (VAG;~Ipr sitting)
(PP-CLR (P-ROLE in)
(NP (D the)
(N corner)))))
yes
The success of (4.270) is possible with [rule 1] of (4.268).
4.8.7 ex_cat_Ve_passive_
Code ;~ex_cat_Ve_passive_ selects a noun phrase with existential subject function (NP-ESBJ) and a passive voice past participle (-ed/-en) clause with catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.271), while content for the participle clause has to come from the word list, the noun phrase can occur either:
- [rule 1] as initial content of the word list
- [rule 2] as a stored noun phrase np(ICH)
- (4.271)
-
verb_complements_by_code(';~ex_cat_Ve_passive_',Store,there_sbj,active,L,L0) -->
noun_phrase('-ESBJ',non_privileged,L,L1),
ip_ppl_passive('-CAT',Store,filled_sbj,en_participle,L1,L0).
verb_complements_by_code(';~ex_cat_Ve_passive_',[np(ICH)|Store],there_sbj,active,[node('NP-ESBJ',[ICH])|L],L0) -->
ip_ppl_passive('-CAT',Store,filled_sbj,en_participle,L,L0).
Parsing word list (4.272) as a sentence leads to the verb_complements_by_code call seen with (4.273).
- (4.272)
-
[w('EX','There'), w('BEP',';~ex_cat_Ve_passive_','<apos>s'), w('D;_nphd_','something'), w('VVN',';~Tn.pr','inscribed'), w('P-ROLE','on'), w('D;_nphd_','this'), w('PUNC','.')]
- (4.273)
-
| ?- tphrase_set_string([w('D;_nphd_','something'), w('VVN',';~Tn.pr','inscribed'), w('P-ROLE','on'), w('D;_nphd_','this')]), parse(verb_complements_by_code(';~ex_cat_Ve_passive_',[],there_sbj,active)).
( (NP-ESBJ (D;_nphd_ something))
(IP-PPL-CAT (NP-LGS *)
(VVN;~Tn.pr inscribed)
(PP-CLR (P-ROLE on)
(NP (D;_nphd_ this)))))
yes
The success of (4.273) is possible with [rule 1] of (4.271).
4.9 Equative verbs
This section establishes selection criteria for equative verbs.
Code ;~equ_Vf selects a that-clause with subject predicative function (CP-THT-PRD2). For a call of the verb_complements_by_code rule of (4.274), there has to be content from the word list for a that-clause.
- (4.274)
-
verb_complements_by_code(';~equ_Vf',[],filled_sbj,active,L,L0) -->
cp_that('-PRD2',_,[],L,L0).
Parsing word list (4.275) as a sentence leads to the verb_complements_by_code call seen with (4.276).
- (4.275)
-
[w('PRO;_genm_','My'), w('N','excuse'), w('BED',';~equ_Vf','was'), w('C','that'), w('PRO','I'), w('HVD',';~Tn','had'), w('NS','lessons'), w('TO','to'), w('VB',';~Tn','prepare'), w('PUNC','.')]
- (4.276)
-
| ?- tphrase_set_string([w('C','that'), w('PRO','I'), w('HVD',';~Tn','had'), w('NS','lessons'), w('TO','to'), w('VB',';~Tn','prepare')]), parse(verb_complements_by_code(';~equ_Vf',[],filled_sbj,active)).
(CP-THT-PRD2 (IP-SUB (C that)
(NP-SBJ (PRO I))
(HVD;~Tn had)
(NP-OB1 (NS lessons)
(IP-INF-REL (TO to)
(VB;~Tn prepare)
(NP-OB1 *T*)))))
yes
Code ;~equ_Vw selects an embedded question clause with subject predicative function (CP-QUE-PRD2). For a call of the verb_complements_by_code rule of (4.277), there has to be content from the word list for an embedded question clause.
- (4.277)
-
verb_complements_by_code(';~equ_Vw',[],filled_sbj,active,L,L0) -->
cp_embedded_que('-PRD2',[],L,L0).
Parsing word list (4.278) as a sentence leads to the verb_complements_by_code call seen with (4.279).
- (4.278)
-
[w('D;_nphd_','That'), w('BEP',';~equ_Vw','is'), w('WADV','how'), w('PRO','I'), w('VBD',';~Tt','learnt'), w('TO','to'), w('VB',';~I','ride'), w('PUNC','.')]
- (4.279)
-
| ?- tphrase_set_string([w('WADV','how'), w('PRO','I'), w('VBD',';~Tt','learnt'), w('TO','to'), w('VB',';~I','ride')]), parse(verb_complements_by_code(';~equ_Vw',[],filled_sbj,active)).
(CP-QUE-PRD2 (IP-SUB (ADVP-NIM (WADV how))
(NP-SBJ (PRO I))
(VBD;~Tt learnt)
(IP-INF-OB1 (TO to)
(VB;~I ride))))
yes
Parsing word list (4.280) as a sentence leads to the verb_complements_by_code call seen with (4.281).
- (4.280)
-
[w('BEP',';~equ_Vw','Is'), w('D;_nphd_','that'), w('WPRO','what'), w('TO','to'), w('VB',';~Tn.pr','say'), w('P-ROLE','to'), w('N','people'), w('PUNC','?')]
- (4.281)
-
| ?- tphrase_set_string([w('WPRO','what'), w('TO','to'), w('VB',';~Tn.pr','say'), w('P-ROLE','to'), w('N','people')]), parse(verb_complements_by_code(';~equ_Vw',[],filled_sbj,active)).
(CP-QUE-PRD2 (IP-INF (NP-1717 (WPRO what))
(TO to)
(VB;~Tn.pr say)
(NP-OB1 *ICH*-1717)
(PP-CLR (P-ROLE to)
(NP (N people)))))
yes
Code ;~equ_Vt selects a to-infinitive clause with subject predicative function (IP-INF-PRD2). For a call of the verb_complements_by_code rule of (4.282), there has to be content from the word list for a to-infinitive clause.
- (4.282)
-
verb_complements_by_code(';~equ_Vt',[],filled_sbj,active,L,L0) -->
ip_to_inf('-PRD2',[],L,L0).
Parsing word list (4.283) as a sentence leads to the verb_complements_by_code call seen with (4.284).
- (4.283)
-
[w('D;_nphd_','This'), w('BEP',';~equ_Vt','is'), w('TO','to'), w('VB',';~Dn.n','give'), w('D','the'), w('N','application'), w('D','an'), w('N','iconbar'), w('N','menu'), w('PUNC','.')]
- (4.284)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~Dn.n','give'), w('D','the'), w('N','application'), w('D','an'), w('N','iconbar'), w('N','menu')]), parse(verb_complements_by_code(';~equ_Vt',[],filled_sbj,active)).
(IP-INF-PRD2 (TO to)
(VB;~Dn.n give)
(NP-OB2 (D the)
(N application))
(NP-OB1 (D an)
(N iconbar)
(N menu)))
yes
Code ;~equ_Vg selects a present participle (-ing) clause with subject predicative function (IP-PPL-PRD2). For a call of the verb_complements_by_code rule of (4.285), there has to be content from the word list for a participle clause.
- (4.285)
-
verb_complements_by_code(';~equ_Vg',[],filled_sbj,active,[node('IP-PPL-PRD2',IL)|L],L) -->
ip_ppl_adverbial_layer(filled_sbj,ing_participle,IL,[]).
verb_complements_by_code(';~equ_Vg',[],filled_sbj,active,[node('IP-PPL3-PRD2',IL)|L],L) -->
ip_ppl_adverbial_layer(unfilled_sbj,ing_participle,IL,[]).
Parsing word list (4.286) as a sentence leads to the verb_complements_by_code call seen with (4.287).
- (4.286)
-
[w('D;_nphd_','One'), w('P-ROLE','of'), w('PRO;_genm_','my'), w('ADJ','funny'), w('NS','stories'), w('BEP',';~equ_Vg','is'), w('VAG',';~cat_Vt','trying'), w('TO','to'), w('VB',';~Tn','debug'), w('D','the'), w('N','interface'), w('PUNC','.')]
- (4.287)
-
| ?- tphrase_set_string([w('VAG',';~cat_Vt','trying'), w('TO','to'), w('VB',';~Tn','debug'), w('D','the'), w('N','interface')]), parse(verb_complements_by_code(';~equ_Vg',[],filled_sbj,active)).
(IP-PPL3-PRD2 (VAG;~cat_Vt trying)
(IP-INF-CAT (TO to)
(VB;~Tn debug)
(NP-OB1 (D the)
(N interface))))
yes
The success of (4.287) is possible with [rule 1] of (4.285).
Parsing word list (4.288) as a sentence leads to the verb_complements_by_code call seen with (4.289).
- (4.288)
-
[w('D','The'), w('ADJ','first'), w('N','thing'), w('PRO','he'), w('VBD',';~Tn','saw'), w('BED',';~equ_Vg','was'), w('N','Mr.'), w('NPR','McGregor'), w('VAG',';~Tn','hoeing'), w('NS','onions'), w('PUNC','.')]
- (4.289)
-
| ?- tphrase_set_string([w('N','Mr.'), w('NPR','McGregor'), w('VAG',';~Tn','hoeing'), w('NS','onions')]), parse(verb_complements_by_code(';~equ_Vg',[],filled_sbj,active)).
(IP-PPL3-PRD2 (NP-SBJ (N Mr.)
(NPR McGregor))
(VAG;~Tn hoeing)
(NP-OB1 (NS onions)))
The success of (4.289) is possible with [rule 2] of (4.285).
4.10 Catenative verbs
This section establishes selection criteria for catenative verbs.
Code ;~cat_Vt selects a to-infinitive clause with catenative complement function (IP-INF-CAT). For a call of the verb_complements_by_code rule of (4.290), there has to be content from the word list for a to-infinitive clause.
- (4.290)
-
verb_complements_by_code(';~cat_Vt',Store,SbjType,active,[node('IP-INF-CAT',VL)|L],L) -->
to(VL,VL1),
verb_phrase_layer(Store,SbjType,infinitive,active,VL1,[]).
Parsing word list (4.291) as a sentence leads to the verb_complements_by_code call seen with (4.292).
- (4.291)
-
[w('D','A'), w('N','ship'), w('HVD',';~cat_Vt','had'), w('TO','to'), w('VB',';~I','sink'), w('','.')]
- (4.292)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~I','sink')]), parse(verb_complements_by_code(';~cat_Vt',[],filled_sbj,active)).
(IP-INF-CAT (TO to)
(VB;~I sink))
yes
4.10.2 cat_Vt_passive_
Code ;~cat_Vt_passive_ selects a passive voice to-infinitive clause with catenative complement function (IP-INF-CAT). For a call of the verb_complements_by_code rule of (4.293), there has to be content from the word list for a passive voice to-infinitive clause.
- (4.293)
-
verb_complements_by_code(';~cat_Vt_passive_',Store,filled_sbj,active,[node('IP-INF-CAT',VL)|L],L) -->
{
member(SbjType,[filled_sbj,unfilled_sbj])
},
to_inf_layer(Store,SbjType,passive,VL,[]).
- (4.294)
-
[w('D','The'), w('N','government'), w('BEP',';~cat_Vt_passive_','is'), w('TO','to'), w('VB',';~Tn','blame'), w('PUNC','.')]
- (4.295)
-
| ?- tphrase_set_string([w('TO','to'), w('VB',';~Tn','blame')]), parse(verb_complements_by_code(';~cat_Vt_passive_',[],filled_sbj,active)).
(IP-INF-CAT (NP-LGS *)
(TO to)
(VB;~Tn blame))
yes
- (4.296)
-
[w('D;_nphd_','One'), w('BEP',';~cat_Vt_passive_','is'), w('P-CONN','for'), w('PRO','them'), w('TO','to'), w('VB',';~Tn','sign'), w('CONJ','and'), w('VB',';~Tn.p','send'), w('RP','back'), w('PUNC','.')]
- (4.297)
-
| ?- tphrase_set_string([w('P-CONN','for'), w('PRO','them'), w('TO','to'), w('VB',';~Tn','sign'), w('CONJ','and'), w('VB',';~Tn.p','send'), w('RP','back')]), parse(verb_complements_by_code(';~cat_Vt_passive_',[],filled_sbj,active)).
(IP-INF-CAT (P-CONN for)
(NP-LGS (PRO them))
(TO to)
(ILYR (ILYR (VB;~Tn sign))
(CONJP (CONJ and)
(ILYR (VB;~Tn.p send)
(ADVP-CLR (RP back))))))
yes
Code ;~cat_Vi selects a bare infinitive clause with catenative complement function (IP-INF-CAT). For a call of the verb_complements_by_code rule of (4.298), there has to be content from the word list for a bare infinitive clause.
- (4.298)
-
verb_complements_by_code(';~cat_Vi',Store,SbjType,active,[node('IP-INF-CAT',VL)|L],L) -->
verb_phrase_layer(Store,SbjType,infinitive,active,VL,[]).
Parsing word list (4.299) as a sentence leads to the verb_complements_by_code call seen with (4.300).
- (4.299)
-
[w('PRO','It'), w('VBD',';~cat_Vi','helped'), w('VB',';~Tn','cut'), w('D','the'), w('N','cost'), w('PUNC','.')]
- (4.300)
-
| ?- tphrase_set_string([w('VB',';~Tn','cut'), w('D','the'), w('N','cost')]), parse(verb_complements_by_code(';~cat_Vi',[],filled_sbj,active)).
(IP-INF-CAT (VB;~Tn cut)
(NP-OB1 (D the)
(N cost)))
yes
Code ;~cat_Vg selects a present participle (-ing) clause with active voice and catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.301), there has to be content from the word list for a participle clause.
- (4.301)
-
verb_complements_by_code(';~cat_Vg',Store,SbjType,active,L,L0) -->
ip_ppl_active('-CAT',Store,SbjType,ing_participle,L,L0).
Parsing word list (4.302) as a sentence leads to the verb_complements_by_code call seen with (4.303).
- (4.302)
-
[w('D','A'), w('N','ship'), w('BED',';~cat_Vg','was'), w('VAG',';~I','sinking'), w('PUNC','.')]
- (4.303)
-
| ?- tphrase_set_string([w('VAG',';~I','sinking')]), parse(verb_complements_by_code(';~cat_Vg',[],filled_sbj,active)).
(IP-PPL-CAT (VAG;~I sinking))
yes
4.10.5 cat_Vg_passive_
Code ;~cat_Vg_passive_ selects a passive voice present participle (-ing) clause with catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.304), there has to be content from the word list for a passive voice participle clause.
- (4.304)
-
verb_complements_by_code(';~cat_Vg_passive_',Store,SbjType,active,L,L0) -->
ip_ppl_passive('-CAT',Store,SbjType,ing_participle,L,L0).
Parsing word list (4.305) as a sentence leads to the verb_complements_by_code call seen with (4.306).
- (4.305)
-
[w('PRO;_genm_','His'), w('NS','wounds'), w('VBP',';~cat_Vg_passive_','need'), w('VAG',';~Tn','dressing'), w('PUNC','.')]
- (4.306)
-
| ?- tphrase_set_string([w('VAG',';~Tn','dressing')]), parse(verb_complements_by_code(';~cat_Vg_passive_',[],filled_sbj,active)).
(IP-PPL-CAT (NP-LGS *)
(VAG;~Tn dressing))
yes
Code ;~cat_Ve selects a participle (-ed/-en) clause with active past and catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.310), the participle clause should form the content of the word list.
- (4.307)
-
verb_complements_by_code(';~cat_Ve',Store,SbjType,active,L,L0) -->
ip_ppl_active('-CAT',Store,SbjType,en_participle,L,L0).
Parsing word list (4.308) as a sentence leads to the verb_complements_by_code call seen with (4.309).
- (4.308)
-
[w('D','A'), w('N','ship'), w('HVD',';~cat_Ve','had'), w('VVN',';~I','sunk'), w('PUNC','.')]
- (4.309)
-
| ?- tphrase_set_string([w('VVN',';~I','sunk')]), parse(verb_complements_by_code(';~cat_Ve',[],filled_sbj,active)).
(IP-PPL-CAT (VVN;~I sunk))
yes
4.10.7 cat_Ve_passive_
Code ;~cat_Ve_passive_ selects a passive voice past participle (-ed/-en) clause with catenative complement function (IP-PPL-CAT). For a call of the verb_complements_by_code rule of (4.310), the passive voice participle clause should form the content of the word list.
- (4.310)
-
verb_complements_by_code(';~cat_Ve_passive_',Store,SbjType,active,L,L0) -->
ip_ppl_passive('-CAT',Store,SbjType,en_participle,L,L0).
Parsing word list (4.311) as a sentence leads to the verb_complements_by_code call seen with (4.312).
- (4.311)
-
[w('D','A'), w('N','ship'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~Tn','sunk'), w('PUNC','.')]
- (4.312)
-
| ?- tphrase_set_string([w('VVN',';~Tn','sunk')]), parse(verb_complements_by_code(';~cat_Ve_passive_',[],filled_sbj,active)).
(IP-PPL-CAT (NP-LGS *)
(VVN;~Tn sunk))
yes
Question
In contrast to (4.309) and (4.312) above, why do the queries of (4.313) and (4.314) fail?
- (4.313)
-
| ?- tphrase_set_string([w('D','A'), w('N','ship'), w('HVD',';~cat_Ve','had'), w('VVN',';~Tn','sunk'), w('PUNC','.')]), parse(sentence).
no
- (4.314)
-
| ?- tphrase_set_string([w('D','A'), w('N','ship'), w('BED',';~cat_Ve_passive_','was'), w('VVN',';~I','sunk'), w('PUNC','.')]), parse(sentence).
no