clpfd 相关问题

CLP(FD),代表有限域上的约束逻辑编程,在Prolog系统中实现声明性整数运算。它是低级算术谓词的纯粹和通用替代,允许您有效地解决组合问题,例如计划,调度和分配任务。

CLP(FD)中的具体化谓词可以用来检查逻辑表达式的相等性吗?

根据文档(A.9.12节),CLP(FD)约束如#>、#=、#/\等可以具体化。 约束#<==>/2 应该是 真当且仅当 P 和 Q 相等 手风琴...

回答 1 投票 0

如何将整数(解)列表转换为连续区间列表

我使用CLP(FD)和SWI-Prolog编写了一个CSP程序。 有些约束看起来像 Xi mod N #= 0,所以我必须为每个变量 Xi 调用 res(Xi,Li) (使用 res(X,L) :- setof(X, indomain(X), L))。 ..

回答 1 投票 0

CLP(FD):解数计数加速

我正在使用以下 SWI-Prolog 版本:适用于 x86_64-linux 的 SWI-Prolog 版本 9.1.2。 我正在尝试使用 Prolog 和 CLP(FD) 模块来计算有效解决方案的数量。目前,为了配合...

回答 1 投票 0

CLPFD Prolog 的“语法错误:预期的运算符”

我正在阅读 Prolog 的力量,并且已经阅读了关于 Collatz 序列的部分。 我从那里复制并粘贴了代码,在之前添加了适当的 use_module 行...... 使用模块(库...

回答 0 投票 0

让Prolog的CLPFD意识到排列组合和其他对称性。

use_module(library(clpfd))。CLPFD似乎没有很快意识到,在length(L,9)中,L ins 1...9,all_distinct(L),foreach(label(L),sum(L,#=,X)) X=45. 我试过length(L,4), ...

回答 1 投票 0

clpfd需要贴上标签才能找到任何解决方案(当使用 +)。

我试图写一些类似于 "如果你之前得到了球,而之后没有给它 "的东西: :- use_module(library(clpfd)).time(T1, has_ball) :- time(T2, get_ball), T2 #=....

回答 1 投票 2


在 Prolog 中将 peano 数 s(N) 转换为整数

我在教程中遇到了逻辑数的自然数评估,这让我有些头疼: 自然数(0)。 自然数(s(N)):- 自然数(N)。 规则大致

回答 4 投票 0

如何使用clpfd中的tuple_in?

我在这里遵循clpfd练习:http://www.pathwayslms.com/swipltuts/clpfd/clpfd.html我有以下解决方案,例如5列1列火车([[1,2,0,1] ,从工作站到...的%,] ...

回答 2 投票 1

约束谓词不以最大值开头

我正在尝试匹配某个列表的前Y个元素的总和,1..10范围内的Y以及总和的最大值。我希望第一个匹配为Res = 10,Y = 10,但这是...

回答 1 投票 0

是否有可能解决此问题?

在进行研究并尝试解决PROLOG中的此问题时遇到了一些麻烦。我必须实现一个能够解决任何可能的密码难题的密码难题求解器。我会解释...

回答 1 投票 0

Prolog办公室难题

我正在尝试为学校分配Prolog,基本上是在试图找出谁担任办公室。问题是:Hunter,Laura,Jim,Sally和Jack在同一栋大楼内工作,...

回答 1 投票 0

SWI-Prolog报告带位移位CLPFD的错误答案

我在一个更大的代码库中遇到了这个问题,但是将其简化为一个最小的可重现示例。这是一些汇编程序代码::-use_module(library(clpfd))。 bigconst(X):-X#= <0x3FF,...

回答 2 投票 2

约束要设置的整数

我正在使用in / 1谓词尝试约束一个整数以从某个特定集合中获取值:?-use_module(library(clpfd))。 gen_in_set(X):-[0、1、3、5、7]中的X。我没想到这会...

回答 1 投票 2

可以通过CLP(FD)解决truncate(7 ^ sqrt(8)-8 ^ sqrt(7))吗?

CLP(FD)是一个很棒的Prolog工具。它将大量Prolog扩展到约束和标签。但是它用途广泛吗?例如,我们可以找出这个整数值吗:truncate(7 ^ sqrt(8)-8 ^ sqrt(7))=?...

回答 1 投票 0

在序言中将浮点数转换为整数

如何在序言中将float转换为整数?我试过了:?-integer(truncate(sqrt(9)))。假。 ?-整数(round(sqrt(9)))。错误。

回答 2 投票 7

解决了PROLOG中的即时精神错乱,但我总是得到“ NO”

i当前为基本的即时疯狂编写了一个求解器。我的程序始终告诉我“否”,因为它无法为我的问题找到解决方案,而我很困惑以找到失败。谁能给我一些...

回答 1 投票 0



在CHR和CLP / FD中创建双向规则

例如。假设所有红色的值为5。我编写以下代码::-use_module(library(chr))。 :-use_module(library(clpfd))。 :-chr_type color --->红色;蓝色。 :-...

回答 1 投票 0

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