Логичка конјункција

С Википедије, слободне енциклопедије
(преусмерено са Logical conjunction)

Логичка конјункција или логичко „и“ је једна од бинарних логичких операција чији је резултат „тачно“ само ако су оба операнда тачна, а у свим другим случајевима резултат је „нетачно“.

Обиљежавање[уреди | уреди извор]

Логичка конјункција као операција се обично назива логичким „и“, јер представља аналогију са говорним везником „и“. На примјер, ако се каже „Учићу математику ако будем одморан и ако будем имао времена“, то значи да ће се учење обавити само уколико се испуне оба услова — ако било који од услова буде нетачан или оба буду нетачна, учење се неће обавити.

У математичкој логици, логичка конјункција се означава симболом , па се конјункција елемената и обиљежава на сљедећи начин:

Док се у електроници логичка конјункција обележава са \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.“, што значи „спој“, „уједињење“ (као што у српском језику везник „и“ саставља — „елемент и елемент“). Битно је примијетити да се у српском језику слова „н“ и „ј“ нису спојила у „њ“, па је неправилно рећи и написати „коњункција“.

Види још[уреди | уреди извор]