Professional Documents
Culture Documents
Disk Mat
Disk Mat
Termineid: verbaalne esitus on mistahes info esitamine lingvistilise keele abil. formaalne esitus on mistahes info esitamine ilma lingvistilise keele abita ehk kokkulepitud smbolite abil.
NB!
MTLEMINE on alati verbaalne ehk toimub mingi lingvistilise keele abil. Mistahes formaalne esitus on algupraselt verbaalse info "salvestamiseks". Formaalsete esituste ainus otstarve on nendes sisalduv info hiljem jlle verbaalseks (ehk mnda lingvistilisse keelde) tagasi "les lugeda" (taastada). Mistahes formaalne esitus peab olema heselt tlgendatav! "mitteformaalne" "verbaalne" (snonmid)
Diskreetse Matemaatika alla kuuluvad: Hulgad: Hulgaalgebra (Cantori algebra), Hulgaaritmeetika Loogika: Lausearvutus, Predikaatarvutus, Testusmeetodid Loogikaalgebra (Boole'i algebra) minimeerimine, normaalkujud . . . Loogikafunktsioonid: Algebralised struktuurid: Fundamentaalalgebrad: Vred, Rhmad, Ringid, Korpused Vastavused ja Relatsioonid Graafid Kombinatoorika: Kombinatsioonid, Variatsioonid, Permutatsioonid
MATEMAATILINE
LOOGIKA
LAUSEARVUTUS
Lausearvutus on loogilise mtlemise matemaatiline mudel. Lausearvutuse lause vib olla iga verbaalne (ehk lingvistilises keeles vljendatud) vide, millele saame omistada tevrtuse tene vi vale. Tevrtusi thistame numbritega 0 ja 1. 0 vale (vr) 1 tene Lause peab omandama he tevrtuse nendest kahest alternatiivist. Lausearvutuslauseteks vivad olla: " 19 on algarv "
" popcorn on hea " " jnesed jooksevad vihmaveetorudes " Lausearvutuslauseteks ei ole (ei klba): " kigi maade proletaarlased, hinege " " olla vi mitte olla " Lihtsaimaid vimalikke lausearvutuslauseid nimetatakse lihtlauseteks. Lihtlauseid ei saa enam jagada veelgi lihtsamateks lausearvutuslauseteks. Lausearvutuslauseid thistame formaalselt suurthtedega: A, B, P, Q . . . Lihtlausetest koostatakse kindlate sidesnade ja loogiliste konstruktsioonide abil liitlauseid: " kui palka ei tsteta vi taega ei vhendata, siis algab streik " " lemus on kohal ainult siis, kui tema auto on maja ees" Lausearvutuse lihtlauseid seotakse liitlauseteks 5 loogilise konstruktsiooni ehk loogikatehte abil. 4 sidumiskonstruktsiooni seovad igaks kahte lauset (binaarsed loogikatehted) ja 1 tehe on rakendatav ksikule lausele (unaarne loogikatehe)
formaalne thistus
P PQ PQ PQ P Q
" P vi Q "
Tingimuste samaaegse kehtimise nue:
" P ja Q "
Jreldumine :
JA-tehte mrgina kasutatakse ka smbolit 'ampersand ' : Ekvivalentsitehte mrgina kasutatakse ka smbolit VI-tehte mrgina kasutatakse ka smbolit +
&
( & ) (~ ) (+ )
LOOGIKATEHTED lausearvutuses
tehtemrk
lesanded: S O V P R L M H
on suvi vljas on soe vihma sajab vljas on pime pikesevarjutus kestab pike on loojunud Ferrari on kiirem kui McLaren Hkkinen vidab sidu
Esitada jrgnevad liitlaused lausearvutusvalemitena: Kui vihma sajab, siis on suvi vi vljas on soe
eeldus
jreldus
Q P
V (S O)
Vljas on pime (siis ja) ainult siis, kui pike on loojunud ja pole suvi vi pikesevarjutus kestab
kui
P Q
siis
P Q
ja samal ajal ka
LAUSEARVUTUSVALEMID Nii liht- kui ka liitlausete formaalseid esitusi nimetatakse lausearvutusvalemiteks. Lausearvutusvalem on defineeritud jrgnevalt: Lihtlause formaalne this ja tevrtuskonstant on valem: A __ Kui A on valem, siis on valemid ka A ja ( A ) Kui A ja B on valemid, siis on valemid ka AB AB AB AB
__ P (L S R)
Kui on suvi vi pike pole loojunud, siis vljas pole pime 0 1
__ __ (S L) P
__ V H
Lugeda jrgnevaid lausearvutusvalemeid (taastada lause verbaalne esitus): Kui McLaren on kiirem kui Ferrari ja vihma ei saja, siis Hkkinen vidab sidu
__ __ (M V) H
Hkkinen ei vida situ (siis ja) ainult siis, kui Ferrari on kiirem kui McLaren vi vihma sajab
__ R (L P)
Kui pikesevarjutus kestab, siis pike pole loojunud ja on pime
__ H
(M V)
__ (S L)
Soe on (siis ja) ainult siis, kui on suvi vi pike pole loojunud
__ (V S ) (P O )
Vihma sajab (siis ja) ainult siis, kui on suvi vi vljas on pime ja klm
__ (S O P) S
Kui vihma sajab ja on soe ja pole pime, siis on suvi
__ __ (M H ) (V H )
McLaren on kiirem kui Ferrari ja Hkkinen vidab vi vihma sajab ja Hkkinen ei vida
LOOGIKATEHETE DEFINITSIOONID Loogikatehete definitsioonid mravad nende resultaadi kikide operandivrtuste kombinatsioonide korral. (mravad nende "kitumise" kikvimalikes olukordades).
Loogikatehete operandideks on tevrtused (0 ja 1) ja tulemuseks on samuti tevrtus. Lausearvutuses kasutatakse hte unaarset ja nelja binaarset tehet.
__ O (S L) __ __ (S L) = 1 (0 1) = 0 __ (V S ) (P O )
[vale]
Kui A ja B on suvalised lausearvutuslaused alternatiivsete tevrtustega 0 vi 1, siis nendevaheliste loogikatehete tulemuseks olevate liitlausete tevrtused on jrgnevad:
inversioon konjunktsioon disjunktsioon implikatsioon ekvivalents
__ __ ( V S ) ( P O ) = ( 0 0 ) ( 1 1 ) = 1 [tene]
0 0 1 1 0 1 0 1
___
A 1 1 0 0
0 0 0 1
0 1 1 1
1 1 0 1
1 0 0 1
__ (S O P) S __ __ (S O P) S = (0 1 1) 0 = 1 __ __ (M H ) (V H ) __ __ __ __ (MH)(VH) = (1 0 ) (0 0 )
[tene]
Seega oleneb iga liitlause tevrtus teda moodustavate lihtlausete tevrtustest ja nende sidumiseks kasutatud loogikatehetest. Loogikatehete prioriteet: lesanded: S = 0 P = 1 H = 0
= 0
[vale]
Lause on samaselt tene, kui ta omandab tevrtuse 1 koostislausete mistahes vrtuskombinatsioonide korral. Samaselt test lauset nimetatakse ka tautoloogiaks. Lause on samaselt vr, kui ta omandab tevrtuse 0 koostislausete mistahes vrtuskombinatsioonide korral. Samaselt vra lauset nimetatakse ka vastuoluks. Samaselt tesed laused vib asendada (thistada) konstandiga 1 ja samaselt vrad laused konstandiga 0.
PREDIKAADID
Predikaat on lause (valem), mis sisaldab hte vi enamat muutujat. (Predikaatlause) Predikaatlause tevrtus oleneb vrtustatud muutuja(te) tevrtus(t)est. Kui predikaadi muutujad asendada mingite konkreetsete vrtustega lubatud vrtustehulgast, siis predikaat muutub lauseks (ehk omandab tevrtuse). Predikaate thistatakse suurthtedega; temas sisalduvaid muutujaid (predikaatmuutujaid) vikethtedega. hekohaline predikaat he muutujaga:
P(3) = 1
ehk
tene
P(5) = 0
ehk
vale
hekohalist predikaati nimetatakse omaduseks. Kui predikaatmuutuja mingi konkreetse vrtuse n korral predikaatlause P ( n ) osutub teseks, siis tleme, et " n-il on omadus P ". Eelmises nites: tisarvul 3 on omadus P ; tisarvul 5 pole.
Predikaatlause P ( x ) vib olla: tidetav ehk kehtestatav: kui ta on tene ainult osade muutujavrtuste x korral (ehk osas mramispiirkonnas) samaselt tene: kui ta on tene (kehtiv) kogu mramispiirkonnas samaselt vr: kui ta ei kehti mitte mingite muutujavrtuste korral oma mramispiirkonnas KVANTORID
Kui soovime vita, et predikaat P (x) kehtib oma mramispiirkonna kikide x-ide ( x1 x2 x3 . . . ) korral ehk:
x tisarv ja vaatleme hekohalist predikaati: P(x) (x > 2) (x < 4) x = 3 saame tese predikaatlause (predikaatvalemi): P(3) = (3 > 2) (3 < 4) = 1
Vrtustades ehk
P ( x1 ) P ( x2 ) P ( x3 ) P ( x4 ) . . . . = 1 x P ( x) x ( . . . mistahes
lause muutuja x osalusel . . . )
ehk ldkujul:
interpreteeritakse valemi lugemisel: "iga". Kui soovime vita, et predikaat P (x) kehtib vhemalt he oma mramispiirkonna x-i korral ehk: P ( x1 ) P ( x2 ) P ( x3 ) P ( x4 ) . . . . = 1
ldsuse kvantorit siis kasutame sellise vite kopaktsemaks esitamiseks olemasolu kvantorit ehk eksistentsikvantorit
x [ ( x > 2 ) ( x < 4 ) ]
Kvantorite mratlusest jreldub: Kui lause
x P ( x)
:
Kvantorimrgiga seotud muutujat (muutujaid) nimetatakse seotud muutujateks. Kvantorimrgiga mitteseotud predikaatmuutujad on vabad muutujad. nide:
x P ( x)
ehk ldkujul: "eksisteerib". Kvantorid ja sobivad seega predikaadi P (x) kehtestatavuse tpsustamiseks nii lpliku mramispiirkonna kui ka lpmatult suure mramispiirkonna korral. Kui predikaadile P (x) on rakendatud kvantorit, siis ta omandab kohe tevrtuse (tene vi vale) ja ta tevrtus ei olene enam predikaatmuutujale x omistatud konkreetsest vrtusest. Kvantori rakendamise tulemuseks on seega uus, tevrtusega lause. nide: Rakendame eelnevalt vaadeldud predikaadile
x ( . . . mistahes lause muutuja x osalusel . . . ) ldsuse kvantorit interpreteeritakse valemi lugemisel: "leidub" ehk
x P (x, y)
korral:
x P ( x) x P ( x)
Kvantorit saab rakendada ka sellisele lausele, millele on juba eelnevalt kvantorit rakendatud:
x y ( x + y = 9 )
(eelneva predikaatlause tevrtus oleneb ta mramispiirkonnast)
x P ( x)
[vale]
x P ( x)
[tene]
x ,y P (x, y) xy P (x, y)
Sarnaselt muutujateta lausearvutuslausetega saab ka predikaate siduda liitpredikaatideks nendesamade loogikatehetega: Predikaadid on vrdvrsed (ekvivalentsed) , kui nende tevrtuspiirkonnad langevad kokku. nide: Olgu naturaalarvulise muutumispiirkonnaga hekohalised predikaadid:
mrkus: kui mramispiirkonnaks oleks reaalarvude asemel tisarvud , siis 2ne ja 3mas predikaatvalem lihtsustuksid:
__
x [ H (x) H (x) ]
lesanded: Nidata kahekohalise predikaadi
x y [ D (x , y) ]
P (x) " x jagub 3-ga " S (x) " x jagub 12-ga " . . . . siis: S ( x) T ( x)
P (x , y) tesuspiirkond: vastus: (x = y) (x = - y)
P (x , y) x 2 y 2 = 0 P (x , y) (x > 0) (y < 0) vastus: (x < 0) (x > 0) ( y < 0) P (x , y) (x > 0) (y < 0) vastus: (x > 0) ( y < 0)
N (x) " x on naturaalarv " Z (x) " x on tisarv " P (x) " x on algarv " H (x) " x on paarisarv " D (x , y) " x jagub y-ga "
Leida predikaatlausete tevrtus:
x [ N (x ) Z (x ) ]
__
x [ Z (x ) H ( x ) H ( x ) ] x y [ Z (x ) Z (y ) D ( x , y ) ] x [ P (x ) H (x ) ]
LOOGIKASEADUSED
Loogikaseadused on kuni 3me operandiga lihtsaimad samaselt tesed lausearvutusvalemid. Loogikaseadused ei ole aksioomid. Nende kehtivus tuleneb loogikatehete definitsioonidest. Olgu 3 lauset A B C assotsiatiivsus: mis omavad tevrtusi 0 vi 1.
De Morgani
seadused: _______
__ __
__ __
A B
_______
= B A = B A = A A 0 = 0
A 1
A B A 0
Seadused konstantidega 0 ja 1 :
= A A 1 = 1
Vlistatud kolmanda seadus : __
A B C = (A B) C = A (B C) A B C = (A B) C = A (B C)
A A = 1
Vastuolu seadus : __
kommutatiivsus:
A B
= B A
A B
= B A
A A =
Kontrapositsiooni seadus : __
idempotentsus:
A A
= A
A A
= A
A B = B A
Sllogismi seadus :
__
neeldumine:
A (A B) = A A (A B) = A
distributiivsus:
[ (A B) (B C) ] (A C)
AB = A B 1A = A 0 A A A A (A B) = B A0 = A A 1
__ __
A (B C) = (A B) (A C) A (B C) = (A B) (A C)
topelteituse seadus: __ __
= A
A B = (A B) (B A)
Loogikaseadused vimaldavad formaalsete teisenduste abil saada lausetest (valemitest) uusi, esialgsega loogiliselt samavrseid lauseid. lesanne: On eespool olnud lause: Kui McLaren on kiirem kui Ferrari ja vihma ei saja, siis Hkkinen vidab sidu:
__ __ (M V) H
. . . ja eespool olnud he teise lause vhemuudetud kuju: Kui Hkkinen ei vida situ, siis Ferrari on kiirem kui McLaren vi vihma sajab:
__ H
(M V)
Kontrollida nende lausete loogilist samavrsust he lause valemesituse formaalse teisendusega teise lause valemiks. lahendus: Teisendame esimese valemi teiseks Kontrapositsiooni ja De Morgani seaduste abil:
__ __ A B = B A ______ __ __ A B = B A
__ __ (M V) H ________ __ __ __ H (M V ) __ H (M V)
HULGAD
Mistel "hulk" pole definitsiooni. Hulk on fundamentaalne baasmiste. ". . . . hulk on koosvaadeldavate objektide (hulgaelementide) kogum . . . ." Hulk koosneb hulgaelementidest. ( Hulk sisaldab elemente )
V = {a e i o u } Z = { . . . -2 , -1 , 0 , 1 , 2 , 3 , . . . } N = { 0, 1, 2, 3, ...}
HULKADE VRDSUS : Hulgad on vrdsed , kui nad koosnevad samadest elementidest:
Hulga esitamine Hulka thistatakse suurthtedega: A B C Hulka esitatakse: tema elementide tieliku loeteluna loogsulgude vahel:
{1 3 5} = {5 1 3}
Hulgaelemendid ei ole hulgas ksteise suhtes kuidagi jrjestatud. Hulgas ei ole korduvaid elemente. Igat hulgaelementi on hulgas "ks eksemplar" : { 1 3 3 5 5 5 } = { 1 3 5 } Hulgaelemendi
{ a, e, i, o, u, , , , }
vi
{a e i o u }
( komast vib loobuda, kui iga hulgaelement esitub ksiku themrgi abil )
tema elementide osalise loeteluna, mis esitab mingit regulaarset ratuntavat seadusprasust:
kuulumist hulka
{ . . . -2 , -1 , 0 , 1 , 2 , 3 , . . . } { 0, 1, 2, 3, ...} { 0 , 1 , 2 , 3 , . . . , 99 } { 0 , 2 , 4 , 6 , 8 , 10 , . . . } { 1 , 3 , 5 , 7 , 9 , 11 , . . . } { 0 , 1 , 3 , 5 , 7 , 11 , 13 , 17 , 19 , 23 , 29 , 31 . . . }
ldise avaldise kaudu , mis kehtib kigi hulgaelementide jaoks:
hulga sisaldumine teises hulgas: Hulk A on hulga B osahulk (alamhulk) : A B element on samal ajal ka hulga B elemendiks: kui hulga A iga
A B
x ( x A x B )
Iga hulk on iseenda osahulgaks: A A Kui 2 hulka osutuvad teineteise osahulkadeks , siis nad on vrdsed:
(A B
B A) A = B
Venni Diagrammid Venni diagramme kasutatakse hulkade illustratiivseks graafiliseks esitamiseks. Diagrammil esitatakse hulki ringjoontega , mille sees vivad olla nidatud ka hulgaelemendid. Hulka mittekuuluvate elementide esitamiseks on kasutusele vetud UNIVERSIAALHULGA miste.
Universiaalhulga I moodustavad elemendid , mis kuuluvad vaadeldavasse hulka ja (lejnud) elemendid , mis ei kuulu vaadeldavasse hulka. Venni diagrammil esitatakse universiaalhulka ristklikuna:
| xA }
A I :
I A
Hulga A tiend A
I
HE hulga Venni diagramm
I B A
Universiaalhulk sisaldab kiki antud kontekstis vaadeldavaid elemente. Vokaalide hulga V = { a e i o u universiaalhulgaks kigi thtede hulk : Venni diagramm vokaalide hulgale V :
b f h g w j h x c g d y a e i o v r p s t KOLME HULGA Venni diagramm q z m k
} vaatlemisel sobib
KAHE HULGA Venni diagramm Venni diagramm hulkadele A ja B erijuhul , kui A B
I = {a b c d e f g h i j k l m n o p q r s t u v w x y z }
I
n l
V
u
{ }
lpmatud ja loenduvad hulgad. Reaalarvude hulk R on lpmatu ja mitteloenduv. ( Diskreetne Matemaatika ei tegele reaalarvudega ) HULGAARITMEETILISED TEHTED On 1 unaarne ja 4 binaarset hulgaaritmeetilist operatsiooni. (binaarsetel on operandideks on 2 hulka) hulkade HEND
={ }
Thi hulk
A ( A )
Kuna eelnevalt oli mrgitud , et
( hulgaaritmeetiline liitmine )
A ( A A A )
ASTMEHULK Mingi hulga A astmehulgaks 2A ehk P (A) nimetatakse selle hulga kikide osahulkade hulka. nide: Olgu antud A = { a b } Sellise hulga A astmehulk on: 2A = P (A) = { { } { a } { b } { a b } } Hulga { 0 , 1 , 2 } astmehulk on: {0 , 1 , 2} = P ( { 0 , 1 , 2 } ) = { { } {0} {1} {2} {0 1} {0 2} {1 2} { 0 1 2 } } 2
LPLIKUD, LPMATUD, LOENDUVAD, MITTELOENDUVAD HULGAD
A B =
{ x | xA xB }
I A B
AB
hulkade HISOSA
hend
( hulgaaritmeetiline korrutamine )
Kahe hulga A ja B hisosasse A B kuuluvad elemendid , mis kuuluvad hulka A ja samal ajal ka hulka B :
Hulk on lplik , kui ta sisaldab kindla arvu elemente. { 0, 1, 2, 3, . . . 1000000000000000000000000 } on lplik hulk. Lpmatu hulk sisaldab piiramatult (lpmatult) palju elemente. { . . . -3, -2, -1, 0, 1, 2, 3 . . . } ja { 0, 1, 2, 3 . . . } on lpmatud hulgad. Hulk on loenduv , kui tema elementidele saab hakata vastavaks seadma naturaalarve { 0, 1, 2, 3 . . . } Iga lplik hulk on alati ka loenduv. Naturaalarvude hulk
A B =
{ x | xA xB }
I A B
AB
hisosa
hulkade VAHE
( hulgaaritmeetiline lahutamine )
Kahe hulga A ja B vahesse A \ B kuuluvad elemendid , mis kuuluvad hulka A ja ei kuulu hulka B :
A vimsuseks
V = { a e i o u } vimsus | V | = 9
\ B = { x | xA xB }
I A B
GRASSMANI VALEMID:
avaldub :
avaldub :
A B
kuuluvad
|A B C|
C| - |B C| + | A B C|
A B =
I A B
A = A A = I __ A A = I __ A A = A A = A
A = A A = __ __ A = A __ I = A A = A
A B
Kui A nide:
smm. vahe
B = {1 4 7}
, siis A ja ja
B on mittelikuvad.
on mittelikuvad hulgad.
{2 3 6}
kommutatiivsus:
__
A B = B A
assotsiatiivsus:
A B = B A
Hulgatehete prioriteet:
(A B) C = A (B C) (A B) C = A (B C)
distributiivsus:
A (B C) = (A B) (A C) A (B C) = (A B) (A C)
neeldumine:
____________ __
Teisendada hulgaavaldis
(A B ) \ C
Cantori normaalkujule.
A (A B) = A _
A(AB) = AB
A (A B) = A _
____________ __
(A B ) \ C = (A \ B ) ( B \ A ) C = = (A B ) ( B A ) C =
___________________________ __ __ __ ________ __ __
________________________ __ __ __
__
A=(AB) (AB)
__
________ __ __ __ __
= (A B ) ( B A ) C = = (A B) (B A) C =
__ __ __
______ __ __ A B = A B
______ __ __ A B = A B
= (A B)(B B) (A A) (B A)C = = (A B) (B A) C
__
A \B = A B A B = (A\B) (B\A)
A B = (AB) \ (BA)
teine teisendusvimalus:
(A B ) \ C = (A B ) \ ( A B ) C = = (A B ) ( A B ) C = = (A B ) ( A B ) C = = (A B) (AB) C
A
____________ __
_________________________ __ __ __
__
( minimaalne CNK )
(A
)\ C
Cantori tielik normaalkuju sisaldab igas hendis vi hisosas kiki avaldises osalevaid hulki. Avaldiseliikmes puuduvaid hulki saab lisada kleepimisseadust rakendades:
A=(AB) (AB)
__
A=(AB) (AB)
__
kus paari esimene element on esimeseks teguriks olevast hulgast ja paari teine element on teiseks teguriks olevast hulgast:
A B = { < a, b > | a A b B }
nide:
A = { 1, 2, 3 }
B = { a, b }
A B = { < 1, a > < 1, b > < 2, a > < 2, b > < 3, a > < 3, b > }
Elementide (paaride) arv ristkorrutises: Hulga
|A B| = |A| |B|
A A = A2 = { < a, b > | a A b A }
nide: Kui A = { 1, 2 } , siis A A = { < 1, 1 > < 1, 2 > < 2, 1 > < 2, 2 > } Ristkorrutis pole kommutatiivne:
A B B A
VASTAVUSED
Vastavus seab he hulga elementidele vastavaks teise hulga mingeid elemente.
Kuna kahe hulga otsekorrutis A B koosneb nende elementide kikvimalikest jrjestatud paaridest < a, b > , siis defineeritaksegi vastavust lhtehulga ja sihthulga otsekorrutise osahulgana: Vastavus on hulk : AB AB Eelnev nitevastavus esitub seega jrjestatud paaride hulgana : = { < Jri, 4 > < Mari, 5 > < Juhan, 3 > < Jaan, 1 > < Kati, 4 > } Kui
:
5
D () = { a | b ( < a, b > ) } A
Vastavuse : A B muutumispiirkonna R () moodustavad vastavuses osalevad sihthulga elemendid:
4 3 2 1 0
Kui vastavus
seab hulga A elementidele vastavaks hulga B elemente (ehk on "hulgast A hulka B " ) , siis mrgime : : A B A on sellisel juhul vastavuse lhtehulk ja B on sihthulk .
R () = { b | a ( < a, b > ) } B __ Vastavuse : A B tiendi moodustavad jrjestatud paarid < a, b > A B mis ei kuulu vastavusse : __ = { <a, b> AB | < a, b > ) } A B
__ = ( AB ) \ | | = |A B| || : A B prdvastavus -1 seab sihthulga B elementidele vastavaks lhtehulga A elemente: -1 = { <b, a> BA | < a, b > ) } B A
Vastavuse
__
| -1 | = | | 1 : A B ja 2 : B C kompositsioon ehk liitvastavus 1 2 on vastavus, mis seab hulga A elementidele vastavaks hulga C elemente "le hulga B elementide": 1 2 = { <a, c>AC | b(< a, b >1 < b, c >2 )} A C
Vastavuste
:
5
4 3 2 1
a b c d e f
1 :
2 :
x
d e
4 y 3 2 1 0 p q z
Vastavus
f b g d
:
5
4 3 2 1
(1 2 ) 3 = 1 (2 3 )
(1 2 )-1 = 2 -1 1 -1
Vastavus A B on hene , kui igale mramispiirkonna elemendile vastab tpselt ks muutumispiirkonna element: aD() !bR() [ < a,b > ]
f b g d
:
5
4 3 2 1
:
5
4 6 3
c d e
1 2
-1 = { < b, b > | b B }
Kikjal mratud hest vastavust nimetatakse funktsiooniks.
:
5
: A B (ehk AB ) mramispiirkond D() = A , siis selle rhutamiseks vib funktsiooni nimetada ka "tielikult mratud funktsioon" )
2
d e
srjektsioon
Vastavus : A B on ks-hene , kui ta on hene ja muutumispiirkonna iga element vastab tpselt hele mramispiirkonna elemendile: a,bD() [(a) = (b) a = b] a,bD() [a b (a) (b)] ehk
:
5
4 6 3
: A B , kus lhtehulk A on pilaste hulk ja sihthulk on hinded: B = {0, 1, 2, 3, 4, 5}. nitab eksamil saadud hinnet. Millistel tingimustel on :
ksimus: On vastavus osaliselt mratud funktsioon? tielikult mratud funktsioon? srjektsioon? injektsioon? bijektsioon?
c d
injektsioon
Kui
: A B on injektsioon , siis | A | | B |
:
5
4 6 3
D () M
R () M
MM
R MM
c d e
bijektsioon
Kui
: A B on bijektsioon , siis | A | = | B |
Funktsioonid
alushulgaks. Kuna relatsioonid on vastavused, siis kehtivad ka nende jaoks kik vastavuste juures tuntud misted: tiend, prdvastavus, kompositsioon:
R tiend R = { <a, b> MM | < a, b > R ) } M M R = ( MM ) \ R R prdvastavus R-1 = { <b, a> | < a, b > R ) } R kompositsioon iseendaga: R R = R2 R R R = R3 R1 = R
__
__
Funktsioonide liigitumine
Relatsioonide ESITUSVIISID Olgu relatsiooni alushulk M = mratud mingi binaarsuhe R Relatsioon vib olla esitatud: 1. jrjestatud paaride hulgana:
3. naabrusmaatriksiga:
{ 2 , 3 , 4 , 5 , 6 } millel on
R =
2 3 4 5 6
2 1 0 1 0 1
3 0 1 0 0 1
4 0 0 1 0 0
5 0 0 0 1 0
6 0 0 0 0 1
R = { < 2, 2 > < 3, 3 > < 4, 2 > < 4, 4 > < 5, 5 > < 6, 2 > < 6, 3 > < 6, 6 >} R = { < a, b > | a mod b = 0 }
Kui alushulga elemendid on seotud vastavuspaarideks mingi reegli (tunnuse vi tingimuse) abil, siis seda reeglit nimetatakse relatsioonikriteeriumiks. ( binaarsuhet moodustav reegel ) Eelmises niterelatsioonis on alushulga elemente paarikaupa kokkusiduvaks tunnuseks jagumine iga alushulga element on pandud
vastavaks (ehk ta "on relatsioonis") selliste alushulga elementidega, millega ta jagub: a mod b = 0
Relatsiooni esitab kahendtitega ruutmaatriks. hikrelatsioon E ehk binaarsuhte diagonaal on binaarsuhe, mis seab igale alushulga elemendile vastavaks ainult selle elemendi enda:
E = { < a, b >MM | a = b }
Eelneva nidisalushulga M =
|E| = |M|
{ 2 3 4 5 6 } jaoks E = { < 2, 2 > < 3, 3 > < 4, 4 > < 5, 5 > < 6, 6 > }
E-1 = E
2. ( orienteeritud ) graafina:
3 2
R:
4 6 5
R =
E = R
Graafi tippudeks on alushulga elemendid { 2, 3, 4, 5, 6 } ja graafi iga kaar esitab hte jrjestatud paari < a, b >
3.
smmeetria ( 3 ) :
R:
1. refleksiivsus ( 1 ) :
aM (< a, a >R )
3
4 6 5 4 smmeetriline binaarsuhe
R:
6 5 refleksiivne binaarsuhe
Kui R on smmeetriline, siis R-1 = R 4. antismmeetria ( 4 ) : a,bM [(a b) < a, b >R < b, a >R] ,
3
R:
R:
4
Kui R on antismmeetriline, siis R R-1 E Kui relatsioon pole ei smmeetriline ega antismmeetriline, siis nimetatakse teda mittesmmeetriliseks.
Kui relatsioon pole ei refleksiivne ega antirefleksiivne, siis nimetatakse teda mitterefleksiivseks.
5.
a,,b,,cM [(a b) (b c) (a c) (a R b) (b R c) 3 2
transitiivsus ( 5 ) :
(a R c)]
Relatsiooni R kaugus d omaduseni i : d (R , i ) on jrjestatud paaride arv, mis tuleb relatsiooni lisada vi sellest eemaldada , et omadus i kehtima hakkaks. lesanne: Alushulgal M =
{ a b c d } on mratud relatsioon
R:
4 6 5 transitiivne binaarsuhe
R = {< a, a > < a, b > < a, c > < b, d > < c, c > < c, d > < d, b > < d, c > < d, d >} Leida R kaugus kigi omadusteni 1 2 3 4 5 6
a,,b,,cM [(a b) (b c) (a c) (a R b) (b R c) 3 2
(a R c)]
^ Relatsiooni R transitiivseks sulundiks R nimetatakse vhima paaridearvuga transitiivset relatsiooni, mis sisaldab endas alamhulgana relatsiooni R . Transitiivne sulund avaldub R astmete hendina:
siis
i = n-1 i=1
R = R R2 R3 . . . Rn-1 = U Ri
4
R:
6 5 antitransitiivne binaarsuhe
{ 1 2 3 4 5 } on mratud relatsioon R = { < 1, 3 > < 1, 4 > < 3, 4 > < 4, 5 > < 5, 2 > < 5, 3 > }
lesanne: Alushulgal M = Leida R transitiivne sulund.
Kui relatsioon pole ei transitiivne ega antitransitiivne, siis nimetatakse teda mittetransitiivseks. Kik 3 omadust ja nende 3 vastandomadust on vastastikku teineteist vlistavad: he omaduse kehtimine vlistab ta antiomaduse kehtimise. Omaduse mittekehtimine ei thenda ta vastandomaduse kehtimist.
R = {<1, 3>
<1, 4> <3, 4> <4, 5> <5, 2> < 5, 3> <3, 2> <5, 4> <3, 5> <1, 5> <4, 3>
|R| = 11
JRJESTUSSUHTED
OSALINE jrjestussuhe Osaline jrjestussuhe on relatsioon, mis on antismmeetriline ja transitiivne. Kui osaline jrjestussuhe on samas ka antirefleksiivne , siis ta on range osaline jrjestussuhe ( < )
vi
nide:
{ 3, 4 } astmehulk 2{3, 4} = { { } {3} {4} {3,4} } = M Koostame hulgal M relatsiooni R = { < a, b >MM | (a b) (a b) } R = { < { }, {3} > < { }, {4} > < { }, {3,4} > < {3}, {3,4} > < {4}, {3,4} > }
Olgu alushulgaks hulga
Moodustunud relatsioon on (range) jrjestussuhe, kuna ta on antismmeetriline ja transitiivne ning samas on ta osaline jrjestussuhe , kuna alushulk M sisaldab ka elementidepaari, mis pole selle relatsiooni jrjestuskriteeriumiga vrreldavad: {3} {4} ega {4} {3}
Kui osaline jrjestussuhe on samas ka refleksiivne , siis ta on mitterange osaline jrjestussuhe ( ) Kui R on jrjestussuhe hulgal M , siis "relatsioon R jrjestab hulga M". Eespool kasutatud niterelatsioon
ehk
< {3}, {4} > M ja < {4}, {3} > M Relatsiooni ennast vib samuti thistada jrjestatud paariga, mille komponentideks on relatsiooni alushulk ja jrjestuskriteerium. Eelnev niterelatsioon oleks jrjestatud paarina esitatult < 2{3, 4}, > . TIELIK jrjestussuhe Kui alushulga mistahes 2 elementi on jrjestatavad (ehk selle relatsiooni jrjestuskriteeriumi abil vrreldavad): a,bM [ (a b) (a b) ] siis sellist relatsiooni nimetatakse lineaarseks jrjestuseks. nide: Tisarvude hulk Z jrjestuskriteeriumiga (vi ) osutub lineaarseks jrjestuseks < Z, > Kui lineaarselt jrjestatud hulgas leidub tpselt 1 vhim element: !mM aM [ m a ] siis on hulk tielikult jrjestatud (tielik jrjestussuhe). nide: Naturaalarvude hulk N jrjestuskriteeriumiga (vi ) osutub tielikuks jrjestuseks < N, > , sest seal on olemas lineaarjrjestus ja selles hulgas leidub element (naturaalarv 0) , mis on viksem mistahes teisest naturaalarvust. ( Jrjestuskriteeriumite ja asendamisel teineteisega relatsiooni omadused ei muutu. Muutub ainult komponentide jrjestus jrjestatud paarides: < a, b > asendub < b, a >-ga ) Huvipakkuvamad jrjestussuhted on osalised jrjestused.
Kui alushulga moodustuvad elemendid, mille jaoks on defineeritud vrdlemistehted "suurem kui" ( "viksem kui" ) > ( < ) siis relatsioonid
Kui alushulga elementideks on hulgad ja relatsioonikriteeriumiks valida siis moodustuv binaarsuhe on samuti jrjestussuhe. (Teatavasti pole hulkade jaoks defineeritud vrdlustehteid > < )
Hasse diagrammid Hasse diagramm on osalise jrjestussuhte illustratiivne graafiline esitus. Diagramm koosneb sihipraselt paigutatud ja joontega hendatud alushulga elementidest. Relatsiooni R Hasse diagramm joonistatakse jrgnevaid nudeid arvestades: Kui ( a b ) ja ( a b ) , siis b paigutatakse diagrammil krgemale kui a ja nad hendatakse omavahel joonega. Transitiivseks osutuvad jooned jetakse diagrammile mrkimata.
Tpsustame, et teine tingimus vlistab osa jooni, mis esimese tingimuse kohaselt kuuluksid samuti diagrammilekandmisele. Transitiivsust esitavad jooned ei lisaks enam osalise jrjestuse kohta uut infot.
nide: Eelnev osalise jrjestuse nide < 2{3, 4}, > omab jrgnevat Hasse diagrammi: ra on jetud joon { } ja {3, 4} vahel, kuna ka {3, 4} olemasolevad jooned nitavad , et { } {3, 4} ehk < { }, {3, 4} > R {3} {4} {}
Hasse diagramm relatsioonile 2{3,4} ,
nide: Koostame Hasse diagrammid kahele 8-elemendilisel alushulgal mratud osalisele jrjestusele: < 2{a b c}, > ja < {0,1}3, < >
{a b c} {a b} {a} {a c} {b} { }
Hasse diagramm relatsioonile 2 ,
{a b c}
111
{b c} {c}
011 001
110 100
Hasse diagramm
3 relatsioonile {0,1} , <
POSITSIOONILISED ARVUSSTEEMID
Igal positsioonilisel arvussteemil on tisarvuline alus p Arvujrgud: . . . . a5 a4 a3 a2 a1 a0 a-1 a-2 a-3 a-4 . . . . a i . . . . p i = pi
KAHENDSSTEEM
Kahendssteem on lihtsaim positsiooniline arvussteem: p = 2 a i { 0, 1 } 2ndssteemi jrgukaalud: . . . 25 24 23 22 21 20 2-1 2-2 2-3 . . .
32 16 8 4 2 1 0.5 0.25 0.125
Jrgukaalud: . . . . p5 p4 p3 p2 p1 p0 p-1 p-2 p-3 p-4 . . . . pi . . . . Kui alus p = 10 , siis on kmnendssteem , kus jrkude kaaludeks on: . . . . 103 102 101 100 10-1 10-2 10- 3 . . . .
. . . . 100 10 1 0.1 0.01 . . . .
tisosa
krgemad jrgud
murdosa
madalamad jrgud
Mistahes positsioonilises arvussteemis avaldub arvu vrtus N: N = . . . + a3 p3 + a2 p2 + a1 p1 + a0 p0 + a-1 p-1 + a-2 p-2 + . . . 123 10 = 1 100 + 2 10 + 3 1 = 123 10
Seega tisosa ees ja murdosa jrel asuvad '0'-d ei mjuta arvu vrtust: 123.45 10 = . . . . 00000123.450000000 . . . . 10
Kuna kahendarvudes ei leidu suuremaid jrguvrtusi kui 1, siis kahendarvude korral arvu vrtust arvutav avaldis lihtsustub nende jrgukaalude summeerimiseks, kus asub jrguvrtus 1:
1010112
Miste arvu vrtus on eranditult seotud ainult 10ndssteemiga. "Vrtuse leidmine" ja "10ndssteemi teisendamine" on snonmid. leskirjutatud arvu ssteemikuuluvuse tpsustamiseks lisame talle ssteemi nitava indeksi: 3728 on 8ndssteemne arv vrtusega 250: 3728 = 3 82 + 7 81 + 2 80 = 25010
= 1 25 + 0 24 + 1 23 + 0 22 + 1 21 + 1 20 = = 32 + 8 + 2 + 1 = 4310
HQLPHOGU}Y HWVXWUllY HWVLOXYUDVLlW HORS HQLPHOGU}Y HWLURWNHYGQHKDN DJHHV DM DQHGXYUDGQHKDN GLHQ DGOHGDDY LH OHVLPHOGU}Y HWLURWNHYGQHKD.
HQLPHOGU}Y
(1,0(/'59 HWLURWNHYGQHKD.
Q WOHVSlW VDJOXK VDPDV EXGLHO VNRDM LGQHPHOHDJOXK DJL VHOOLP 1 Q DJHVXVPL}Y NOXK HWLURWNHYGQHKDN DJHVXNNLS HVGU}Y QR OODYUHWQL G
3
HGLlQ
` ^_
}
3
VXJUlMGQHKDN VHK WOXQLD WVHVLHWHQLHW GDYHQLUH VLP GLURWNHYGQHKDN DJHVXNNLS HVGU}Y QR GLGRRNVLKlO
HWVLOXJUlM HGLNL}N QR
GLURWNHYVLKlO
3 3 HWVLOXJUlM3 HNLODPL}YNL}N QR
` ^ _
: agesusmiv
` ^
NOXK HWLURWNHYGQHKDN
DM VNXNLOXVDN LNVLLV VHVXGQHNDU VHQ}P EXWXVR DJHGXYUDGQ XWW}W HVXVDQUDV DPH7 XODDNXJUlM OHGXNUlM LURWNHYGQHKDN HORS
WLURWNHYGQHKDN DJHVXNNLS DYHQLUH GXWDWLVH QR ODHU ODYHQJUl- HGLlQ Q QR VXNNLS LURWNH9
VXNNLS LURWNHYGQ HVLOXJUlMQ NKH YUD HGXNUlMGQ DPHW QR GXWDWLVH Q DJHVXNNLS DGDM HQLOHPW}}PHK HWVXWUllYDNLJRRO DQHWLUEPXQGQHKDN QR
DM
URWNHYGQHKDN
HQLOXJUlM3
` ^ QR VXWLVHURWNHY LOODYUHWQLHWLlQ HVLPOH( ` ^ QR VXWLVHURWNHY LOODYUHWQL GXGRRW DQHWLlQ HVLPOHHHOh DJLOREPV GXWDWVLKlW QR GXJUlM GHVLOXORHWWLP DM DJHGLWQDWVQRN HGDPDVHGQHQ GXWDWVLKlW QR GXJUlM GHVWQDWVQRN NKH GHVLOXOR LOODYUHWQL VXN WVHWLOREPV WVXWLVHURWNHY LOODYUHWQL adatusak bibos skesutise skestkapmok illavretnI .krj HQLOXORHWWLP aj ukrj WVLOXOR
no lillavretni aj tirotkev tsilugrj-4 <
^ OLOODYUHWQ, HGLlQ WVLOXORHWWLP Q DM XNUlM
XNUlM
WVLOXOR Q P
VHVXWDOX LOODYUHWQL XJRN OHWLURWNHY OHGLNL}N QR VXWUllY HOOLP GXJUlMGQ GHHQ HWLURWNHY DPHW QR VNHWDMXWXXP
VNHGXNUlM VNHWVLOXOR
LOODYUHWQL
` ^
3\
\ \
aj
` ^
3[
[ [
HWLURWNHYGQ HWVLOXJUlM3
<3 ^
3\
\ \
3[
[ [
WLURWNHYVLKlO VDJOXK VDPDV EDPR URWNHYGQ VXQLD DJOXK DM LWQHPHOH DQXN LOODYUHWQL LWXPDV EDWVXGRRP
} {
}
{
WLURWNHYVLKlO VDJOXK VHOOHV EDPR WVHGQHQ VNDJL DM WLURWNHYGQHKDN EDGODVLV DW DQXN
OODYUHWQL
HGLlQ
WLURWNHYVLKlO
DJHWHKHWVXOGU}Y
` ^
DM
` ^
) .WOHVLODVR
HVLODVR
DJOXK
EDWVHMUlM
HKHWVXOGU}Y NKH
HWKXVVXWVHMUlM
` ^ ` ^
DM
HKHWVXOGU}Y WH EXWXV2
DM
GDYDGOHUU}YHWWLP QR LWXPD6
DM
HWLURWNHYGQ GLX.
!
!
!
DJHH6
relatsioonile
Hasse diagramm
relatsioonile
` ^
Hasse diagramm
` ^
ledakluh
DJH
(tehtemrk ) , mis lausearvutuses puudub. See loogikatehe leiab edaspidi phjalikku ksitlust. LOOGIKALGEBRA PHISEOSED
_
eituse eitamise seadus : seosed __ konstantidega __ 0 ja 1 :
>
x = x
x0 = 0 x 0 = x
idempotentsus : de Morgani ______
x1 = x x 1 = 1
w w w w w
xx = 0 x x = 1
w w w w
xx = x
( 2he
x x = x
muutuja jaoks ) : ____
seadused
AB
AB AB
AB
AB
AB
ehk konjunktsiooniga :
A B AB
muud seosed:
Siintoodud loogikatehteid ja lausearvutuses leiduvaid loogikatehteid vrreldes leiame siin tiendava olulise loogikatehte "summa mooduliga 2"
w w w w
w w w w
w w w w
xy
xy = x
(x
y) ( x
y) = x
Eelnev definitsioon vlistab loogikaavaldiste hulgast ebakorrektsed A()B AB operandide ja tehtemrkide kooslused: A B
distributiivsus: x(y z) = xy
xz
( yz) = (x
y )( x
w w w w
w w w w
w w w w
neeldumine:
xy = x
xy = x
w w w w
w w w w
y = x y
x y = x
w w w
w w w w
Kik 3 loogikatehet on juba eelpool lausearvutuse juures defineeritud ja kik lausearvutuses kehtiv kehtib ka loogikaalgebras. Muutuja xi on loogikamuutuja , kui ta saab omandada vrtusi ainult hulgast { 0 1 }. xi { x1 x2 . . . . xn } Numbrimrkidena 0 ja 1 esitatud loogikavrtusi nimetatakse ka "konstant 0" ja "konstant 1" , et rhutada nende erinevust muutujatest xi . Loogikaavaldis on loogikamuutujaid xi , konstante 0 1 ja tehtemrke sisaldav kooslus, mis tema muutujate xi vrtustamisel omandab samuti loogikavrtuse 0 vi 1 . Loogikaavaldis sarnaneb lausearvutuses tuntud lausearvutusvalemile ning ta defineeritakse analoogiliselt: loogikamuutuja xi ja konstandid 0 1 on loogikaavaldised __ kui A on loogikaavaldis, siis on avaldised ka A ja ( A ) kui A ja B on avaldised, siis on avaldised ka
0 = 1
1 = 0
01=0
0 1=1
z)
f ( x1 x2 . . . xn ) : { 0, 1 }n { 0, 1 }
Seega seab n-muutuja loogikafunktsioon igale n-jrgulisele kahendvektorile (ehk argumentvektorile) x1 x2 . . . xn vastavaks loogikavrtuse 0 vi 1. 2-muutuja funktsioon f ( x1 x2 ) on seega vastavus
f ( x1 x2 ) : { 0, 1 }2 { 0, 1 }
Edaspidi thistab miste funktsioon kikjal loogikafunktsiooni.
f (x 1 x 2 ): 0 1
2
00 01 10 00 { 0, 1}
{ 0, 1}
w w w w
x y = xy
xy
Vastavuste vaatlemisel kasutasime vastavuste illustratiivseks esituseks diagramme. Toodud nide on he suvalise 2-muutuja funktsiooni diagramm, mis esitab funktsiooni kui hest vastavust lhtehulgast { 00, 01, 10, 11 } sihthulka { 0, 1 }. Vastavusdiagrammist eelistatumaks loogikafunktsiooni esituseks on tevrtustabel , mis on vastavusdiagrammi reorganiseeritud erikuju ja sisaldab seega
(x y) = (x y) (y x) = . . . . =
w w w w
x y = x
f ( x1 x2 )
0 1 0 0
y y x xy
00 01 10 11
f ( x1 x2 x3 ) : { 0, 1 }3 { 0, 1 }
3-mtmeline Boole'i ruum sisaldab 23 = 8 erinevat 3-jrgulist 3 kahendvektorit: { 0, 1 } = { 000, 001, 010, 011, 100, 101, 110, 111 } Seega on 3-muutuja loogikafunktsiooni tevrtustabel samuti 8-realine. Jrgnevalt esitame he suvalise 3-muutuja loogikafunktsiooni nii vastavusdiagrammina kui ka tevrtustabelina :
f (x 1 x2 x3 ): 000 001 010 011 100 101 110 111 { 0, 1}
3
x1 x2 x3
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1
f ( x1 x2 x3 )
0 1 0 0 1 0 1 1
0 1 { 0, 1}
4-mtmeline Boole'i ruum sisaldab juba 16 erinevat kahendvektorit ja 4-muutuja loogikafunktsiooni tevrtustabel on seega 16-realine. Funktsiooni muutujate (ehk argumentide) arvu suurenemisel hevrra funktsiooni argumentvektorite arv kahekordistub.
Argumentvektor x1 x2 . . . xn { 0, 1 } on loogikamuutujate "vrtustekomplekt", mis esitab funktsiooni igale ksikule muutujale x1 , x2 , . . . xn omistatavat vrtust 0 vi 1. Muutujate vrtustamisel omandab ka loogikafunktsioon ise vrtuse 0 vi 1 ("seab argumentvektorile vastavaks loogikavrtuse 0 vi 1"). Kui vaadeldav 3-muutuja funktsioon f ( x1 x2 x3 ) vrtustub x2 = 0 x3 = 1 korral 0-ks, muutujavrtuste x1 = 1 siis kirjutame: f ( 1 0 1 ) = 0
n
Funktsioon vib omandada mramatuspiirkonda kuuluvate argumentvektorite x1 x2 . . . xn V korral kskik kumba loogikavrtuse 0 vi 1 . Selle thistamiseks kirjutatakse osaliselt mratud funktsiooni tevrtustabelisse mramatuspiirkonna argumentvektoritele vastavaks ''. Jrgnevalt on esitatud osaliselt mratud 3-muutuja loogikafunktsiooni tevrtustabel. Funktsiooni mramatuspiirkonna moodustavad 2 argumentvektorit: V = { 010 100 } x1 x2 x3
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1
f ( x1 x2 x3 )
0 1 0 0 1 1
x1 x2 x3
0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1
f
0 1 0 0 1 1
f1
0 1 0 0 0 0 1 1
f2
0 1 0 0 1 0 1 1
f3
0 1 1 0 0 0 1 1
f4
0 1 1 0 1 0 1 1
OSALISELT MRATUD loogikafunktsioonid Vastavuste juures funktsiooni mistet sisse tuues mrkisime, et funktsiooni mramispiirkonnaks vib olla ka ainult osa lhtehulga elementidest. Sellisel juhul on tegemist osaliselt mratud funktsiooniga. Loogikafunktsioonide korral thendab osaline mratus seda, et tema lhtehulgaks olevas Booli'i ruumis leidub selliseid argumentvektoreid n x1 x2 . . . xn { 0, 1 } mille jaoks pole rangelt mratud, kumba loogikavrtuse 0 vi 1 funktsioon nende korral omandama peab. Sellised argumentvektorid moodustavad funktsiooni mramatuspiirkonna n n V0 V1 V = { 0, 1 } V { 0, 1 }
f1 f2 f3
f4
|V|= 2
f esitamiseks
V0 V
V1
{ 0, 1 }n
Boole'i ruumi jaotus osaliselt mratud funktsiooni f ( x . . x ) jaoks 1 n
Osaliselt mratud funktsioon kuulub "lpunimramisele" ehk temalt minnakse alati le tielikult mratud funktsioonile, jaotades ta mramatuspiirkonna vabalt ra 1-de ja 0-de piirkonna vahel. Selle tulemusel saadakse tielikult mratud funktsioon, mis sobib vaadeldava osaliselt mratud funktsiooni esitamiseks. Kui funktsiooni mramatuspiirkonnas on n kahendvektorit, siis saab mramatuspiirkonda 1-de ja 0-de piirkonna vahel ra jaotada 2n erineval viisil. Eelnevate tevrtustabelitega on toodud kik 22 = 4 tielikult mratud funktsiooni f1 f2 f3 f4 , mis sobivad vaadeldava osaliselt mratud funktsiooni f esitamiseks. Osaliselt mratud funktsiooni f 1-de ja 0-de piirkonnad sisalduvad tervikuna kikide funktsioonide f1 f2 f3 f4 vastavates piirkondades. Erinevused tielikult mratud funktsioonide f1 f2 f3 f4
1-de ja 0-de piirkondades piirduvad ainult nende argumentvektoritega, mis moodustavad funktsiooni f mramatuspiirkonna. Seega "kituvad" kik 4 funktsiooni f1 f2 f3 f4 nii, nagu nuab funktsiooni f tevrtustabel. Kuigi osaliselt mratud funktsiooni vib "lpuni" mrata vabalt, ei tehta seda siiski juhuslikult vaid teatud tunnuste jrgi valitakse sobivate tielikult mratud funktsioonide hulgast eelistatuim. Loogikafunktsioonide ESITUSKUJUD Funktsiooni mistahes esituskujust peab selguma, kuidas funktsioon vrtustub oma muutujate kikvimalike vrtuskombinatsioonide korral. tevrtustabel Tevrtustabel on loogikafunktsiooni kige "vahetum" esitus. Ta loetleb esitatava funktsiooni vrtused tabelisse korrastatuna kikide argumendivrtuste kombinatsioonide (ehk argumentvektorite) korral, alustades argumentvektorist 000. . .0 ja lpetades argumentvektoriga 111. . .1 . Eelpool leiduvad juba nited 2-muutuja funktsiooni ja 3-muutuja funktsiooni tevrtustabelitest. n-muutuja loogikafunktsiooni muutujatele x1 x2 . . . xn saab vrtusi 0 ja 1 omistada 2n erineval viisil. Samapalju peab olema ridu ka tema tevrtustabelis. Seega tevrtustabeli suurus kasvab muutujate arvu suurenemisel kiiresti (eksponentsiaalses progressioonis) ja on ilmne, et tevrtustabel sobib ainult vikse muutujatearvuga loogikafunktsiooni esitamiseks (kuni 6 muutujat). numbriline kmnendesitus Numbrilisel kujul 10ndesitus on tevrtustabeli kompaktne herealine esitus, kus 2ndvektorid on asendatud vastavate 10ndarvudega. Funktsiooni 10ndesitus vib olla antud kas 1-de vi 0-de piirkonna jrgi. Eelnev osaliselt mratud nitefunktsioon f ( x1 x2 x3 ) omaks 1-de piirkonna jrgi jrgnevat 10ndesitust:
f ( x1 x2 x3 ) = ( 0, 3, 5 ) 0 ( 2, 4 ) f ( x1 x2 x3 ) = 0, 3, 5 ( 2, 4 )
ehk
loogikaavaldis Suvaline muutujaid sisaldav loogikaavaldis (oma eelpool defineeritud kujul) on vaadeldav loogikafunktsioonina, kuna tema muutujate vrtustamisel omandab ka kogu loogikaavaldis vrtuse 0 vi 1 . Funktsiooni esitamisel avaldisena eelistatakse loogikafunktsiooni normaalkujusid. Loogikafunktsioonide NORMAALKUJUD Algterm on avaldise koosseisu kuuluv loogikamuutuja xi vi selle inversioon xi vi konstant 0 1 . Elementaarkonjunktsioon on ksik algterm vi algtermide konjunktsioon. Jrgneval real on nitena toodud 5 elementaarkonjunktsiooni: x1 x2 x2 x4 x5 x1 x1 x3 x4 x6 x1 x 3 x 6 x 5 x 2 Elementaardisjunktsioon on ksik algterm vi algtermide disjunktsioon. Jrgneval real on nitena toodud 4 elementaardisjunktsiooni: x1 x2 x2 x4 x5 x1 x1 x3 x4 x6 Disjunktiivne normaalkuju ( DNK ) on ksik elementaarkonjunktsioon vi elementaarkonjunktsioonide disjunktsioon. Jrgneval kahel real on mlemal ks DNK : x1 x2 x3 x2 x2 x4 x1 x2 x3 x2 x4 x1 x4 x2 x4 x1 x3 Konjunktiivne normaalkuju ( KNK ) on ksik elementaardisjunktsioon vi elementaardisjunktsioonide konjunktsioon. Jrgneval kahel real on mlemal ks KNK :
w w w w w w w w w w w w w
f ( x1 x2 x3 ) = ( 1, 6, 7 ) 1 ( 2, 4 ) f ( x1 x2 x3 ) = 1, 6, 7 ( 2, 4 )
ehk
( x1 x2 x3 ) ( x1 x2 ) x2 ( x1 x2 x3 x4 ) ( x1 x2 x4 ) Jrgneval kolmel real on igal real avaldis, mis on samaaegselt nii DNK kui ka KNK : x1 x2 x3 x1 x2 x3 x2 Tielik DNK ( TDNK ) on DNK, kus iga elementaarkonjunktsioon sisaldab funktsiooni kiki muutujaid xi Jrgneval viiel real on igal real ks tielik DNK : x1 x2 x3 x4 x1 x2 x3 x4 x1 x2 x3 x1 x2 x3 x1 x2 x3 x1 x2 x1 x2 x1 x2 x3 x4 x2 Tielik KNK ( TKNK ) on KNK, kus iga elementaardisjunktsioon sisaldab funktsiooni kiki muutujaid xi Jrgneval viiel real on igal real ks tielik KNK : ( x1 x2 x3 ) ( x1 x2 x3 ) ( x1 x2 x3 x4 ) ( x1 x2 x3 x4 ) ( x1 x2 x3 x4 ) ( x1 x2 ) ( x1 x2 ) x1 x2 x3 x2 Loogikaavaldise f keerukus L ( f ) on tema koosseisus olevate algtermide arv. Igale funktsioonile leidub palju erinevaid loogiliselt vrdvrseid, kuid erineva keerukusega normaalkujusid. Minimaalne normaalkuju ( MDNK MKNK ) on konkreetse funktsiooni vikseima keerukusega DNK vi KNK.
w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w
Funktsioon vib omada mitut erinevat MDNK-d vi mitut erinevat MKNK-d. V1 = { 001, 010, 100, 110, 111 } DNK on seotud funktsiooni 1-de piirkonnaga ja KNK on seotud 0-de piirkonnaga. Funktsiooni 1-de piirkonnast saab vlja kirjutada selle funktsiooni TDNK. Vaatleme jrgnevat 3-muutuja funktsiooni: x1 x2 x3 f ( x1 x2 x3 )
0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 1 1 0 1 0 1 1
Funktsiooni 1-de piirkonda kuulub 5 argumentvektorit: V1 = { 001, 010, 100, 110, 111 } Koostame DNK, kus iga elementaarkonjunktsioon omandab vrtuse 1 tpselt he 1-de piirkonna argumentvektori korral:
w w w
Saadav DNK osutub TDNK-ks. Vaatleme selle avaldise "kitumist" 1-de piirkonna iga konkreetse argumentvektori korral: 0 0 0 0 = 1 f (001) = 1 1 0 0 0 = 1 f (010) = 0 0 1 0 0 = 1 f (100) = 0 0 0 1 0 = 1 f (110) = 0 0 0 0 1 = 1 f (111) = 0 . . . ja samuti lejnud kolme (ehk 0-de piirkonna) argumentvektori korral: 0 0 0 0 = 0 f (000) = 0 0 0 0 0 = 0 f (011) = 0 0 0 0 0 = 0 f (101) = 0 Ilmneb, et saadud TDNK vrtustub tevrtustabeliga kokkulangevalt.
w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w w
f ( x1 x2 x3 ) = x1 x2 x3
x1 x2 x3
x1 x2 x3
x1 x2 x3
x1 x2 x3
*********
***********
___________
______
********
1
1
1
1
1
1
1
1
********
********
1
1
1
1
1
x
x
x
x
x [
1
1
1
[ 1[
d [
d [
0 tnatsnok
QRRLVWNQXMQRN
[ [
nooisrevni inooistakilpmi
[
[
DMXWXXP HQHPLVH
[
nooisrevni inooistakilpmidrp
x
x
DMXWXXP HQLHW
x
,9
YDWVLOlY
DJLOXGRRP DPPXV
[
[
nooistknujsid
x
x
ORRQ L HFULH3
nooisrevni inooistknujsid
x
x
stnelavivke
x
[
[ [
1
) 2x 1x ( f
) 2[ 1x
[ [ 2[ 1[ [ [ (
1 1 f f 1 2f
I
2 [ 1[
2[ 1[
I
2[ 1[
I
2[ 1[
I
2[ 1[
11 01 10
f
x 1x
x x ( [ [
) x x
x [ (
1 0f
DMXWXXP
x x( 1
[ = )[
WQDWVQRN DM WQDWVQRN DN HQRRLVWNQXI GLHQ HVNDWDWHPLQ VLLV L}Y
WODYLVS VXWUllY LQRRLVWNQXI QR OXKXM ODPHO}P OHGQHQ DQX. VNHGLQRRLVWNQXI DMXWXXP
GDQ GDYXWXVR WOXNLOHJHW NKH [ WVDMXWXXP LQRRLVWNQXI XWO}V LH WVHGQHQ HQDPLLY DM HQHPLV(
LQRRLVWNQXI
ajutuum
d [
WDYHQLUH
[
2[ 1x
1 =
)[( I
)[( I
)[( I
0 =
)x
1
1
f
x d [ = [( f
HKHWDNLJRRO
037,,3: VXQL$
00
[ 1[
) [ [
f
f
********
,9 WVHWKHW WODYHQLUH QR
********
DJHVXWUllY
[ [
HODUURNXOR ELUHHJDHU
,9 YDWVLOlY
DJLOXGRRP DPPXV
1 QR
GLXN
GQDUHSR HQLHW L}Y HQHPLVH VDN LXN VLLV VN1 EXWVXWUllY ODUURN HWVXWUllYLGQHPXJUD WOXQLD QR VXYHQLU( EHQPOL
52;
HKH7
[ [
LQRRLVWDQLEPRN
52
DJHWKHW VXVDQUDV L
52;
52;
DM
52
DM
,9 YDWVLOlY
DN HVNDWDWHPLQ
******
WLOXGRRP GXWDGQHNDU QR HOHOOLP DJDPPXV HVLOLWHHPWLUD HWDMXWXXP VNHVGU}Y ODUURN LQRRLVWDQLEPRN DM LJL}N HWVXWUllYHWDMXWXXP EXWXVR VXWUllY LQRRLVWNQXI WH WVXORDMVD EHQHOXW DJLOXGRRP DPPXV VXWHPL1
[ d
nooistakilpmidrp
1x
2x
1[ d
QRRLVWDNLOSPL
[
1[
QRRLVWNQXI LUHIIHKF6
nooisrevni inooistknujnok
[ [
1 tnatsnok
GHVXWUllYLGQDUHS2
2x 1x x [
2[ 1[ [ 1x [ [ x [
[
[ x
` 01 ,10 ^
d [ [
[ [ = d
[
HVLGODY$
f
f
LWXPDV
2[
d [ 1[
[ 1[ d
VLGODY$
x
11 01 10 00
[ 1[
1
( f
][
\[
\ [
]\[
VNHVLGLSXWVDY
LGQDWVQRN DJHH6
VNHVLPHOGU}Y HGQHQ GLOHEDWVXWUllYH}W HORRS DPHO}P HVXGU}Y HPDWXYUD NKH ODUURN LQRRLVWDQLEPRNVXWUllY LJL}N HWDMXWXXP GHVXWUllY HORRS DPHO}P HVXGU}Y DYHQOHH DGDWXYUD EL}Y VNHVLPLOORUWQRN HVXVYLLWXELUWVLG HVLOOH6
BB
DJHWKHW DPPXV HGQHQ WVHV DWWlM LWXPDV QR GLDMXWXXP GLDYDWHGLLO NW YUDVLUDDS EL}Y DJHH6
[ x x
* *
* *
* *
* *
VHWLLO VLLV
0 [ 1 1
d [ [
[ [ d
DJHWKHW VHWLL/
= [ x x x x x
[ x x x
[ x x x
[ x
QR
d [ [
[ [ d
][
HQYLLWXELUWVLG VHWKXV
HWKHW DN QR QRRLVWNQXMQR.
OHVLPDGQHVLHW HWVLGODYDDNLJRRO VNHVLPDGQHVD
WVRHVVXGQHVD WDYHQOH(
[ [
][
\[ =
\ [
GHVXGDPR
tses
x 1
DJHWKHW HQLPWLLOHGUXXM
HWQDWVQRN
aduum ie enimtiil
idnatsnok aj
no
[
:tsutrv esidlava
DQX.
**
**
VHGDWXVDN
x x
x x
[
WVRHV
][
\[
\ [
HVXGU}9
d\[ ]
]d[ \
d\ ]
]d ([ \
) d [( \ [ ] d
] [ ) d [( ] [ \ [ \ d
][\[ ][
d\[ ]
]d[ \
d\[ ]
tloop tamelm
][
d\[ ] \[
][
x1 x3 ]
Z Z Z Z
x2
= =
________
Z Z Z
Seega osutub, et kontroll: Esialgne avaldis ja lihtsustatud avaldis peavad omandama sama loogilise vrtuse (0 vi 1) muutujate xi kikide vrtuskombinatsioonide korral:
x1 x3 ]
x2
x1x2
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
Loogikaavaldise algtermiks (lihtliikmeks) nimetatakse ksikut loogikamuutujat x i vi tema inversiooni x i vi avaldise koosseisu kuuluvat konstanti 0 vi 1.
Z Z Z Z
Z Z Z Z
[ ( x1 x2)
Z Z
Z Z
x1 x2 x2
x1x2
x2 x2
x1x2
Seega omavad nii esialgne lihtsustatav avaldis kui ka lihtsustatud avaldis samasugust tevrtustabelit ehk nad on loogiliselt vrdsed:
x1x2 x3
[ ( x1 x2)
Z Z Z Z
( x1
x2 )
x2
( x1
x2 ) x2
( x1
x2) x2
[(1 1)
Z Z Z Z
[ x1
x2
x1 x3 ]
x2
[(1 1)
Z Z Z Z
[(1 0)
Z Z Z Z
Z Z Z Z
[ ( x1 x2)
[(1 0)
nide: Lihtsustada jrgnev 3-muutuja loogikaavaldis. Kontrollida lihtsustatud avaldise ning esialgse avaldise samavrsust.
[(0 1)
Z Z Z Z
[(0 1)
Z Z Z Z
[(0 0)
Z Z
Loogikaavaldiste (loogikafunktsioonide) teisendamine on nende viimine muule samavrsele (lihtsamale) kujule. Loogikaavaldisi teisendatakse loogikaalgebra phiseoseid ja loogikafunktsioonide asendusseoseid rakendades.
[(0 0)
__ 0 __ 0 __ 0 __ 0 __ 1 __ 1 __ 1 __ 1
Z Z Z Z
x1x2 x3
[ ( x1 x2)
x1 x3 ] x2
0 ] 0 = 1 1 ] 0 = 1 0 ] 1 = 0 1 ] 1 = 0 0 ] 0 = 0 1 ] 0 = 0 0 ] 1 = 0 1 ] 1 = 0 __ 0 __ 0 __ 0 __ 0 __ 1 __ 1 __ 1 __ 1
x1 x2
__ 0 __ 0 __ 1 __ 1 __ 0 __ 0 __ 1 __ 1 = 1 = 1 = 0 = 0 = 0 = 0 = 0 = 0
x1 x3 ] x2
x1 x2
1 1 0 0 0 0 0 0
1 1
0 0 0 0 0 0
KARNAUGH' KAARDID Karnaugh' Kaart on tevrtustabeli sihiprane topoloogiline mberpaigutus tasandil vi ruumis. Karnaugh' Kaardi phiomadused: n-muutuja kaardi igal ruudul on n naaberruutu suvalised 2 naaberruutu on teineteise lhiskoodidega
(lhiskoodid on kahendvektorid, mis erinevad ainult hesainsas oma kahendjrgus)
x4 x5 00 x 2x 3
01
11
10
x4 x5 00 x 2x 3
01
11
10
00 01
0
00000
1
00001
3
00011
2
00010
00 01
16
10000
17
10001
19
10011
18
10010
4
00100
5
00101
7
00111
6
00110
20
10100
21
10101
23
10111
22
10110
11
12
01100
13
01101
15
01111
14
01110
11
28
11100
29
11101
31
11111
30
11110
10
8
01000
9
01001
11
01011
10
01010
10
24
11000
25
11001
27
11011
26
11010
2- ja 3- ja 4-muutuja funktsiooni Karnaugh' Kaart on tasandiline (2-mtmeline) 5- ja 6-muutuja funktsiooni Karnaugh' Kaart on ruumiline (3-mtmeline)
x 2 x3 x 1 00
0 1
x1 = 0 x1 = 0 x1 = 1
x1 = 1
01
11
10
x3 x 4 x 1 x 2 00
00 01 11
01
11
10
0
000
1
001
3
011
2
010
0
0000
1
0001
3
0011
2
0010
x x x x
3 4
5 6
00
01
11
10
00
01
11
10
00
01
11
10
00
01
11
10
4
100
5
101
7
111
6
110
4
0100
5
0101
7
0111
6
0110
00
1 5 13 9
3 7 15 11
2 6 14 10
16 20 28 24
011000
17 21 29 25
19 23 31 27
18 22 30 26
48
110000
49 53 61 57
51 55 63 59
50 54 62 58
32 36 44 40
101000
33 37 45 41
35 39 47 43
34 38 46 42
010000 010001
100000 100001
01 4
52 60 56
111000
000100 000101
12
1100
13
1101
15
1111
14
1110
11 12 10 8
001111 001110
011111 011110
111111 111110
101111 101110
8
1000
9
1001
11
1011
10
1010
001000
x 1 x 2 = 00
x x
1 2
x 1 x 2 = 01
x 1 x 2 = 11
x 1 x 2 = 10
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 1 0 1 1 1 0 1
Z Z Z Z
x1 x2 x3
x1x2
x3
x1
x 2 x3
00
01
11
0 1
0 1
1 1
1 1
00 01 11 10
10
0 0
Karnaugh' kaardil vib vlja valida kindlate mtmetega ruutude gruppe, mida nimetatakse kontuurideks. 2-mtmelise Karnaugh' Kaardi kontuuride vimalikud suurused :
1 1 ruutu 1 2 ruutu 14 22 24 44
2 m 2n
3-mtmelise Karnaugh' Kaardi kontuuride vimalikud suurused : 1 1 1 ruutu 1 1 2 ruutu 114 121 122 124 . . . . . . 444 Seega pole Karnaugh' kaardi kontuurideks ruutudegrupid kljepikkusega 3 ruutu. lejnud vimalikud kljepikkused on kontuuridel lubatud. Karnaugh' kaardi iga kontuur vastab hele kahendvektorite intervallile:
x 2 x3 x3 x 4 x 1 x 2 00
00 01 1 01 11 10
x3
x1 x 2 x3
00
x3
01 11
x3
10
x3 x 4 x 1 x 2 00
01
11
10
0 1
x1 x1 x2 x2
00
x1
01 11
x2
x1
10
x3
x3
x1
00
01
11
10
Loogikafunktsioonide MINIMEERIMINE Loogikafunktsiooni minimeerimine on tema esitamine minimaalse keerukusega normaalkujul minimaalsel disjunktiivsel normaalkujul (MDNK) vi minimaalsel konjunktiivsel normaalkujul (MKNK). Loogikafunktsioone vib minimeerida nende esituskuju teisendamisega loogikaalgebra phiseosed ja loogikatehete asendusvalemeid kasutades. Loogikafunktsioonide minimeerimiseks on olemas ka spetsiaalsed meetodid, mis leiavad suvalisele loogikafunktsioonile tema minimaalse normaalkujulise esituskuju: MDNK vi MKNK. Loogikafunktsiooni minimeerimine KARNAUGH' KAARDI abil. Loogikafunktsiooni minimeerimine on Karnaugh' kaardi philine rakendusvaldkond. Karnaugh' kaart on kige eelistatum minimeerimisvahend. Loogikafunktsiooni minimeerimiseks Karnaugh' Kaardi abil: paigutada funktsiooni tevrtustabel Karnaugh' kaardile. katta kik '1'-d ( vi kik '0'-d ) vimalikult vikse arvu vimalikult suurte kontuuridega.
{ 000 010 }
11
{ 100 }
{ 1101 1001 }
Eelnevas nites on vljaeraldatud 3 kontuuri 3-muutuja K. Kaardil ja 3 kontuuri 4-muutuja K. kaardil. Iga kontuuri jaoks on nidatud ka temale vastav intervall. n-muutuja kaardil on 2n kattuvat piirkonda:
x1=0 x1 x1
x1=1 x2
x2=0 x2
x2=1
. . . . . .
. . . .
xn=0 xn
xn=1
xn
kirjutada kontuuride konstantsete muutujate jrgi vlja MDNK vi MKNK liikmed. Iga kontuur annab he elementaarkonjunktsiooni vi elementaardisjunktsiooni. nide: Vaatleme eelpoolset 3-muutuja funktsiooni f ( x1 x2 x3 ) tevrtustabeliga
1de kontuuri ulatuses konstantne muutuja 1de kontuuri ulatuses konstantne muutuja
xi=1 xi=0
01
11
10
0 1
1 1
1 1
0 0
0de kontuuri ulatuses konstantne muutuja 0de kontuuri ulatuses konstantne muutuja
f:
1
xi=0 xi=1
elementaardisjunktsiooni koosseisu vastava otsevrtuses muutuja annab elementaardisjunktsiooni koosseisu vastava inversioonis muutuja
MDNK saamiseks katame 1de ruudud vimalikult vikse arvu vimalikult suurte kontuuridega: MKNK saamiseks 0de ruudud:
x1 x 2 x3
00 01 11 10
x 2 x3 x 1 00
0 1
01
11
10
0 1
0 1
1 1
1 1
0 0
0 1
1 1
1 1
0 0
Kontuurid tohivad osaliselt kattuda suurendada igat kontuuri maksimaalsuuruseni. 1de kontuuri ei tohi sattuda 0lle ja vastupidi.
1de ruudud (1de piirkond) on kaetav kahe max kontuuriga: 4se ja 2sega.
= 1) ja
x2=0
Z Z Z Z
Z Z Z Z
0 0 0 0 0 1 0 1 0 Kaardile: 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Z Z Z Z
annab
elementaarkonjunktsiooni koosseisu vastava otsevrtuses muutuja annab elementaarkonjunktsiooni koosseisu vastava inversioonis muutuja
xi xi x3=0 x3=0
x1 x2 x3
f
0 1 0 1 1 1 0 1 Olgu eesmrk esitada sellele funktsioonile MDNK ja MKNK. Kanname tevrtustabeli Karnaugh'
x 2 x3 x 1 00
0de ruudud (0de piirkond) on kaetav samuti kahe kontuuriga: mlemad 2sed. he kontuuri ulatuses on konstantseteks muutujateks
Teise kontuuri ulatuses on konstantseteks muutujateks Iga 0de kontuur mrab DNK-s he elementaardisjunktsiooni: x3 ) (x2 x3) MKNK: f ( x1 x2 x3 ) = ( x 1 annab
x1=0 x2=1
ja ja
xi xi
Loogikafunktsiooni minimeerimine McCLUSKEY' MEETODIGA Quine - McCluskey meetod on loogikafunktsioonide minimeerimismeetod, mis on rakendatav suvalise loogikamuutujate arvu korral. Vaatleme numbrilist McCluskey meetodit , mida rakendatakse minimiseeritava loogikafunktsiooni 10ndesitusele. McCluskey meetod kasutab mistet "10ndarvu indeks", mis on 1de arv selle 10ndarvu kahendkujus. Funktsiooni MDNK saamiseks lhtutakse 1de piirkonnast ja MKNK saamiseks 0de piirkonnast. Olgu antud 3me muutuja loogikafunktsioon, millele vaja leida MDNK:
3. Kleepida naabersektsioonide intervalle kokku suuremateks intervallideks. kokku kleepida saab ainult naabersektsioonide intervalle kokku kleepida saab naabersektsioonide selliseid intervalle, millel on sama vahe intervalle tohib kokku kleepida ainult siis, kui kleebitavate intervallide omavaheline vahe ("uus vahe") on samuti 2n
index 0 1 2 1de pk 0 1 3 5 6 3 7 2-sed 0-1 1-3 1-5 3-7 5-7 6-7 vahe 1 2 4 4 2 1 4-sed 1-3-5-7 1-5-3-7 vahe 2,4 4,2
f ( x1 x2 x3 ) = ( 0, 1, 3, 5, 6, 7 ) 1 = ( 2, 4 ) 0
MDNK leidmiseks:
4. Korrata rekursiivselt eelmist sammu seni kuni vimalik viimasel kleepimisel saadud intervallide edasikleepimiseks veelgi suuremateks.
(kesolevas nites ei saa enam 4-seid intervalle kokku kleepida 8-steks)
Kleepimisel moodustunud korduvaid intervalle vib ignoreerida ehk jtta kleepimistabelisse ldse mrkimata. (1-5-3-7 on juba olemas: 1-3-5-7) 5. Moodustunud lplikus kleepimistabelis mrgistada kik lihtimplikandid:
index 0 1 2 1de pk 0 1 3 5 6 3 7 2-sed 0 - 1 A2 1-3 1-5 3-7 5-7 6 - 7 A3 vahe 1 2 4 4 2 1 4-sed 1-3-5-7 A1 vahe 2,4
2. "Kleepida" naabersektsioonide arve kokku "kahesteks" intervallideks. omavahel kokkukleepida saab ainult naabersektsioonide arve kokku kleepida saab ainult selliseid naabersektsioonide arve, mille vahe on 2n ehk 1 vi 2 vi 4 vi 8 vi 16 jne. viksema indeksiga sektsioonist prit kleebitav arv peab ka oma vrtuselt viksem olema
index 0 1 2 1de pk 0 1 3 5 6 3 7 2-sed 0-1 1-3 1-5 3-7 5-7 6-7 vahe 1 2 4 4 2 1
6. Koostada lihtimplikantide tabel, mis nitab 1de piirkonna katmist lihtimplikantide poolt:
lihtimpl. \ 1de pk A1 A2 A3 1 0 1 1 1 1 1 3 1 5 1 6 7 1
7. Valida lihtimplikantide tabelist vlja minimaalne arv ridu, nii et kik veerud oleks "kaetud". 8. Valitud ridadele vastavatest lihtimplikantidest kirjutada igahest vlja ks tema suvaline kahendvektor:
Taandatud DNK
Loogikafunktsiooni implikandiks nimetatakse igat tema 1de intervalli. nide: Olgu 3me muutuja funktsioon: Sellel funktsioonil on 4 hevektorilist 1de intervalli: {110} {011} {100} {101} 01 11 10 x 1 00 ja 3 kahevektorilist 1de intervalli: 0 1 1 0 0 {100 101} {001 011} {001 101} f: 1 1 0 0 1 Suuremaid (ehk "neljaseid") 1de intervalle sellel funktsioonil pole. Seega omab vaadeldav 3me muutuja funktsioon 7 implikanti.
x 2 x3
x1 x2 x3
4 A1 A2 A3 0 0 1 2 0 0 1 1 1 1 1
9. Igast kahendvektorist elimineeritakse vlja need jrgud, mille kaaluga vrdne vahe kaasnes selle lihtimplikandiga A:
x1 x2 x3
4 A1 A2 A3 0 0 1 2 0 0 1 1 1 1 1
x3 x 1 x2 x1 x2
( A1-ga kaasnes vahe 2,4 ) ( A2-ga kaasnes vahe 1 ) ( A3-ga kaasnes vahe 1 )
Lihtimplikandiks nimetatakse maksimaalset (ehk suurimat) implikanti. Lihtimplikant ei sisaldu tervikuna mitte heski veelgi suuremas selle funktsiooni implikandis. Eelneval nitefunktsioonil on 3 lihtimplikanti ehk kik kahesed implikandid on lihtimplikantideks. kski "hene" implikant pole siin lihtimplikandiks. Taandatud disjunktiivne normaalkuju on funktsiooni kigi lihtimplikantide disjunktsioon.
x 2 x3 x 1 00
0 01 11 10
10. Kirjutatakse vlja MDNK. Kahendvektori silinud jrguvrtus '1' annab vastava muutuja otsevrtuse ja '0' annab inversiooni:
Z Z
MDNK :
f = x3
x1 x2
x1 x2
f:
x 2 x3 x 1 00
0
01
11
10
0 1
1 1
1 0
0 0 f:
0 1
1 1
1 0
0 0
1. Lhiskoodid sattuvad indeksite jrgi grupeerides naabersektsioonidesse. Seega on Karnaugh' kaardil naaberruutudes paiknevad koodid ka McCluskey kleepimistabelis naabersektsioonides ehk McCluskey meetod kleebib kokku neidsamu koode, mis ka Karnaugh' kaardil oleksid kokkuseotavad. 2. Intervallide kasvatamine kleepides on samavrne kontuuride suurendamisega kaardil. Igale kleepimistabelis moodustunud intervallile vastab ks kindel kaardikontuur.
MDNK
Taandatud DNK
Vaadeldava funktsiooni 1de piirkond nnestub katta kahe kontuuriga, mis x1 x3 annavad tema MDNK-ks: f ( x1 x2 x3 ) = x 1 x 2 Funktsioonil on 3 lihtimplikanti, mis annavad tema Taandatud DNK-ks: x1 x3 x2 x3 f ( x1 x2 x3 ) = x 1 x 2
Z Z Z Z
Z Z Z Z
MDNK koosneb alati osadest vi kikidest Taandatud DNK elementaarkonjunktsioonidest. Funktsiooni MDNK ja Taandatud DNK vivad olla vrdsed.
Kuna inversioon on ainus unaarne loogikatehe, siis invertor on ainus he sisendiga loogikaelement. lejnud loogikaelemendid omavad 2 vi enam sisendit. 2. JA-element teeb sisendite loogilist korrutamist ehk konjunktsiooni. (AND)
4. JA-EI element teeb oma sisendite konjunktsiooni inversiooni. (NAND) nide: ____________ x 3 ) vastab loogikaskeem: Loogikaavaldisele f = x 1 ( x 2 5. VI-EI element teeb oma sisendite disjunktsiooni inversiooni. (NOR)
x1 x2 x3
&
Igast loogikaskeemist vib vlja kirjutada talle vastava loogikaavaldise (loogikafunktsiooni). Iga loogikaavaldise jaoks vib koostada teda realiseeriva loogikaskeemi. Kuna loogikaavaldisel vib olla mitu erinevat samavrset esituskuju, siis sobivad avaldise esitamiseks ka mitmed erinevad loogikaskeemid.
XOR
x 2 kaudu:
Z Z Z Z
:tlavengrj .
L
VVDON HGLQRRLVWNQXI
. . n. 0. 2. 1. f 1. 0. 0. 0 3c 2. 1. f 0. = 0. 3. . . . 2. 1. = 1 . WVHGLWQDWVQRN VN ODUURN LURWNHY HVWHHUNQRN DJL EXGODYD WVHOOLP HOXMXN VLGODYD OHPLRW etiruget aga butsusthil essidlava lesimadnesa etirotkevtnemugra edneN
x . . . 2x 1x
x . . . 2x 1x
WVDHU WVHVDPLLY DM WVHVHPLVH LOHEDWVXWUllYH}W DW DKlQ QR K DM 0K HVVHGLVVDON VXYXOXXN LQRRLVWNQX) VN1 LWXPDV HVL QRRLVWNQXI EXWVXWUllY VN1 OHVLPDWVXWUllY HWDMXWXXP HGLNL}N DW LXN YDWLOLlV HWK QR QRRLVWNQX)
}1 = 1
. . .
11
:larrok etavengrj ak amithek at baep siis ,larrok etirotkevtnemugra edikik amithek larrok inooistknuf esraaenil baep n[ n. [ F [ F
F VLGODYD DQX.
HQLPGLHO
VVDON HGLQRRLVWNQXI
3F
F F F HGLWQDWVQR.
1 0
HOHVUDDHQL/
}1 0 { c WQDWVQRN DJL VXN 3[ 3. 2x 2. 1x 1. 0. . . . lujuk vatatise no at iuk ,enraaenil no nooistknufakigool ajutuum-n < 3[ 3c
. . .
2x 2.
1x 1 .
0.
nx ... 2x 1x
VVDON HGLQRRLVWNQXI
K ) x ... x x ( f ^ etesraaenil
O
` ^
3. 2c
1c
.larrok
}1 0 {
VN0 LWXPDV HVL QRRLVWNQXI EXWVXWUllY VN0 OHVLPDWVXWUllY HWDMXWXXP HGLNL}N DW LXN YDWLOLlV LOOXQ QR QRRLVWNQX)
}0 = 0
. . .
0 0( 1
VVDON HGLQRRLVWNQXI
0c
dinooistknuf desraaenil dinooistknuf desnootonom dinooistknuf davatarp dinooistknuf davatilis eth dinooistknuf davatilis illun
',66$/. HGLQRRLVWNQXIDNLJRR/
<
3c
= n.
3x ... x x
f >
3z... z z
3x ... x x |
[ x f { = mK etesnootonom
,vatarp
_
) 3x
. . . x ( f { =
etavatarp
) 3x . . . x ( 1 { = 1K etavatilis et-1
3[ [ f ^ 0K etavatilis ill-0
l
. 2. 5. . K
0
.vatillortnok itsegrek tsilebatsutrvet inooistknuf ajutuum-2 avadledaav no )susraaenil inooistknuf ak samas khe( suvithekettim iv suvithek esudrv elleS
NKH HQUDDHQLO HORS ) 3[ [ [ ( 1 QRRLVWNQXI YDGOHGDDY VLLV 3[ 3. 2x 2c 1x 1c 0c 3x ... x x 1 ODUURN HOOLP n[ 2[ 1[ URWNHYWQHPXJUD VN WODPHKlY EHQPOL LX. WODYHJQDOXNNRN DJHVXWUllY XNLOHJHW LQRRLVWNQXI DYDWLOORUWQRN EXWVXWUllY VLGODYD VDN DGOHUU}Y DM HVVLGODYD GXGDDV DGDGQHVD GLURWNHYWQHPXJUD GXQllMHO NL}N DN EHOXW VNHVLPLOORUWQRN HVXVUDDHQLO LQRRLVWNQX) ODUURN HWLURWNHYWQHPXJUD HNLODPL}Y 1x 1. 0c sidlava dudaas baep DPHW LJL}N DPLWKHN nx n. 2x 2. ,skesraaenil skutuso nooistknuf tE .larrok irotkevtnemugra )1+n( ednen tsuj skithek sidlava te ,dutilav tlesilles igno . itnatsnok )1 n NL}N DQXN ODUURN
i
ODUURN DPHW LXN VNHVUDDHQLO 2[ 1[ f QRRLVWNQXI DMXWXXP EXWXVR DJHH6 DWWlM DUl GDYDWHGLLO GHVDLLO VHVLGODYD VDYHQOHH EL}Y VLLV 1 1 1 1 HWKHW WODYDWVDY DQX. HOHWVXGDPR 00(f 1 1 1 1 1 :elujuk esidlava villortnok tsusraaenil inooistknuf ajutuum-2 budnesiet ,agetsidlava etavarm dien c didnatsnok sesidlava savenlee sedadnesA . . f . . NKH f . . WVHVLPLOORUWQRN HVXYLWKHN HVXGU}Y HK WOXQLD DJHHV EDVLLS VNHVLPLOORUWQRN HVXVUDDHQLO ) [ [ f inooistknuf ajutuum-2 0c 0 1 ( f = 0 2c 1 1c
:larrok
01
10
00
2c 1c 0c
:tsilebatsutrvet
[ [
.tsusraaenil
inooistknuf avadledaav davatiel no . didnatsnoK 2[ 2. 1[ 1. 0. x [ 1 OXMXN YDWDWLVH QR DW LXN HQUDDHQLO QR ) [ [ f HGLQRRLVWNQXI DMXWXXP HPHOWDD9
i
[ [
. 1 . 1 . 1 1
)01(f
)10(f
LQRRLVWNQXI DMXWXXP
3 WDYDGOHGDDY DGXWXVR LNVLLV VLGODYD GXGDDV HHV EL}Y [ 1. 0. VDPHOR DJHHV 3[ 3. . . . [ . sidlava ignim tsimdiel . editnatsnok tsarp no liem igiuK .enraaenil no nooistknufakigool agi te ,adneht ie ees diuk ,elinooistknuf sehatsim } 1 0 { n. . , . ,
. GLGQDWVQRN GDYLERV DGLHO WVLOHEDWVXWUllYH}W LQRRLVWNQXIDNLJRRO EDDV WOHVLOOH6 )1. . .000(1 )0. . .000(1
= )1. . .000(1
2x 2c
1x 1c
0c
sidlava dudaaS
)00(1
0 2c
0 1c
)10(f
1 2c
0 1c
0c 0c
ELWKHN
x n.
. . .
x 2.
GHHQ GDYRDN
[ nc
) nx ... 2x 1[ ( f
. . . . . . . . . . . . . . .
[ 2[ 1[ ( 1
.
. . .
.
3.
. .
. . . 0.
.didnatsnok khe dinooistknuf ajutuum-0 no inooistknuf 2 aj dinooistknuf ajutuum-1 tlukileget no inooistknuf 4 .inooistknuf 2 tlunia agajutuum HVLOXOR HKDN no tsinooistknuf ajutuum-2 tsesraaenil ts-8 te ,benmlI
2
_______ x x DJHWKHW :elles bireetrevni HOHVLGODYD HQLPDVLO 1 LGQDWVQRN DM GLQRRLVUHYQL HVLHWHQLHW QR DJLOXGRRP DPPXV DM VWQHODYLYNH DQXN HQDUlSVXWRR QR VNHVLPDWLVH LVWQHODYLYNH VLGODYD HQLOOH6 x 1x 2x 1x
HPDDV 2. 1. 0.
GLGQDWVQRN VHGLH/
2 x 1 x ) x x ( 1
NKH 2. 1. 0.
x
2[
[ = [
______
[ = 1
x x
1 0 1 0 1 1 0 0
WVXVUDDHQLO
x x
1[
x = ) [ [
HQRRLVWDQLEPRNHWVXWUllY GLDYHQLUH 1x 1. 0. esidlava no ujlap c HGLWQDWVQRN NKH GLVXMXNLUH 2x 2. iuk ,ujlapamas no x [ f HQRRLVWNQXI DMXWXXP GLHVUDDHQLO GLDYHQLU(
L
0 = 0
[ .
[ 1c
0c
2c 1c 0c
1[ 2[
0 = 1
1[ [ 2
XMXNLUH LJQR
2x 2. 1x 1. c = x x OXMXN YDWDWLVH DPHOR DPHW DN EDHS VLLV VNHVUDDHQLO VXWXVR VWQHODYLYNH DN DQX. = 2. = 1. = . VXN [ . [ . . = ) [ [ ( I WVHVLGODYDGO LQRRLVWNQXI DMXWXXP HVUDDHQLO 1 VLGODYD DJLOXGRRP DPPXV LQRRLVWNQX) [ [ = ) x x
= ) [ [ ( I
[ [
f f
Ssteemi tielikkuse kontrollimiseks ja tielike ssteemide koostamiseks tuleb teada ssteemi moodustavate funktsioonide omadusi ehk nende kuulumist vi mittekuulumist klassidesse K0 K1 Kp Km Kl Loogikatehete omaduste mramiseks tuleb vtta vaatluse alla need 2-muutuja funktsioonid, mis neid tehteid esitavad. Eelpool vaadeldud 16-st 2-muutuja funktsioonist f 0 . . . f 15 keskendume jrgnevatele: f 0 = 0 (konstant 0) f 1 = x 1 x 2 (konjunktsioon) ______ f 2 = x 1 x 2 (implikatsiooni inversioon) f 6 = x 1 x 2 (summa mod 2) ______ f 7 = x 1 x 2 (disjunktsiooni inversioon) f 8 = x 1 x 2 (disjunktsioon)
Z Z Z Z Z Z Z Z
Kui loogikaavaldis kuulub kuhugi kindlasse ssteemi, siis on ta esitatud ainult selles ssteemis leiduvaid loogikatehteid (funktsioone) kasutades. nide: Avaldis ( x 1 x 2 ) ( x 1 x 2 x 3 ) kuulub esimese nitena toodud ssteemi, kuna ta ei sisalda muid tehteid peale konjunktsiooni, implikatsiooni ja inversiooni. Loogikafunktsioonide ssteem on tielik, kui temas sisalduvaid funktsioone (tehteid) kasutades on vimalik esitada suvalist loogikaavaldist (ehk suvalist loogikafunktsiooni). Ssteemi tielikkuse kriteerium (Post-Jablonski kriteerium):
_______ f 3 = x1 f 5 = x2 f 4 = x2 x1 f 10 = x 2 f 11 = x 2 x 1 ( prdimplikatsioon) mis on oma operandi triviaalsed taasesitused ( f 3 f 5 ) vi mis dubleerivad (vahetatud operandidega) mnda eespool loetelus juba leiduvat tehet. Kuna ssteemi tielikkuse kriteerium phineb funktsioonide mittekuulumisel klassidesse K0 K1 Kp Km Kl , siis jrgnev tabel esitab 2-muutuja funktsioonide omadusi, rhutades nende mittekuulumist konkreetsesse klassi:
Loogikafunktsioonide ssteem on tielik, kui ta sisaldab vhemalt hte 0-lli mittesilitavat funktsiooni; vhemalt hte 1-te mittesilitavat funktsiooni; vhemalt hte mittepratavat funktsiooni; vhemalt hte mittemonotoonset funktsiooni; vhemalt hte mittelineaarset funktsiooni.
Nende viie tingimuse samaaegse tidetuse nue ei thenda, et tielik ssteem peaks koosnema vhemalt viiest loogikafunktsioonist. Tielikuks vib osutuda ka ainult he funktsiooniga ssteem { f }, kui selle ssteemi ainus funktsioon f ei kuulu mitte htegi klassi viiest: ( f K 0 ) ( f K 1 ) ( f Kp ) ( f Km ) ( f Kl )
f0 f1 f2 f6 f7 f8 f9 f 12 f 13 f 14 f 15
{ f14 } { f 2 f9 } { f0 f13 } { f2 f13 } { f6 f13 } { f2 f12 } { f12 f13 } { f1 f12 } { f7 f12 } { f2 f15 }
= = = = = = = = = =
{ 0 }
__ { }
{ } {
__ __ __
{ { &
__ { 1 }
2-muutuja funktsioonide f 0 . . . f 15 omadused Kui koostada alamhulk { f i f j . . . } { f 0 . . . f 15 } selliselt, et funktsioonide { f i f j . . . } read katavad hiselt mrgiga eelnevas tabelis kik veerud K0 K1 Kp Km Kl , siis { f i f j . . . } osutub tielikuks ssteemiks. Baas on minimaalne tielik loogikafunktsioonide ssteem. Suvalise funktsiooni vljajtmisel baasist tema tielikkus kaob. Tielike ssteemidega tegelemisel on huvipakkuvad just baasid. Eelnevast tabelist ilmneb, et funktsioonidest f 0 . . . f 15 ehk loogikatehetest ja konstantidest 0 ja 1 saab moodustada 17 baasi :
{ f 0 f 1 f9 } = { f 0 f 7 f9 } = { f 6 f 7 f9 } = { f6 f7 f15 } = { f 1 f 6 f9 } = { f1 f6 f15 } =
{ 0 & } { {
{ & } { & 1 }
(Zegalkini baas e. Read-Mlleri baas)
Ilmneb, et konjunktsiooni inversioon moodustab ksikult baasi (JA-EI baas) disjunktsiooni inversioon moodustab ksikult baasi (VI-EI baas) Seega saab mistahes loogikaavaldist esitada kujul, kus esineb ainult JA-EI (VI-EI) tehe. Nendes baasides avaldistele saab koostada vastava loogikaskeemi, kasutades skeemis ainult JA-EI (VI-EI) elemente.
Z Z Z Z
Z Z Z Z
Z Z Z Z
{ 0
Z Z Z
Z Z Z Z
fi
K0
K1
Kp
Km
Kl
{ f8 }
__
(implikatiivne baas)
}
} __ (implikatiivne baas) (Boole'i konjunktiivne baas) (Boole'i disjunktiivne baas)
}
__
} } 1 }
Loogikafunktsioonide teisendused baasidesse Loogikaavaldise esitamiseks mingis kindlas baasis tuleb ta esitada selle baasi loogikatehete abil. Baasis puuduvad tehted tuleb selle baasi leminekuseoste abil asendada baasis olemasolevate kaudu. Kuna mistahes loogikatehe on esitatav elementaartehete inversiooni, konjunktsiooni ja disjunktsiooni abil, siis avaldise teisendamiseks konkreetsesse baasi piisab kolmest leminekuseosest, mis asendavad just baasis puuduvad elementaartehted baasis olemasolevate tehete kaudu. __ __ } { & } ei oma erandina leminekuseoseid, kuna nendesse Baasid { teisendamiseks piisab sobiva normaalkuju topeltinversioonist koos jrgneva de Morgani seaduse rakendamisega: _____ __ _____ { } KNK _____ __ _____ { & } DNK Teistele olulistele baasidele koostame leminekuseosed:
{ }: x = x (x x )
Z Z Z Z Z
x1
x2 = x1 x2 = x1 ( x1 x1 ) x2
x 1 x 2 = ( x 1 ( x 2 0 )) 0 = = ( x 1 ( x 2 ( x 1 x 1 ))) ( x 1 x 1 )
{ & 1 }: ( & lubatud, vaja asendada inversioon ja )
x = x 1 x1
_____
x 2 = x 1 x 2 = (x 1 1) (x 2 1) 1 =
= x1x2 x1 x2 1 1 =
x1x2 x1 x2
{ 0 }: x = x 0
Z Z Z Z
x1
x2 = x1 x2 = ( x1 0 ) x2
______
x1
x2 = x1 x2
______
Z Z Z Z
_______
x1 x2 = x1
x2 = x1 x2
Z Z Z Z
Z Z
x1 x2 = x1
x2 = ( x1 ( x2 0 ) ) 0
Z Z Z Z
Z Z Z Z