prolog 相关问题

Prolog是最常用的逻辑编程语言。它通过按时间顺序回溯和通过统一的模式匹配来支持非确定性编程。

在 prolog 中创建两个数字范围内的列表

我想建立两个给定数字范围内的数字列表。 例如: BetweenRange(1,5,X) 将给出答案:X=[1,2,3,4,5]。 知道怎么做吗? 我尝试过类似的事情:

回答 3 投票 0

从 Prolog 中的列表列表中删除空列表

例如,我有一个列表: [ []、[]、[]、[1]、[2,2]、[3] ] 如何从此列表中删除空元素?

回答 3 投票 0

如何让Prolog永远不会在相同的两个步骤之间来回?

请看以下汉诺塔问题的“解决方案”: F([],[],_)。 f([A|As],[],C) :- f(As,[A],C). f([A|As],B,[]) :- f(As,B,[A]). f([],[B|Bs],C) :- f([B],Bs,C). f(A,[B|Bs],[]) :-...

回答 2 投票 0

Prolog no_duplicate 函数

我正在尝试编写一个简单的过程来检查列表是否有重复项。这是我到目前为止所尝试过的: 如果列表没有重复项,% 返回 true。 no_duplicates([X|XS]) :- 成员...

回答 5 投票 0

SWI Prolog 如何处理底层列表?

为什么这不起作用? ?- '。'(A,[])。 错误:未知过程:('.')/2 错误:但是,有以下定义: 错误:('.')/3 错误的。 ?- 。(A,[])。 错误:未知过程:('.')/2 ...

回答 2 投票 0

Swi Prolog Editor 只显示 false,不显示 true

假设我的知识库包含一个事实: 事实(事实1)。 如果我知道提交查询事实(fact1)。 39? - 事实(事实1)。 40?- 它什么也没说,相当于 true。 B/c 如果错了,亲...

回答 1 投票 0

Prolog 中的字幕

从 html 中众所周知,marquee 显然是语义网的顶峰。或者更确切地说,它的最低点与闪烁标签并排。无论如何,我们如何在 Prolog 中表示选取框?换句话说,...

回答 1 投票 0

我不明白为什么下划线扎根于元谓词

我正在使用SWI-PROLOG。 给定一个列表,其中几乎所有元素都是复合术语,例如: ?- MyList = [json([a=1, b=2]), json([a=4, b=1]), 999, json([a=7, b=2])]。 我只想过滤化合物...

回答 1 投票 0

这个Prolog程序有一个简单的不停机证明吗?

:- p(f(X),f(f(Y)),f(f(b)))。 p(f(a),f(X),f(f(X)))。 p(f(a),f(a),f(f(X)))。 p(X,f(f(Y)),X) :- p(Y,f(f(Y)),f(f(X)))。 p(f(X),Y,Z) :- p(X,f(Y),f(f(Z)))。 我相信我有一个使用归纳法的证明

回答 1 投票 0

我该如何表达并解决这个琐碎的逻辑难题?

我试图表达一个更复杂的逻辑难题,并总结出我在这个微不足道的问题上失败的地方: 汽车可以是红色、绿色或蓝色 宝马不是红色也不是蓝色 解决方案:宝马是绿色的 乙...

回答 1 投票 0

这个Prolog程序有一个简单的停止证明吗?

:- p(f(X),f(f(Y)),f(f(b)))。 p(f(a),f(X),f(f(X)))。 p(f(a),f(a),f(f(X)))。 p(X,f(f(Y)),X) :- p(Y,f(f(Y)),f(f(X)))。 p(f(X),Y,Z) :- p(X,f(Y),f(f(Z)))。 我相信我有一个使用归纳法的证明

回答 1 投票 0

Prolog - 在列表排列中获得最佳值

在 Prolog 中,我有一个包含 12 个字符串的简单列表。我还有一个规则列表,这些规则一起为该列表分配分数。因此,根据这些元素在我的列表中的放置方式,它们可能会也可能不会

回答 1 投票 0

在原子列表上引入预测的优雅/惯用方式是什么?

假设我有对象 a1,a2,...,a{n} 并且我想在这些对象上有效地引入一个顺序,例如: gt(a1,a2)。 gt(a2,a3)。 ... gt(a{n-1},a{n})。 现在 {n} 将是一个很大的数字,例如 200。Ins...

回答 2 投票 0

如何写及物谓词?

gt(王牌,十)。 gt(十,国王)。 gt(国王,王后)。 gt(女王,杰克)。 gt_(X,Y) :- ( gt(X,Z1), gt(Z1,Z2), gt(Z2,Z3), gt(Z3,Y) ) ; ( gt(X,Z1), gt(Z1,Z2), gt(Z2,Y) ) ; (gt(X,Z1),gt(Z1,Y)); ...

回答 1 投票 0

这是最小的暂停未知的Prolog程序吗?

以下 6 个子句的“纯”Prolog 程序是否会停止尚不清楚。 :- f(s(s(s(s(s(s(s(s(N)))))))),F),m(S,S,s(F))。 f(o,s(o))。 f(s(N),G) :- f(N,F), m(s(N),F,G)。 m(o,_,o)。 ...

回答 1 投票 0

未定义的过程 DWIM 无法纠正 Prolog 中的目标

我对序言真的很陌生,我正在尝试一些例子。 我收到错误 错误:未定义的过程:当我运行规则时,eats/2(DWIM 无法纠正目标)。 为什么它显示我的规则...

回答 2 投票 0

Prolog 中的聚合

我尝试了解 swi-Prolog 中的聚合是如何工作的。 因此,我使用带有属性 Employee_Id、Projectnumber、Hours 的works_on 表。 在 Prolog 中,该表的事实看起来像

回答 1 投票 0

在 Prolog 中展平列表

我对 Prolog 相当陌生,正在尝试练习压平列表。我的尝试如下,我见过其他正确的实现,但我无法弄清楚我的具体有什么问题。

回答 1 投票 0

格式化嵌套的 Prolog 输出

我正在使用一个 Prolog 数据库,该数据库包含一组具有属性和值的实体。我想输出每个实体及其每个属性和值。 我对 Prolog 很陌生,...

回答 1 投票 0

Prolog 中的 ' 和 " 有什么区别?

我是 Prolog 新手,注意到 ' 和 " 给出了不同的行为,但很好奇为什么。具体来说,在加载文件时, ?- ['test1.pl']. 有效,而 ?- ["test1 .pl"]。没有。

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.