我正在学习Prolog中的编程并且遇到规则问题,它必须搜索解决方案,一旦找到它,就必须“无所事事”.但它失败了,给了我不止一个解决方案.我试着这样做: % here the solution is already fou…
标签:prolog
prolog – 扁平化列表
我需要编写一个平面列表的函数. 例如: flat([ c , [[[]]] , [] , k] , X). X=[c,k] 这就是我做的: flat([],[]). flat([[A] |B] , R) :- flat(…
在prolog的深层列表中对原子元素求和
我是Prolog编程的初学者.我写了这个程序,用累加器对深度列表的原子求和. deep_sum(Xs, N) :- deep_sum(Xs, 0, N). deep_sum([], N, N). deep_sum([X|…
在Prolog中编辑Eliza chatbot
我一直在努力尝试在Prolog中编辑Eliza聊天机器人.每次我尝试编辑某些内容时,都会显示一个新错误.它受到任何编辑的保护吗? 我使用SWI-prolog编辑器编辑.问题是我试图在不完全理解代码的情况下最小化代码.我正…
如果标签大于0,则Gerrit允许提交(prolog规则)
我在Gerrit中创建了一个自定义标签. [label "Code-Quality"] function = NoOp value = 0 No score value = +1 Horror value = +2 No…
你如何计算,Prolog SWI或CHR Prolog SWI的回溯量
我正在使用CHR(约束处理规则)在Prolog SWI中创建几个拼图求解器 一切都很好,但我喜欢测试哪个解算器最好.因此,我想找出哪个解算器使用最少量的回溯. 是否有一种聪明的方法可以找出(或打印出来)解算器解决特定谜题…
prolog – 物化整合问题
我为最近的问题 Segregating Lists in Prolog提供了以下基于clpfd的代码: list_evens_odds([],[],[]). list_evens_odds([X|Xs],[X|Es],O…
Prolog – WAM的高级目的
我试图在一个概念性的高层次上理解WAM的目的,但到目前为止我所咨询的所有资源都假设我知道的比现在更多,他们从底部处理问题(细节).他们开始向我扔树,现在我担心看到整个森林. 以下问题的答案将有助于我的努力: 选择任何一群…
通过corecursion解决Prolog中的动态编程问题
我想通过Prolog中的 corecursion解决以下动态编程 problem.但我仍然坚持做一个广泛的第一次搜索,我想以一种纠正的方式实现: There is a building of n floors with …
剪切在Prolog中的递归谓词的末尾
pred(Args). pred(Args) :- goalA, goalB, !, pred(Args). pred(Args) :- goalC, goalD, !, pred(Args). 通常我会编写一个递归谓词…
如何在Prolog中截断文件长度?
如何在Prolog中截断文件长度? 我只在ISO中找到了set_stream_position / 2谓词标准.但我找不到set_stream_length / 2谓词在主要的Prolog系统中. 类似地,有一个流属性位…
prolog – 观点数独
我正在寻找替代视点来解决使用约束编程的数独问题. 经典观点是使用可以从1到9取值的有限域(行,列)变量.这是一个很好的观点,并且很容易为它定义约束.例如:(1,2)变量值为4表示4表示第2列第1行. 但是很难提出其他观点…