重构布尔方程

Eni*_*mae 1 parsing expression equation boolean

假设你有一个像这样的布尔规则/表达式

(A OR B) AND (D OR E) AND F
Run Code Online (Sandbox Code Playgroud)

您希望将其转换为尽可能多的AND表达式,如此

A AND D AND F
A AND E AND F
B AND D AND F
B AND E AND F
Run Code Online (Sandbox Code Playgroud)

你只是减少了OR,所以它变成了

(A AND D AND F) OR (A AND E AND F) OR (...)
Run Code Online (Sandbox Code Playgroud)

布尔代数中是否有属性可以执行此操作?

Bri*_*new 5

看看DeMorgan的定理.该链接指向与电子门有关的文件,但理论保持不变.

它说任何逻辑二进制表达式如果我们保持不变

  1. 将所有变量更改为其补码.
  2. 将所有AND操作更改为OR.
  3. 将所有OR操作更改为AND.
  4. 取整个表达式的补充.

(引自上述链接文件)