Логичка конјункција
Логичка конјункција или логичко „и“ је једна од бинарних логичких операција чији је резултат „тачно“ само ако су оба операнда тачна, а у свим другим случајевима резултат је „нетачно“.
Обиљежавање
[уреди | уреди извор]Логичка конјункција као операција се обично назива логичким „и“, јер представља аналогију са говорним везником „и“. На примјер, ако се каже „Учићу математику ако будем одморан и ако будем имао времена“, то значи да ће се учење обавити само уколико се испуне оба услова — ако било који од услова буде нетачан или оба буду нетачна, учење се неће обавити.
У математичкој логици, логичка конјункција се означава симболом , па се конјункција елемената и обиљежава на сљедећи начин:
Док се у електроници логичка конјункција обележава са \cdot, у програмирању се обележава са & или и. Неки програмски језици имају повезану контролну структуру, краткостројно и, које пипемо &&.
Табела истинитости
[уреди | уреди извор]Логичко „и“ се као операција најлакше и најпрактичније дефинише помоћу истинитосне таблице. Наиме, у таблици се дефинише резултат операције за све комбинације операнада. Пошто је операција бинарна (има само два операнда), а операнди су логичке вриједности (тачно или нетачно), истинитосна таблица је кратка и лако разумљива:
p | q | p ∧ q |
⊤ | ⊤ | ⊤ |
⊤ | ⊥ | ⊥ |
⊥ | ⊤ | ⊥ |
⊥ | ⊥ | ⊥ |
Из таблице се лако види који је резултат операције за сваку могућу комбинацију параметара. На примјер, у трећој колони пише „ако је нетачно а тачно, онда је нетачно.“. У тзв. сабијеном облику ова истинитосна таблица изгледа на сљедећи начин:
∧ | ⊤ | ⊥ |
⊤ | ⊤ | ⊥ |
⊥ | ⊥ | ⊥ |
Особине
[уреди | уреди извор]Операција конјункције има сљедеће математичке особине: 1. Резултат је исти без обзира да ли конјугујемо са или са , тј. није битан распоред операнада:
2. Ако имамо више елемената које конјугујемо, резултат је исти без обзира на редослијед извршавања конјугације. Другим ријечима, није битно да ли прво конјугујемо први са другим, а онда резултат са трећим, или прво нпр. други са трећим, па резултат са првим:
3. Ако се један елемент конјугује са неким сложеним елементом који представља дисјункцију других елемената, тада се елемент може прво конјуговати са сваким од њих посебно, а онда над та два резултата извршити дисјункцију. Иста ситуација важи и ако је сложени операнд конјункција. Другим ријечима, важе сљедеће формуле:
- (лијева дистрибутивност по дисјункцији)
- (лијева дистрибутивност по конјункцији)
- (десна дистрибутивност по дисјункцији)
- (десна дистрибутивност по конјункцији)
4. Било који елемент, кад се конјугује са самим собом, даје вриједност коју има и сам:
5. На крају, логичка конјугација је и монотона функција у односу на релацију логичке импликације:
Рачунарство
[уреди | уреди извор]Програмирање
[уреди | уреди извор]Конјункција се у програмирању користи као оператор који учествује у формирању сложених услова који морају бити задовољени да би се одређена радња обавила (гранање) или понављала (петља). На примјер, може се написати „ако је број прост И ако је већи од 10, испиши га на екран“. У различитим програмским језицима се користе различите ознаке за конјугацију, па се нпр. у програмском језику C користи ознака &&
, у Паскалу енглеска ријеч AND (што на српском значи „и“), итд. Слиједи програмски код за споменути примјер, под претпоставком да је дефинисана функција prost
:
if (prost(b) && b > 10) /* „ако је број прост И ако је већи од 10“ */
printf("%d\n", b ); /* „одштампај га на екран“ */
Поред тога, конјугација се користи и у раду са битовима који граде меморијске локације; бит са вриједношћу 1
се посматра као логичка вриједност „тачно“ (⊤) а бит са вриједношћу 0
се посматра као логичка вриједност „нетачно“ (⊥), а резултат операције је број који је сачињен од битова који представљају резултате конјугације свих одговарајућих битова операнада. Тада се у C-у користи оператор &
, а иако у стандардном Паскалу не постоји овај оператор, разна проширења га дефинишу и означавају исто као и обични оператор AND. Тако, ако имамо бројеве p = 45
и q = 56
, резултат њихове бинарне конјугације је сљедећи:
Базе података
[уреди | уреди извор]У базама података, конјункција се често користи као оператор који учествује у грађењу израза који одређује податке на које се одређена наредба односи. Тако, ако желимо да обришемо неваљане податке који су старији од 7 дана, имаћемо услов „да су неваљани И да су старији од 7 дана“. С обзиром да већина данашњих база података ради по SQL стандарду, оператор конјугације се углавном обиљежава енглеском ријечју AND.
Поријекло ријечи
[уреди | уреди извор]Ријеч „конјункција“ је настала од латинске ријечи „coniunctio, coniunctionis, f.“, што значи „спој“, „уједињење“ (као што у српском језику везник „и“ саставља — „елемент и елемент“). Битно је примијетити да се у српском језику слова „н“ и „ј“ нису спојила у „њ“, па је неправилно рећи и написати „коњункција“.