Prolog是最常用的逻辑编程语言。它通过按时间顺序回溯和通过统一的模式匹配来支持非确定性编程。
我很难理解为什么findall的第二个谓词要写成这样,而不是直接写成collect_found([],L)。 :- 动态发现/1。 findall(X, G, _) :- 断言(找到(标记))...
每次我在源文件中进行更改时都必须手动重新查阅我的序言,这让我有点恼火。 我可以让它自动运行吗?我在 vscode 上搜索了一些扩展...
我正在测试新版本的 SWI prolog,并不断遇到错误:singleton 变量。 例子: 成员(X,[X|T])。 成员(X,[X | T]):-成员(X,T)。 查找列表的成员,例如: ...
我是 clingo(答案集编程)的新手,我遇到了一个非常简单的问题。 我想模拟一个非常简单的行为: 一个两行三列的游戏板,和三个令牌,放置...
我正在尝试使用assertz()和retract()在SWI Prolog中编写广度优先搜索。但我遇到了一些问题,希望得到一些指导。我猜我正在做一些愚蠢的事情。 :-
SWI Prolog - 在广度优先搜索中使用assertz()和retract()
我正在尝试使用assertz()和retract()在SWI Prolog中编写广度优先搜索。但我遇到了一些问题,希望得到一些指导。我猜我正在做一些愚蠢的事情。 :-
抱歉,如果这是一个愚蠢的问题,但我仍处于学习 Prolog 的早期阶段(SWI-Prolog,以防它有所作为),并且可能会做一些愚蠢的事情。 我正在尝试写一个谓词
我正在尝试为 Prolog 编写一个加号表达式。 使用 Prolog 艺术中的一个例子: 纳特(0)。 nat(N) :- N > 0,M 为 N - 1,nat(M)。 plus(X, 0, X) :- nat(X). 加(X, s(Y), s(Z)) :- 加(X, Y,...
我正在使用 Prolog 艺术中的一些代码。该示例在 GNU Prolog 中不起作用。有谁知道我做错了什么? mem(X,[X|Xs]). 用户:2:警告:mem/2 的单例变量 [Xs] 我...
我需要使用Prolog为给定的整数等级值绑定字母等级(>= 90是a,>= 80是b,依此类推。) 评估等级( X , f ) :- X >= 0.0 , X < 2.0. This works fine: evaluate...
我正在使用一个 Prolog 数据库,该数据库包含一组具有属性和值的实体。我想输出每个实体及其每个属性和值。 我对 Prolog 很陌生,...
我是 Prolog 新手。 我正在尝试使用序言搜索简单路径,但只找到基本情况(长度1或0)。 怎么了? 代码 我参考几个例子重写了递归部分
模式匹配可以用point free的方式实现,网上有很多文章介绍。我想知道更普遍的情况是否也成立,即是否有可能影响...
我正在开发一个程序,该程序读取文本文件并按升序显示前 10 个最常用的单词并打印出来。我已经定义了停用词/连接词并将代码写入
899999以内的罗马数字和阿拉伯数字如何纯关联?而这次没有使用算术!因此没有 (is)/2 也没有 clpfd/clpz/clpq。缺乏与整数相关的任何方式,阿拉伯语
我正在用 Prolog 编写并且不断收到错误; 语法错误:当前或先前的运算符需要括号 当引用 te=he 以下代码时: convert_to_tokens([Word|Rest], [Token|RestTokens...
我在 Lee Naish 的论文 Prolog 中的高阶逻辑编程中遇到了一些不熟悉的 Prolog 语法。这是论文中的第一个代码示例: % 插入排序(简单版)...
需要实现一个swi-prolog程序,实现对无向图中所有圈的搜索,并输出结果,不重复。 例子: ?-find_cycles([a-[b,c,d],b-[a...
我是 Prolog 的新手,我正在做这个项目。我有关于英国君主制的数据,我正在研究一个“继承人”规则,该规则可以找到王位继承人或告诉我我的输入是否......
我正在尝试创建一个函数,该函数迭代 N 次我在列表上拥有的另一个函数,但我不知道为什么对于大于 0 的数字,答案是否定的。 函数单元应用一组规则 t...