问题标签 [pyeda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
249 浏览

python - Pyeda:布尔表达式的中缀形式

Pyeda允许以前缀形式和中缀形式编写布尔表达式:

虽然可以从相对前缀形式中自动检索i我不知道(文档中没有发现)是否可以检索.p

一些帮助?

0 投票
2 回答
413 浏览

python - 有什么方法可以为二元决策图重新排序变量?

我正在开发一种用于二元决策图的教学工具,其中还有一个变量重新排序的功能。任何人都可以建议一个合适的库来实现变量重新排序,同时构建树或某种实现相同的算法吗?

如果我可以使用像 pyeda、buDDy 或 pycudd 这样的库,那将是最好的,因为我已经熟悉这些库。

如果您需要任何澄清,谢谢并发表评论。

0 投票
0 回答
214 浏览

python - 使用 IPython 和 GraphViz 进行 BDD 可视化

我正在尝试使用 PyEDA,我需要可视化二元决策图,我正在阅读此文档,但我无法理解!

这里它说:如果你的机器上安装了 GraphViz,并且 dot 可执行文件在你的 shell 路径上可用,你可以使用 gvmagic IPython 扩展来可视化 BDD。

首先,如何使 dot 可执行文件在我的 shell 路径上可用?

然后,在文档中我们有这部分:

这是DOT环境吗?

对不起,如果问题如此简单和愚蠢!我在使用 Linux 方面不是很专业。

0 投票
0 回答
51 浏览

python - PyEDA - 替换表达式中的节点

考虑以下 PyEDA:

输出:

a我怎样才能用替换第一个ccompose替换所有实例a

输出:

0 投票
0 回答
148 浏览

python-3.x - 在 IPython 中绘制 PyEDA 二元决策图

安装 Graphviz 和 gvmagic 后,我运行以下命令以显示 BDD:

但是,我收到以下错误: FileNotFoundError [WinError 2] Le fichier spécifié est introuvable

请提供有关此错误背后原因的任何线索?

0 投票
0 回答
54 浏览

python - pyeda 可以使用异或简化吗?

我正在尝试使用 PyEDA 分析一些功能。有没有办法将DNF中的表达式转换为使用 XOR 运算,如果它使它们更简单?例如:

似乎应该有某种方法可以使用 XOR 将表达式强制转换为更简单的形式,至少对于低复杂度的表达式。

0 投票
1 回答
143 浏览

python-3.x - PYEDA 函数真值表

希望有人对 PYEDA 感觉良好。

我想给函数添加虚构变量让我有 f=x1,但是我怎样才能得到这个函数的真值表,它也有 x2

就像 f(x1)=x1 的真值表是:

但是对于 f(x1,x2)=x1 是:

但我会得到第一个表,pyeda 会自动将 x1&(x2|~x2) 简化为 x1。我怎样才能添加这个 x2?

这是我修复它的算法,我正在手动计算每个点的 func,其中函数可以包含 1-4 个变量,并且我正在计算所有点和 x1...x4 的组合。

0 投票
1 回答
820 浏览

python - 从可用数据结构生成二元决策图

这个问题有点长;请多多包涵。

我有一个包含如下元素的数据结构{x1, x2, x3, x4, x5}

它们代表真值表中的所有 TRUE。当然,该集合中不存在的 5 位字符串元素对应于真值表中的 FALSE。但是我没有对应于所述集合数据结构的布尔函数。

我看到了这个问题,但这里所有的答案都假设给出了布尔函数,这是不正确的。

我需要构建一个 ROBDD,然后从给定的数据结构到 ZDD。最好使用这些可用的 python 包。

专家有什么建议吗?我确信在这方面已经做了很多工作。

0 投票
1 回答
55 浏览

constraints - pyeda 方法“抽象语法树”

我真正想做的是将布尔表达式转换为整数线性规划约束。我试图首先将表达式转换为 CNF(使用pyeda),然后从 CNF 形成约束(因为这非常简单)。但是,我无法理解.to_ast()函数输出的抽象语法树。例如,在.to_ast()表达式上运行时(~C1 | ~P1 | ~O1) & (~C1 | ~P1 | ~O2),输出为

很明显,-是否定的,整数代表变量之一。有谁知道是否存在从整数到变量的映射?简短问题的详细描述...

0 投票
1 回答
172 浏览

python - PyEDA:将文本字符串转换为 DNF 形式

我是 Python 的初学者。我正在尝试使用 PyEDA 将文本字符串转换为其 DNF 形式。我的代码适用于这个字符串。

X[0]&(X[1]|X[2]) --> 或(和(X[0],X[1]), 和(X[0],X[2]))

但是当我尝试使用下面提到的字符串时,它不能按预期工作。谁能帮我弄清楚出了什么问题?

谢谢!

输入字符串:

预期输出:

代码:

电流输出: