Python科学计算系列9—逻辑代数
Posted 亚图姆
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python科学计算系列9—逻辑代数相关的知识,希望对你有一定的参考价值。
1.基本定理的验证
代码如下:
from sympy import * A, B, C = symbols(\'A B C\') # 重叠律 # A·A=A A+A=A print(to_cnf(A | A)) print(to_cnf(A & A)) # 结合律 print(to_cnf(~(A | B) | C)) # 分配律 # A+B·C=(A+B)(A+C) print(to_dnf(A & (B | C))) # 反演律 print(to_dnf(~(A | B))) print(to_dnf(~(A & B))) # 还原律 print(to_cnf(~(~A)))
运行结果:
2.化简逻辑函数
代码如下:
from sympy import * A, B, C = symbols(\'A B C\') # 化简逻辑函数(!A+!B+!C)(!A+!B+!C) f1 = simplify_logic((~A & ~B & ~C) | (~A & ~B & C)) print(f1) # 化简最小项之和为析取范式 minterms1 = [0, 7] f2 = SOPform([A, B, C], minterms1) print(f2) # 化简最小项之和为合取范式 minterms2 = [[1, 0, 1], [1, 1, 0], [1, 1, 1]] f3 = POSform([A, B, C], minterms2) print(f3) # 化简最小项之和为析取范式(第7项任取) minterms3 = [[1, 0, 1], [1, 1, 0]] dontcares = [7] f4 = SOPform([A, B, C], minterms3, dontcares) print(f4)
运行结果:
以上是关于Python科学计算系列9—逻辑代数的主要内容,如果未能解决你的问题,请参考以下文章