首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预期可满足的Clingo程序

预期可满足的Clingo程序
EN

Stack Overflow用户
提问于 2021-04-13 09:15:04
回答 1查看 179关注 0票数 0

在Clingo 5.0.0中,我正在测试一些涉及算术的程序,我不明白为什么下面的程序是不能满足的:

代码语言:javascript
复制
#const v = 1.

a(object1).
a(object2).
b(object3).
value(object1,object2,object3) = "1.5".
value(X,Y,Z) > v, a(X), a(Y), b(Z), X!=Y :- go(X,Y,Z).

我期望得到一个包含: a(object1) a(object2) b(object3) go(object1,object2,object3)的答案。

关于克林戈的算术,我可能有点怀念。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-14 09:40:41

我担心这里对ASP有很多误解。

  1. 不能将值赋值给谓词(value(a,b,c)=1.5)。谓词构成原子,它可以是对的,也可以是假的(包含在一个答案集中)。
  2. I假设您的最后一个规则将导出原子go(X,Y,Z)。规则是相反的,导出的是左边的。
  3. 没有浮点算术的可能,你必须把你的值缩放到整数。

您的问题可能是这样的,但这只是在黑暗中摸索:

代码语言:javascript
复制
#const v = 1.

a(object1).
a(object2).
b(object3).
value(object1,object2,object3,2).
go(X,Y,Z) :- value(X,Y,Z,Value), Value > v, a(X), a(Y), b(Z), X!=Y.

最后一条规则是:如果go(object1,object2,object3)value(object1,object2,object3,2)2 > 1a(object1)为true,a(object2)为true,b(object3)为true,则为object1 != object2

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67072002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档