Prolog是最常用的逻辑编程语言。它通过按时间顺序回溯和通过统一的模式匹配来支持非确定性编程。
为什么 prolog 不显示 false,而是显示与特定常量相关的所有元素?
我在 Prolog 中有一个与家谱相关的程序,我必须在其中找到与某个人相关的所有兄弟姐妹。 我将规则“姐妹”定义为: 妹妹(X,Y):- 父级(Z,X), 父级(Z,...
我在互联网上发现了一个谜语,我想使用 Prolog 来解决它。我有一个 Prolog 程序,但结果与我的逻辑方法不符,所以我对 Prolog 中缺少的内容感兴趣
以下SWI Prolog代码主要是Jens Ottens的leanseq.pl经典FOL证明器: % ------------------------------------------------- -------------------------------- % Leanseq.pl - 一个序列
有3个房间贴有以下告示。 房间 1:公主不在这个房间里。房间 2:公主不在这个房间里。房间 3:公主不在房间 2。 只有一个说法是...
我必须在 Prolog 中进行这个编程练习。 考虑以下谓词: 种族(名称)。 胜利(飞行员姓名、比赛姓名、日期)。 飞行员(姓名)。 定义以下 Prolog 谓词:
我正在使用 pi 作为我正在编写的 Prolog 程序的一部分。这是我在整个程序中唯一提到 pi 的地方: 弧距为 ((度/ 360) * 直径 * pi)。 然而,当我运行该程序时,我得到...
我正在 SWI Prolog 中编写一个小型解释器,并遇到以下问题:我需要编写一个谓词来确定逻辑表达式是否为真。我已经有一个谓词
使用 pyswip 查询 Prolog 文件时 SWI-Prolog 断言失败
我正在开发一个项目,使用 pyswip 将 SWI-Prolog 与 Python 集成。作为 Prolog 编程的新手,我在尝试查阅 Prolog 文件时遇到了断言失败......
% 计算阶乘的函数 阶乘(0, 1)。 阶乘(N,F):- N1 为 N-1, 阶乘(N1, F1), F 是 N * F1。 % 计算函数近似值的函数...
有没有办法通过部分匹配来撤回所有子句..假设我有以下语法: s3-->[a,b,r,a]。 s4-->[a,b]。 s5-->s4,s4。 如何删除所有以 's' 开头的子句...
我正在尝试编写一个程序来解决n皇后问题。为了检查女王是否攻击存储在列表 L 中的另一个女王,作为列表及其坐标([X,Y] 等...),我写了这段...
运行代码时出现两个错误 geneholtproj6.swipl:165:2:语法错误:需要运算符 geneholtproj6.swipl:291:3:语法错误:需要运算符 这是第一个错误。 165.2 号线...
我想拦截传递给交互式Prolog解释器的查询,以便进行一些额外的处理,例如记录查询。 到目前为止,我有以下依赖于
%999 代表空白图块。 目标([999,0,1,2,3,4,5,6,7])。 %任意行向左移动有两种情况: %Case_1:第二个索引中存在空白图块。 %Case_2:第三个索引中存在空白图块。 % 向左移动...
我一直在尝试运行下面的示例,Sread 函数似乎在无限循环中执行。我正在使用 Visual Studio 2022、Prolog 7.4.2 x64 和 SwiPlCs 1.1.60605.0 库。 http://...
有没有办法将递归 Prolog 代码块转换为 DFS 实现来解决传教士和食人族问题?
我...也许正在尝试学习如何使用Prolog。目前我正在尝试解决传教士和食人者问题 - 你需要将 3 个传教士和 3 个食人者移过河并......
maplist 引发未捕获的异常:error(existence_error(procedure,maplist/2),top_level/0)
以下使用的映射列表适用于 swi-prolog 而不是 gprolog: GNU 序言 1.3.1 丹尼尔·迪亚兹 版权所有 (C) 1999-2009 丹尼尔·迪亚兹 | ?-maplist(writeln,[1,2,3])。 未捕获的异常:错误(存在...
我正在尝试在 Prolog 中实现数学表达式的 DCG,因为我想做用该语言实现计算器的基本练习,这是我的代码: 莱克斯(添加,'+')。 lex(子, '-'...
为什么 Prolog 在一种情况下会自动回溯,但在另一种情况下不会?
我有一个 Prolog 程序,有两个谓词 rr 和 p,每个谓词都有自己的一组规则和事实。当使用特定输入查询这些谓词时,我注意到 Prolog 会自动回溯...