Печатать книгуПечатать книгу

§ 26. Алгебра логікі

Сайт: Профильное обучение
Курс: Інфарматыка. 10 клас (Павышаны ўзровень)
Книга: § 26. Алгебра логікі
Напечатано:: Гость
Дата: Четверг, 2 Май 2024, 08:56

26.1. Лагічныя выказванні

Працэсар камп’ютара выконвае арыфметычныя і лагічныя аперацыі над двайковымі кодамі.

Для таго каб мець уяўленне пра будову камп’ютара, неабходна пазнаёміцца не толькі з арыфметычнымі, але і з асноўнымі лагічнымі элементамі, якія ляжаць у аснове яго пабудовы.

Для разумення прынцыпу работы такіх элементаў разгледзім асноўныя паняцці алгебры логікі.

Алгебра логікі (англ. algebra of logic) — адзін з асноўных раздзелаў матэматычнай логікі, у якім метады алгебры выкарыстоўваюцца ў лагічных пераўтварэннях.

Аналогію паміж алгебрай і логікай паклаў у аснову свайго лагічнага вучэння заснавальнік алгебры логікі англійскі матэматык і логік Д. Буль (1815—1864).

Любое выказванне Буль запісваў з дапамогай сімвалаў распрацаванай ім мовы і атрымліваў «ураўненні», праўдзівасць ці непраўдзівасць якіх можна было даказаць, зыходзячы з пэўных лагічных законаў.

Лагічнае выказванне — любы апавядальны сказ, у адносінах да якога можна адназначна сцвярджаць, што яго змест праўдзівы — 1 ці непраўдзівы — 0.

Сучасная алгебра логікі з’яўляецца раздзелам матэматычнай логікі і вывучае лагічныя аперацыі над выказваннямі з пункту гледжання іх праўдзівага значэння.

Праўдзівасць ці непраўдзівасць выказванняў залежыць ад праўдзівасці і непраўдзівасці зыходных (простых) выказванняў і сэнсу лагічных аперацый над выказваннямі (прыклад 26.1). Такім чынам, вызначэнне праўдзівасці некаторага лагічнага выразу — гэта вызначэнне значэння некаторай лагічнай функцыі.

Лагічная функцыя — функцыя, якая прымае значэнні 0 ці 1 у выніку лагічных аперацый над лагічнымі пераменнымі.

Спосабы задання лагічнай функцыі:

1) слоўнае апісанне;

2) табліца праўдзівасці;

3) формула, запісаная з дапамогай літар, знакаў лагічных аперацый і дужак;

4)  кімбінацыйная схема, складзеная з лагічных элементаў;

5)  каардынатны спосаб (карта Карно);

6)  дыяграма Вена (Эйлера).

(Разгледзьце прыклад 26.2.)

Вобласці ўжывання алгебры логікі:

1) у якасці сродку алгарытмічнага апісання ў мовах праграміравання для вызначэння лагічных умоў;

2) для фарміравання лагічных выказванняў у матэматычнай логіцы, лінгвістыцы, тэорыі штучнага інтэлекту;

3) у распрацоўцы і апісанні дыскрэтных тэхнічных сістэм;
пры аналізе і сінтэзе лагічных устройстваў.

Пример 26.1. Логические высказывания.

  1. «Мінск — сталіца Грэцыі» — зыходнае выказванне, значэнне якога непраўдзівае ( A = 0). «НЯпраўда, што Мінск — сталіца Грэцыі» — выказванне, значэнне якога праўдзівае (begin mathsize 14px style top enclose A end style = 1).
  2. «Мінск — сталіца Беларусі», «Масква — сталіца Расіі» — зыходныя выказванні, значэнне якіх праўдзівае (A = 1, B = 1). «Мінск — сталіца Беларусі І Масква — сталіца Расіі» — выказванне, значэнне якога праўдзівае (A & B = 1 ).
  3. «Мінск — сталіца Беларусі», «Масква — сталіца Балгарыі» — зыходныя выказванні. Значэнне першага выказвання праўдзівае, а другога непраўдзівае (A = 1, B = 0). Мінск — сталіца Беларусі АБО Масква — сталіца Балгарыі» — выказванне, значэнне якога праўдзівае (A V B = 1).

Карта Карно — табліца, пабудаваная так, што ў яе суседнія клеткі трапляюць сумежныя наборы пераменных функцый — наборы, якія адрозніваюцца значэннем адной пераменнай (у адзін набор гэта пераменная ўваходзіць у прамой форме, а ў іншы — у адваротнай).

Карты Карно былі прапанаваны ў 1952 г. Эдвардам В. Вейчам (амерыканскім вучоным у галіне кібернетыкі) і ўдасканалены ў 1953 г. Морысам Карно, каб спрасціць праектаванне лічбавых сістэм.

Морыс Карно — амерыканскі фізік

Прымер 26.2. Спосабы задання лагічнай функцыі.

1. Функцыя дзвюх пераменных прымае значэнне 1, калі гэтыя пераменныя роўныя 1, а ва ўсіх іншых выпадках функцыя роўная 0.

 2.

A

B

& B

0

0

0

0

1

0

1

0

0

1

1

1

3. Y = A & B

4. 

5. 

 

A

begin mathsize 14px style top enclose A end style

B

1

0

begin mathsize 14px style top enclose straight B end style

0

0

6. 

Аналіз лагічных устройстваў — гэта пошук аналітычнага выразу, які апісвае работу сістэмы.

Сінтэз лагічных устройстваў — адваротная задача: стварэнне тэхнічнага ўстройства на аснове матэматычнага апісання сродкамі алгебры логікі.

У камп’ютарных устройствах ужываюцца электрычныя схемы, якія складаюцца з мноства пераключальнікаў. Пераключальнік можа знаходзіцца толькі ў двух станах: замкнутым і разамкнутым. У першым выпадку ток праходзіць, у другім — не. Апісваць работу такіх схем вельмі зручна з дапамогай алгебры логікі. У залежнасці ад становішча пераключальнікаў можна атрымаць ці не атрымаць сігналы на выхадах.

26.2. Лагічныя аперацыі

Разгледзім асноўныя лагічныя аперацыі — варыянты абазначэння (прыклад 26.3), табліцы праўдзівасці і лагічныя элементы для кожнай з лагічных аперацый (прыклады 26.4 — 26.9).

Лагічнае адмаўленне, або інверсія (лац. inversion — пераварочванне), — лагічная аперацыя, якая змяняе значэнне зыходнага выказвання на супрацьлеглае.

Інверсія — унарная лагічная аперацыя, г. зн. выконваецца адносна аднаго выказвання (прыклад 26.4).

Лагічныя аперацыі, якія выконваюцца адносна як мінімум двух выказванняў, называюцца бінарнымі. Разгледзім асноўныя з іх.

Лагічнае множанне, або кан’юнкцыя (лац. conjunctio — злучэнне), — аперацыя, якая злучае два ці больш выказванняў пры дапамозе лагічнай звязкі І. Вынік аперацыі можа быць праўдзівым толькі ў тым выпадку, калі адначасова праўдзівыя зыходныя выказванні (прыклад 26.5).

Лагічнае складанне, або дыз’юнкцыя (лац. disjunction — раздзяленне), — аперацыя, якая злучае два ці больш выказванняў пры дапамозе лагічнай звязкі АБО. Вынік аперацыі будзе праўдзівым, калі праўдзівае хоць бы адно з зыходных выказванняў (прыклад 26.6).

Дыз’юнкцыя строгая (складанне па модулі два) — аперацыя, якая злучае два выказванні (A і B) пры дапамозе лагічнай звязкі АБО, ужытай у выключальным сэнсе, і чытаецца: «Або A, або B». Вынік аперацыі будзе праўдзівым, калі праўдзівае толькі адно з зыходных выказванняў (прыклад 26.7).

Лагічная паслядоўнасць, або імплікацыя (лац. implisito — цесна звязваю), — аперацыя, якая злучае два выказванні (A і B), з якіх першае з’яўляецца ўмовай, а другое — вынікам з гэтай умовы. Чытаецца: "Калі A, то B", "A цягне за сабой B", "З A вынікае B". Вынік аперацыі непраўдзівы толькі тады, калі перадумова ёсць праўда, а вынік — няпраўда (прыклад 26.8).

Раўназначнасць, або эквівалентнасць (лац. aequalis — роўны і valentis — які мае сілу), — аперацыя, якая дазваляе з двух выказванняў (A і B) атрымаць выказванне, якое чытаецца так: «A раўназначна B». Гэта аперацыя можа быць выяўлена звязкамі «тады і толькі тады», «неабходна і дастаткова», «раўнасільна». Аперацыя эквівалентнасці процілеглая строгай дыз’юнкцыі і мае вынік «праўда» тады і толькі тады, калі значэнні пераменных супадаюць (прыклад 26.9).

Прыклад 26.3. Варыянты абазначэнняў лагічных аперацый.

Аперацыя

Абазначэнне

Інверсія

HE A, NOT A, ¬ A, begin mathsize 14px style top enclose A end style, begin mathsize 14px style tilde A end style

Кан’юнкцыя

A И B, A AND B , A & B, A · B, begin mathsize 14px style A space logical and space B end style

Дыз’юнкцыя

A  ИЛИ B, A OR B,  A begin mathsize 16px style left enclose space straight B end enclose end style B, A + B, A V B

Дыз’юнкцыя строгая

A XOR B, A circled times B, A ⊻ B , A straight V with. on top

Імплікацыя

A → B, A rightwards double arrow B

Эквівалентнасць

A ~ B, A left right double arrowB, A ≡ B º  

Прыклад 26.4. Інверсія.

Табліца праўдзівасці:

Лагічны элемент:

A

begin mathsize 14px style top enclose straight A end style

0

1

1

0

Прыклад 26.5. Кан’юнкцыя.

Табліца праўдзівасці:

Лагічы элемент:

A

B

A B

0

0

0

0

1

0

1

0

0

1

1

1

Прыклад 26.6. Дыз’юнкцыя.

  

Табліца праўдзівасці:

Лагічы элемент:

A

B

A V B 

0

0

0

0

1

1

1

0

1

1

1

1

Прыклад 26.7. Дыз’юнкцыя строгая.

Табліца праўдзівасці:

Лагічны элемент:

A

B

A circled plusB

0

0

0

0

1

1

1

0

1

1

1

0

«Гэты трохвугольнік тупавугольны або востравугольны» — выказванне праўдзівае, калі выконваецца якая-небудзь адна з умоў.

 Прыклад 26.8. Імплікацыя.

Табліца праўдзівасці:

Лагічная схема:

A

B

A rightwards double arrowB

0

0

1

0

1

1

1

0

0

1

1

1

«Калі 2 ∙ 2 = 4, то вада — гэта газ». Выказванне непраўдзівае, паколькі 2 ∙ 2 = 4 (перадумова праўдзівая), а вада не з'яўляецца газам (вынік непраўдзівы).

Прыклад 26.9. Эквивалентность.

Табліца праўдзівасці:

Лагічныя схемы:

A

B

A left right double arrowB

0

0

1

0

1

0

1

0

0

1

1

1

26.3. Лагічныя выразы і законы логікі

Лагічны выраз (формула) — змяшчае лагічныя пераменныя, якія абазначаюць выказванні, злучаныя знакамі лагічных аперацый.

З дапамогай лагічных пераменных і лагічных аперацый любое састаўное лагічнае выказванне можна фармалізаваць, г. зн. замяніць лагічным выразам. Пры гэтым элементарныя выказванні, якія ўтвараюць састаўное выказванне, могуць быць абсалютна не звязаны па сэнсе (прыклад 26.10). Сэнс выказванняў не ўлічваецца, разглядаецца толькі іх праўдзівасць ці непраўдзівасць.

У лагічных выразах павінен выконвацца наступны парадак выканання аперацый (прыклад 26.11):

1) дзеянні ў дужках;

2) інверсія;

3)  кан’юнкцыя;

4) дыз’юнкцыя;

5) імплікацыя;

6) эквівалентнасць.

Значэнне лагічнага выразу можна вызначыць, пабудаваўшы табліцу праўдзівасці для гэтага выразу. Для пабудовы табліцы праўдзівасці неабходна выканаць наступныя дзеянні (прыклад 26.12):

1) падлічыць колькасць пераменных у выразе (n);

2) падлічыць лік лагічных аперацый у выразе (p);

3) вызначыць паслядоўнасць выканання лагічных аперацый у выразе з улікам дужак і прыярытэтаў;

4) вылічыць колькасць слупкоў у табліцы (n + p);

5) запоўніць шапку табліцы, уключыўшы ў яе пераменныя і аперацыі ў адпаведнасці з вызначанай у п. 3 паслядоўнасцю;

6) вылічыць колькасць радкоў у табліцы (m = 2n);

7) запісаць у табліцы ўсе магчымыя наборы значэнняў пераменных;

8) запоўніць табліцу па слупках, выконваючы лагічныя аперацыі ў адпаведнасці з вызначанай у п. 3 паслядоўнасцю.

Для пераўтварэння і спрашчэння формул у алгебры логікі выконваюцца эквівалентныя пераўтварэнні, якія абапіраюцца на асноўныя лагічныя законы (прыклад 26.13). Некаторыя з гэтых законаў фармулююцца і запісваюцца гэтак жа, як аналагічныя законы ў арыфметыцы і алгебры, іншыя выглядаюць нязвыкла.

Даказана, што для ўяўлення любой лагічнай функцыі дастаткова трох аперацый: кан’юнкцыі, дыз’юнкцыі і адмаўлення. Гэта значыць любую лагічную формулу можна шляхам пераўтварэнняў і спрашчэнняў прывесці да формулы, якая змяшчае толькі гэтыя тры асноўныя лагічныя аперацыі.

Прыклад 26.14. Спрасціць лагічны выраз begin mathsize 16px style F space equals space top enclose left parenthesis A space V space B right parenthesis rightwards double arrow stack left parenthesis B space V space C right parenthesis with bar on top end enclose space space end style і пабудаваць лагічную схему, якая адпавядае выніку.

Выканаем эквівалентныя пераўтварэнні выразу ў адпаведнасці з законамі логікі:

  1.  Імплікацыі.
  2.  Дэ Моргана.
  3.  Інвалюцыі.
  4.  Дыстрыбутыўнасці.

Пример 26.10. Фармалізацыя выказванняў.

Выказванне «Калі тры менш за шэсць (А), то субота заўсёды настае пасля пятніцы (В)» адпавядае формуле A rightwards double arrowB, і мае значэнне «праўда»..

Выказванне «Калі я куплю яблыкі (А) ці абрыкосы (B), то прыгатую фруктовы пірог (C)» можна запісаць у выглядзе формулы  A V B rightwards double arrow C.

Пример 26.11. Парадак выканання дзянняў у лагічных выразах.

Выраз:

begin mathsize 14px style straight U space straight V space left parenthesis straight B space rightwards double arrow space straight C right parenthesis space & space straight D space left right double arrow space straight U with bar on top end style

Парадак дзеянняў:

1)  begin mathsize 14px style straight U with bar on top end style

2) begin mathsize 14px style left parenthesis B space rightwards double arrow space straight C right parenthesis end style  

3) begin mathsize 14px style left parenthesis B space rightwards double arrow space C right parenthesis space & space D end style   

4) begin mathsize 14px style straight U space straight V space left parenthesis straight B space rightwards double arrow space straight C right parenthesis space & space straight D end style     

5) begin mathsize 14px style straight U space straight V space left parenthesis straight B space rightwards double arrow space straight C right parenthesis space & space straight D space left right double arrow space straight U with bar on top end style     

Прыклад 26.12. Пабудова табліцы праўдзівасці для выразуbegin mathsize 14px style straight A with bar on top space & space left parenthesis straight B space straight V space straight C right parenthesis end style.

1) n = 3;

2) p = 3;

3) дыз’юнкцыя(V), інверсія (begin mathsize 14px style straight A with bar on top end style), кан’юнкцыя (&);

4) n + p = 6;

5)       

A

B V C

begin mathsize 14px style top enclose A end style

begin mathsize 14px style top enclose A end style & (B V C)

6) m = 23 = 8;

3) - 8)

A

B V C

begin mathsize 14px style top enclose bold A end style

begin mathsize 14px style top enclose bold A end style & (B V C)

0

0

1

0

0

1

1

1

0

1

1

1

0

1

1

1

1

0

0

0

1

1

0

0

1

1

0

0

1

1

0

0

 

Прыклад 26.13. Асноўныя законы алгебры логікі.

Прыклад 26.14

Пераўтварэнне выразу:

1) begin mathsize 14px style straight A space straight V space straight B rightwards double arrow stack straight B space straight V space straight C with bar on top space equals space stack left parenthesis straight A space straight V space straight B right parenthesis with bar on top space straight V space stack left parenthesis straight B space straight V space straight C right parenthesis with bar on top end style

2) begin mathsize 14px style stack top enclose straight A space straight V space straight B space end enclose straight V space top enclose straight B space straight V space straight C end enclose with bar on top space equals space stack stack left parenthesis straight A space straight V space straight B right parenthesis with bar on top with bar on top space & space stack stack left parenthesis straight B space straight V space straight C right parenthesis with bar on top with bar on top end style

3) begin mathsize 14px style stack stack straight A space straight V space straight B with bar on top with bar on top space & space stack stack straight B space straight V space straight C with bar on top with bar on top equals space left parenthesis straight A space straight V space straight B right parenthesis space & space left parenthesis straight B space straight V space straight C right parenthesis end style    

4) begin mathsize 14px style left parenthesis straight A space straight V space straight B right parenthesis space & space left parenthesis straight B space straight V space straight C right parenthesis space equals space straight B space straight V space left parenthesis space straight A space & space straight C right parenthesis end style       

Лагічная схема:

У арыфметыка-лагічных устройствах (АЛУ) працэсара падсумоўванне двайковых разрадаў выконваюць суматары — складаныя ўстройствы, якія складаюцца з больш простых элементаў — вентыляў.

Вентыль уяўляе сабой лагічны элемент, які прымае адны двайковыя значэнні і выдае іншыя ў залежнасці ад сваёй рэалізацыі. Ёсць вентылі, якія рэалізуюць лагічнае множанне (кан’юнкцыю), складанне (дыз’юнкцыю) і адмаўленне.

Пытанні да параграфу

1. Што вывучае алгебра логікі?

2. Якімі аб’ектамі аперыруе алгебра логікі?

3. Якія значэнні могуць прымаць аб’екты алгебры логікі?

4. Якімі спосабамі можна адлюстраваць лагічную функцыю?

5. Якая лагічная аперацыя з’яўляецца ўнарнай? Чаму? У чым яе сэнс?

6. У якім выпадку вынікам кан’юнкцыі будзе праўда?

7. У якім выпадку вынікам дыз’юнкцыі будзе няпраўда?

8. У чым розніца паміж дыз’юнкцыяй і строгай дыз’юнкцыяй?

9. Як выконваецца імплікацыя? Прывядзіце прыклады.

10. У якіх выпадках вынікам эквівалентнасці будзе праўда? Прывядзіце прыклады.

11.  У выглядзе якіх лагічных элементаў рэалізаваны лагічныя аперацыі: інверсія, кан’юнкцыя, дыз’юнкцыя, строгая дыз’юнкцыя, імплікацыя, эквівалентнасць?

12. Што такое лагічны выраз? У чым складецца фармалізацыя састаўнога лагічнага выказвання?

13. Па якіх правілах будуецца табліца праўдзівасці для лагічнага выразу?

14. Для чаго ў алгебры логікі выкарыстоўваюцца эквівалентныя пераўтварэнні лагічных формул?

15. Якія законы выкарыстоўваюцца пры эквівалентных пераўтварэннях лагічных формул?

16. Якіх лагічных аперацый дастаткова для выяўлення любой лагічнай функцыі?

Практыкаванні

    

1. Якім лагічным аперацыям адпавядаюць наступныя выказванні?

  1. У гарачы дзень прыемна выпіць шклянку халоднай вады або ліманаду.
  2. Хто не працуе, той не есць.
  3. Пры запісе лікаў у двайковай сістэме лічэння выкарыстоўваюцца лічбы 0 і 1.
  4. Калі лік кратны 4, то ён кратны 2.

2. Фармалізуйце наступны вывад: «Калі  і  праўдзівыя, то  — праўдзівае. Але  — непраўдзівае, значыць,  ці  непраўдзівыя».

2.1 Вызначыце вынік лагічнай функцыі пры зададзеных значэннях пераменных:

    1. begin mathsize 14px style left parenthesis top enclose B with bar on top space & space C with bar on top end enclose right parenthesis space V space left parenthesis top enclose A space & space C end enclose right parenthesis comma space пр ы space A space equals space 1 semicolon space B space equals space 1 semicolon space C space equals space 0. end style
    2. begin mathsize 14px style left parenthesis straight A space straight V space left parenthesis straight A space & space straight B right parenthesis space & space left parenthesis straight A space & space space left parenthesis straight A space straight V space straight B right parenthesis comma space пры space straight A space equals space 1 semicolon space straight B space equals space 0. end style

3. Якое значэнне будзе на выхадзе лагічнай схемы?

4. Па зададзенай лагічнай формуле пабудуйцее лагічную схему і вызначыце значэнне лагічнай функцыі пры зададзеных ,  і C.

  1. Error converting from MathML to accessible text.
  2. Error converting from MathML to accessible text.
  3. Error converting from MathML to accessible text.
  4. Error converting from MathML to accessible text.

5. Якая формула адпавядае лагічнай схеме?

6. Дадзены простыя выказванні:

A = «Працэсар — устройства для апрацоўкі інфармацыі».

B = «Сканер — устройства вываду інфармацыі».

C = «Манітор — устройства ўводу інфармацыі».

D = «Клавіятура — устройства вываду інфармацыі».

Вызначыце праўдзівасць лагічных формул:

  1. Error converting from MathML to accessible text.
  2. Error converting from MathML to accessible text.
  3. begin mathsize 14px style left parenthesis A with bar on top space rightwards double arrow space B right parenthesis space & space left parenthesis C space V space D right parenthesis. end style
  4. begin mathsize 14px style left parenthesis straight A space & space straight B right parenthesis space straight V space straight C space left right double arrow left parenthesis straight A space & space straight C right parenthesis space straight V space left parenthesis straight A space & space straight B right parenthesis. end style
  5. begin mathsize 14px style left parenthesis straight A space & space straight B right parenthesis space rightwards double arrow space left parenthesis straight C space straight V space straight D right parenthesis. end style
  6. begin mathsize 14px style left parenthesis straight A space & space straight B right parenthesis space left right double arrow left parenthesis straight C space straight V space straight D right parenthesis. end style
  7. begin mathsize 14px style left parenthesis straight C space left right double arrow space straight A with bar on top right parenthesis space & space straight B space & space straight D. end style
  8. begin mathsize 14px style left parenthesis straight A space straight V space straight B right parenthesis space straight V space straight C space rightwards double arrow space left parenthesis straight A space & space straight C space & space straight D right parenthesis space & space left parenthesis straight B space straight V space straight D right parenthesis. end style

7. Пабудуйце табліцы праўдзівасці для лагічных выразаў:

  1. begin mathsize 14px style straight A with bar on top space straight V space left parenthesis straight A space straight V space straight B with bar on top right parenthesis. end style
  2. begin mathsize 14px style straight A space & space left parenthesis top enclose straight B space straight V space straight C end enclose right parenthesis. end style
  3. begin mathsize 14px style straight A with bar on top space rightwards double arrow left parenthesis straight B with bar on top space & space straight C right parenthesis space & space straight D. end style
  4. begin mathsize 14px style straight A space straight V space straight C space left right double arrow space left parenthesis straight A space & space straight C right parenthesis space straight V space straight B right parenthesis. end style

8. Вызначыце для названых значэнняў  значэнне лагічнай функцыі begin mathsize 14px style text ((X > 3) V (X < 3)) ⇒ (X < 4). end text end style

  1. X = 1.
  2. X = 12.
  3. X = 3.

9. Для якіх прыведзеных слоў непраўдзівы лагічны выраз «¬(першая літара галосная & трэцяя літара галосная)  радок з 4 сімвалаў»?

  1. асса.
  2. силач.
  3. кукуруза.
  4. куку.
  5. ошибка.

10. Вызначыце такі найменшы натуральны лік А, што выраз

begin mathsize 14px style left parenthesis straight X space & space 56 space not equal to space 0 right parenthesis space rightwards double arrow space left parenthesis straight X space & space 48 space equals space 0 right parenthesis space rightwards double arrow left parenthesis straight X space & space straight A space not equal to space 0 right parenthesis end style

прымае значэнне «праўда» пры любым натуральным значэнні Х .