这是我导师的问题。“用你自己的话说,当 prolog 返回查询失败时,可以得出什么可能的结论?”
我从未经历过序言返回失败。我只能假设当通过回溯遇到错误时它可能会返回失败?
当 Prolog “返回”查询失败的指示时,它表明它未能证明查询。示例:2 == 3.
。
当您在 Prolog 中进行查询时,Prolog 会尝试为您满足它。有两种可能的结果——它是成功,还是不能满足查询。
当它成功时,它表示查询中的变量的替换,它成功了。如果有几种方法可以满足查询,Prolog 将显示每种方法的替换,如果需要的话。
如果查询成功而没有对其变量进行任何替换(即没有变量),则将通过打印或其他方式以某种方式指示成功Yes
,true
具体取决于具体实现。
类似地,也会以某种方式指示失败,例如通过说No
、false
或其他方式。
(这真的是基本的东西。你应该读一些关于 Prolog 的好书,或者和你的导师谈谈。锻炼,锻炼,锻炼......) :)