DCG的额外参数,如N:s --> a(N), b(N), c(N). 是怎么回事?
DCG的额外参数,如N:s --> a(N), b(N), c(N). 是怎么回事?prolog自动枚举N测试么,N是哪来的?出自 http://dingo.sbs.arizona.edu/~sandiway/ling538-12/lecture15.pdf
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
原来是根据匹配过程反推出来的,通过和解析序列的合一。
DCG=CFG+变量绑定。CFG可以将整体分为部分,解析部分时就可以取得“上下文同步变量”。因为解析是独立的,并不依赖于变量,所以直接可得到结果和变量绑定。这是就可尝试下一部分并附加了变量同步约束。
原来被函数式思维习惯局限了,没有发现这个变量在第一部分解析时是Out,之后才是In。