Produisez les tables de vérité pour les opérations suivantes:
Produire des tables de vérité pour :
Savoir-faire: Utiliser une table de vérité pour montrer que deux expressions logiques sont équivalentes
Montrer que:
Utiliser une table de vérité pour démontrer la propriété d’absorption de l’algèbre de Boole:
Montrer que:
Utilisez les lois de l’algèbre de Boole (ne les apprenez pas!) pour simplifier ces expressions.
Simplifier l’expression:
Vérifier votre résultat avec une table de vérité.
Démontrer l’expression de XOR
utilisée dans l’exercice 1:
:
Pour cela commencer par remarquer que:
Vérifier votre résultat avec une table de vérité.
Exprimer sous forme simplifiée les expressions suivantes:
Vous pouvez vérifier vos résultats en Python en utilisant la bibliothèque sympy
qui propose la fonction simplify_logic
(Attention la syntaxe utilisée est: ET: &
, OU: | et NON:
~`).
from sympy import symbols
from sympy.logic import simplify_logic
P, Q, R, S, T = symbols('P Q R S T')
simplify_logic((~P|Q)&(P|Q|S)&~S) # renvoie Q & !S
La fonction propose deux modes de simplifications:
simplify_logic(expr, 'cnf')
simplify_logic(expr, 'dnf')
expr = "P&!Q&!R|P&!Q&R|P&Q&R"
simplify_logic(expr, 'cnf') # renvoie P & (R | !Q)
simplify_logic(expr, 'dnf') # renvoie (P & R) | (P & !Q)