在布爾邏輯中,一個公式是合取范式(CNF)的,如果它是子句的合取。作為規范形式,它在自動定理證明中有用。它類似于在電路理論中的規范和之積形式。 所有的文字的合取和所有的文字的析取是 CNF 的,因為可以被分別看作一個文字的子句的合取和一個單一子句的合取。和析取范式(DNF)中一樣,在 CNF 公式中可以包含的命題連結詞是與、或和非。非算子只能用做文字的一部分,這意味著它只能領先于命題變量。 例如,下列所有公式都是 CNF:
而下列不是:
上述三個公式分別等價于合取范式的下列三個公式:
所有命題公式都可以轉換成 CNF 的等價公式。這種變換基于了關于邏輯等價的規則: 雙重否定律、德·摩根定律和分配律。 因為所有邏輯公式都可以轉換成合取范式的等價公式,證明經常基于所有公式都是 CNF 的假定。但是在某些情況下,這種到 CNF 的轉換可能導致公式的指數性爆漲。例如,把下述非-CNF 公式轉換成 CNF 生成有 2n 個子句的公式:
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
