Dott.ssa Maria Josè Zampano Dott. Paolo Ientile Alcune osrvazioni sull algebra booleana. 1. Premes. La prente relazione rapprenta una sintesi dei concetti fondamentali teorizzati da George Boole 1. Le sue teorie hanno trovato applicazione pratica con l avvento dei circuiti logici ed in particolare con l elettronica digitale. Gli operatori logici identificati da Boole fanno parte infatti delle istruzioni di tutti i linguaggi dei computer 2. George Boole è riconosciuto come il fondatore della logica matematica, ttore nato dal suo interes sia per la matematica sia per la logica e finalizzato alla conversione delle parti della logica in modelli matematici. Boole, studioso di matematica oltre che di numero lingue, dopo diver pubblicazioni a partire dal 1841 per il The Cambridge Mathematial Journal, nel 1847 scris quella che è sicuramente la sua opera più famosa, The Mathematical Analysis of Logic. Tale opera si concentra sull analisi del rapporto tra matematica e logica al fine di costruire un associazione tra questi due rami. L assunto di ba è la considerazione di Boole che alla logica, quale scienza delle leggi dei simboli con cui vengono espressi i pensieri, possano applicarsi le regole della filosofia algebrica al ttore della logica. Per Boole il pensiero umano si caratterizza fondamentalmente per la capacità di isolare classi di oggetti e di riferirsi ad essi con nomi o simboli che le identifichino. E pertanto possibile distinguere due momenti specifici di tale procedimento, ossia: a) il momento dell atto di elezione con il quale una clas viene individuata; b) il momento in cui si ottiene il risultato di tale atto. 1 Agazzi E.- Vassallo N. (a cura di), George Boole. Filosofia, logica, matematica, Milano, 2007. 2 L'informatica (in ingle: Computer Science) è la scienza che elabora le informazioni mediante i calcolatori. Per informazione si può intendere una «particolare associazione di dati» che porta a chi la riceve un aumento di conoscenza. I dati di per sé non portano informazione e hanno quindi un significato solo sono opportunamente organizzati. Il calcolatore elettronico può fare automaticamente diversi trattamenti sui dati. Carrera G., Automazione Navale 1, Capitolo 5, rev.11/11/06. 1
L atto di elezione si compie all interno di un contenitore generale, denominato universo (e spesso identificato con il simbolo I) 3. Le regole di ba sono: a) il risultato non cambia varia l ordine in cui si succedono due atti di elezione; b) il risultato di un atto elettivo non dipende dal modo in cui è raggruppato o classificato il soggetto 4 ; c) la ripetizione di un medesimo atto elettivo non modifica il suo risultato. Nel 1854 i propositi di Boole proguirono con la pubblicazione di An Investigation of the Laws of Thought, on Which Are Founded the Mathematical Theories of Logic and Probabilities, opera ispirata dall idea di poter esprimere i ragionamenti basati sulle leggi proprie delle operazioni mentali nel linguaggio simbolico del calcolo, istituendo una nuova metodologia nella disciplina della logica. Questo lavoro ha rapprentato un importante punto di partenza per ulteriori approfondimenti degli studi dei circuiti elettronici che trovano applicazione nella programmazione informatica. 2. L algebra Booleana. L algebra booleana, o algebra binaria, è una costruzione logico-matematica. La struttura originariamente prentata da Boole non coincide però con il ttore della matematica che oggi viene comunemente chiamata algebra booleana. Tra le principali differenze rintracciabili, si può ricordare che, nella versione originaria 5, le operazioni logiche venivano prospettate in termini binari, per cui il termine non x veniva reso con ; inoltre, solo i termini erano disgiunti era possibile effettuare la loro somma logica; non era infine teorizzata l idempotenza nella somma logica, ossia era ignorata l ipotesi, poiché valeva mmai l operazione, con la logica conguenza che. 3 Di regola, le singole operazioni di elezione sono identificate con le ultime lettere dell alfabeto; le corrispondenti maiuscole indicano invece le classi di oggetti derivate dalle operazioni di elezione. Per empio, x rapprenta l atto elettivo con cui dall universo I sono tratti e isolati gli oggetti appartenenti alla clas X, e così via. 4 Pertanto non deriva alcuna conguenza si scrive x(u + v) anziché xu + xv. 5 Boole G., L analisi matematica della logica. Introduzione di Massimo Mugnai, Serie Scientifica Universali Bollati Boringhieri, Torino, 1993. 2
Posta questa differenza, per algebra booleana s intende la rapprentazione di un insieme dotato di due operazioni binarie e di due elementi 0 e 1 in modo tale da soddisfare determinati assiomi, o ipotesi di ba: 1) regola delle leggi commutative: per ogni x e y di A si ha che e ; 2) regola delle leggi distributive: per ogni x, y e z di A si ha che e 3) per ogni x di A si ha che e 4) per ogni x di A si ha che e 5) 0 è diverso da 1. Gli assiomi ora enunciati si prentano duali 6, mentre l ultimo può definirsi autoduale. Da ciò si trae il teorema condo cui una espressione è derivabile dai predetti assiomi dagli stessi è derivabile di conguenza anche la sua espressione duale 7. È possibile a questo punto analizzare alcuni concetti la cui conoscenza si rende necessaria per la comprensione delle operazioni proprie di questo ttore. 3. Le definizioni fondamentali dell algebra booleana. a) La variabile booleana. L entità fondamentale è la variabile booleana, intendente ogni entità o grandezza che può assumere due, e solo due, stati o valori detti livelli logici. I due livelli logici vengono di solito rapprentati con i simboli 0 e 1, con la precisazione che l utilizzo di questi simboli prescinde totalmente dal significato numerico. Infatti tali livelli logici possono esre anche espressi nelle forme di vero / falso, on / off, chiuso / aperto. 6 E duale l espressione che risulta da un altra espressione nel rispetto delle guenti regole: a) al simbolo + può esre sostituito il simbolo ; b) al simbolo può esre sostituito il simbolo + ; c) al simbolo 0 può esre sostituito il simbolo 1 ; d) al simbolo 1 può esre sostituito il simbolo 0. 7 Ciò in ragione del fatto che esndo duali gli assiomi lo saranno necessariamente anche le loro derivazioni. 3
A titolo emplificativo. Una porta può esre aperta o chiusa, le due condizioni aperta e chiusa potranno esre indicate con due valori: alla prima corrisponde il valore 1, quindi vero, necessariamente la conda dovrà esre identificata con il valore 0, ossia falso. Pertanto, ove si assuma che a è una variabile booleana ne deriverà che: La grandezza variabile si rapprenta, quindi, con una lettera alfabetica (ad empio: a, b, c ) ed ad essa si associa in modo del tutto arbitrario il valore 0 oppure 1 per una situazione, e rispettivamente il valore 1 o 0 per l altra. b) Gli operatori booleani. Con il termine operatore booleano s intende la modalità di combinazione delle singole variabili booleane tale da attribuire a quest ultime un valore di tipo logico. Il sistema booleano è costruito sulla ba di alcune operazioni fondamentali: NOT, OR e AND. Da tali operatori fondamentali è poi possibile ricavarne di ulteriori: NAND, NOR, EXOR e EXNOR. Una funzione logica, definibile come la combinazione dei valori 0 e 1 in ba alle possibili condizioni delle variabili da cui la funzione stessa dipende, può esre anche rapprentata da un circuito logico dove le variabili corrispondono ai fili di ingresso, gli operatori logici sono le porte logiche e il risultato corrisponde all uscita del circuito. I dispositivi elettronici che permettono di eguire operazioni logiche su variabili booleane sono le porte logiche ( gate ). Nella guente elencazione degli operatori verranno quindi riportate anche le relative porte logiche. L operatore NOT Data una variabile a, si definisce la sua negata o complementare NOT a come gue: NOT NOT L operatore NOT viene simbolicamente rapprentato nei guenti modi tra loro alternativi: 4
1.NOT(a) 2. 3. a 4. -a Si tenga prente che tale operatore trova applicazione con riguardo ad un solo operando, l operatore unario, e il valore viene fornito in ba alla regola condo cui NOT e NOT. Quindi, il risultato corrisponderà al valore opposto a quello dell operando. La schematizzazione dell operatore NOT, ossia la porta logica NOT, viene riportata nel guente modo: L operatore OR Date due variabili a e b, si definisce la loro somma logica s, operazione OR, come gue: Tale operatore viene rapprentato con il simbolo +. L operazione identifica il valore logico 1 alla condizione che almeno una delle due variabili abbia valore logico 1. In altri termini, la somma logica, OR= oppure, significa che s=1 a oppure b valgono 1. 5
Si può ancora osrvare che si scambia 0 con 1, 1 con 0, e con +, + con, dalle definizioni della somma si ottiene un altra anch essa valida: è la cd. legge della dualità. Si tenga prente che la somma booleana ha un significato puramente logico e non aritmetico. Per quanto concerne la relativa schematizzazione, la porta OR, è raffigurata come di guito: L operatore AND Date due variabili a e b, si definisce il loro prodotto logico p, ossia operazione AND, come gue: L operatore è rapprentato dal simbolo ma può anche esre sottinteso. L operazione attribuisce il valore logico 1 alla condizione che tutte le variabili abbiano valore logico 1. In altro modo, il risultato è vero sono veri entrambi i componenti dell operazione. Il prodotto logico, AND= e e significa, quindi, che p=1 a e b valgono entrambi 1. Come già detto per la somma logica booleana, preme evidenziare che anche per il prodotto booleano il significato è puramente logico e non aritmetico. Relativamente alla schematizzazione la porta AND risulta la guente: 6
Altri operatori. Tutta l algebra booleana si sviluppa dai predetti operatori (NOT, AND e OR). Dalla combinazione di questi si traggono altri operatori di guito riportati. L operatore NAND equivale alla negazione dell operatore AND. Si applica a due operandi condo le guenti regole: 0 NAND 0 = 1 0 NAND 1 = 1 1 NAND 0 = 1 1 NAND 1 = 0 Se ne evince pertanto che il risultato sarà falso nel caso in cui entrambi gli operandi saranno veri. In sintesi Sotto forma di porta NAND: L operatore NOR corrisponde a un OR negato. Si applica anch esso a due operandi e il valore è prodotto in ba alle guenti regole: 0 NOR 0 = 1 0 NOR 1 = 0 1 NOR 0 = 0 1 NOR 1 = 0 7
In questo caso il risultato può dirsi vero affermando la falsità di entrambi gli operandi. Pertanto è equivalenti. La porta logica NOR è: L operatore EXOR si applica a due operandi. Le regole in questo caso sono: 0 EXOR 0 = 0 0 EXOR 1 = 1 1 EXOR 0 = 1 1 EXOR 1 = 0 Si potrà affermare la verità del risultato in prenza di operandi diversi tra loro. La porta logica EXOR è la guente: L operatore EXNOR è la negazione dell operatore EXOR e trova applicazione con riferimento a due operandi producendo un valore dipendente da: 0 EXNOR 0 = 1 NOT(0 + 1) = 0 1 EXNOR 0 = 0 1 EXNOR 1 = 1 8
La verità del risultato si verificherà gli operandi sono uguali tra loro. La porta logica EXNOR viene rapprentata nel guente modo: BIBLIOGRAFIA Agazzi E.- Vassallo N. (a cura di), George Boole. Filosofia, logica, matematica, Milano, 2007. Boole G., L analisi matematica della logica. Introduzione di Massimo Mugnai, Serie Scientifica Universali Bollati Boringhieri, Torino, 1993. Carrera G., Automazione Navale 1, Capitolo 5, rev.11/11/06. Olivieri L.- Ravelli E., Fondamenti di elettrotecnica ed elettronica, Padova, 1992. Wikipedia su Internet (http://it.wikipedia.org). 9