Prolog是最常用的逻辑编程语言。它通过按时间顺序回溯和通过统一的模式匹配来支持非确定性编程。
我用Prolog搭建了一个专家系统。有没有一种方法可以将 Prolog 代码合并到我的 Android 应用程序中,以便应用程序将参数传递给 Prolog 专家系统...
我试图在Prolog中编写一个谓词回文/1,当且仅当其列表输入由回文列表组成时,该谓词才为真。 例如: ?- 回文([1,2,3,4,5,4,3,2,1])。 是真的。 任何...
在工作中,有人讨论过使用 prolog 作为网络应用程序上的规则引擎的后端。 这将如何与现有系统联系起来? 是否有其他语言可用的 prolog 库...
它们存在吗?我编写了一个解决数独谜题的程序,运行需要 3 个步骤。 > 序言 > 咨询(数独)。 > 解决(谜题)。 我正在寻找一种方法来做类似的事情 ...
在过去的几天里,我尝试在prolog程序中制作Adugo游戏,但是逻辑编程对我来说有点困难。我试图尽可能简单,初始矩阵是: [[1,1,...
我在这个语法中遇到了一个关于左递归的小问题。我正在尝试用 Prolog 编写它,但我不知道如何删除左递归。 -> <
谓词 ksort/3 和 fksort/3 对键值对列表进行排序,其中 Key 是 1 到小整数 MaxKey 之间的值。 % 第一个版本 ksort(MaxKey, 列表, 已排序) :- 创建(MaxKey,桶)...
如何将我的 Java UI 连接到 JPL Prolog 应用程序?
我正在使用SWI-Prolog提供的JPL用Java编写一个应用程序,以从Java调用Prolog。 我使用 Eclipse 作为 IDE。我不知道如何开始我在网上找到的这个例子: 这里是java c...
我是 Prolog 的初学者。有一个已发布的作业解决方案,我想逐步了解它是如何工作的。我似乎无法理解这种语言。我们应该做什么...
我在考试时用 Prolog 编写代码,并被告知以下部分代码不是“标准”Prolog。 这是我的教授给我的反馈:check_preferences 规则不是
TLDR 我有一个常见的模式,总是陷入无限循环。 模式是 s([H|Rest]) --> non_letters、word(H)、non_letters、s(Rest)。 s([]) --> []。 我不能 100% 确定
我正在尝试使用 SWI-prolog 将规则动态添加到知识库,其中规则主体事先未知。 所需的规则如下所示: 规则(a) :- 事实(1), 事实(2...
还有比Prolog更新的专门用于逻辑编程的语言吗?
有没有一个与numbervars/3相反的Prolog系统?
谓词 numbervars/3 本身并不是 ISO 的一部分 核心标准,但是ISO核心标准已经有点了 支持 numbervars/3 的功能,因为打印句柄 '$VAR'/1 组合...
Turbo Prolog:通过向列表添加最少数量的字符来创建回文
Turbo Prolog 上有一段代码可以从整个输入列表创建回文。 需要通过向列表中添加最少的字符来构建回文。 例如,我们输入了一个列表...
我很难理解为什么当其中一个子句是否定时交换两个主体子句会给出不同的结果。 结婚了(约翰)。 男(约翰)。 男性(kev)。 单身汉1(X) :- \+ 已婚(X), ...
我正在尝试编写一个谓词 fourExactly(X, List) 来检查变量 X 是否在列表中恰好出现四次。如果是这种情况,谓词应该为 true,如果不是,则谓词应该为 false。他...
有一个关于序言中的 m.g.u(最通用统一符)的快速问题。 我们被问到 m.g.u 是什么: f(X, g(Y, h(Z))) = f(Z, g(P, h(a)))。 有 2 个可能的答案 1. θ = {X/Z,Y/P,Z/a}。 2. θ =...
我开始学习Prolog。我有各种各样的书,我什至还买了标准版。我喜欢标准之类的东西,因为它们精确地定义了事物。但有些概念我无法理解。部分...