XOR联合形式定义如下:(一个XOR b)和(c XOR d)......等等
并且SAT-XCF是可以满足的先例(XOR conjunctive)表达式定义的语言。
我想知道SAT-XCF是NP难吗?因此,是否有一个函数能够将任何可满足的布尔表达式转换为可满足的XOR联合形式?
非常感谢您的贡献。
答案 0 :(得分:0)
我认为即使是2个变量,你上一个问题的答案也是“不”。具体而言,(a OR b)不能表示为任何数量的XOR表达式的AND。在最多2个变量中,很少有不同的XOR表达式:false,true,a,b,!a,!b,(一个XOR b)和(一个XOR!b)。如果你和以下任何一个:假,真,a,b,!a,!b,(一个XOR b),(一个异或!)你将设置为假的一个可能的组合之一(a, b)。这只留下表达式为真,这与(a OR b)不同。
答案 1 :(得分:0)
是的,您可以使用一种高效的算法。您遵循模2的普通代数规则。关于先前的评论:
A|B=A^B^AB
这种形式称为代数范式 https://en.wikipedia.org/wiki/Algebraic_normal_form