📜  离散数学中的 PDNF 和 PCNF

📅  最后修改于: 2021-09-23 04:48:49             🧑  作者: Mango

PDNF :
它代表主析取范式。它是指产品的总和,即SOP。例如。 : 如果 P, Q, R 是变量,那么(P . Q’ . R) + (P’ . Q . R) + (P . Q . R’)是 PDNF 中表达式的一个例子。这里的“+”即 sum 是主要的运算符。

如果 DNF(析取范式)和 PDNF(主要析取范式)之间存在任何差异,您可能会感到困惑。 PDNF 和 DNF 之间的主要区别在于,在 DNF 的情况下,表达式中所有变量的长度不必相同。例如:

  1. (P . Q’ . R) + (P’ . Q . R) + (P . Q)是 DNF 中但不是 PDNF 中的表达式的示例。
  2. (P . Q’ . R) + (P’ . Q . R) + (P . Q . R’)是在 PDNF 和 DNF 中都存在的表达式的示例。

PCNF :
它代表主合取范式。它指的是总和的乘积,即POS。例如。 : 如果 P, Q, R 是变量,那么(P + Q’+ R).(P’+ Q + R).(P + Q + R’)是 PCNF 中表达式的一个例子。这里 ‘。’即产品是主要运算符。

同样,PCNF 和 CNF 之间的主要区别在于,在 CNF 的情况下,表达式中所有变量的长度不必相同。例如:

  1. (P + Q’+ R).(P’+ Q + R).(P + Q)是 CNF 中的表达式示例,但不是 PCNF 中的表达式。
  2. (P + Q’+ R).(P’+ Q + R).(P + Q + R’)是一个在 PCNF 和 CNF 中都存在的表达式的例子。

PCNF 和 PDNF 的特性

  1. 每个 PDNF 或 PCNF 对应一个唯一的布尔表达式,反之亦然。
  2. 如果 X 和 Y 是两个布尔表达式,则当且仅当 PDNF(X) = PDNF(Y) 或 PCNF(X) = PCNF(Y) 时,X 等价于 Y。
  3. 对于布尔表达式,如果 PCNF 有 m 项,PDNF 有 n 项,那么这样一个布尔表达式中的变量数 = \log_{2} (m + n) .