Presentazione di PowerPoint

annuncio pubblicitario
Algebra
di George Boole
Istituto di istruzione superiore
“A. Maserati” - Voghera
Guiracocha Carlos
3^ EA
INDICE
George Boole (vita & pensiero)
Introduzione all’ algebra di Boole
Simbologia
Operatori(Porte Logiche)
Omomorfismi ed isomorfismi
Anelli, ideali e filtri booleani
Espressioni booleane
Rappresentazione delle algebre
booleane
Mappa di Karnaugh
Indicazione delle Pagine web.
George Boole
George Boole (Lincoln, 2 novembre 1815 Ballintemple, 8 dicembre 1864) è stato un
matematico e logico britannico considerato il
fondatore della logica matematica; la sua opera
influenzò anche settori della filosofia.
Incoraggiato e indirizzato da Duncan Gregory,
curatore del Cambridge Mathematical Journal,
Boole si dedicò allo studio di metodi algebrici per
la risoluzione di equazioni differenziali e la
pubblicazione dei suoi risultati sulla suddetta
rivista gli fecero ottenere una medaglia della
Royal society e, successivamente, nel 1849, la
nomina alla cattedra di matematica al Queen's
College di Cork.
Introduzione all’
algebra di Boole
In matematica ed informatica, le algebre booleane, o reticoli booleani,
sono strutture algebriche che rivestono una notevole importanza
per varie ragioni.
Permettono di trattare in termini algebrici questioni riguardanti
singoli bit (0 e 1), sequenze binarie, matrici binarie (e di
conseguenza, attraverso le loro matrici di incidenza i digrafi) e
altre funzioni binarie (si tenga presente anche la nozione di
funzione indicatrice). Inoltre ogni algebra booleana risulta
criptomorfa ad un particolare tipo di anello, chiamato anello
booleano.
Nella descrizione dei circuiti, possono anche essere usati NAND (NOT
AND), NOR (NOT OR) e XOR (OR esclusivo).
Simbologia
Nella progettazione di circuiti elettronici,
vengono utilizzati anche gli operatori brevi
NAND (AND negato), NOR (OR negato) e
XNOR (XOR negato); questi operatori,
come XOR, sono delle combinazioni dei tre
operatori base e quindi non costituiscono
un arricchimento della specie di strutture,
vengono usati solo per rendere la notazione
più semplice.
NOT
L'operatore NOT Restituisce il valore inverso di
quello in entrata. Una concatenazione di NOT è
semplificabile con un solo NOT in caso di dispari
ripetizioni o con nessuno nel caso di pari.
Spesso, per semplificare espressioni complesse, si
usano operatori brevi che uniscono l'operazione di
NOT ad altre, questi operatori sono NOR (OR +
NOT), NAND (AND + NOT), XNOR (XOR + NOT).
La negazione, in questi casi, viene applicata dopo il
risultato dell'operatore principale (OR, AND,
XOR).
AND
L' operazione AND (letteralmente e in inglese) restituisce 1
(vero) se e solo se tutti gli operandi hanno valore 1 (vero),
altrimenti restituisce 0 (falso).
 0 AND 0 = 0
 0 AND 1 = 0
 1 AND 0 = 0
 1 AND 1 = 1
 1 AND 1 AND 0 = 0
 0 AND 0 AND 1 = 0
 1 AND 1 AND 1 = 1
 0 AND 1 AND 1 AND 0 = 0
OR
L' operazione logica OR (letteralmente o in inglese) restituisce 1 (vero)
se almeno uno degli elementi è 1 (vero); altrimenti dicibile: OR
restituisce 0 (falso) se e solo se tutti gli operandi sono 0 (falso).
 0 OR 0 = 0
 0 OR 1 = 1
 1 OR 0 = 1
 1 OR 1 = 1
 ...
 1 OR 1 OR 0 = 1
 0 OR 0 OR 1 = 1
 0 OR 0 OR 0 = 0
 0 OR 1 OR 1 OR 0 = 1
 ...
Xor
L'operatore XOR (detto anche OR esclusivo) restituisce 1 (vero) se e
solo se un unico dei due operandi è 1, mentre restituisce 0 (falso) in
tutti gli altri casi.
 0 XOR 0 = 0
 0 XOR 1 = 1
 1 XOR 0 = 1
 1 XOR 1 = 0
 ...
 1 XOR 1 XOR 0 = 0
 0 XOR 0 XOR 1 = 1
 1 XOR 1 XOR 1 = 1
 0 XOR 1 XOR 1 XOR 0 = 0
 ...
Nand
L'operatore NAND (cioè la negazione del risultato dell'operazione AND)
restituisce 0 (falso) se e solo se tutti gli elementi sono 1, mentre
restituisce 1 (vero) in tutti gli altri casi.
 0 NAND 0 = 1
 0 NAND 1 = 1
 1 NAND 0 = 1
 1 NAND 1 = 0
 ...
 1 NAND 1 NAND 0 = 1
 0 NAND 0 NAND 1 = 1
 1 NAND 1 NAND 1 = 0
0 NAND 1 NAND 1 NAND 0 = 1
NOR
L'operatore NOR, (cioè la negazione del risultato dell'operazione OR)
restituisce 1 (vero) se e solo se tutti gli elementi sono 0, mentre
restituisce 0 (falso) in tutti gli altri casi.
 0 NOR 0 = 1
 0 NOR 1 = 0
 1 NOR 0 = 0
 1 NOR 1 = 0
 ...
 1 NOR 1 NOR 0 = 0
 0 NOR 0 NOR 1 = 0
 0 NOR 0 NOR 0 = 1
Xnor
L'operatore XNOR (cioè la negazione del risultato dell'operazione
XOR) restituisce 0 se e solo se un unico elemento dei due è uguale a
1 e tutti gli altri elementi sono 0
 0 XNOR 0 = 1
 0 XNOR 1 = 0
 1 XNOR 0 = 0
 1 XNOR 1 = 1
 ...
 1 XNOR 1 XNOR 0 = 1
 0 XNOR 0 XNOR 1 = 0
 1 XNOR 1 XNOR 1 = 0
 0 XNOR 1 XNOR 1 XNOR 0 = 1
Omomorfismi ed
isomorfismi
Un omomorfismo tra due algebre booleane A e B è una
funzione f: AB tale che per ogni a, b in A:
1.
f( a b ) = f( a ) f( b )
2.
f( a b ) = f( a ) f( b )
3.
f(0) = 0
4.
f(1) = 1
Da queste proprietà segue anche f(a) = f(a) per ogni a in
A . Ogni algebra booleana, con la definizione di
omomorfismo, forma una categoria. Un isomorfismo
da A su B è un omomorfismo da A su B che è
biiettivo. L'inverso di un isomorfismo è ancora un
isomorfismo, e le due algebre booleane A e B si
dicono isomorfe. Dal punto di vista della teoria
dell'algebra booleana , due algebre booleane
isomorfe non sono distinguibili, ma differiscono
soltanto nella notazione dei loro elementi.
Anelli, ideali e filtri
booleani
In questo anello l'elemento neutro per la somma coincide
con lo 0 dell'algebra booleana, mentre l'elemento neutro
della moltiplicazione è l'elemento 1 dell'algebra booleana.
Questo anello ha la proprietà che a * a = a per ogni a in A;
gli anelli con questa proprietà sono chiamati anelli
booleani.La categoria degli anelli booleani e delle algebre
booleane sono equivalenti.Questa notazione coincide con
la notazione teorica: ideale primo e ideale massimale
nell'anello booleano A.
Il duale di un ideale è un filtro.
Espressioni booleane (1)
Possono esistere delle espressioni che, pur essendo
differenti, si rivelano equivalenti. Certamente le
espressioni booleane assumono una particolare
importanza per quanto riguarda il calcolo
proposizionale, in cui vengono usate come variabili
delle proposizioni legate tramite congiunzioni,
disgiunzioni, negazioni ed altre operazioni più
complesse.
Espressioni booleane (2)
Un prodotto fondamentale è un prodotto
in cui ciascuna variabile, o il suo
complemento, compare una sola volta e
rigorosamente fuori da parentesi, ad
esempio, date le variabili x, y, z
all'interno di un'algebra di Boole, sono
prodotti fondamentali
P(x,y,z) = xy
Mentre non sono prodotti fondamentali
yyz
Rappresentazione
delle algebre
Booleane
Si può dimostrare che ogni reticolo booleano finito è isomorfo al
reticolo booleano di tutti i sottoinsiemi di un insieme finito. Di
conseguenza, il numero di elementi di ogni reticolo booleano finito ha
un sostegno che contiene un numero di elementi uguale ad una
potenza di 2.
In figura è rappresentato il diagramma di Hasse dell'algebra di Boole di
ordine otto.
Marshall Stone ha enunciato il celebre teorema di rappresentazione per
le algebre booleane dimostrando che ogni algebra booleana "A" è
isomorfa a tutte le algebre booleane aperte-chiuse in un certo spazio
topologico, detto compatto di Hausdorff
Mappa di Karnaugh
La mappa di Karnaugh è una metodologia esatta di sintesi di
reti combinatorie a uno o più livelli. Queste sono una
rappresentazione di una funzione booleana in modo da
mettere in evidenza le coppie di mintermini o di
maxtermini a distanza di Hamming unitaria (ovvero che
differiscono di un solo bit). Siccome derivano da una meno
intuitiva visione multidimensionale delle funzioni booleane
in campo cartesiano, le mappe di Karnaugh risultano
effettivamente applicabili a funzioni fino a 5 - 6 variabili.
Storia e Utilizzo
Storia
La mappa di Karnaugh è stata inventata nel 1953 da Maurice Karnaugh,
un ingegnere in Telecomunicazioni presso i Bell Laboratories
Utilizzo
Una mappa di Karnaugh riguarda una funzione booleana di un numero
poco elevato di variabili e si costruisce a partire dalla tabella della
verità di tale funzione.
Il metodo delle mappe di Karnaugh ha il vantaggio di essere un
procedimento grafico piuttosto intuitivo e quindi di permettere
semplificazioni della funzione booleana spesso più immediate di
quelle ottenibili solo con modifiche algebriche.
Esempio

Consideriamo la funzione:
f(A, B, C, D) = E(4, 8, 9, 10, 11, 12, 14, 15)
Essendoci 16 combinazioni delle 4 varibili booleane, anche la mappa di Karnaugh dovrà avere 16
posizioni. Il modo più conveniente per disporle è in una tabella 4x4.
Limiti delle mappe di
Karnaugh



Per le funzioni con più di 4 variabili diventa difficile l'uso delle mappe
di Karnaugh; infatti queste per cercare di essere intuitive
dovrebbero diventare tridimensionali oppure ricorrere alla Variabili
Entered Map, o ancora usare una mappa supplementare in più per ogni
combinazione di variabili oltre la quarta. Il numero di tali combinazioni
è 2n − 4, dove n è il numero di variabili della funzione: ad esempio 5
variabili necessitano di 2 mappe, mentre 6 variabili necessitano di 4
mappe.
Non sempre la funzione ottenuta da una mappa di Karnaugh, è la più
ottimizzata possibile. Un corretto raggruppamento sulla mappa di
Karnaugh consente però di trovare il circuito ottimo a due livelli di
logica.
Un'alternativa alle mappe di Karnaugh, utile nei casi già elencati, è il
metodo di semplificazione Quine McCluskey.
Indicazione delle Pagine web
George Boole (vita & pensiero)
Algebra di Boole
Mappa di Karnaugh
Scarica