如何简化任意布尔表达式?

时间:2013-06-30 12:29:30

标签: logic boolean-expression

我怎样才能简化任意复杂的布尔表达式?

例如:

!(!a && !b || !a && b || a && !b) && !(!a && !b || !a && b || a && !b) ||
!(!a && !b || !a && b || a && !b) && (!a && !b || !a && b || a && !b) ||
(!a && !b || !a && b || a && !b) && !(!a && !b || !a && b || a && !b)

是一种非常冗长的说法:

a && b

我可以通过直观地使用布尔定律手动执行此操作。是否有程序化方法?

Wolfram Alpha如何做到这一点?