如何在GF GRL中表达英文否定式let's祈使句与第三人称祈使句?
英文RGL中第一/三人称否定祈使句的实现方案
问题背景
- 英文RGL提供
ImpPl1函数实现第一人称祈使句(如“let's go”),示例代码:
ImpPl1 (UseV go_V)
对应API写法:
lets_Utt (mkVP go_V)
- 第三人称祈使句(如“let them eat cake”)可通过
ImpP3函数实现,示例代码:
ImpP3 (UseNP them_NP) (UseV eat_V `o` UseNP cake_NP)
- 现存问题:
ImpPl1仅接收VP参数,ImpP3仅接收NP和VP参数,二者均不支持Pol(极性)参数,无法直接生成否定形式(如“let's not go”“let them not eat cake”)
替代实现方案
在无专用带极性参数的祈使句函数情况下,可通过在VP层级添加否定修饰间接生成否定祈使句:
第一人称否定祈使句(let's not go)
RGL核心写法:
ImpPl1 (NegVP (UseV go_V))
API写法:
lets_Utt (mkNegVP (mkVP go_V))
第三人称否定祈使句(let them not eat cake)
RGL核心写法:
ImpP3 (UseNP them_NP) (NegVP (UseV eat_V `o` UseNP cake_NP))
API写法:
let3_Utt (mkNP them_NP) (mkNegVP (mkVP eat_V `o` mkNP cake_NP))
该方案通过将否定逻辑嵌入VP参数,绕过了祈使句函数本身不支持极性参数的限制,实现目标否定祈使句的生成。
内容的提问来源于stack exchange,提问作者Michal Měchura
相关产品推荐
相关产品推荐

