Le proprietà dell'algebra booleana
Le proprietà fondamentali dell'algebra booleana permettono di semplificare le espressioni booleane e aiutano a migliorare l'efficienza dei sistemi che si basano sulla logica booleana.
Ecco le principali proprietà delle operazioni booleane:
- Idempotenza
L'operazione ripetuta con lo stesso operando e operatore, sia AND che OR, non altera il risultato.
\( A \land A = A \)
\( A \lor A = A \)Esempio. Se prendiamo \( A = 1 \), osserviamo che: $$ A \land A = 1 \land 1 = 1 $$ $$ A \lor A = 1 \lor 1 = 1 $$ La proprietà dell'idempotenza ci mostra che operare su \( A \) con lo stesso operatore non cambia il risultato.
- Associatività
Questa proprietà permette di raggruppare le operazioni in modi diversi senza influenzare l'esito finale, facilitando la combinazione di molteplici operazioni.
\( (A \land B) \land C = A \land (B \land C) \)
\( (A \lor B) \lor C = A \lor (B \lor C) \)Esempio. Fissiamo \( A = 1 \), \( B = 0 \), e \( C = 1 \). Guardiamo l'associatività: $$ (A \land B) \land C = (1 \land 0) \land 1 = 0 \land 1 = 0 $$ $$ A \land (B \land C) = 1 \land (0 \land 1) = 1 \land 0 = 0 $$ In altre parole, associare prima \( A \) e \( B \) o \( B \) e \( C \) non cambia il risultato; l'ordine di associazione non conta.
- Commutatività
L'ordine degli operandi non incide sul risultato dell'operazione.
\( A \land B = B \land A \)
\( A \lor B = B \lor A \)Esempio. Con \( A = 1 \) e \( B = 0 \): $$ A \land B = 1 \land 0 = 0 $$ $$ B \land A = 0 \land 1 = 0 $$ La commutatività ci conferma che l'ordine degli operandi non influisce sul risultato finale dell'operazione.
- Elemento neutro
L'elemento "vero" (1) agisce come neutro per l'AND, mentre il "falso" (0) è l'elemento neutro per l'OR.
\( A \land 1 = A \)
\( A \lor 0 = A \)Esempio. Se $ A = 1 $ $$ A \land 1 = 1 \land 1 = 1 $$ $$ A \lor 0 = 1 \lor 0 = 1 $$
- Legge di complemento
L'operazione tra un elemento $ A $ e la sua negazione $ \neg A $ restituisce falso (0) per AND e vero (1) per OR.
\( A \land \neg A = 0 \)
\( A \lor \neg A = 1 \)Esempio. Se consideriamo \( A \) con valore 1. $$ A \land \neg A = 1 \land 0 = 0 $$ $$ A \lor \neg A = 1 \lor 0 = 1 $$
- Leggi di De Morgan
Queste leggi sono cruciali per convertire espressioni complesse in forme più semplici, soprattutto quando si tratta di negare combinazioni di espressioni.
\( \neg (A \land B) = \neg A \lor \neg B \)
\( \neg (A \lor B) = \neg A \land \neg B \)Esempio. Se \( A = 1 \) e \( B = 0 \): $$ \neg (A \land B) = \neg (1 \land 0) = \neg 0 = 1 $$ $$ \neg (A \lor B) = \neg (1 \lor 0) = \neg 1 = 0 $$ Queste leggi ci permettono di trasformare le negazioni delle operazioni in altre espressioni booleane equivalenti ma più gestibili.
- Distributività
Questa proprietà consente di espandere le espressioni in modi equivalenti, analogamente a quanto avviene con la distribuzione nell'algebra tradizionale.
\( A \land (B \lor C) = (A \land B) \lor (A \land C) \)
\( A \lor (B \land C) = (A \lor B) \land (A \lor C) \)Esempio. Se \( A = 1 \), \( B = 1 \), e \( C = 0 \): $$ A \land (B \lor C) = 1 \land (1 \lor 0) = 1 \land 1 = 1 $$ $$ A \lor (B \land C) = 1 \lor (1 \land 0) = 1 \lor 0 = 1 $$ La distributività ci mostra che espandere o condensare le operazioni non modifica il risultato, simile a quanto accade con la distribuzione in matematica classica.