变量 $ a,b,c \ in \ {0,1 \} $ ,因此 $ a ^ k,b ^ k,c ^ k \ in \ {0,1 \} $

我想将查询传递给返回每个术语的系数 $(1,a,b,c,ab,AC,BC,ABC)$ 在扩展产品中,如此<跨度类=“MATH-CATER容器”> $(1-A + AB)(1-B + BC)(B-BC)$ 。扩展可能有更多的变量和更多的括号。

我是否需要一个FP查询来执行此操作或更多?


编辑:

输入: $(1-a + ab)(1-b + bc)$

展开: $ a b ^ 2 c - a b ^ 2 - a b c + 2 a b - a + b c-b + 1 $

idempotence的属性: $ a b c - a b - a b c + 2 a b - a + b c-b + 1 $

简化: $ 1 - a - b + ab + bc $

提取系数: \ begin {matrix} 1&1 \\ a&-1 \\ b&-1 \\ c&0 \\ ab&1 \\ ac& 0 \\ BC&1 \\ ABC&0 \ END {MATRIX}

问题:能够从输入中提取上面的系数的“最弱”oracle是什么?

有帮助吗?

解决方案

你的问题是#p-hard。实际上,给定#sat实例使用变量 $ x_i $ 和clauses $ c_j $ ,让 $ \ kappa_ {i,b} $ 是clauses $ c_j $ 满足真相分配 $ x_i= b $ ,并考虑 $$ p=prod_i(\ kappa_ {i,0} + \ kappa_ {i,1})。 $$ $ \ prod_j c_j $ 中的系数 $ p $ 是令人满意的分配的数量。

在另一个方向上,输入公式是 $ \ pi \ sigma \ pi $ (即多项式的产品)是#p -完全的。假设我们对某些单项 $ m $ 中的系数感兴趣 $ \ prod_k p_k $ ,在哪里 $ p_k $ 是多项式。在 $ m $ 中的所有变量中替换零。现在猜测来自每个 $ p_k $ 的一个术语,并接受术语一起封面 $ m $ 。< / p>

许可以下: CC-BY-SA归因
不隶属于 cs.stackexchange
scroll top