SlideShare a Scribd company logo
Algebra di Boole ed
Elementi di Logica
Cenni all’algebra di Boole
 L’algebra di Boole (inventata da George Boole,
britannico, ’800), o algebra della logica, si basa su
operazioni logiche
 Le operazioni logiche sono applicabili a operandi logici,
cioè a operandi in grado di assumere solo i valori vero e
falso
 Si può rappresentare vero con il bit 1 e falso con il bit 0
(convenzione di logica positiva)
Operazioni logiche fondamentali
 Operatori logici binari (con 2 operandi logici)



Operatore OR, o somma logica
Operatore AND, o prodotto logico

 Operatore logico unario (con 1 operando)


Operatore NOT, o negazione, o inversione

 Poiché gli operandi logici ammettono due soli
valori, si può definire compiutamente ogni
operatore logico tramite una tabella di
associazione operandi-risultato, chiamata tabella di
verità
Operazioni logiche fondamentali
Tabelle di verità
A B

A or B

A B

A and B

A

not A

0

0

0

0

0

0

0

1

0

1

1

0

1

0

1

0

1

0

1

1

0

0

(negazione)

1

1

1

1

1

1

(somma logica)

(prodotto logico)

Le tabelle elencano tutte le possibili combinazioni in
ingresso e il risultato associato a ciascuna combinazione
Altri operatori logici
A B

A xor B

0

0

0

0

1

1

1

0

1

1

1

0

XOR, detto anche EX-OR o OR
esclusivo: il risultato è vero se solo
uno dei due operandi è vero

A xor B = ( A and ( not B ) ) or ( ( not A ) and B )
Altri operatori logici
A B

A xnor B

0

0

1

0

1

0

1

0

0

1

1

1

XNOR, detto anche EX-NOR:
l’inverso di XOR

A xnor B = not(A xor B) =
= not(( A and ( not B ) ) or ( ( not A ) and B ))
Espressioni logiche (o Booleane)


Come le espressioni algebriche, costruite con:





Variabili logiche (letterali): p. es. A, B, C = 0 oppure 1
Operatori logici: and, or, not

Esempi:
A or (B and C)
(A and (not B)) or (B and C)



Precedenza: l’operatore “not” precede l’operatore “and”,
che a sua volta precede l’operatore “or”
A and not B or B and C = (A and (not B)) or (B and C)



Per ricordarlo, si pensi OR come “+” (più), AND come “×”
(per) e NOT come “−” (cambia segno)
Tabelle di verità delle espressioni
logiche
A

B

NOT ( ( A OR B) AND ( NOT A ) )

0

0

1

0

1

0

1

0

1

1

1

1

Specificano i valori di verità per tutti i possibili valori
delle variabili
Tabelle di verità delle espressioni
logiche
A and B or not C

ABC

X = A and B

Y = not C

X or Y

000

0 and 0 = 0

not 0 = 1

0

or

1

=1

001

0 and 0 = 0

not 1 = 0

0

or

0

=0

010

0 and 1 = 0

not 0 = 1

0

or

1

=1

011

0 and 1 = 0

not 1 = 0

0

or

0

=0

100

1 and 0 = 0

not 0 = 1

0

or

1

=1

101

1 and 0 = 0

not 1 = 0

0

or

0

=0

110

1 and 1 = 1

not 0 = 1

1

or

1

=1

111

1 and 1 = 1

not 1 = 0

1

or

0

=1
Tabelle di verità delle espressioni
logiche
A
0
0
0
0
1
1
1
1

B
0
0
1
1
0
0
1
1

C
0
1
0
1
0
1
0
1

( B OR NOT C ) AND ( A OR NOT C )
0 1
1 0
1
0 1
1 0
0 0
0 1
0
0 0
0 1
1 1
1 0
1
0 1
1 0
1 1
0 1
0
0 0
0 1
0 1
1 0
1
1 1
1 0
0 0
0 1
0
1 1
0 1
1 1
1 0
1
1 1
1 0
1 1
0 1
1
1 1
0 1
A che cosa servono le espressioni
logiche?


A modellare alcune (non tutte) forme di ragionamento





A = è vero che 1 è maggiore di 2 ? (sì o no, qui è no) = 0
B = è vero che 2 più 2 fa 4 ? (sì o no, qui è sì) = 1
A and B = è vero che 1 sia maggiore di 2 e che 2 più 2 faccia 4 ?
Si ha che A and B = 0 and 1 = 0, dunque no
A or B = è vero che 1 sia maggiore di 2 o che 2 più 2 faccia 4 ?
Si ha che A or B = 0 or 1 = 1, dunque sì



OR, AND e NOT vengono anche chiamati connettivi logici,
perché funzionano come le congiunzioni coordinanti “o” ed
“e”, e come la negazione “non”, del linguaggio naturale



Si modellano ragionamenti (o deduzioni) basati solo sull’uso
di “o”, “e” e “non” (non è molto, ma è utile)
Che cosa non si può modellare
tramite espressioni logiche?


Le espressioni logiche (booleane) non modellano:



Domande esistenziali: “c’è almeno un numero reale x tale che il suo quadrato
valga −1 ?” (si sa bene che non c’è)
∃x | x2 = −1
è falso
Domande universali: “ogni numero naturale è la somma di quattro quadrati
di numeri naturali ?” (si è dimostrato di sì)
∀x | x = a2+b2+c2+d2 è vero (“teorema dei 4 quadrati”)
Più esattamente andrebbe scritto: ∀x ∃a,b,c,d | x = a2+b2+c2+d2



∃ e ∀ sono chiamati “operatori di quantificazione”, e sono ben
diversi da or, and e not



La parte della logica che tratta solo degli operatori or, and e not si
chiama calcolo proposizionale



Aggiungendo gli operatori di quantificazione, si ha il calcolo dei
predicati (che è molto più complesso)
Tautologie e Contraddizioni
 Tautologia


Una espressione logica che è sempre vera, per
qualunque combinazione di valori delle variabili. Nella
tabella della verità risulta sempre 1


Esempio: principio del “terzo escluso”: A or not A (tertium non
datur, non si dà un terzo caso tra l’evento A e la sua negazione)

 Contraddizione


Una espressione logica che è sempre falsa, per
qualunque combinazione di valori delle variabili. Nella
tabella della verità risulta sempre 0


Esempio: principio di “non contraddizione”: A and not A
(l’evento A e la sua negazione non possono essere entrambi
veri)
Equivalenza tra espressioni


Due espressioni logiche si dicono equivalenti (e si indica con ⇔)
se hanno la medesima tabella di verità. La verifica è algoritmica.
Per esempio:
AB

not A and not B ⇔ not (A or B)

00

not 0 = 1

01

1 and 0 = 0

not 1 = 0

10

0 and 1 = 0

not 1 = 0

11


1 and 1 = 1

0 and 0 = 0

not 1 = 0

Espressioni logiche equivalenti modellano gli stessi stati di verità a
fronte delle medesime variabili
Proprietà dell’algebra di Boole
 L’algebra di Boole gode di svariate
proprietà, formulabili sotto specie di identità
 (cioè formulabili come equivalenze tra espressioni
logiche, valide per qualunque combinazione di
valori delle variabili)

 Esempio celebre: le “Leggi di De Morgan”
not (A and B)
not (A or B)

= not A or not B
= not A and not B

(1a legge)
(2a legge)
Proprietà dell’algebra di Boole
 Alcune proprietà somigliano a quelle dell’algebra
numerica tradizionale:





Proprietà associativa: A or (B or C) = (A or B) or C (idem per AND)
Proprietà commutativa: A or B = B or A
(idem per AND)
Proprietà distributiva di AND rispetto a OR:
A and (B or C) = A and B or A and C
… e altre ancora

 Ma parecchie altre sono alquanto insolite…





Proprietà distributiva di OR rispetto a AND:
A or B and C = (A or B) and (A or C)
Proprietà di assorbimento (A assorbe B):
A or A and B = A
Legge dell’elemento 1: not A or A = 1
… e altre ancora
Uso delle proprietà


Trasformare un’espressione logica in un’altra, differente per
aspetto ma equivalente:
=
=
=
=
=
=

not A and B or A =
(assorbimento)
not A and B or (A or A and B) =
(togli le parentesi)
not A and B or A or A and B =
(commutativa)
not A and B or A and B or A =
(distributiva)
(not A or A) and B or A =
(legge dell’elemento 1)
VERO and B or A =
(vero and B = B)
B or A è più semplice dell’espressione originale !



Si verifichi l’equivalenza con le tabelle di verità!



Occorre conoscere un’ampia lista di proprietà e si deve
riuscire a “vederle” nell’espressione (qui è il difficile)

More Related Content

PPTX
GE UTS The Material or Economic Self
DOCX
Facts About Gasera (Lamp) in the Philippines
PPTX
Aristotle forms and matter
PPTX
M1 UTS Philosophical Perspective.pptx
PPTX
Material-Economic Self.pptx
PPTX
GEC 1 Understanding the Self (Module 6: The Material Self)
PDF
UNPACKING-THE-SELF
PDF
01 introduction
GE UTS The Material or Economic Self
Facts About Gasera (Lamp) in the Philippines
Aristotle forms and matter
M1 UTS Philosophical Perspective.pptx
Material-Economic Self.pptx
GEC 1 Understanding the Self (Module 6: The Material Self)
UNPACKING-THE-SELF
01 introduction

What's hot (14)

PPT
Empiricist Epistemology
PPTX
Notes on the filipino philosophy of work and leisure
PPT
Rationalism
PPTX
GEC 1 Understanding the Self (Module 7: The Spiritual Self)
PPTX
PHILOSOPHICAL PERSPECTIVES (2).pptx
PDF
Unit 1 scalar and vector
PPTX
Influence of asian art on
PDF
Trigonometry101
PPTX
2d and 3d motion
PPTX
Center of Gravity
PPTX
Understanding the Self | Unpacking the Self | The material self
PPTX
TRIUMVIRATE; SOCRATES PLATO ARISTOTLE
PPTX
Philosophy-NAT-Review.pptx
PPTX
Pre socratic
Empiricist Epistemology
Notes on the filipino philosophy of work and leisure
Rationalism
GEC 1 Understanding the Self (Module 7: The Spiritual Self)
PHILOSOPHICAL PERSPECTIVES (2).pptx
Unit 1 scalar and vector
Influence of asian art on
Trigonometry101
2d and 3d motion
Center of Gravity
Understanding the Self | Unpacking the Self | The material self
TRIUMVIRATE; SOCRATES PLATO ARISTOTLE
Philosophy-NAT-Review.pptx
Pre socratic
Ad

Similar to 03 1 alg_bool (20)

PPT
4 Algebra Di Boole
PDF
Introduzione alla logica
PPT
Che cos'è la logica matematica
PDF
Montali - Da Leibniz a Turing: la nascita dei computer e la scoperta dei limi...
PPTX
I connettivi logici
PDF
PPT
appunti di logica
PDF
seminario-Proietti-Pescara-2021.pdf
PDF
Slides of the "Maths" Lectures, Treviso, 2018 (in Italian)
PPT
IC2008 Forma Logica
PDF
03 Le origini del calcolo digitale - 3
DOCX
11 aprile.docx
PPT
IC2008 Uguaglianza, quantificatori esistenziali numericamente delimitati e de...
PPT
IC2008 Connettivi Booleani
PPT
IC2008 Calcolo Dei Predicati
PPT
IC2008 First Order Logic
PDF
Fondazione point-free della matematica
PPT
Connettivi logici
PDF
Algoritmi, Calcolabilità, Tesi di Church ed applicazione della logica all'inf...
4 Algebra Di Boole
Introduzione alla logica
Che cos'è la logica matematica
Montali - Da Leibniz a Turing: la nascita dei computer e la scoperta dei limi...
I connettivi logici
appunti di logica
seminario-Proietti-Pescara-2021.pdf
Slides of the "Maths" Lectures, Treviso, 2018 (in Italian)
IC2008 Forma Logica
03 Le origini del calcolo digitale - 3
11 aprile.docx
IC2008 Uguaglianza, quantificatori esistenziali numericamente delimitati e de...
IC2008 Connettivi Booleani
IC2008 Calcolo Dei Predicati
IC2008 First Order Logic
Fondazione point-free della matematica
Connettivi logici
Algoritmi, Calcolabilità, Tesi di Church ed applicazione della logica all'inf...
Ad

More from Piero Fraternali (20)

PPTX
Multimedia on the mountaintop: presentation at ACM MM2016
PPTX
presentation at European Utility Week, Vienna, Nov. 2015
PPTX
Fraternali concertation june25bruxelles
PPTX
Crowsourcing (anche) per le aziende del settore tessile e della moda
PPTX
07 2 ricorsione
PPT
07 1 funzioni
PPTX
06 2 vector_matrici
PPT
06 1 array_stringhe_typedef
PPT
05 3 istruzioni-selezione-iterazione-condizioni
PPT
05 2 integrali-conversioni-costanti-preproc-inclusione
PPT
05 1 intro-struttura
PPT
03 2 arit_bin
PPT
02 algo programmi
PPTX
06 3 struct
PPTX
Human computation and participatory systems
PDF
Better society: Meet us at #ICT2013eu for #trustedsocialmedia http://bit.ly/1...
PPTX
So human presentation
PPTX
Human and social computation
PPT
Web technologies: Model Driven Engineering
PPT
Common Gateway Interface
Multimedia on the mountaintop: presentation at ACM MM2016
presentation at European Utility Week, Vienna, Nov. 2015
Fraternali concertation june25bruxelles
Crowsourcing (anche) per le aziende del settore tessile e della moda
07 2 ricorsione
07 1 funzioni
06 2 vector_matrici
06 1 array_stringhe_typedef
05 3 istruzioni-selezione-iterazione-condizioni
05 2 integrali-conversioni-costanti-preproc-inclusione
05 1 intro-struttura
03 2 arit_bin
02 algo programmi
06 3 struct
Human computation and participatory systems
Better society: Meet us at #ICT2013eu for #trustedsocialmedia http://bit.ly/1...
So human presentation
Human and social computation
Web technologies: Model Driven Engineering
Common Gateway Interface

03 1 alg_bool

  • 1. Algebra di Boole ed Elementi di Logica
  • 2. Cenni all’algebra di Boole  L’algebra di Boole (inventata da George Boole, britannico, ’800), o algebra della logica, si basa su operazioni logiche  Le operazioni logiche sono applicabili a operandi logici, cioè a operandi in grado di assumere solo i valori vero e falso  Si può rappresentare vero con il bit 1 e falso con il bit 0 (convenzione di logica positiva)
  • 3. Operazioni logiche fondamentali  Operatori logici binari (con 2 operandi logici)   Operatore OR, o somma logica Operatore AND, o prodotto logico  Operatore logico unario (con 1 operando)  Operatore NOT, o negazione, o inversione  Poiché gli operandi logici ammettono due soli valori, si può definire compiutamente ogni operatore logico tramite una tabella di associazione operandi-risultato, chiamata tabella di verità
  • 4. Operazioni logiche fondamentali Tabelle di verità A B A or B A B A and B A not A 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 0 0 (negazione) 1 1 1 1 1 1 (somma logica) (prodotto logico) Le tabelle elencano tutte le possibili combinazioni in ingresso e il risultato associato a ciascuna combinazione
  • 5. Altri operatori logici A B A xor B 0 0 0 0 1 1 1 0 1 1 1 0 XOR, detto anche EX-OR o OR esclusivo: il risultato è vero se solo uno dei due operandi è vero A xor B = ( A and ( not B ) ) or ( ( not A ) and B )
  • 6. Altri operatori logici A B A xnor B 0 0 1 0 1 0 1 0 0 1 1 1 XNOR, detto anche EX-NOR: l’inverso di XOR A xnor B = not(A xor B) = = not(( A and ( not B ) ) or ( ( not A ) and B ))
  • 7. Espressioni logiche (o Booleane)  Come le espressioni algebriche, costruite con:    Variabili logiche (letterali): p. es. A, B, C = 0 oppure 1 Operatori logici: and, or, not Esempi: A or (B and C) (A and (not B)) or (B and C)  Precedenza: l’operatore “not” precede l’operatore “and”, che a sua volta precede l’operatore “or” A and not B or B and C = (A and (not B)) or (B and C)  Per ricordarlo, si pensi OR come “+” (più), AND come “×” (per) e NOT come “−” (cambia segno)
  • 8. Tabelle di verità delle espressioni logiche A B NOT ( ( A OR B) AND ( NOT A ) ) 0 0 1 0 1 0 1 0 1 1 1 1 Specificano i valori di verità per tutti i possibili valori delle variabili
  • 9. Tabelle di verità delle espressioni logiche A and B or not C ABC X = A and B Y = not C X or Y 000 0 and 0 = 0 not 0 = 1 0 or 1 =1 001 0 and 0 = 0 not 1 = 0 0 or 0 =0 010 0 and 1 = 0 not 0 = 1 0 or 1 =1 011 0 and 1 = 0 not 1 = 0 0 or 0 =0 100 1 and 0 = 0 not 0 = 1 0 or 1 =1 101 1 and 0 = 0 not 1 = 0 0 or 0 =0 110 1 and 1 = 1 not 0 = 1 1 or 1 =1 111 1 and 1 = 1 not 1 = 0 1 or 0 =1
  • 10. Tabelle di verità delle espressioni logiche A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 ( B OR NOT C ) AND ( A OR NOT C ) 0 1 1 0 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 1 1 0 1 0 1 1 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 1 1 0 0 0 0 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1 1 0 1
  • 11. A che cosa servono le espressioni logiche?  A modellare alcune (non tutte) forme di ragionamento     A = è vero che 1 è maggiore di 2 ? (sì o no, qui è no) = 0 B = è vero che 2 più 2 fa 4 ? (sì o no, qui è sì) = 1 A and B = è vero che 1 sia maggiore di 2 e che 2 più 2 faccia 4 ? Si ha che A and B = 0 and 1 = 0, dunque no A or B = è vero che 1 sia maggiore di 2 o che 2 più 2 faccia 4 ? Si ha che A or B = 0 or 1 = 1, dunque sì  OR, AND e NOT vengono anche chiamati connettivi logici, perché funzionano come le congiunzioni coordinanti “o” ed “e”, e come la negazione “non”, del linguaggio naturale  Si modellano ragionamenti (o deduzioni) basati solo sull’uso di “o”, “e” e “non” (non è molto, ma è utile)
  • 12. Che cosa non si può modellare tramite espressioni logiche?  Le espressioni logiche (booleane) non modellano:   Domande esistenziali: “c’è almeno un numero reale x tale che il suo quadrato valga −1 ?” (si sa bene che non c’è) ∃x | x2 = −1 è falso Domande universali: “ogni numero naturale è la somma di quattro quadrati di numeri naturali ?” (si è dimostrato di sì) ∀x | x = a2+b2+c2+d2 è vero (“teorema dei 4 quadrati”) Più esattamente andrebbe scritto: ∀x ∃a,b,c,d | x = a2+b2+c2+d2  ∃ e ∀ sono chiamati “operatori di quantificazione”, e sono ben diversi da or, and e not  La parte della logica che tratta solo degli operatori or, and e not si chiama calcolo proposizionale  Aggiungendo gli operatori di quantificazione, si ha il calcolo dei predicati (che è molto più complesso)
  • 13. Tautologie e Contraddizioni  Tautologia  Una espressione logica che è sempre vera, per qualunque combinazione di valori delle variabili. Nella tabella della verità risulta sempre 1  Esempio: principio del “terzo escluso”: A or not A (tertium non datur, non si dà un terzo caso tra l’evento A e la sua negazione)  Contraddizione  Una espressione logica che è sempre falsa, per qualunque combinazione di valori delle variabili. Nella tabella della verità risulta sempre 0  Esempio: principio di “non contraddizione”: A and not A (l’evento A e la sua negazione non possono essere entrambi veri)
  • 14. Equivalenza tra espressioni  Due espressioni logiche si dicono equivalenti (e si indica con ⇔) se hanno la medesima tabella di verità. La verifica è algoritmica. Per esempio: AB not A and not B ⇔ not (A or B) 00 not 0 = 1 01 1 and 0 = 0 not 1 = 0 10 0 and 1 = 0 not 1 = 0 11  1 and 1 = 1 0 and 0 = 0 not 1 = 0 Espressioni logiche equivalenti modellano gli stessi stati di verità a fronte delle medesime variabili
  • 15. Proprietà dell’algebra di Boole  L’algebra di Boole gode di svariate proprietà, formulabili sotto specie di identità  (cioè formulabili come equivalenze tra espressioni logiche, valide per qualunque combinazione di valori delle variabili)  Esempio celebre: le “Leggi di De Morgan” not (A and B) not (A or B) = not A or not B = not A and not B (1a legge) (2a legge)
  • 16. Proprietà dell’algebra di Boole  Alcune proprietà somigliano a quelle dell’algebra numerica tradizionale:     Proprietà associativa: A or (B or C) = (A or B) or C (idem per AND) Proprietà commutativa: A or B = B or A (idem per AND) Proprietà distributiva di AND rispetto a OR: A and (B or C) = A and B or A and C … e altre ancora  Ma parecchie altre sono alquanto insolite…     Proprietà distributiva di OR rispetto a AND: A or B and C = (A or B) and (A or C) Proprietà di assorbimento (A assorbe B): A or A and B = A Legge dell’elemento 1: not A or A = 1 … e altre ancora
  • 17. Uso delle proprietà  Trasformare un’espressione logica in un’altra, differente per aspetto ma equivalente: = = = = = = not A and B or A = (assorbimento) not A and B or (A or A and B) = (togli le parentesi) not A and B or A or A and B = (commutativa) not A and B or A and B or A = (distributiva) (not A or A) and B or A = (legge dell’elemento 1) VERO and B or A = (vero and B = B) B or A è più semplice dell’espressione originale !  Si verifichi l’equivalenza con le tabelle di verità!  Occorre conoscere un’ampia lista di proprietà e si deve riuscire a “vederle” nell’espressione (qui è il difficile)