119

我正在重构旧代码,遇到了几个过于复杂和冗长的 IF 条件,我确信它们可以被简化。我的猜测是,由于后来的修改,这些条件增长了很多。

无论如何,我想知道你们中是否有人知道我可以使用的好的在线简化器。我对任何特定语言都不感兴趣,只是一个简化器,例如:

((A OR B) AND (!B AND C) OR C)

如果有的话,给我一个简化版本的表达式。

我已经查看了其他类似的问题,但没有人指出我是一个很好的简化器。

谢谢。

4

3 回答 3

97

您可以根据您的输入尝试 Wolfram Alpha,如下例所示:

http://www.wolframalpha.com/input/?i=((A%20OR%20B)%20AND%20(NOT%20B%20AND%20C)%20OR%20C)&t=crmtb01&f=rc

于 2013-02-15T21:12:22.383 回答
17

Try Logic Friday 1It 包括来自加利福尼亚大学的工具(Espresso 和 misII),并使它们可与 GUI 一起使用。您可以根据需要输入布尔方程和真值表。它还具有图形门图输入和输出。

最小化可以进行两级或多级。两级形式产生最小的乘积之和。多级形式创建了一个由逻辑门组成的电路。门的类型可以由用户限制。

您的表达式简化为C

于 2013-02-15T21:06:21.603 回答
8

我发现The Boolean Expression Reducer比 Logic Friday 更容易使用。此外,它不需要安装并且是多平台(Java)。

同样在 Logic Friday 中,表达式A | B只返回真值表中的 3 个条目;我预计4。

于 2013-11-06T10:17:46.733 回答