首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Z3Py中的模型计数

Z3Py中的模型计数
EN

Stack Overflow用户
提问于 2013-10-24 23:36:47
回答 2查看 999关注 0票数 1

我正在努力计算Z3完成的满意任务的数量。我想知道Z3是否提供了这样的信息。如果是这样的话,我如何计算Z3中的模型,特别是在Z3Py中?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-10 23:07:07

虽然Taylor的回答会给出满意的任务数,但它会迭代所有这些任务。原则上,不需要如此昂贵的迭代就可以做到这一点,但是Z3不提供它。

对于命题逻辑有有效的模型计数器,这是SAT (搜索sharpSAT查找这样一个系统)所使用的语言,但据我所知,目前还没有可用的模型计数器模块理论。

票数 2
EN

Stack Overflow用户

发布于 2013-10-25 02:23:54

不,默认情况下此类信息不可用。但是,通过将模型生成能力与添加断言结合起来,您可以很容易地在任何API中实现这一点(假设模型数量有限),以防止将来分配与过去模型相同的值。有关完成此操作的Z3py脚本,请参见以下答案:

Z3: finding all satisfying models

要计算模型,只需在循环中添加一个计数器,直到它变为unsat,这将给出模型的数量。

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

https://stackoverflow.com/questions/19578627

复制
相关文章

相似问题

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