(去你丫的离散数学)
首先,我们需要理解主合取范式(CNF)和主析取范式(DNF)的定义:
-
主合取范式(CNF):是一个逻辑公式,它是一系列子句的逻辑与(合取),每个子句是一系列文字的逻辑或(析取)。文字是变量或其否定。
-
主析取范式(DNF):是一个逻辑公式,它是一系列子句的逻辑或(析取),每个子句是一系列文字的逻辑与(合取)。文字是变量或其否定。
然后,我们可以根据真值表得出公式的主合取范式和主析取范式:
-
得出主合取范式:查看真值表中使得公式值为
假的行,对于这些行,取变量值为真的变量的否定,和变量值为假的变量,将它们用逻辑或(析取)连接起来形成一个子句,然后将所有子句用逻辑与(合取)连接起来,就得到了主合取范式。 -
得出主析取范式:查看真值表中使得公式值为
真的行,对于这些行,取变量值为真的变量,和变量值为假的变量的否定,将它们用逻辑与(合取)连接起来形成一个子句,然后将所有子句用逻辑或(析取)连接起来,就得到了主析取范式。
例题:写出公式(p∨q)→¬r的真值表, 并依据真值表给出其主合取范式、主析取范式及其公式的类型。
首先,我们可以写出公式(p∨q)→¬r的真值表:
| p | q | r | p∨q | (p∨q)→¬r |
|---|---|---|---|---|
| T | T | T | T | F |
| T | T | F | T | T |
| T | F | T | T | F |
| T | F | F | T | T |
| F | T | T | T | F |
| F | T | F | T | T |
| F | F | T | F | T |
| F | F | F | F | T |
然后,我们可以根据真值表得出公式的主合取范式和主析取范式:
- 主合取范式(CNF):第1,3,5行为假,p,q,r的值分别是111,101,011,取反之后就是000,010,100, 所以应该是(¬p∨¬q∨¬r)∧(¬p∨q∨¬r)∧(p∨¬q∨¬r)
- 主析取范式(DNF):第2,4,6,7,8行为假,p,q,r的值分别是110,100,010,001,000。所以应该是(p∧q∧¬r)∨(p∧¬q∧¬r)∨(¬p∧q∧¬r)∨(¬p∧¬q∧r)∨(¬p∧¬q∧¬r)
本文介绍了主合取范式(CNF)和主析取范式(DNF)的定义,并通过例题(p∨q)→¬r展示了如何根据真值表得出这两个形式的转换过程。
1019

被折叠的 条评论
为什么被折叠?



