合取范式 在布尔逻辑中如果一个公式是子句的合取那么它是合取范式CNF的作为规范形式它在自动定理证明中有用它类似于在电路理论中的规范和之积形式 所有的文字的合取和所有的文字的析取是CNF的因为可以被分别看作一个文字的子句的合取和析取和析取范式DNF中一样在CNF公式中可以包含的命题连结词是与或和非非算子只能用做文字的一部分这意味着它只能在命题变量前出现 例如下列所有公式都是CNF A  B displaystyle Awedge B  A   B  C  displaystyle neg Awedge Bvee C  A  B     B  C   D    D   E  displaystyle Avee Bwedge neg Bvee Cvee neg Dwedge Dvee neg E   B  C  displaystyle neg Bvee C 而下列不是   B  C  displaystyle neg Bvee C  A  B   C displaystyle Awedge Bvee C A   B   D  E   displaystyle Awedge Bvee Dwedge E 上述三个公式分别等价于合取范式的下列三个公式  B   C displaystyle neg Bwedge neg C  A  C    B  C  displaystyle Avee Cwedge Bvee C A   B  D    B  E  displaystyle Awedge Bvee Dwedge Bvee E 所有命题公式都可以转换成 CNF 的等价公式这种变换基于了关于逻辑等价的规则 双重否定律德摩根定律和分配律 因为所有逻辑公式都可以转换成合取范式的等价公式证明经常基于所有公式都是 CNF 的假定但是在某些情况下这种到 CNF 的转换可能导致公式的指数性爆涨例如把下述非CNF 公式转换成 CNF 生成有  n displaystyle n 个子句的公式  X   Y     X   Y       X n  Y n  displaystyle Xwedge Yvee Xwedge Yvee dots vee Xnwedge Yn