如何在Prolog中应用全称量词?
假设您有一个疾病诊断 Prolog 程序,该程序以疾病和症状之间的许多关系开始: causes_of(symptom1, Disease) :- Disease = disease1; Disease = disea…
Visual Prolog - 迷宫问题
我已经定义了房间中的门列表: class facts door : (string Room1, string Room2). skarb : (string Skarb, string Room). class predicates go : (st…
Prolog:将 DCG 语法与其他限制相结合
Prolog 的 DCG 以及我能够快速生成适合特定语法的所有可能结构的速度给我留下了深刻的印象。 但我想将此搜索与其他约束结合起来。例如,定义一个复杂…
PROLOG / 带循环的有向图中的所有路径
我给出了下图: 此处的图表 第一个网关/连接器是 OR 网关/连接器(其中有一个圆圈)。带有“x”的网关/连接器是异或网关/连接器。 OR 网关指定将采用…
如何在Prolog中实现AIML?
AIML 文件:http://www.alicebot.org/aiml/aaa/ 我想让这些 AIML 文件成为我的 Prolog 程序的知识库。 帮我。提前致谢。 PS请原谅我的英语不好。…
prolog - 无限规则
我有下一个规则 % Signature: natural_number(N)/1 % Purpose: N is a natural number. natural_number(0). natural_number(s(X)) :- natural_number(…
使用 Prolog 查找网格中同一行和同一列中的重复项
我是 Prolog 新手。我正在编写 Prolog 代码来解决一个难题,该难题需要我在二维数字网格中查找重复项。 我的输入类似于: grid(1,1,1). grid(2,1,2). …
Prolog:将文本添加到文件末尾
我想在序言中将文本添加到数据库中。类似于 adding :- tell('a.txt'), write('abc'), told. 但不覆盖a.txt。我尝试过像这样使用附加: append('a.txt'…
这段代码是通过扩展 Prolog DCG 尾递归生成的吗?
以下代码是一个 DCG,用于替换 Request 中所有出现的 Find 和 Replace 。将答案放入 Result 中。感谢 mat 在这个问题。 eos([], []). replace(_, _) -…
Prolog 递归溢出
fact(1,1):-!. fact(N,F):- N1=N-1, fact(N1,F1), F=F1*N. 它会导致 stackoverflow(不是网站)!不应该是因为剪切(!)。它在 SWI-Prolog 中工作吗…
Prolog 返回一个列表而不是几个可能的字符串
answer("Yes"). answer("No"). answer("Variable = value"). receive(A) :- answer(A). 2 ?- answer(A). A = [89, 101, 115] Yes 我想要 A = "Yes" 等…
使用 prolog DCG 来查找和查找替换 - 代码审查
我想出了以下代码来替换 Request 中所有出现的 Find 和 Replace 。将答案放入 Result 中。这是使用 DCG,因此它们都是字符代码列表。客户端代码将使用…