【问题标题】:CNF Simplification AlgorithmCNF 简化算法
【发布时间】:2016-10-26 01:14:44
【问题描述】:

鉴于布尔表达式是合取范式:是否有一种“简单”的算法来简化它,同时将其保留在 CNF 中?

具体来说,以下表达式的什么属性导致了这种简化?

(~a+b+c)(a+~b+c)(a+~c)

简化为 ...

(~a+b+c)(a+~b)(a+~c)

【问题讨论】:

    标签: boolean-logic boolean-expression boolean-operations conjunctive-normal-form


    【解决方案1】:

    您的示例中的Karnaugh map 是:

    为了获得简化的DNF,将“1”个单元格分组以获得具有最少minterms 数量的封面。

    类似地,可以将“0”单元格分组以获得具有最少项数的反向覆盖。

    逆映射:

    结果项的文字必须反转才能达到所需的最小值CNF

    (a + ~b) (a + ~c) (~a + b + c)

    该过程利用了 minterm 的逆是带有反转文字的 maxterm(通常称为 CNF clause)这一事实。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-03
      • 2014-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多