Prolog是最常用的逻辑编程语言。它通过按时间顺序回溯和通过统一的模式匹配来支持非确定性编程。
这个答案使用断言(Rest == [])? pharse / 3是短语(:DCGBody,?List,?Rest)因为短语/ 2等同于短语(DCGBody,InputList,[])。这只是Rest = []而在测试用例中......
如何使用append / 3以递归方式在prolog中构建列表?
我需要得到一些事实的价值观。那部分似乎有效。 fact1(A,_,Val1,_,_),fact2(_,B,Val2,_,_),A = B,但是一旦我尝试将这些值[(Val1,Val2)]附加到List (...
我试图解决一个问题,你会得到一个事实列表,如:parent(a,b)。其中b是a的父级,我需要编写一个子句来确定某人是否至少有3个父母。 ...
我正在尝试实施统一,但遇到问题......已经有很多例子,但他们所做的只是浑水。我比开明更困惑:http://www.cs.trincoll.edu/~ram / ...
我已经在一本书中读到了它,但根本没有解释。我也从未在程序中看到它。是Prolog语法的一部分吗?这是为了什么?你用它吗?