Espressioni booleane

Impara a scrivere e valutare espressioni booleane con 1 e 0, ad applicare la precedenza NOT, AND, OR e a costruire la loro tavola di verità completa.

Avanzato25 minLezione

Definizione

Un'espressione booleana è una formula costruita con variabili booleane (lettere come AA, BB, CC), i valori 11 (vero) e 00 (falso) e gli operatori AND (∧\land), OR (∨\lor) e NOT (¬\neg). Proprio come 3+4×23 + 4 \times 2 in aritmetica, un'espressione booleana ha un solo valore, ma questo valore è sempre 11 oppure 00.
I tre operatori con 1 e 0:
  • ¬A\neg A inverte il valore: ¬1=0\neg 1 = 0 e ¬0=1\neg 0 = 1
  • A∧BA \land B vale 11 solo quando AA e BB valgono entrambe 11
  • A∨BA \lor B vale 11 quando almeno una delle due vale 11
Precedenza degli operatori: prima le parentesi, poi NOT, poi AND, poi OR.
(  )  →  ¬  →  ∧  →  ∨(\;) \;\to\; \neg \;\to\; \land \;\to\; \lor
Quindi A∨B∧CA \lor B \land C significa A∨(B∧C)A \lor (B \land C), e ¬A∧B\neg A \land B significa (¬A)∧B(\neg A) \land B.
Esempio: valuta A∨B∧¬CA \lor B \land \neg C per A=0A = 0, B=1B = 1, C=0C = 0:
0∨1∧¬0=0∨1∧1=0∨1=10 \lor 1 \land \neg 0 = 0 \lor 1 \land 1 = 0 \lor 1 = 1
Un'espressione con nn variabili ha 2n2^n combinazioni di ingressi. La sua tavola di verità riporta il valore dell'espressione per ciascuna di esse, partendo dalla riga in cui tutte le variabili valgono 00. Due espressioni sono equivalenti quando le loro colonne finali coincidono in ogni riga. (La lezione Tavole di verità partiva invece dalla riga in cui tutto è vero; va bene qualsiasi ordine fisso. Le tavole di verità interattive di questa lezione usano anch'esse 11 e 00.)

Prova subito

In A∨B∧¬CA \lor B \land \neg C (senza parentesi), quale operazione si esegue per prima?

Esempi svolti

Valuta A∧¬BA \land \neg B per A=1A = 1 e B=0B = 0.

1

Sostituire i valori

Sostituisci AA con 11 e BB con 00 → 1∧¬01 \land \neg 0

2

Prima NOT

¬0=1\neg 0 = 1 → 1∧11 \land 1

3

Poi AND

Entrambi i valori sono 11, quindi AND dà 11

Errori comuni

Calcolare da sinistra a destra: 1∨0∧0=(1∨0)∧0=01 \lor 0 \land 0 = (1 \lor 0) \land 0 = 0

Perché è sbagliato: AND viene prima di OR, così come la moltiplicazione viene prima dell'addizione. Senza parentesi, la parte AND si calcola per prima.

Corretto: 1∨0∧0=1∨(0∧0)=1∨0=11 \lor 0 \land 0 = 1 \lor (0 \land 0) = 1 \lor 0 = 1

Applicare NOT a tutto ciò che segue: leggere ¬A∧B\neg A \land B come ¬(A∧B)\neg(A \land B)

Perché è sbagliato: Senza parentesi, NOT si applica solo alla variabile che lo segue direttamente.

Corretto: ¬A∧B=(¬A)∧B\neg A \land B = (\neg A) \land B. Per negare tutto l'AND, scrivi ¬(A∧B)\neg(A \land B).

Sommare come se fossero numeri: 1∨1=21 \lor 1 = 2

Perché è sbagliato: Un'espressione booleana può valere solo 11 o 00. OR chiede se almeno un valore è 11, non li conta.

Corretto: 1∨1=11 \lor 1 = 1, 1∧1=11 \land 1 = 1 e ¬1=0\neg 1 = 0. Il risultato è sempre 11 o 00.

Dichiarare equivalenti due espressioni dopo aver provato solo uno o due ingressi

Perché è sbagliato: A∧(B∨C)A \land (B \lor C) e A∧B∨CA \land B \lor C hanno lo stesso valore in 6 righe su 8, eppure sono diverse.

Corretto: Costruisci la tavola completa con 2n2^n righe e confronta ogni riga. Una riga diversa significa: non equivalenti.

Visuale interattivo

Tabella di verità

EspressioneA ∨ B ∧ ¬C
ABC¬CB ∧ ¬CA ∨ B ∧ ¬C
000100
001000
010111
011000
100101
101001
110111
111001

1= Vero0= Falso

Tabella di verità

EspressioneA ∨ ¬A ∧ B
ABA ∨ ¬A ∧ B
00
01
10
11

1= Vero0= Falso

Sandbox interattivo

Calcolatrice di espressioni

Prova questi:

Cronologia

Ancora nessun calcolo

Esercizi pratici

18 esercizi
Problema 1 di 18
Facile

In A∨B∧¬CA \lor B \land \neg C (senza parentesi), quale operazione si esegue per prima?

Perché è importante

Le espressioni booleane sono il linguaggio che i computer usano per prendere decisioni:
  • Programmazione: ogni condizione if è un'espressione booleana, per esempio (almeno 12 anni AND NOT escluso) OR accompagnato da un genitore. Se dimentichi le parentesi, il programma fa entrare le persone sbagliate
  • Ricerche e filtri: i negozi online e le biblioteche combinano filtri come disponibile AND (rosso OR blu)
  • Fogli di calcolo: funzioni come E(), O() e NON() decidono quali righe vengono evidenziate
  • Elettronica: ogni chip trasforma espressioni booleane in circuiti di porte logiche, come vedrai nella lezione Porte logiche
  • Giochi e casa intelligente: una porta si apre o una luce si accende quando un'espressione di più sensori vale 1
Se conosci la precedenza degli operatori e sai costruire una tavola di verità, puoi prevedere esattamente che cosa fa una regola in ogni situazione possibile.

Applicazioni nel mondo reale

Regole in un programma

I programmatori scrivono le regole come espressioni booleane e provano ogni combinazione di ingressi prima di mettere online il programma.

Esempio:

Un'attrazione del luna park ti fa salire se T∧(H∨P)T \land (H \lor P): TT = hai il biglietto, HH = sei abbastanza alto, PP = sale con te un genitore.

1Provaci tu stesso

La regola è T∧(H∨P)T \land (H \lor P). Una bambina ha il biglietto (T=1T = 1), non è abbastanza alta (H=0H = 0) e sale con un genitore (P=1P = 1).

Quanti casi di prova ha la regola, e la bambina può salire?

Passo 1: Scrivi l'espressione matematica

Scrivi il numero di casi di prova come potenza di 2:

Filtri antispam

Un programma di posta decide con un'espressione booleana se un messaggio finisce nella cartella spam.

Esempio:

Un filtro segna un'e-mail come spam se L∨S∧¬KL \lor S \land \neg K: LL = il mittente è in una lista nera, SS = parole sospette, KK = il mittente è nei tuoi contatti.

2Provaci tu stesso

La regola è L∨S∧¬KL \lor S \land \neg K. Un'e-mail di un'amica presente nei tuoi contatti (K=1K = 1) contiene una parola sospetta (S=1S = 1), e la mittente non è nella lista nera (L=0L = 0). Con 0 e 1, AND funziona come la moltiplicazione e NOT come 1−x1 - x.

L'e-mail finisce nello spam?

Passo 1: Scrivi l'espressione matematica

Scrivi S∧¬KS \land \neg K come calcolo:

Regole della casa intelligente

Due espressioni diverse possono comandare un dispositivo esattamente allo stesso modo. Una tavola di verità mostra quando una regola lunga si può sostituire con una corta.

Esempio:

Una luce da giardino usa la regola M∨M∧NM \lor M \land N: MM = movimento rilevato, NN = è notte.

3Provaci tu stesso

Un'ingegnera vuole sostituire la regola M∨M∧NM \lor M \land N con la regola più corta MM.

Le due regole accendono sempre la luce allo stesso modo?

Passo 1: Scrivi l'espressione matematica

Scrivi il numero di righe come potenza di 2:

Punti chiave

  • 1Un'espressione booleana combina variabili, i valori 1 (vero) e 0 (falso) e gli operatori ∧\land, ∨\lor, ¬\neg
  • 2Il valore di un'espressione booleana è sempre 1 o 0, mai 2 o più
  • 3Precedenza degli operatori: prima le parentesi, poi NOT, poi AND, poi OR
  • 4NOT si applica solo a ciò che lo segue direttamente: ¬A∧B\neg A \land B non è ¬(A∧B)\neg(A \land B)
  • 5Un'espressione con nn variabili ha una tavola di verità di 2n2^n righe, partendo dalla riga in cui tutte le variabili valgono 0
  • 6Due espressioni sono equivalenti quando le loro colonne finali sono uguali in ogni riga

Domande frequenti

È una convenzione, come la moltiplicazione prima dell'addizione. Con 0 e 1, AND si comporta come la moltiplicazione (1×0=01 \times 0 = 0), e OR viene spesso paragonato all'addizione, quindi lo stesso ordine sembra naturale.
È una convenzione, come la moltiplicazione prima dell'addizione. Con 0 e 1, AND si comporta come la moltiplicazione (1×0=01 \times 0 = 0), e OR viene spesso paragonato all'addizione, quindi lo stesso ordine sembra naturale.
Sì. Parentesi che seguono la precedenza degli operatori non cambiano mai il valore e rendono l'espressione più facile da leggere. A∨(B∧C)A \lor (B \land C) è uguale a A∨B∧CA \lor B \land C, ma la prima scrittura mostra l'ordine a colpo d'occhio.
Sì. 1 sta per vero e 0 per falso. I computer usano 1 e 0 perché memorizzano tutto come bit. Anche le tavole interattive di questa lezione usano 1 e 0.
Sì. L'algebra di Boole ha delle leggi (come le leggi di De Morgan) che trasformano un'espressione in un'altra passo dopo passo. Le studierai nella lezione Algebra di Boole. Una tavola di verità è più lenta, ma funziona sempre.

Glossario

Variabile booleana
Una lettera come AA, BB o CC che può assumere solo i valori 1 (vero) o 0 (falso)
Espressione booleana
Una formula fatta di variabili booleane, dei valori 1 e 0 e degli operatori ∧\land, ∨\lor, ¬\neg
Precedenza degli operatori
La regola che dice quale operatore si calcola per primo: parentesi, poi NOT, poi AND, poi OR
Tavola di verità
Una tabella che riporta il valore di un'espressione per tutte le 2n2^n combinazioni delle sue variabili
Equivalente
Due espressioni sono equivalenti quando hanno lo stesso valore in ogni riga della tavola di verità

Scheda formule

Precedenza degli operatori

(  )  →  ¬  →  ∧  →  ∨(\;) \;\to\; \neg \;\to\; \land \;\to\; \lor

Prima le parentesi, poi NOT, poi AND, poi OR

NOT

¬0=1,¬1=0\neg 0 = 1, \quad \neg 1 = 0

Inverte il valore di ciò che lo segue direttamente

AND e OR

1∧1=1,0∨0=01 \land 1 = 1, \quad 0 \lor 0 = 0

AND vale 1 solo se entrambi valgono 1; OR vale 0 solo se entrambi valgono 0

Numero di righe

righe=2n\text{righe} = 2^n

$n$ è il numero di variabili: $2^2 = 4$, $2^3 = 8$

Altro su questo argomento