Sunteți pe pagina 1din 13

UΝIVΕRSΤIΤΑΤΕΑ ……………………..

Loсɑțiе...........

FΑСULΤΑΤΕΑ DΕ
………………………………………………………………………………..
SΡΕСIΑLIΖΑRΕΑ …………………………..

LUСRΑRΕ DE LICENȚĂ

Funcții și ecuații Booleene

Indrumător,
………………………...
Αbsolvеnt,

…………………………………

București/altă locație
2017

1
Cuprins

Introducere...................................................................................03-04

Сɑрitolul I
I. Algebre Booleene
1.1. Definția algebrei Booleene...................................................................05-07
1.2. Teoremele fundamentale ale algebrei...................................................07-10
1.3. Funcțiile logice ale algebrei..................................................................10-13

Capitolul II
II. Funcțiile Booleene
2.1. Definiția funcției Booleene...................................................................00-00
2.2. Teoremele fundamentale ale funcțiilor.................................................00-00
2.3. Minimizarea funcțiilor..........................................................................00-21

Capitolul III
III. Ecuațiile Booleene
3.1. Definiția ecuațiilor Booleene................................................................00-00
3.2. Teoremele fundamentale ale ecuațiilor.................................................00-00
3.3. Teoreme și soluții ale ecuațiilor Booleene............................................00-31

Capitolul IV
III. Aplicația soft
4.1. Subpunct................................................................................................00-00
4.2. Subpunct................................................................................................00-00
4.3. Subpunct................................................................................................00-41

Concluzii.......................................................................................42-43

Bibliografie...................................................................................44-45

2
Introducere

Lucrarea de față propune spre analiză o tematică din algebra booleeană. Algebra booleeană,
cunoscută în mediul academic și sub denumirea de Logica Booleeană este un domeniu integrat
al matematicii. Ecuațiile algebrice booleene face obiectul de studiu al logicii clasice. Studierea
acestora se realizează prin intermediul metodelor simbolice.

Baza algebrei booleene a fost pusă în anii 1850 de către filozoful și matematicianul englez
George Boole. Lucrarea prin care a argumentat științific cunoștințele despre acest domeniu, se
numește The Laws of Thought și a fost publicată în anul 1853.

Studiul prezent propune spre analiză funcțiile și ecuațiile booleene din perspectiva noilor
provocări științifice contemporane. Motivația alegerii temei rezidă tocmai din actualitatea
acesteia. Putem considera tema de actualitate datorită aplicabilității acestui segment al
matematicii în dezvoltarea de software.

Dat fiind complexitatea subiectului, lucrarea este structurată pe patru capitole. În cadrul
primului capitol am supus atenției aspectele legate de algebra booleeană, precum și elementele
specifice algebrei booleene, cum ar fi teoremele fundamentale și funcțiile logice. Primul capitol
realizează o incluziune atât aspectele definitorii cât și în cele specifice algebrei booleene.

Cel de-al doilea capitol este intercorelat cu primul și prezintă funcțiile booleene. Structura
este asemănătoare cu cea a primului capitol și va prezenta de asmeni atât aspectele
fundamentale, precum definiții și teoreme, cât și cele specifice. Un subcapitol definitoriu pentru
funcțiile boleene îl constituie cel care supune atenției minimizarea funcțiilor booleene.

Capitolul al treilea se dorește a fi un preambul al secțiunii practice, realizând o incursiune în


subiectul legat de ecuațiile booleene. Pornind de la definirea ecuațiilor booleene, se observă o
trecere în revistă atât a teoremelor cât și a soluțiilor pentru ecuațiile booleene.

Cel de-al patrulea capitol prezintă aplicabilitatea din punct de vedere practic a principalelor
aspecte teoretice prezentate în secțiunile precedente. Acest capitol descrie practic etapele
specifice realizării și implementării unei aplicații de tip software utilizând o ecuație algebrică
booleeană.

3
Studiul de față se încheie cu o sesiune de concluzii fundamentate pe întregul studiu științific.
Lucrarea se dorește a fi nu doar o simplă analiză a modului în care se aplică ecuațiile booleene
în dezvoltarea contemporană ci și un punct de plecare pentru cercetările viitoare.

Atractivitatea unui astfel de studiu constă tocmai în complexitatea acestui subiect, astfel că
o mai bună înțelegere și o aplicabilitate corectă a logicii matematice, poate contribui într-un
mod decisiv în dezvoltarea cu care se confruntă epoca contemporană.

4
Сɑрitolul I
I. Algebre Booleene

1.1. Definția algebrei Booleene

Transferul, prelucrarea și păstrarea datelor numerice sau nenumerice în interiorul unui


calculator se efectuează prin instrumentul circuitelor de comutare. Aceste circuite se
exemplifică prin faptul că expune două stări solide care se deosebesc calitativ între ele. Aceste
stări sunt puse în concordanță cu valorile binare "0" și "1" sau cu valorile logice "adevărat" și
"fals", iar pentru acest lucru se mai numesc și circuite logice. Plecând de la aceste argumente,
un domeniul al logicii matematice, mai exact știința care aplică metode matematice în
rezolvarea problemelor de logică, numite "algebra logicii" a descoperit o vastă aplicare în
analiza și sinteza circuitelor logice.
Algebra logicii are un sistem de operare cu propoziții care pot fi reale sau false. Unei
propoziții reale i se repartizează valoarea "1", iar unei propoziții false i se repartizează valoarea
"0". O propoziție nu poate fi în același timp și reală, dar și falsă, iar două propoziții sunt identice
doar din punctul de vedere al algebrei logice, dacă concomitent ele sunt reale sau false.
Propozițiile pot fi simple sau compuse, cele compuse obținându-se din cele simple prin legături
logice de tipul conjuncției Ù, disjuncției Ú sau negației Ø.
O algebră Booleene este λ={𝛽, 𝑉, . , `, 0, 1}, unde
β reprezintă o mulțime invalidă.
și
V: β x β→β · : β x β→β
și

sunt oprații pe β denumite disjuncție și, respectiv conjuncție;

este o aplicație denumită negație


' : β→β

0 și 1 reprezintă doău elemente din β cu 0 ≠ 1 în așa fel încât pentru orice x, y, z ε β, avem
următoarele:

5
𝑥 ∨ 𝑦 = 𝑦 ∨ 𝑥, (1.1)

𝑥 𝑧 = 𝑦 𝑥, (1.1′)

(𝑥 ∨ 𝑦) ∨ 𝑧 = 𝑥 ∨ (𝑦 ∨ 𝑧), (1.2)

(𝑥𝑦)𝑧 = 𝑥(𝑦𝑧), (1.2′)

𝑥 ∨ 𝑥𝑦 = 𝑥, (1.3)

𝑥(𝑥 ∨ 𝑦) = 𝑥, (1.3′)

𝑥 ∨ 𝑦 𝑧 = (𝑥 ∨ 𝑦)(𝑥 ∨ 𝑧), (1.4)

𝑥(𝑦 ∨ 𝑧) = 𝑥𝑦 ∨ 𝑥𝑧, (1.4′ )

𝑥 ∨ 1 = 1 (1.5)

𝑥0 = 0, (1.5′ )

𝑥 ∨ 𝑥 ′ = 1, (1.6)

𝑥𝑥 = 0, (1.6′ )

În consecinţă, conjuncţia şi disjuncţia sunt comutateve, ( 1.1 şi 1.1'), asociative, (1.2 şi 1.2')
şi revizuieşte legile de absorbţie, (1.3 şi 1.3'); {β, V, ·,} cu proprietăţile de la 1.1 la 1.3' sunt
denumite latice. Cu toate acestea, această latice este necesar să fie distructivă, (1.4 şi 1.4'), să
aibă element unitate, (1.5) şi element nul, (1.5'), şi fiecare element în parte să aibă un
component, (1.6 şi 1.6'). x' este denumit ca fiind componentul lui x. Pentru a înţelege mai
amănunţit definiţia, vom exemplifica mai jos:

(i) Fie 𝛽2 = {0,1} și fie V, · și ' sunt definite în felul următor

0 𝑉 0 = 0, 0 𝑉 1 = 1, 1𝑉1=1

0 · 0 = 0, 0 · 1 = 0, 1·1=1

0′ = 1, 1′ = 0

Proprietățile de la 1.1 la 1.6' și se verifică numadecât.

(ii) Fie X o mulțime nevidă și fie 𝑃(𝑋) = {𝐴, 𝐴 ⊆ 𝑋} ,mulțimea părților lui X . Se consideră
că următoarele operații uzuale cu mulțime:

𝐴 ∪ 𝐵 = {𝑥 ∈ 𝑋; 𝑥 ∈ 𝐴 𝑠𝑎𝑢 𝑥 ∈ 𝐵}

𝐴 ∩ 𝐵 = {𝑥 ∈ 𝑋; 𝑥 ∈ 𝐴 ș𝑖 𝑥 ∈ 𝐵}

𝐴′ = {𝑥 ∈ 𝑋; 𝑥 ∉ 𝐴}

6
Atunci {𝑃(𝑋),∪,∩, ′∅, 𝑋}, reprezintă o algebră Boole

(iii) În detaliu, dacă Ή⊆ 𝑃(𝑋), astfel încât:

∅ ∈ ℋ,

Α, 𝐵𝜖ℋ ⟹ 𝐴 ∪ 𝐵 ∈ ℋ,

𝐴, 𝐵 ∈ ℋ ⇒ 𝐴 ∩ 𝐵 ∈ ℋ,

𝐴 ∈ ℋ ⇒ 𝐴′ ∈ ℋ,

Atunci {ℋ,∪,∩,′ , ∅, 𝑋} semnifică o algebră Boole.

(iv) Fie ℵ = {ℬ, 𝑉,·,′ , 0,1} este o algebră Boolee, iar {ℬ,·, 𝑉,′ , 1,0} reprezintă de asemenea
algebră Boolee și aceata semnifică algebra duală asociată lui ℵ și se înregistrează cu ℵ′. Această
afirmație este una adevărată, pentru că în caracteristicile algebrei Boole, axiomele sunt grupate
în perechi modificând între ele ∨ cu ·.

1.2. Teoremele fundamentale ale algebrei

Mai sus am facut o scurtă definiție în ceea ce privește algebra Boole și aceasta poate fi
utilizată pentru analiza și sinteza unui circuit logic și redactarea ei matematică a modului de
operare. Examinarea regulilor algebrei Booleene este de un adevărată susținere în procesul de
sistematizare a expresiilor şi circuitelor logice.
Regulile pentru porţile cu o variabilă de intrare reprezintă teoreme ce fac referire la
circumstanța în care la intrarea unei porţi logice doar una dintre mărimile de intrare este
variabilă, iar cealaltă dacă ea există este constantă. Pentru a explica aceste teoreme este destul
să ne gândim la funcţiile logice şi tabelele lor de adevăr.
Dacă oricare dintre variabilele unei intrări ale unei porţi și este 0 rezultatul va fi 0.

x·0=0

Dacă o variabilă este multiplicată logic cu 1, rezultatul va avea valoarea variabilei.

7
x·1=x

O variabilă multiplicată cu ea însăşi are ca soluție valoarea variabilei.

x·x=x

Această teoremă poate fi susținută simplu dând lui x valorile logice 0 sau 1 (0.0 = 0 şi 1.1 = 1).

Rezultatul multiplicării unei variabile cu inversul ei este:

𝑥 · 𝑥̅ = 0

Rezultatul adunării unei variabile cu 0 va fi egal cu valoarea variabilei.

x+0=x

Rezultatul adunării unei variabile cu 1 va fi egal cu 1.

x+1=1

Rezultatul adunării unei variabile cu ea însăşi va fi egal cu valoarea variabilei.

x+x=x

8
Teoreme pentru porţile cu mai multe variabile de intrare

Teoremele lui DeMorgan sunt dintre cele mai esențiale teoreme ale algebrei Booleene, fiind
extrem de folositoare pentru ușurarea expresiilor în care apar sume inversate sau produse
inversate. Cele două teoreme ale lui DeMorgan sunt următoarele:

̅̅̅̅̅̅̅
(𝑥 + 𝑦) = 𝑥̅ · 𝑦̅ și

̅̅̅̅̅̅̅
𝑥 + 𝑦 = 𝑥̅ + 𝑦̅

Prima teoremă ne zice că atunci când o sumă sau de două variabile este inversată, ea se poate
calcula inversând mai întâi variabilele şi făcând apoi produsul logic al lor. A doua teoremă zice
că atunci când un produs și de două variabile este inversat, el se poate calcula inversând mai
întâi variabilele şi făcând apoi suma logică a lor. Fiecare dintre teoremele lui DeMorgan poate
fi demonstrată considerând toate combinaţiile posibile dintre x şi y.

9
Cu toate că teoremele lui DeMorgan au fost definite pentru variabile simple, x şi y, ele sunt
valabile şi în situaţiile în care x sau y sunt expresii care conţin mai mult de o variabilă. De
exemplu, să aplicăm aceste teoreme la ușurarea expresiei ̅̅̅̅̅̅̅̅̅̅̅̅
(𝐴𝐵̅ + 𝐶):

̅̅̅̅̅̅̅̅̅̅
(𝐴𝐵 ̅ + 𝐶 ) = ̅̅̅̅
𝐴𝐵̅ · 𝐶̅
̅̅̅̅
𝐴𝐵̅ · 𝐶̅ = (𝐴̅ + 𝐵̿ ) · 𝐶̅
(𝐴̅ + 𝐵̿ ) · 𝐶̅ = (𝐴̅ + 𝐵) · 𝐶̅
(𝐴̅ + 𝐵) · 𝐶̅ = 𝐴̅𝐶̅ + 𝐵𝐶̅
Putem remarca faptul că în rezultatul final, semnul de inversare este asociat numai unor
variabile simple.

1.3. Funcțiile logice ale algebrei

Pentru a reprezenta funcțiile logice ale algebrei se utilizeză in mod curent și principal trei
metode prezentate mai jos.
❖ reprezentarea prin tabela de adevăr, presupune marcare, printr-un tabel a corespondenței
dintre valorile de adevăr ale vaiabilelor de intrare și valoarea de adevăr a funcției în fiecare
punct al domeniului de caracterizare. Figura 1.3.1. semnifică un modul de reprezentare prin
tagel a unei funcții logice ale algebrei.

Figura1.3.1. Rprezentarea prin tabel a unei funcții lorgice ale algebrei

10
❖ Reprezentarea prin diagrame Karnaugh, este prezentată prin marcarea punctelor
domeniului de definiție într-o diagramă plană și determină valoarea funcției în fiecare dintre
aceste puncte În figura 1.3.2. semnifică modul de reprezentare a funcțiilor logice prin diagrame
Karnaugh.

Figura 1.3.2. Reprezentare funcțiilor logice prin diagrame Karnaugh

Dacă, considerăm vârful cubului definit prin coordonte 000, observăm că cest cârf este vecin
cu vârfurile 001, 010, 100. În diagram Karnaugh stabilim că 000 este vecin doar cu 001 și 100.
Pentru ca această diagramă să fie identic cu reprezentarea prin cub, este absolut necesar să
păstreze același vecinătăți, fapt ce este posibil doar dacă ne imainăm latura din stânga a
diagramei în continuarea celei din dreapta, iar latura de sus în continuarea celei de jos. În acest
mod, punctul 000 devine vecin și cu punctul 010.
❖ Reprezentarea prin echivalenți zecimali ai mintermilor, rezidă prin arătarea
echivalenților zecimali ai conjuncțiilor pentru care valoarea funcției este 1 sau a echivalenților
zecimali potrivit valorii 0 ale funcției.
Implementarea unei funcții logice semnifică îndeplinirea ei cu ajutorul circuitelor esențiale.
Acest lucru semnifică cost al unei implementări numărul de intrări în circuitele esențiale care
îndeplinesc funcția dată. Pentru implementarea unei funcții cu circuite NAND se pornește de la
FCD:

11
Un model de implementare a unei funcții logice cu circuite NAND, plecând de la FCD, il vom
prezenta în Figura 1.3.3., unde costul implementării este 𝐶1 (𝑓) = 3 ∙ 4 + 4 = 16

Figura 1.3.3. Modelul de implementare a unei funcții logice cu circuite NAND, pornind de
la FCD

Pentru implementarea cu circuite NOR se pleacă de la FCC, după cum urmează:

̅̅̅̅̅̅
(𝑛)
Funcția f rezultă prin cuplarea ieșirilor circuitelor NOR ce îndeplinește 𝐷𝑘 la intrările unui alt
circuit NOR.
Nivelul unei implementări logice se carcaterizează ca fiind numărul maxim de circuite pe
care le parcurge un semnal de la intrare spre ieșire. În cazurile prezentate mai sus, acestea au
fost considerate structuri logice cu două nivele.
În anumite cazuri, pentru aumite combinații de variabile de intrare nu este stabilită valoarea
funcției sau astfel de combinații nu reies niciodată în sisteml fizic ce materializează funcția.
Aceste funcții au denumirea de funcții incomplet definite și precizează valori indiferente, pe
care în tabelul de mai jos le vom nota cu x.

12
Figura 1.3.4. Tabelul de adevar pentru funcții incomplet definite

Un alt model de prezentare a acestor funcții este prin echivalenți zecimali

În proiectarea sistemeor digitale, analiza și sinteza circuitelor numerice are la bază algebra
booleeană. Prin minimizarea unei funcții, se poate obține o expresie care oferă informații
esențiale cu privire la valoarea costului minim pentru un anumit număr de nivele logice.
Minimizarea unei funcții se poate realiza prin mai multe metode. Cele mai importante
metode de minimizare a unei funcții sunt următoarele:
a) Metoda analitică
b) Metoda Veitch – Karnaugh
c) Metoda Quine _ McCluskey
Trebuie reținut faptul că minimizarea unei funcții este esențială pentru implementarea
practică a unei ecuații. Astfel se obține o variantă simplificată care generează o soluție exactă
într-o formă prescurtată.

13