algebra di boole

18
Algebra di Boole Da Wikipedia, l'enciclopedia libera. In matematica, informatica ed elettronica, l'algebra di Boole, anche detta algebra booleana o reticolo booleano, è un'algebra astratta che opera essenzialmente con i soli valori di verità 0 e 1. In una formulazione più generale, l'algebra booleana si fonda su un insieme K che non comprende solo i valori 0 e 1; tuttavia questa struttura algebrica nasce per elaborare matematicamente espressioni nell'ambito della logica proposizionale Matematicamente si dice algebra di Boole un qualunque reticolo dotato di proprietà, quali la distributività, l'esistenza di minimo e massimo e l'esistenza del complemento: l'algebra booleana risulta criptomorfa, cioè associata biunivocamente e in modo da risultare logicamente equivalente, a un insieme parzialmente ordinato reticolato. D'altra parte ogni algebra booleana risulta criptomorfa a un particolare tipo di anello, chiamato anello booleano. La struttura può essere specificata attraverso gruppi e anelli o attraverso i reticoli in modo del tutto equivalente. Tale algebra permette di definire gli operatori logici AND (prodotto logico), OR (somma logica) e poi NOT (negazione o complementazione), la cui combinazione permette di sviluppare qualsiasi funzione booleana (per questo AND, OR e NOT costituiscono un insieme funzionalmente completo) e consente di trattare in termini esclusivamente algebrici le operazioni insiemistiche dell'intersezione, dell'unione e della complementazione, oltre a questioni riguardanti singoli bit 0 e 1, sequenze binarie, matrici binarie e diverse altre funzioni binarie. L'algebra sviluppata nel 1854 all'University College di Cork da Boole per scrivere in forma algebrica la logica delle proposizioni, assume oggi un ruolo importante in vari ambiti, in particolare nella logica matematica e nell'elettronica digitale, dove nella progettazione dei circuiti elettronici rivestono grande importanza i teoremi deducibili dagli assiomi che fondando l'algebra e in particolare si ricordi il teorema di Shannon del 1940 utilizzato per scomporre una funzione booleana complessa in funzioni più semplici, o per ottenere un'espressione canonica da una tabella della verità o da un'espressione non canonica. Indice 1 Definizione formale 1.1 Legge di dualità 1.2 Complementi di 0 e 1 1.3 Convoluzione 1.4 Elementi neutri 1.5 Assorbimento del complemento (secondo teorema dell'assorbimento) 1.6 Teorema dell'elemento unico 1.7 Principio di eliminazione 2 Funzioni booleane 2.1 Funzione duale 3 Basi 3.1 Reticolo 3.2 Anello 3.3 Sheffer stroke 4 Operatori booleani

Upload: gabinga

Post on 24-Dec-2015

244 views

Category:

Documents


4 download

DESCRIPTION

Description of Boole's Algebra.

TRANSCRIPT

Page 1: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 1/18

Algebra di BooleDa Wikipedia, l'enciclopedia libera.

In matematica, informatica ed elettronica, l'algebra di Boole, anche detta algebra booleana o reticolobooleano, è un'algebra astratta che opera essenzialmente con i soli valori di verità 0 e 1. In unaformulazione più generale, l'algebra booleana si fonda su un insieme K che non comprende solo i valori 0e 1; tuttavia questa struttura algebrica nasce per elaborare matematicamente espressioni nell'ambito dellalogica proposizionale

Matematicamente si dice algebra di Boole un qualunque reticolo dotato di proprietà, quali la distributività,l'esistenza di minimo e massimo e l'esistenza del complemento: l'algebra booleana risulta criptomorfa, cioèassociata biunivocamente e in modo da risultare logicamente equivalente, a un insieme parzialmenteordinato reticolato. D'altra parte ogni algebra booleana risulta criptomorfa a un particolare tipo di anello,chiamato anello booleano. La struttura può essere specificata attraverso gruppi e anelli o attraverso ireticoli in modo del tutto equivalente.

Tale algebra permette di definire gli operatori logici AND (prodotto logico), OR (somma logica) e poiNOT (negazione o complementazione), la cui combinazione permette di sviluppare qualsiasi funzionebooleana (per questo AND, OR e NOT costituiscono un insieme funzionalmente completo) e consente ditrattare in termini esclusivamente algebrici le operazioni insiemistiche dell'intersezione, dell'unione e dellacomplementazione, oltre a questioni riguardanti singoli bit 0 e 1, sequenze binarie, matrici binarie ediverse altre funzioni binarie.

L'algebra sviluppata nel 1854 all'University College di Cork da Boole per scrivere in forma algebrica lalogica delle proposizioni, assume oggi un ruolo importante in vari ambiti, in particolare nella logicamatematica e nell'elettronica digitale, dove nella progettazione dei circuiti elettronici rivestono grandeimportanza i teoremi deducibili dagli assiomi che fondando l'algebra e in particolare si ricordi il teorema diShannon del 1940 utilizzato per scomporre una funzione booleana complessa in funzioni più semplici, oper ottenere un'espressione canonica da una tabella della verità o da un'espressione non canonica.

Indice

1 Definizione formale1.1 Legge di dualità1.2 Complementi di 0 e 11.3 Convoluzione1.4 Elementi neutri1.5 Assorbimento del complemento (secondo teorema dell'assorbimento)1.6 Teorema dell'elemento unico1.7 Principio di eliminazione

2 Funzioni booleane2.1 Funzione duale

3 Basi3.1 Reticolo3.2 Anello3.3 Sheffer stroke

4 Operatori booleani

Page 2: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 2/18

4.1 NOT4.2 Buffer4.3 AND4.4 OR4.5 XOR4.6 NAND4.7 NOR4.8 XNOR

5 Algebra dei circuiti6 Esempi7 Omomorfismi e isomorfismi8 Espressioni booleane9 Rappresentazione delle algebre booleane10 Bibliografia11 Voci correlate12 Altri progetti13 Collegamenti esterni

Definizione formale

Si vuole introdurre l'algebra di Boole considerandola come reticolo.

Si parla di algebra di Boole in riferimento a un insieme K sul quale sono definite le operazioni di sommalogica (+, OR) e prodotto logico (*,AND), cioè una tripla (K,+,*), che costituisce un reticolo in cui sonoinoltre soddisfatte la proprietà distributiva, l'esistenza del minimo e del massimo e l'esistenza delcomplemento.

Nel dettaglio si ha un'algebra di Boole quando su sono soddisfatte le seguenti proprietà:

Commutativa

Associativa

Assorbimento

Distributiva

Idempotenza

Esistenza di minimo e massimo

Esistenza del complemento

Page 3: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 3/18

Il modo in cui sono elencate le proprietà vuole mettere in evidenza la simmetria che c'è tra i due operatoriche è poi all'origine della legge di dualità e altre proprietà molto importanti. Nell'elencare gli assiomi ilcomplemento è stato indicato con un "!" (punto esclamativo) antecedente alla variabile booleana(notazione tipica della programmazione in C e C++); il complemento può anche essere indicato con untrattino sulla variabile (che è tipograficamente difficile da realizzare, anche se è la notazione migliore), conuno slash prima della variabile o addirittura con un segno meno antecedente a essa, quando non è unanotazione equivoca. Il complemento corrisponde all'operazione logica NOT.

Un'ultima osservazione riguarda il fatto che, le prime 4 proprietà riguardano i reticoli in generale, lerestanti sono proprie dell'algebra di Boole che sarà quindi indicata con la sestupla (K,+,*,!,0,1). Data laformulazione generale, da questo momento in poi ci si riferisce all'algebra primordiale che considera K=0,1, cioè l'insieme su cui si basa l'algebra di Boole è composto solamente dal minimo e dal massimo.

Si elencano ora la legge di dualità e alcune proprietà derivanti dagli assiomi ora visti con le relativedimostrazioni; oltre a queste conseguenze ci sono poi due importanti teoremi dell'algebra booleana chesono i teoremi di De Morgan e il teorema di Shannon. I teoremi che si dimostrano ora sono validi perqualsiasi "porzione di realtà" che soddisfa gli assiomi di quest'algebra astratta e in particolare sarannoapplicabili nell'algebra degli insiemi, nell'algebra della logica delle proposizioni e nell'algebra dei circuiti.

Legge di dualità

Da qualsiasi identità booleana se ne può trarre un'altra per dualità, sostituendo cioè a ogni operatore e aglielementi 0 e 1 il rispettivo duale: il duale di + è *, il duale di 0 è 1 (la dimostrazione di questo sta alprossimo paragrafo), il duale di a è in generale !a (a negato, NOT a).

Grazie a questa legge si può vedere come i 14 postulati dati per definire l'algebra booleana non sono tuttiindipendenti tra loro: in particolare si vede che PX e PX' (per X=1,...,7) sono uno il duale dell'altro.

Complementi di 0 e 1

0 e 1 sono uno il complementare dell'altro: per dimostrarlo basta verificare la definizione di complemento,cioè che

Si vede immediatamente che

applicando rispettivamente la proprietà del minimo e quella del massimo e il teorema ora enunciato risultacosì dimostrato.

Si nota che, per come è strutturata quest'algebra, questa dimostrazione ha permesso di dimostrare a partiredagli assiomi che l'elemento neutro esiste ed è unico (l'esistenza non è quindi postulata e l'unicità è insitanell'esistenza essendo solo 2 i valori con cui sta lavorando, cosa non vera per altri tipi di algebra e altrestrutture algebriche!).

Convoluzione

Negando due volte lo stesso elemento si ottiene l'elemento stesso (logica aristotelica: una doppianegazione corrisponde a un'affermazione).

Page 4: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 4/18

Per dimostrarlo basta considerare l'assioma di esistenza del complemento considerato su due elementi a eb=!a:

Essendo valida la proprietà commutativa e siccome il complemento esiste unico, se ne deduce facilmenteche , che è quello che si voleva dimostrare.

Elementi neutri

0 è l'elemento neutro della somma e 1 è l'elemento neutro del prodotto.

Per la dimostrazione basta sfruttare la proprietà dell'assorbimento grazie alla quale si deduce che:

Ora, sfruttando la proprietà del massimo e minimo per la quale a*0=0 e a+1=1, si deduce facilmente che:

che è quello che si doveva dimostrare.

Assorbimento del complemento (secondo teorema dell'assorbimento)

L'assorbimento del complemento dice che

Per dimostrarlo basta applicare la proprietà distributiva secondo la quale:

dopodiché, notando che a+!a=1 e che 1 è l'elemento neutro del prodotto logico risulta dimostrato ilteorema.

Per la legge di dualità si capisce anche che esiste un teorema duale a questo che sarà:

Questo teorema può essere preso per vero accettando la validità della legge di dualità oppure può esseredimostrato in modo del tutto analogo al precedente. Si nota che, nello scrivere l'espressione duale, si èdovuta rispettare la precedenza di applicazione delle operazioni e perciò le parentesi intorno ad a+!b dellaseconda espressione sono necessarie!

Teorema dell'elemento unico

Se e , allora y è unico (o anche x è unico perché si vede che, essendo valida laproprietà commutativa, il ruolo di x e y nelle espressioni è lo stesso!).

Per la dimostrazione si suppone per assurdo che esistano due valori distinti y e z che soddisfano le dueespressioni, e cioè

Page 5: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 5/18

Essendo anche che

si è ottenuto che

Nell'ultimo passaggio si è sfruttato il principio di equivalenza delle eguaglianze e non si è semplificato lax, cosa che non è stata dimostrata e non può essere dimostrata in quest'algebra. Allora, quello che si ha oraè che

Moltiplicando membro a membro e utilizzando la proprietà distributiva si ha:

cioè y=z e perciò l'elemento che soddisfa le due relazioni scritte sopra è unico.

Principio di eliminazione

Come si è accennato prima, nell'algebra di Boole non valgono i principi di eliminazione, cioè non valeche:

Vale che y=z solamente se queste due espressioni ora scritte valgono contemporaneamente!

L'unica cosa che si può dire invece nel caso in cui valga solo la prima espressione è che:

Funzioni booleane

Per approfondire, vedi Funzione booleana.

L'algebra di Boole è la trattazione dell'algebra universale a due stati e dei modelli di tale teoria, dettialgebre booleane. L'algebra universale si occupa di studiare la famiglia di operazioni su un insieme, dettoinsieme fondamentale della famiglia algebrica, e nel caso della struttura algebrica booleana questocontiene i soli valori 0 e 1. In pratica le algebre booleane si occupano della trattazione delle funzionibooleane di cui ora si accennano le nozioni principali: lo studio di queste funzioni è fondamentale oggi perlo studio di circuiti e reti logiche, perciò se ne possono vedere subito gli scopi pratici, ma l'importanza diqueste strutture algebriche non si limita solo a questo perché è anche fondamentale nello studio delleproposizioni e dell'insiemistica, che sono argomenti un po' più astratti ma altrettanto validi e importanti.

Il numero degli argomenti che richiede una operazione definita sull'insieme fondamentale è detto arietà(un'addizione ad esempio è un'operazione di arietà 2, anche detta operazione binaria): un'operazione su0,1 di arietà n può essere applicata a ognuno dei 2n possibili valori dei suoi n argomenti (cioè bastacalcolare le disposizioni di 2 elementi su n posti!), ad esempio se si ha un'operazione di arietà 3, dato cheK=0,1, gli argomenti possibili sono 000,001,010,011,100,101,110,111 che sono 8.

Page 6: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 6/18

Per ogni scelta di argomenti l'operazione può produrre i soli risultati 0 e 1 e per questo ci sono 22n

operazioni di n argomenti: questo numero corrisponde quindi al numero totale di funzioni possibili di nvariabili nell'algebra booleana.

L'algebra a due stati possiede 2 operazioni con nessun argomento (220) che restituiscono i valori 0 e 1

senza considerare nessun argomento, e 4 operazioni con un solo argomento(221): le operazioni possibili

sono due (21), l'identità e la negazione e perciò in totale le operazioni sono 4 in quanto si ha 0→0 (id.),0→1 (neg.), 1→0 (neg.), 1→1 (id.). Vi sono poi 16 operazioni binarie, 256 operazioni ternarie, 65.536operazioni quaternarie e così via.

Siccome l'algebra di cui sta parlando è fondata su un insieme finito, una funzione può essere rappresentataoltre che in forma algebrica (cioè composizione di AND, OR e NOT), in forma tabellare, cioè con unatabella in cui a ogni composizione delle variabili "di input" (usando una terminologia più informatica) si facorrispondere l'uscita (o anche le uscite): tutte le funzioni, anche di altre algebre, possono in teoria essererappresentate tramite tabelle ma se l'insieme su cui è fondata l'algebra è infinito (ad esempio l'insieme deinumeri reali) non è un modo comodo per studiare la funzione; per l'algebra booleana usare le tabelle è unmodo utile per studiare le funzioni e ad esempio permette facilmente la costruzione di circuiti e retilogiche nelle applicazioni elettroniche. Un esempio di tabelle si ha considerando operazioni binarie che siè già visto essere 16:

A B f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 f13 f14 f15 f160 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 10 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 11 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 11 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Una famiglia, detta anche indice, è indicizzata da un insieme di indici, che nel caso di una famiglia dioperazioni costituenti un'algebra sono detti simboli dell'operazione e costituiscono il linguaggiodell'algebra in oggetto. L'operazione indicizzata da un dato simbolo è detta interpretazione di tale simbolo,e ogni simbolo definisce il numero univoco di argomenti delle rispettive interpretazioni possibili. Nel casoconsiderato vi è una corrispondenza biunivoca tra simbolo e interpretazione. L'algebra di Boole ha tantisimboli quante sono le operazioni possibili detti simboli di operazione booleana, anche se pocheoperazioni hanno simboli convenzionali, quali ! per la negazione, + per la congiunzione e * per ladisugiunzione. In generale si indica con nfi l'i­esimo simbolo di n argomenti. Nell'ultimo esempioconsiderato invece si dà un simbolo per ognuna delle 16 funzioni possibili o anche è possibile esprimereogni funzione come opportuna combinazione dei simboli convenzionali fondamentali, cioè AND (*), OR(+) e NOT (!).

Funzione duale

Data una funzione in qualsiasi forma si definisce funzione duale di e si indica con una funzione che ha per forma la forma duale di , ad esempio:

La forma duale deve rispettare le precedenze di applicazione dell'operazione della forma di partenza, perquesto motivo, laddove non c'erano delle parentesi perché la AND ha precedenza sulla OR, nel momentoin cui la AND diventa OR e la OR diventa AND, può esserci bisogno di parentesi.

Page 7: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 7/18

Un'altra osservazione molto importante è che le variabili, e non le costanti 0 e 1, possono anche non esserenegate perché comunque la variabile dovrà assumere tutti i valori possibili e perciò, che ci sia o meno lanegazione, la funzione non cambia: nel caso visto prima allora la funzione duale può anche essere scrittacome

dove Si nota che la costante è stata negata! Questa osservazione può essere importante nel momento in cuisi va a progettare una rete logica perché significa risparmiare porte NOT, o anche in generale,nell'espressione algebrica è sempre utile avere operazioni in meno da fare.

Basi

Un insieme funzionalmente completo è un insieme di operazioni la cui composizione permette di otteneretutte le operazioni appartenenti all'algebra e a volte ci si riferisce a questi con il termine base, usato inaccezione diversa rispetto alle basi di spazi vettoriali. Le tre principali basi usate nell'algebra booleanasono:

Il reticolo, una base logica introdotta nel diciannovesimo secolo da George Boole, Charles SandersPeirce e altri matematici che cercavano una formalizzazione algebrica dei processi logici.L'anello booleano, una base (non aritmetica) introdotta nel ventesimo secolo da Ivan IvanovichZhegalkin e Marshall Stone che proviene dall'algebra astratta.La base NAND, originata dal fatto che tramite l'operazione di NAND è possibile ottenere tutte leoperazioni sull'insieme 0,1. Tale base è utilizzata in particolare nella configurazione dei circuitilogici in elettronica digitale.

Gli elementi comuni a reticolo e anello sono le costanti 0 e 1 e un'operazione binaria associativa ecommutativa, che nella base del reticolo è detta incontro, dal termine inglese meet, e denotata tra dueelementi x e y dal simbolo x∧y, mentre nella base dell'anello è detta moltiplicazione e denotata xy. La basedel reticolo ha inoltre le operazioni algebriche di unione x∨y e complemento ¬x, mentre la base dell'anelloha l'ulteriore operazione (non aritmetica) di addizione x⊕y o x+y.

Reticolo

Nella base del reticolo a un'algebra booleana (A, , ) si associa un insieme parzialmente ordinato (A, ),definendo:

che è anche equivalente a

È possibile anche associare un'algebra booleana a un reticolo distributivo (A, ), considerato comeinsieme parzialmente ordinato, dotato di elemento minimo 0 e di elemento massimo 1, in cui ognielemento x ha un complementare tale che

e

Page 8: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 8/18

Qui e sono usati per denotare l'inf e il sup di due elementi. Se i complementi esistono, allora sonounici.

Anello

La base dell'anello della generica algebra booleana (A, , ) è definita come (A, +, *), definendo a + b :=(a b) ( b a ). In tale anello l'elemento neutro per la somma coincide con lo 0 dell'algebrabooleana, mentre l'elemento neutro della moltiplicazione è l'elemento 1 dell'algebra booleana. Questoanello ha la proprietà che a * a = a per ogni a in A; gli anelli con questa proprietà sono chiamati anellibooleani.

Viceversa, assegnato un anello booleano A, esso può essere trasformarlo in un'algebra booleana definendox y = x + y − x y e x y = x y. Poiché queste due operazioni sono l'una l'inversa dell'altra, si puòaffermare che ogni anello booleano è criptomorfo di un'algebra booleana e viceversa. Inoltre, una funzionef : A B è un omomorfismo tra algebre booleane se e soltanto se è un omomorfismo tra anelli booleani.La categoria degli anelli booleani e delle algebre booleane sono equivalenti.

Un anello ideale dell'algebra booleana A è un sottoinsieme I tale che per ogni x, y in I si ha x y in I e perogni a in A a x in I. Questa nozione di ideale coincide con la nozione di anello ideale negli anellibooleani. Un ideale I di A è detto primo se I A e se a b in I implica sempre a in I o b in I. Un ideale Idi A è detto massimale se I A e se l'unico ideale proprio contenente I è A stesso. Questa notazionecoincide con la notazione teorica del ideale primo e ideale massimale nell'anello booleano A.

Il duale di un ideale è un filtro. Un filtro dell'algebra booleana A è un sottoinsieme F tale che per ogni x, yin F si ha x y in F e per ogni a in A se a x = a allora a è in F.

L'operazione di complementazione * applicata ai sottoinsiemi manda dunque gli ideali in filtri e viceversa:se B è un'algebra booleana e un suo ideale (proprio), allora è il filtro(proprio) duale di I. Se invece è un filtro (proprio), l'ideale (proprio)duale di F.

Sheffer stroke

La base Sheffer stroke o NAND si basa sulle operazioni NOT e AND, tramite le quali è possibile otteneretutte le operazioni booleane. Un'algebra booleana può essere definita sia da NOT e AND sia da NOT eOR, essendo possibile definire OR attraverso NOT e AND così come AND attraverso NOT e OR:

La collezione di tutti i sottoinsiemi di un dato insieme, ovvero l'insieme delle parti o insieme ambiente,munita delle operazioni di unione, intersezione e complementazione di insiemi, che giocanorispettivamente il ruolo di OR, AND e NOT, costituisce un'algebra booleana.

Più formalmente, se B è un insieme formato da almeno 2 elementi, l'algebra booleana avente B comesupporto è la struttura algebrica costituita da B, da due operazioni binarie su B, OR e AND, daun'operazione unaria NOT su B e dall'elemento 0 di B, i quali godono delle seguenti proprietà:

Simmetria di AND: Simmetria di OR: Involuzione di NOT: Leggi di De Morgan:

Page 9: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 9/18

L'insieme B è inoltre limitato inferiormente, essendo:

L'elemento 1 è definito come la negazione, o il complementare, dello 0: 1 := NOT(0). L'insieme B èdunque limitato superiormente, essendo:

e in particolare

0 AND 1 = 0 ; 0 OR 1 = 1

Si definisce inoltre, come operazione derivata dalle precedenti, l'operatore binario OR esclusivo, denotatoXOR:

In questa algebra all'operatore XOR corrisponde la differenza simmetrica:

In elettronica la porta logica NAND è costituita da n ingressi e un'uscita che si porta a livello 0 solo se glin ingressi si portano a livello 1. È corrispondente alla connessione in serie di una porta AND e di unaNOT.

Operatori booleani

Per approfondire, vedi Porta logica.

Si è visto che gli operatori dell'algebra booleana possono essere rappresentati in vari modi, ma spesso sonoscritti semplicemente come AND, OR e NOT che è la scrittura che utilizziamo ora per parlare deglioperatori booleani. Nella descrizione dei circuiti, possono anche essere usati NAND (NOT AND), NOR(NOT OR) e XOR (OR esclusivo).

Le diverse simbologie per rappresentare gli operatori sono scelte in base al campo in cui si lavora: imatematici usano spesso il simbolo + per l'OR, e × o * per l'AND, in quanto per alcuni versi questioperatori lavorano in modo analogo alla somma e alla moltiplicazione. La negazione NOT vienerappresentata spesso da una linea disegnata sopra l'argomento della negazione, cioè dell'espressione chedeve essere negata. Oppure in informatica si utilizza il simbolo | o || per l'OR, & o && per l'AND, e ~ o !per NOT (es. A OR B AND NOT C equivale a A|B & ~C oppure a A+B*!C). Se ci riferisce agli operatoricon i simboli di somma e moltiplicazione e poi intende la negazione come se fosse una "elevazione apotenza", è facile da ricordare l'ordine di applicazione degli operatori: prima si applicano le negazioni, poile AND e poi le OR.

Nella progettazione di circuiti elettronici, vengono utilizzati anche gli operatori brevi NAND (ANDnegato), NOR (OR negato) e XNOR (XOR negato): questi operatori, come XOR, sono delle combinazionidei tre operatori base e vengono usati solo per rendere la notazione più semplice.

Operatori:

NOT ­ simboli alternativi: x, ~, ¬, ! (in C e C++)AND ­ simboli alternativi: *, , &, && (in C e C++), BUT (usato nella logica booleana insieme alNOT)

Page 10: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 10/18

OR ­ simboli alternativi: +, , |, || (in C e C++)XOR ­ simboli alternativi: ⊕, , ∨, ^, EOR, orrNAND ­ simbolo alternativo: ↑NOR ­ simbolo alternativo: ↓XNOROUI

Valori:

vero ­ simboli alternativi: true, 1, ON, SI (YES), altofalso ­ simboli alternativi: false, 0, OFF, NO, basso

In elettronica digitale viene definito vero un bit 1, sia in Input sia in Output, che di solito assume il valoredi 5 V, mentre viene definito falso un bit 0, sia in Input sia in Output, che assume il valore di 0 V.

Di seguito sono indicati gli operatori più comuni e le rispettive porte logiche:

NOT

Per approfondire, vedi Invertitore.

L'operatore NOT restituisce il valore inverso a quello in entrata. Una concatenazione di NOT èsemplificabile con un solo NOT in caso di dispari ripetizioni o con nessuno nel caso di pari.Inoltre la portalogica NOT possiede una sola variabile binaria.

A NOT A0 11 0

Spesso, al fine di semplificare espressioni complesse, si usano operatori brevi che uniscono l'operazione diNOT ad altre: questi operatori sono NOR (OR + NOT), NAND (AND + NOT), XNOR (XOR + NOT). Lanegazione, in questi casi, viene applicata dopo il risultato dell'operatore principale (OR, AND, XOR).

Il simbolo di una porta NOT è

Buffer

Buffer è la negazione del risultato dell'operazione NOT; restituisce il valore uguale a quello in entrata. IlBuffer non è un vero e proprio operatore, poiché in realtà non manipola l'informazione che riceve, bensì lalascia passare invariata; il Buffer dunque è semplificabile con un collegamento privo di operatori.

A Buffer A0 01 1

Il simbolo di una porta Buffer è:

Page 11: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 11/18

composta da un NOT in serie a un altro NOT.

La ragione per cui si parla di questo "pseudo­operatore" è data da questioni di sincronia dei segnali:quando si tratta di circuiti e reti logiche in modo più approfondito si rende necessario considerare anche iltempo in cui il segnale arriva e l'elemento buffer viene interpretato in questi casi come un ritardo applicatoa un certo segnale.

AND

L'operazione AND dà come valore 1 se tutti gli operandi hanno valore 1, mentre restituisce 0 in tutti glialtri casi come ad esempio quando una porta è alta mentre le altre sono basse e può essere messa in serie.Tale operazione è anche detta prodotto logico. Di seguito la tabella rappresenta l'operatore AND nel casodi due entrate, ma la definizione data ora è generalizzata a n ingressi:

A B A AND B0 0 00 1 01 0 01 1 1

Siccome questa operazione gode della proprietà associativa, è possibile realizzare un'operazione logicaAND con un numero di proposizioni arbitrarie concatenando varie AND a due ingressi, per esempio:

Nei circuiti digitali, la porta logica AND è un meccanismo comune per avere un segnale di vero se uncerto numero di altri segnali sono tutti veri.

Nella teoria degli insiemi corrisponde all'intersezione.

Il simbolo di una porta AND è:

OR

L'operazione logica OR restituisce 1 se almeno uno degli elementi è 1, mentre restituisce 0 in tutti gli altricasi. Tale operazione è anche detta somma logica. Di seguito la tabella rappresenta l'operatore OR nel casodi due entrate, ma la definizione data ora è generalizzata a n ingressi:

A B A OR B0 0 00 1 11 0 11 1 1

Page 12: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 12/18

Siccome questa operazione gode della proprietà associativa, è possibile realizzare un'operazione logica ORcon più ingressi concatenando varie OR a due ingressi, per esempio:

Nei circuiti digitali, la porta logica OR è un meccanismo comune per avere un segnale alto se almeno unsegnale è alto e un segnale basso se e solo se tutti i segnali sono bassi.

Nella teoria degli insiemi corrisponde all'unione.

Il simbolo di una porta OR a due ingressi è:

XOR

L'operatore XOR, detto anche EX­OR, OR esclusivo o somma modulo 2, restituisce 1 se e solo se ilnumero degli operandi uguali a 1 è dispari, mentre restituisce 0 in tutti gli altri casi. La tabella rappresentail caso in cui gli operatori siano 2, poi in generale ci si riferisce a questo operatore come operatore didisparità.

A B A XOR B0 0 00 1 11 0 11 1 0

Nella teoria degli insiemi corrisponde alla differenza simmetrica. Per passare nella forma canonica SP(somma di prodotti) basta applicare la regola:

A⊕B

dove ⊕ è il simbolo di XOR.

Il simbolo di una porta XOR è:

NAND

L'operatore NAND, la negazione del risultato dell'operazione AND, restituisce 0 se e solo se tutti glielementi sono 1, mentre restituisce 1 in tutti gli altri casi.

Page 13: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 13/18

A B A NAND B0 0 10 1 11 0 11 1 0

Il simbolo di una porta NAND è:

composta da un NOT in serie a un AND.

Utilizzando le leggi di De Morgan, è possibile convertire una porta OR in NAND. Vale, dunque, laseguente relazione:

NOR

L'operatore NOR, la negazione del risultato dell'operazione OR, restituisce 1 se e solo se tutti gli elementisono 0, mentre restituisce 0 in tutti gli altri casi.

A B A NOR B0 0 10 1 01 0 01 1 0

Il simbolo di una porta NOR è:

composta da un NOT in serie a un OR.

Utilizzando le leggi di De Morgan, è possibile convertire una porta AND in NOR. Vale, dunque, laseguente relazione:

XNOR

L'operatore XNOR, detto anche EX­NOR o EQU, è la negazione del risultato dell'operazione XOR; nellasua versione a due elementi restituisce 1 se tutti gli elementi sono uguali a 1 oppure se tutti gli elementisono uguali a 0. Questo operatore viene generalizzato a n ingressi come operatore di parità, cioè èun'operazione che restituisce il valore 1 se il numero di 1 in ingresso è pari.

Page 14: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 14/18

A B A XNOR B0 0 10 1 01 0 01 1 1

Il simbolo di una porta XNOR è:

composta da un NOT in serie a un XOR.

Algebra dei circuiti

L'Algebra di Boole si presta bene allo studio degli insiemi, delle proposizioni e dei circuiti. Ci si vuolesoffermare su come quest'algebra diventa uno strumento per l'analisi e la sintesi delle reti di commutazione(in elettrotecnica il termine viene usato per indicare un cambio d'ordine della chiusura di due o più contattielettrici, in telecomunicazioni ha un'accezione diversa).

L'algebra booleana consente di descrivere in forma algebrica le funzioni dei circuiti componenti e dellereti, fornendo altresì i metodi per la realizzazione del progetto logico: è stabilita quindi una corrispondenzabiunivoca fra espressioni algebriche e reti di commutazione. La corrispondenza è facilmente realizzabileavendo già parlato di #Operatori booleani: si parte ad esempio da un'espressione algebrica per realizzareun circuito, basta sostituire a ogni operatore logico la corrispondente porta logica e applicare agli ingressidi queste opportunamente le variabili booleane in gioco; inoltre, avendo visto l'esistenza di porte logichecome ad esempio la XOR, che sono combinazioni degli operatori booleani elementati AND, OR e NOT, èpossibile manipolare opportunamente un'espressione algebrica in modo da utilizzare il minor numeropossibile di porte nella realizzazione del circuito. Viceversa un circuito può essere espresso da unafunzione y=f(x1,x2,...xn) dove y è l'uscita, le x sono le entrate e la funzione f è una combinazione di portelogiche.

Nell'algebra dei circuiti si associa il valore 0 al livello logico basso e il valore 1 al livello logico alto. Inuna visione semplificata il valore 0 corrisponde nella pratica a una tensione di 0 V mentre il valore 1corrisponde a 5 V, oppure 3,5 V o addirittura 1,5 V: il motivo per cui si preferisce associare il valore alto a5 V piuttosto che a 1,5 V è che la tensione nella pratica non è stabile e perciò il valore 0 si può"confondere" con il valore 1 causando una perdita di informazione; d'altra parte però, una tensione di 1,5V per indicare il valore alto significa minor dispendio di energia ed è un vantaggio molto significativo.

Volendo approfondire il discorso sui valori logici alto e basso e sulla loro realizzazione pratica, si può direche, a seconda della tecnologia ci sono diversi range di valori possibili: per esempio, la tecnologia TTLassocia il valore logico 0 a una tensione compresa tra 0 V e 0,8 V, tra 0 e 2 V c'è una banda vietata, cioèun insieme di valori che non devono essere asunti, e il valore logico 1 è associato al range di valori 1,5 V ­5 V. Come si è accennato, la tecnologia odierna spinge sull'abbassare la soglia dei 5 V cercando distabilizzare sempre di più il potenziale.

Esempi

Page 15: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 15/18

Questa algebra ha applicazioni nella logica, dove 0 è interpretato come "falso", 1 come vero, è OR, èAND e è "NOT". Le espressioni che coinvolgono le variabili e le operazioni booleane rappresentanoforme dichiarative; due espressioni possono essere equivalenti utilizzando i suddetti assiomi se e soltantose le forme dichiarative corrispondenti sono logicamente equivalenti. L'algebra booleana binaria, inoltre, èusata per il disegno di circuiti nell'ingegneria elettronica; qui 0 e 1 rappresentano le due condizionidifferenti di un bit in un circuito digitale, in genere bassa e alta tensione. I circuiti sono descritti daespressioni che contengono delle variabili e due espressioni sono uguali per tutti i valori delle variabili se esoltanto se i circuiti corrispondenti hanno la stessa funzione di trasferimento. Ogni combinazione deisegnali in ingresso in uscita dal componente può essere rappresentata da un'adeguata espressione booleana

L'algebra booleana a due stati è inoltre importante nella teoria generale delle algebre booleane, perchéun'equazione che coinvolge parecchie variabili è generalmente vera in ogni algebra booleana se e soltantose è vera nell'algebra booleana a due stati. Ciò può, per esempio, essere usato per indicare che le seguentileggi (teorema del consenso) sono generalmente valide in ogni algebra booleana:

Il raggruppamento di un generico insieme S, forma un'algebra booleana con le due operazioni =unione e = intersezione. Il più piccolo elemento 0 è l'insieme vuoto e il più grande elemento 1 èl'insieme S stesso.

L'insieme di tutti i sottoinsiemi di un insieme S che sono limitati è un'algebra booleana.

Per ogni numero naturale n, l'insieme di tutti i divisori positivi di n forma un reticolo distributivo sescrive per a divide b. Questo reticolo è un'algebra booleana se e soltanto se per ogni n non visono divisori quadrati. Il più piccolo elemento, che in generale si indica con lo 0, in questa algebrabooleana è il numero naturale 1; mentre l'elemento che usualmente indica con l'1 in questi insiemi èl'elemento "n".

Altri esempi di algebre booleane sono dati dagli spazi topologici: se X è uno spazio topologico,allora l'insieme di tutti i sottoinsiemi di X che siano aperti o chiusi formano un'algebra booleana conle operazioni = unione e = intersezione.

Se R è un anello arbitrario dove è definito un insieme idempotente tipo:

A = a in R : a2 = a e a x = x a per ogni x in R

L'insieme A diventa un'algebra booleana con le operazioni a b = a + b − a b e a b = a b.

Omomorfismi e isomorfismi

Un omomorfismo tra due algebre booleane A e B è una funzione f: A B 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) = 04. f(1) = 1

Da queste proprietà segue anche f( a) = f(a) per ogni a in A. Ogni algebra booleana, con la definizionedi 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

Page 16: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 16/18

isomorfe. Dal punto di vista della teoria dell'algebra booleana, due algebre booleane isomorfe non sonodistinguibili, ma differiscono soltanto nella notazione dei loro elementi.

Espressioni booleane

All'interno di ciascuna algebra di Boole, dato un insieme di variabili e le operazioni correlate, è possibiledefinire delle espressioni che vengono ad assumere un determinato valore ottenibile anche sotto formediverse. Possono esistere cioè delle espressioni che, pur essendo differenti, si rivelino equivalenti. Oltre alfatto che le espressioni booleane assumono una particolare importanza per quanto riguarda il calcoloproposizionale, in cui le variabili sono proposizioni legate tramite congiunzioni, disgiunzioni, negazioni ealtre operazioni più complesse, possono esistere moltissime altre espressioni, accomunate sempre dalleproprietà e dagli assiomi booleani, nelle quali si sostituisce spesso l'operazione + (comunemente dettasomma) con ∨ e * (comunemente detta prodotto) con ∧ e in cui la complementazione è indicata colsimbolo ' .

Per poter presentare nel modo più efficiente una espressione booleana, la si riduce in somma di prodottifondamentali o forma normale disgiuntiva. Un prodotto fondamentale è un prodotto in cui ciascunavariabile, o il suo complemento, appaia una sola volta e rigorosamente fuori da parentesi ocomplementazioni complesse.Ad esempio, date le variabili x, y, z all'interno di un'algebra di Boole, sono prodotti fondamentali

P(x,y,z) = xyP(x,y,z) = x'yz'

Mentre non sono prodotti fondamentali

yyzyy'z(xy)'

È così possibile avere una somma di prodotti fondamentali, forma in cui ogni espressione può essereridotta, ma che non è unica. Un esempio è: xy + xz + z'. Nel momento in cui ogni singola variabile, o ilsuo complemento, siano contenuti in tutti i prodotti fondamentali della forma normale disgiuntiva, si haallora una somma di prodotti fondamentali completa o forma normale disgiuntiva completa. Tale scritturaè unica, pertanto se due espressioni sono equivalenti avranno la stessa forma normale disgiuntivacompleta.

Se si desidera invece che un'espressione sia scritta nel modo più corto possibile, allora la si esprime insomma di implicanti prime o minimali (Minimizzazione di Quine­McQluskey). Un'implicante prima (ominimale) rispetto a un'espressione è un prodotto fondamentale che non altera l'espressione se sommatoper intero a essa, cioè restituisce un risultato equivalente a quella iniziale; sommando un prodottostrettamente contenuto nell'implicante, tuttavia, non si ottiene un'equivalenza.Per individuare tutte le implicanti prime, esistono varie tecniche, tra cui il metodo del consenso, che si basasull'applicazione ciclica delle proprietà di assorbimento, idempotenza, involuttività e di De Morganaccompagnate a ogni passo dall'opportuna addizione di un consenso. Dati due prodotti fondamentali, sesolo e solo se una variabile appare in uno di essi non negata e nell'altro negata si chiama consenso ilrisultato della moltiplicazione delle restanti variabili. Ad esempio:

dati P = xyz, Q = x'z il consenso sarà C = yzz = yzdati P = xy' Q= xy il consenso sarà C = xx = xdati P = xyz e Q = x'yz' non esiste consenso, in quanto due diverse variabili appaiono una voltanegate e una volta no.

Page 17: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 17/18

La somma di implicanti prime è unica, pertanto due espressioni equivalenti avranno la stessa. Nelmomento in cui, completando ogni singola implicante prima, l'apporto all'espressione di una o più di esse èinutile in quanto contenuta nelle altre, la si può eliminare ottenendo la più essenziale delle scritture, laforma minimale. Essa, pur essendo comoda, ha l'inconveniente di non essere unica, e dunque di nonconsentire l'individuazione di equivalenze tra più espressioni.

Rappresentazione delle algebre booleane

Si può dimostrare che ogni reticolo booleano finito è isomorfo al reticolo booleano di tutti i sottoinsiemi diun insieme finito. Di conseguenza, il numero di elementi di ogni reticolo booleano finito ha un sostegnoche contiene un numero di elementi uguale a una potenza di 2.

Marshall Stone ha enunciato il celebre teorema di rappresentazione per le algebre booleane dimostrandoche ogni algebra booleana "A" è isomorfa a tutte le algebre booleane aperte­chiuse in un certo spaziotopologico compatto non connesso di Hausdorff

Bibliografia

(EN) Steven Givant e Paul Halmos, Introduction to Boolean Algebras, Undergraduate Texts inMathematics, Springer, 2009, ISBN 978­0­387­40293­2.(EN) George Boole, An Investigation of the Laws of Thought, Prometheus Books [1854], 2003,ISBN 978­1­59102­089­9.(EN) Steven Givant e Paul Halmos, Introduction to Boolean Algebras, Undergraduate Texts inMathematics, Springer, 2009, ISBN 978­0­387­40293­2.(EN) John A. Camara, Electrical and Electronics Reference Manual for the Electrical and ComputerPE Exam, www.ppi2pass.com, 2010, p. 41, ISBN 978­1­59126­166­7.

Voci correlate06­XX, sezione primaria dello schema di classificazione MSC 2000Algebra di insiemiDiagramma di VennForma canonicaFunzione booleanaMappa di KarnaughOperazione bit a bitPorta logicaSistema formaleSistema numerico binarioTabella della veritàTeorema dell'assorbimentoTeorema di Shannon (elettronica)Teoremi di De MorganTeoria degli insiemi

Altri progetti

Commons (https://commons.wikimedia.org/wiki/?uselang=it) contiene immagini o altri filesu Algebra di Boole (https://commons.wikimedia.org/wiki/Category:XNOR_gates?uselang=it)

Questa voce è inclusa nel libro di Wikipedia Paradossi.

Page 18: Algebra Di Boole

14/3/2015 Algebra di Boole ­ Wikipedia

http://it.wikipedia.org/wiki/Algebra_di_Boole 18/18

Collegamenti esterni

Panoramica sull'Algebra Booleana (http://wwwusers.di.uniroma1.it/~arc1/boole.pdf)Facoltà di Ingegneria Energetica ­ Univ. del Sannio ­ Elementi di Informatica: Algebra di Boole2008/2009 (http://www.ing.unisannio.it/dilucca/materiale/aa0809/Alg_boole.pdf)Corso di Laurea a distanza ­ Fondamenti di Informatica: Algebra di Boole, Operatori Logici,Teoremi Fondamentali (http://corsiadistanza.polito.it/corsi/pdf/09ASODN/4_algebra_di_boole.pdf)Descrizione dell'algebra booleana su Okpedia (http://www.okpedia.it/algebra_booleana)Algebra di Boole in Tesauro del Nuovo soggettario, BNCF, marzo 2013.

Estratto da "http://it.wikipedia.org/w/index.php?title=Algebra_di_Boole&oldid=71305765"

Categoria: Algebra di Boole | [altre]

Questa pagina è stata modificata per l'ultima volta il 13 mar 2015 alle 08:52.Il testo è disponibile secondo la licenza Creative Commons Attribuzione­Condividi allo stessomodo; possono applicarsi condizioni ulteriori. Vedi le Condizioni d'uso per i dettagli. Wikipedia® èun marchio registrato della Wikimedia Foundation, Inc.