Logička konjunkcija
Logička konjunkcija ili logičko „i“ je jedna od binarnih logičkih operacija čiji je rezultat „tačno“ samo ako su oba operanda tačna, a u svim drugim slučajevima rezultat je „netačno“.
Obilježavanje[uredi | uredi kod]
Logička konjunkcija kao operacija se obično naziva logičkim „i“, jer predstavlja analogiju sa govornim veznikom „i“. Na primjer, ako se kaže „Učiću matematiku ako budem odmoran i ako budem imao vremena“, to znači da će se učenje obaviti samo ukoliko se ispune oba uslova — ako bilo koji od uslova bude netačan ili oba budu netačna, učenje se neće obaviti.
U matematičkoj logici, logička konjunkcija se označava simbolom , pa se konjunkcija elemenata i obilježava na slijedeći način:
Istinitosna tablica[uredi | uredi kod]
Logičko „i“ se kao operacija najlakše i najpraktičnije definiše pomoću istinitosne tablice. Naime, u tablici se definiše rezultat operacije za sve kombinacije operanada. Pošto je operacija binarna (ima samo dva operanda), a operandi su logičke vrijednosti (tačno ili netačno), istinitosna tablica je kratka i lako razumljiva:
p | q | p ∧ q |
⊤ | ⊤ | ⊤ |
⊤ | ⊥ | ⊥ |
⊥ | ⊤ | ⊥ |
⊥ | ⊥ | ⊥ |
Iz tablice se lako vidi koji je rezultat operacije za svaku moguću kombinaciju parametara. Na primjer, u trećoj koloni piše „ako je netačno a tačno, onda je netačno.“. U tzv. sabijenom obliku ova istinitosna tablica izgleda na slijedeći način:
∧ | ⊤ | ⊥ |
⊤ | ⊤ | ⊥ |
⊥ | ⊥ | ⊥ |
Osobine[uredi | uredi kod]
Operacija konjunkcije ima slijedeće matematičke osobine: 1. Rezultat je isti bez obzira da li konjugujemo sa ili sa , tj. nije bitan raspored operanada:
2. Ako imamo više elemenata koje konjugujemo, rezultat je isti bez obzira na redoslijed izvršavanja konjugacije. Drugim riječima, nije bitno da li prvo konjugujemo prvi sa drugim, a onda rezultat sa trećim, ili prvo npr. drugi sa trećim, pa rezultat sa prvim:
3. Ako se jedan element konjuguje sa nekim složenim elementom koji predstavlja disjunkciju drugih elemenata, tada se element može prvo konjugovati sa svakim od njih posebno, a onda nad ta dva rezultata izvršiti disjunkciju. Ista situacija važi i ako je složeni operand konjunkcija. Drugim riječima, važe slijedeće formule:
- (lijeva distributivnost po disjunkciji)
- (lijeva distributivnost po konjunkciji)
- (desna distributivnost po disjunkciji)
- (desna distributivnost po konjunkciji)
4. Bilo koji element, kad se konjuguje sa samim sobom, daje vrijednost koju ima i sam:
5. Na kraju, logička konjugacija je i monotona funkcija u odnosu na relaciju logičke implikacije:
Računarstvo[uredi | uredi kod]
Programiranje[uredi | uredi kod]
Konjunkcija se u programiranju koristi kao operator koji učestvuje u formiranju složenih uslova koji moraju biti zadovoljeni da bi se određena radnja obavila (grananje) ili ponavljala (petlja). Na primjer, može se napisati „ako je broj prost I ako je veći od 10, ispiši ga na ekran“. U različitim programskim jezicima se koriste različite oznake za konjugaciju, pa se npr. u programskom jeziku C koristi oznaka &&
, u Paskalu engleska riječ AND (što na srpskom znači „i“), itd. Slijedi programski kod za spomenuti primjer, pod pretpostavkom da je definisana funkcija prost
:
if ( prost(b) && b > 10 ) /* „ako je broj prost I ako je veći od 10“ */
printf( "%d\n", b ); /* „odštampaj ga na ekran“ */
Pored toga, konjugacija se koristi i u radu sa bitovima koji grade memorijske lokacije; bit sa vrijednošću 1
se posmatra kao logička vrijednost „tačno“ (⊤) a bit sa vrijednošću 0
se posmatra kao logička vrijednost „netačno“ (⊥), a rezultat operacije je broj koji je sačinjen od bitova koji predstavljaju rezultate konjugacije svih odgovarajućih bitova operanada. Tada se u C-u koristi operator &
, a iako u standardnom Paskalu ne postoji ovaj operator, razna proširenja ga definišu i označavaju isto kao i obični operator AND. Tako, ako imamo brojeve p = 45
i q = 56
, rezultat njihove binarne konjugacije je slijedeći:
Baze podataka[uredi | uredi kod]
U bazama podataka, konjunkcija se često koristi kao operator koji učestvuje u građenju izraza koji određuje podatke na koje se određena naredba odnosi. Tako, ako želimo da obrišemo nevaljane podatke koji su stariji od 7 dana, imaćemo uslov „da su valjani I da su stariji od 7 dana“. S obzirom da većina današnjih baza podataka radi po SQL standardu, operator konjugacije se uglavnom obilježava engleskom riječju AND, pri čemu određeni serveri zahtijevaju i da ta riječ bude napisana velikim slovima.
Porijeklo riječi[uredi | uredi kod]
Riječ „konjunkcija“ je nastala od latinske riječi „coniunctio, coniunctionis, f.“, što znači „spoj“, „ujedinjenje“ (kao što u srpskom jeziku veznik „i“ sastavlja — „element i element“). Bitno je primijetiti da se u srpskom jeziku slova „n“ i „j“ nisu spojila u „nj“, pa je nepravilno reći i napisati „konjunkcija“.