SWI-Prolog是Prolog的开源实现,可在Unix,Windows和Mac上运行。
等于(a,b):-(a = b)。我定义相等。 1?-[索引]。真正。 2?-等于(1,1)。假。 3?-1 = 1。当我运行“ equal(1,1)”时,它返回false。为什么它返回false,我该如何解决?
我对序言还很陌生,我想尝试创建一个序言函数,其行为如下calculate(add(1,sub(4,1)),Result)。结果=4。这是在做:1 +(4-1)= 4我熟悉...
我是Prolog的新手,并尝试通过删除索引元素来修改列表。例如:remove(1,[1,2,3],Z)。 Z是[1,3]。但是,当我尝试再次运行此谓词时,将发送列表...
plunit测试显然在后台创建了一个模块……但是可以卸载该模块吗?
我想使用SWI Prolog中实现的plunit来以优雅的风格运行一些单元测试!因此,我想直接在终端上输入它们:[用户]。然后复制粘贴::-begin_tests(exercise)。 ...
如何在终端上使Prolog注意到添加到Prolog源文件中的新更改?
我使用Swipl -s prolog_file通过终端打开SWI-Prolog。但是,每次我向Prolog源文件中添加新事实并保存时,我都必须在终端上重新启动SWI-Prolog,以使其注意到...
stav> swipl欢迎使用SWI-Prolog(线程,64位,版本8.0.3)SWI-Prolog附带绝对没有担保。这是免费软件。请运行?-许可证。有关法律细节。对于在线帮助...
陷入Prolog问题。我知道答案(因为我首先在纸上做过),但是我不知道如何让Prolog提出答案。问题:比尔每晚都吃零食,有...
当我尝试使用cytrace终端使用guitracer跟踪我的SWI-Prolog代码时,会弹出以下错误:[PCE致命:@ display / display:无法连接到X服务器上的'':no DISPLAY .. 。
给出代码a2.pl:%% prolog(swipl)命令行参数%% swipl -s a2.pl -ta --quiet-“ b”“ c”“ D” %%输出到屏幕:[ 'D'] writeln1(Term):-term_to_atom(Term,Atom),...
因此,我目前正在尝试使用包含课程和参加该课程的任何人的学生证的文本文件来实现类似于该树的功能。课程([('MATH2221',[...
因此,我目前正在尝试使用包含课程和参加该课程的任何人的学生证的文本文件来实现类似于该树的功能。课程([('MATH2221',[...
我正在编写一个代码生成器,将定句语法转换为其他语法符号。为此,我需要扩展一个语法规则::-initialization(main)。 main:-->(例如,...
我有一个简单的序言程序:write_manual:-write('------------------------------'),write( '使用手册'),写('find_course。-列出所有可用的课程'),写('--------------...
我需要Prolog的源代码,该代码用于与Weka连接,并能够在Windows环境中使用Weka算法进行预测。我试图通过Java连接,但无法连接并预测...
我正在使用子句/ 2在编译器中转换某些Prolog子句。我需要用它的主体替换每个子句的开头,但是子句/ 2有时不会以原来的方式扩展子句...
Prolog:process_create在http_handler中不起作用
我正在尝试修改我的网站,以允许用户调用我正在处理的特定程序。当我“正常”(即从REPL)在Prolog中使用process_create / 3时,一切正常。但是,...
current_predicate / 1不适用于:-动态吗?
我有一些在Prolog中使用断言定义的谓词。我使用current_predicate / 1来知道是否已运行断言(只需声明一个值)。但是,...
我是SWI-Prolog的初学者,遇到了问题。请帮我。如何从列表中删除最后一次出现的9?示例:?-delete([9,9,9])[9,9]?-delete([9,4,1,2,3,9,53,2,9,2])[9,4, 1,2,...
我写了这个函数,将第一个参数给定一个列表列表,它在第二个参数中生成连接所有列表的结果。惊恐([],[])。 appall([H | T],V):-appall(T,V1),...
有人可以告诉我如何解决以下问题:people_in_capitals(N):N是生活在世界各首都城市的总人口。 “有用的谓词:country(Name,ID,Capital,...