Алгебра логіки: відмінності між версіями

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Inna Z (обговорення | внесок)
Немає опису редагування
Inna Z (обговорення | внесок)
Немає опису редагування
Рядок 267: Рядок 267:
# <math>\ x\land0=0</math>
# <math>\ x\land0=0</math>
# <math>\ x\land1=x</math>
# <math>\ x\land1=x</math>

== Походження ==
Засади алгебри логіки було сформульовано британцем [[Буль Джордж|Джорджем Булем]] в [[1847]] році. Пізніше її розвивали [[Чарлз Пірс]], [[Генрі Шеффер]], [[Порецький Платон Сергійович|П.&nbsp;С.&nbsp;Порецький]], [[Бертран Рассел]], [[Давид Гільберт]] та ін.

Відтоді ця система застосовується для вирішення широкого спектру проблем [[математична логіка|математичної логіки]] та [[теорія множин|теорії множин]], та особливо конструювання [[цифрова електроніка|цифрової електроніки]] (початок використання алгебри логіки для синтезу перемикальних (релейних) схем був покладений в [[1938]] році роботами відомого американського вченого [[Шеннон Клод|Клода Шеннона]]).


== Логічні операції ==
== Логічні операції ==
Рядок 349: Рядок 344:


Доповнення виконується інвертуючим вентилем. Трикутник позначає операцію, яка просто копіює вхід на вихід; невелике коло на виході позначає фактичну дію доповнення до входу. У даній системі позначень розташування кола біля будь-якого порту означає, що сигнал проходячи через цей порт буде інвертований пройшовши крізь нього, не залежно від того це вхідний чи вихідний порт.
Доповнення виконується інвертуючим вентилем. Трикутник позначає операцію, яка просто копіює вхід на вихід; невелике коло на виході позначає фактичну дію доповнення до входу. У даній системі позначень розташування кола біля будь-якого порту означає, що сигнал проходячи через цей порт буде інвертований пройшовши крізь нього, не залежно від того це вхідний чи вихідний порт.

==Історія==
Засади алгебри логіки сформулював британський [[Джордж Буль|Джорджем Булем]] в [[1847]] році. Алгебра Буля передувала сучасному розвитку [[Абстрактна алгебра|абстрактної алгебри]] і математичної логіки; і вважають, що вона пов'язана із появою обох цих областей.<ref name="DunnHardegree2001">{{cite book|author1=J. Michael Dunn|author2=Gary M. Hardegree|title=Algebraic methods in philosophical logic|url=https://books.google.com/books?id=-AokWhbILUIC&pg=PA2|year=2001|publisher=Oxford University Press US|isbn=978-0-19-853192-0|page=2}}</ref> В абстрактному тлумаченні, булава алгебра була розвинена в кінці 19-му столітті, чому значно приклали зусилля математики [[Вільям Стенлі Джевонс|Вільям Джевонс]], [[Ернст Шредер]], {{нп|Едвард Верміле Гантінгтон|Едвард Гантінгтон|en|Edward Vermilye Huntington}} та інші, доки вона не досягла сучасного поняття (абстрактної) [[Математичні структури|математичної структури]].<ref name="DunnHardegree2001"/> Наприклад, імперичні спостереження про те, що можливо маніпулювати виразами у [[Алгебра множин|алгебрі множин]], якщо перевести їх у вирази булевої алгебри пояснюються в сучасних термінах, що алгебра множин це [[Булева алгебра (структура)|Булева алгебра]]. Насправді, [[Маршалл Гарві Стоун|М. Г. Стоун]] [[Теорема Стоуна про представлення булевих алгебр|в 1936 довів]], що кожна булева алгебра є [[Ізоморфізм|ізоморфною]] {{нп|поле множин|полю множин|en|field of sets}}.

В 1930-их, під час вивчення {{нп|Теорія перемикання кіл|перемиканні електричних кіл|en|switching circuit}}, [[Клод Шеннон]] помітив, що в даній темі також можна використовувати закони булевої алгебри, і запропонував '''комутаційну алгебру''', що дозволяє аналізувати і проектувати схеми за допомогою алгебраїчних методів в термінах [[логічний вентиль|логічних елементів]]. При розробці схемотехніки сьогодні, немає великої необхідності розглядати інші булеві алгебри, тому поняття "комутаційна алгебра" і "булева алгебра" часто використовуються як взаємозамінні.<ref name="BalabanianCarlson2001">{{cite book|author1=Norman Balabanian|author2=Bradley Carlson|title=Digital logic design principles|year=2001|publisher=John Wiley|isbn=978-0-471-29351-4|pages=39–40}}, [http://www.wiley.com/college/engin/balabanian293512/pdf/ch02.pdf online sample]</ref><ref name="Radhakrishnan">{{cite book|author=Rajaraman & Radhakrishnan|title=Introduction To Digital Computer Design|url=https://books.google.com/books?id=-8MvcOgsSjcC&pg=PA65|publisher=PHI Learning Pvt. Ltd.|isbn=978-81-203-3409-0|page=65|date=2008-03-01}}</ref><ref name="Camara2010">{{cite book|author=John A. Camara|title=Electrical and Electronics Reference Manual for the Electrical and Computer PE Exam|url=https://books.google.com/books?id=rfHWHeU0jfsC&pg=SA41-PA3|year=2010|publisher=www.ppi2pass.com|isbn=978-1-59126-166-7|page=41}}</ref> При [[Синтез логіки|розробці]] схем [[Комбінаційна логіка|комбінаційної логіки]] фундаментальною задачею є {{нп|Оптимізація логіки|ефективна реалізація|en|Logic optimization}} [[Булева функція|булевих функцій]]. Сучасні засоби [[Програми проектування електронних систем|автоматизації проектування електронних систем]] для {{нп|Інтеграція схем дуже великого масштабу|інтегральних схем дуже великого масштабу|en|Very-large-scale integration}} часто покладаються на ефективне представлення булевих функцій, що називають (скороченими впорядкованими) [[Бінарна діаграма рішень|двійковими діаграмами рішень]] для [[Синтез логіки|синтезу логіки]] та [[Формальна верифікація|формальної верифікації]].<ref name="Chen2007">{{cite book|editor=Wai-Kai Chen|title=The VLSI handbook|year=2007|publisher=CRC Press|isbn=978-0-8493-4199-1|edition=2nd|author=Shin-ichi Minato, Saburo Muroga|chapter=Binary Decision Diagrams|id=chapter 29}}</ref>

Логічні вирази, які можна представити у класичному [[Числення висловлень|численні висловлювань]] мають {{нп|алгебраїчна семантика (математична логіка)|еквівалентні вирази|en|algebraic semantics (mathematical logic)}} у булевій алгебрі. Таким чином, термін '''булева логіка''' іноді використовується для зазначення числення висловлювань, що здійснюється в такий спосіб.<ref name="Parkes2002">{{cite book|author=Alan Parkes|title=Introduction to languages, machines and logic: computable languages, abstract machines and formal logic|url=https://books.google.com/books?id=sUQXKy8KPcQC&pg=PA276|year=2002|publisher=Springer|isbn=978-1-85233-464-2|page=276}}</ref><ref name="BarwiseEtchemendy1999">{{cite book|author1=[[Jon Barwise]]|author2=[[John Etchemendy]]|author3=Gerard Allwein |author4=Dave Barker-Plummer |author5=Albert Liu|title=Language, proof, and logic|year=1999|publisher=CSLI Publications|isbn=978-1-889119-08-3}}</ref><ref name="Goertzel1994">{{cite book|author=Ben Goertzel|title=Chaotic logic: language, thought, and reality from the perspective of complex systems science|url=https://books.google.com/books?id=zVOWoXDunp8C&pg=PA48|year=1994|publisher=Springer|isbn=978-0-306-44690-0|page=48}}</ref> Булевої алгебри не достатньо для роботи із логічними формулами, в яких використовують [[Квантор|квантори]], таких як в [[Логіка першого порядку|логіці першого порядку]]. Хоча розвиток математичної логіки не відповідає Булевій, зв'язок між його алгеброю і логікою пізніше був закладений в основу [[Алгебраїчна логіка|алгебраїчної логіки]], що також вивчає алгебраїчні системи багатьох інших логік.<ref name="DunnHardegree2001"/> [[Проблема вибору|Задача прийняття рішень]] про те чи є змінні даної булевої формули (висловлювання) приймати такі значення, що формула буде розрахована як істина називається [[Задача здійсненності бульових формул|задачею здійсненності булевих формул]], і є дуже вадливою для [[Теоретична інформатика|теоретичної інформатики]], що є першою задачею для якої було показано, що вона має складність [[NP-повна задача|NP-повної задачі]]. Тісно пов'язана з цим [[модель обчислення]], що відома як {{нп|булева схема||en|Boolean circuit}} співвідносить [[Часова складність алгоритму|часову складність]] ([[алгоритм]]у) із {{нп|складність схем|складністю схем|en|circuit complexity}}.


== Див. також ==
== Див. також ==

Версія за 23:10, 8 лютого 2019

Алгебра логіки (Булева алгебра, Булева логіка, двійкова логіка, двійкова алгебра, англ. Boolean algebra) — розділ математичної логіки, що вивчає систему логічних операцій над висловлюваннями.[1] В алгебрі логіки значенням змінних є значення істинності істина або хибність, які як правило визначаються як 1 і 0 відповідно. На відміну від елементарної алгебри, в якій значеннями змінних є числа, а основними операціями є додавання і множення, основними операціями Булевої алгебри є кон'юнкція операція І позначається як ∧, диз'юнкція АБО позначається як ∨, і заперечення НІ позначається як ¬. Таким чином формалізм для описання логічних відношень є аналогічним тому, як описуються числові відношення у елементарній алгебрі.

Булеву алгебру запропонував Джордж Буль у своїй книзі Математичний аналіз логіки (1847), і більш детально у наступній книзі Дослідження законів думки[en] (1854).[2] Відповідно до Гантінгтона[en], термін "Булева алгебра" вперше запропонував Шеффер в 1913,[3] хоча Чарлз Сандерс Пірс в 1880 дав назву "Булева алгебра із однією сталою" першій главі своєї книги "Найпростіша математика".[4] Булева алгебра є фундаментальною основою для розвитку цифрової електроніки, і втілена в усіх мовах програмування. Вона також використовується у теорії множин і статистиці.[5]

Визначення

Базовими елементами, якими оперує алгебра логіки, є висловлювання.

Висловлювання будуються над множиною {B, , , , 0, 1}, де B — непорожня множина, над елементами якої визначені три операції:

заперечення (унарна операція),
кон'юнкція (бінарна),
диз'юнкція (бінарна),
а логічний нуль 0 і логічна одиниця 1 — константи.

Так само використовуються назви

  • диз'юнкт — пропозиціональна формула, що є диз'юнкцією одного або більше літералів (наприклад ).
  • кон'юнктив — пропозиціональна формула, що є кон'юнкцією одного або більше літералів (наприклад ).

Унарна операція заперечення в тексті формул оформляється або у вигляді значка перед операндом () або у вигляді риси над операндом (), що компактніше, але в цілому менш помітно.

Предмет вивчення

Спочатку проблематика алгебри логіки перетиналась з проблематикою алгебри множин (теоретико-множинні операції).

Проте із закінченням формування теорії множин (70-і роки 19 ст.), яка включила в себе алгебру множин, і подальшим розвитком математичної логіки, предмет алгебри логіки значно змінився.

Сучасна алгебра логіки розглядає операції над висловлюваннями (див. Числення висловлень), як булеву функцію і вивчає відносно них такі питання, як:

Операції

Базові операції

Як уже зазначалося, базовими операціями булевої алгебри (алгебри логіки) є наступні логічні операції:

  • І (кон'юнкція), позначається xy (іноді x І y), задовольняє xy = 1, якщо x = y = 1 та xy = 0 в інших випадках.
  • АБО (диз'юнкція), позначається xy (іноді x АБО y), задовольняє xy = 0, якщо x = y = 0 та xy = 1 в інших випадках.
  • НІ (заперечення), позначається ¬x (іноді НЕ x або !x), задовольняє ¬x = 0, якщо x = 1 та ¬x = 1 if x = 0.

Альтернативним способом значення xy, xy, та ¬x можна представити у табличному вигляді для всіх можливих значень за допомогою таблиць істинності наступним чином.

0 0 0 0
1 0 0 1
0 1 0 1
1 1 1 1

0 1
1 0

Якщо значення істинності 0 та 1 інтерпретувати як цілі числа, ці операції можна було задати як звичайні операції арифметики (де x + y використовує додавання а xy використовує множення), або як функції мінімуму/максимуму:

Можна вважати, що лише заперечення і одна із двох операцій, що залишилися, є базовими, оскільки наступні рівняння дозволяють визначити кон'юнкцію через операції заперечення та диз'юнкцію, і навпаки:

Вторинні операції

Три булеві операції описані вище називають базовими або первинними, що означає, що вони можуть бути базисом для всіх інших булевих операцій, оскільки всі інші операції можна виразити через них за допомогою композиції. Серед операцій, які можна побудувати із базових операцій є наступні:

Ці визначення дають наступні таблиці істинності, в яких показані значення цих операцій для всіх можливих вхідних значень.

0 0 1 0 1
1 0 0 1 0
0 1 1 1 0
1 1 1 0 1

Перша операція, x → y, називається імплікацією. Якщо x є істинним, тоді за значення виразу x → y приймається значення y. Але якщо x приймає хибне значення, то значення y можна було б ігнорувати; однак ця операція повинна повернути деяке логічне значення, і існує лише два варіанти вибору. То ж за визначенням, x → y є істиною коли x є хибним.

Друга операція, x ⊕ y, називається виключною диз'юнкцією (часто задається як абревіатура XOR), аби відрізнити її від диз'юнкції. Вона є істиною, лише коли x та y різні.

Третя операція, обернена до виключної диз'юнкції, називається еквівалентність або булева рівність: x ≡ y буде істиною, лише коли x та y мають однакове значення.

Для двох даних операндів, кожен з яких має 22 = 4 можливих комбінації входів. Оскільки кожен вихід може мати два можливих значення, існує загалом 24 = 16 можливих булевих операцій.

Закони

Законом в булевій алгебрі може виступати тотожність між двома булевими виразами такого вигляду як x∨(yz) = (xy)∨z, де булевий вираз (або логічне висловлювання) визначається як вираз, що побудований із змінних та констант 0 та 1 та операцій між ними ∧, ∨, та ¬. Це поняття можна поширити і до виразів, що містять інші булеві операції, такі як ⊕, →, та ≡, але для формулювання законів, таке розширення операцій не є необхідним. Для таких цілей додають визначення булевої алгебри як будь-якої моделі булевих законів, і як засіб для виведення нових законів із існуючих, як наприклад доведення що x∨(yz) = x∨(zy) із yz = zy.

Закони монотонності

Булева алгебра задовольняє багатьом відповідним законам звичайної алгебри, якщо якщо співставити операції ∨ із додаванням, а ∧ із множенням. Зокрема наступні закони є спільними для обох типів алгебр:[6]

Асоціативність операції :
Асоціативність операції :
Комутативність операції :
Комутативність операції :
Дистрибутивність операції over :
Ідентичність для :
Ідентичність для :
Анігілятор для :

Наступні закони є дійсними в булевій алгебрі, але не дійсні в звичайній алгебрі:

Анігілятор для :
Ідемпотентність :
Ідемпотентність :
Абсорбція 1:
Абсорбція 2:
Дистрибутивність операції над :

Якщо прийняти x = 2 в третьому наведеному вище законі, ми бачимо що це не закон із звичайної алгебри, оскільки 2×2 = 4. Решта п'ять законів можна фальсифікувати у звичайні алгебрі, якщо прийняти що значення усіх змінних буде 1, наприклад, в законі абсорбції 1 ліва сторона відношення була б 1(1+1) = 2, а права частина рівняння була 1, і так далі.

Всі ці закони, що розглядалися досі, були для кон'юнкції та диз'юнкції. Ці дві операції мають властивість, що при зміні будь-якого з аргументів, вихід залишиться або незмінним, або змінить своє значення так само як вхід. Аналогічно, зміна значення будь-якої змінною з 0 на 1 ніколи не призведе до того, що вихід змінить своє значення з 1 на 0. Операції з такою властивістю називають монотонними. Таким чином всі аксіоми досі були для монотонної булевої логіки. Немонотонність з'являється через операцію доповнення ¬, що наведено далі.[5]

Закони немонотонності

Операція доповнення (заперечення) визначається наступними двома законами.

Всі властивості заперечення, включаючи закони що наведені нижче, випливають із двох вищенаведених законів.[5]

Як у звичайній так і у булевій алгебрі, операція заперечення працює як обмін пари елементів, тому в обох алгебрах вона задовольняє закону подвійного заперечення (також називається законом інволюції)

Але тоді як «звичайна алгебра» задовольняє наступним двом законам

Булева алгебра задовольняє Законам де Моргана:

Повнота

Закони описані вище визначають булеву алгебру, в тому сенсі що з них випливають усі інші наслідки. Для цього достатньо законів доповнення 1 та 2, разом із законами монотонності. Таким чином їх можна вважати повною множиною законів або однією із можливих систем аксоіматизації булевої алгебри. Кожен закон булевою алгебри випливає логічним чином із цих аксіом. Крім того, булеві алгебри можна визначити як моделі із цих аксіом.

Аксіоми

  1. , інволютивність заперечення, закон зняття подвійного заперечення

Логічні операції

Простим і найширше вживаним прикладом такої алгебраїчної системи є множина B, що складається всього з двох елементів :

B = { Хибність (0), Істина (1) }

Як правило, в математичних виразах Хибність ототожнюється з логічним нулем, а Істина — з логічною одиницею, а операції заперечення (НІ), кон'юнкції (ТА) і диз'юнкції (АБО) визначаються у звичному нам розумінні. Легко показати, що на цій множині B можна задати чотири унарні та шістнадцять бінарних відношень і усі їх може бути отримано через суперпозицію трьох обраних операцій.

Спираючись на цей математичний інструментарій, логіка висловлювань вивчає висловлювання і предикати. Також вводяться додаткові операції, такі як еквівалентність («тоді і тільки тоді, коли»), імплікація («отже»), складання по модулю два («виключна диз'юнкція»), штрих Шефера , стрілка Пірса та інші.

Логіка висловлювань послужила основним математичним інструментом при створенні комп'ютерів. Вона легко перетворюється в бітову логіку: істинність висловлювання позначається одним бітом (0 — ХИБНІСТЬ, 1 — ІСТИНА); тоді операція набуває суті вирахування з одиниці;  — немодульного додавання; & — множення;  — рівності;  — в буквальному розумінні сума за модулем 2 (виключне АБО — XOR);  — сума не перевищує 1 (тобто A B = (A + B) <= 1).

Згодом булеву алгебру було узагальнено від логіки висловлювань шляхом введення характерних для логіки висловлювань аксіом. Це дозволило розглядати, наприклад, логіку кубітів, тризначну логіку (коли є три варіанти істинності висловлювання: «істина», «хибність» і «невизначено») тощо.

Властивості логічних операцій

  1. Комутативність: xy = yx, {&, }.
  2. Ідемпотентність: xx = x, {&, }.
  3. Асоціативність: (xy)z = x(yz), {&, }.
  4. Дистрибутивність кон'юнкцій і диз'юнкції відносно диз'юнкції, кон'юнкції і суми за модулем два відповідно:
    • ,
    • ,
    • .
  5. Закони де Мо́ргана:
    • ,
    • .
  6. Закони поглинання :
    • ,
    • .
  7. Інші (1):
    • .
    • .
    • .
    • .
    • , інволютивність заперечення, закон зняття подвійного заперечення.
  8. Інші(2) :
    • .
    • .
    • .
    • .
  9. Інші(3) (Доповнення законів де Мо́ргана) :
    • .
    • .

Існують методи спрощення логічної функції: наприклад, Карта Карно, метод Куайна — Мак-Класкі

Представлення у вигляді діаграм

Діаграма Венна

Діаграма Венна[7] — це графічне представлення булевих операцій за допомогою зафарбованих областей, що перекриваються. По одній області для кожної змінної, всі області круглі як показано на прикладах. Внутрішня і зовнішня частина області x відповідає відповідно значенням 1 (істина) та 0 (хибність) для змінної x. Зафарбована область показує значення операції для кожної комбінації цих областей, де зафарбована область означає 1, а не зафарбована - 0 (але в деяких книжках може зустрітися і навпаки).

Діаграми Венна на малюнку знизу показують операції кон'юнкції xy, диз'юнкції xy, та доповнення ¬x.

Діаграми Венна для кон'юнкції, диз'юнкції та доповнення

Для кон'юнкції, регіон в середині двох кругів зафарбований, що означає що вираз xy дорівнює 1, коли обидві змінні мають значення 1. Інші області лишилися не зафарбованими, аби зазначити, що xy дорівнює 0 для всіх інших комбінацій.

На другій діаграмі, що показує диз'юнкцію xy зафарбована область, що знаходиться в середині двох кіл одночасно. Третя діаграма представляє доповнення ¬x, де зафарбована область не в середині кола.

Тут не показані діаграми для сталих 0 та 1, оскільки вони тривіальні, і представляються незафарбованим або зафарбованим прямокутником, без кіл в середині. Однак ми б могли розмістити коло для змінної x в цих прямокутниках, в такому випадку це б позначало функцію із одним аргументом, x, що позначає те саме значення, незалежно від x, що називається константною функцією. Що стосується результатів функцій, то константи і константні функції не відрізняються; їх відмінність полягає в тому, що константа не приймає ніяких аргументів, і називається нульовою операцією, в той час як константна функція приймає один аргумент, який ігнорується, і тому є унарною операцією.

Діаграми Венна є корисними для візуалізації законів. Закони комутативності для ∧ та ∨ можна побачити із симетричності діаграм: бінарна операція, що не є комутативною не мала б симетричної діаграми, оскільки заміна місцями x та y призвело до горизонтального віддзеркалення діаграми, і відсутність комутативності б відзначилася у не симетричності діаграми.

Ідемпотентність операцій ∧ та ∨ можна було б зобразити зсунувши два кола разом і зазначивши, що зафарбована область тоді стає цілим колом, як обох ∧ та ∨.

Цифрові логічні кола

Цифрова логіка застосовує булеву алгебру для 0 та 1 до електронної апаратури, що складається із логічних елементів з'єднаних між собою, і які утворюють електричну схему. Кожний елемент виконує булеву операцію, і в різних системах позначень позначається таким чином, що його вигляд ідентифікує певну операцію. Форми позначень для елементів, що позначають кон'юнкцію (І-вентиль), диз'юнкцію (АБО-вентиль), і доповнення (інвертори) виглядають наступним чином.[8]

Лінії по лівій стороні кожного елементу позначають вхідні з'єднання або порти. Значення на вході задається напругою. Для так званої логіки з "активним високим рівнем", 0 задається значенням напруги близьким до нуля або "землі", в той час як 1 задається значенням напруги близьким до джерела напруги; при активному низькому рівні все буде навпаки. Лінія по правій стороні від кожного елемента задає вихідний порт, який як правило має ті самі узгодження щодо напруги, що і вхідні порти.

Доповнення виконується інвертуючим вентилем. Трикутник позначає операцію, яка просто копіює вхід на вихід; невелике коло на виході позначає фактичну дію доповнення до входу. У даній системі позначень розташування кола біля будь-якого порту означає, що сигнал проходячи через цей порт буде інвертований пройшовши крізь нього, не залежно від того це вхідний чи вихідний порт.

Історія

Засади алгебри логіки сформулював британський Джорджем Булем в 1847 році. Алгебра Буля передувала сучасному розвитку абстрактної алгебри і математичної логіки; і вважають, що вона пов'язана із появою обох цих областей.[9] В абстрактному тлумаченні, булава алгебра була розвинена в кінці 19-му столітті, чому значно приклали зусилля математики Вільям Джевонс, Ернст Шредер, Едвард Гантінгтон[en] та інші, доки вона не досягла сучасного поняття (абстрактної) математичної структури.[9] Наприклад, імперичні спостереження про те, що можливо маніпулювати виразами у алгебрі множин, якщо перевести їх у вирази булевої алгебри пояснюються в сучасних термінах, що алгебра множин це Булева алгебра. Насправді, М. Г. Стоун в 1936 довів, що кожна булева алгебра є ізоморфною полю множин.

В 1930-их, під час вивчення перемиканні електричних кіл[en], Клод Шеннон помітив, що в даній темі також можна використовувати закони булевої алгебри, і запропонував комутаційну алгебру, що дозволяє аналізувати і проектувати схеми за допомогою алгебраїчних методів в термінах логічних елементів. При розробці схемотехніки сьогодні, немає великої необхідності розглядати інші булеві алгебри, тому поняття "комутаційна алгебра" і "булева алгебра" часто використовуються як взаємозамінні.[10][11][12] При розробці схем комбінаційної логіки фундаментальною задачею є ефективна реалізація[en] булевих функцій. Сучасні засоби автоматизації проектування електронних систем для інтегральних схем дуже великого масштабу[en] часто покладаються на ефективне представлення булевих функцій, що називають (скороченими впорядкованими) двійковими діаграмами рішень для синтезу логіки та формальної верифікації.[13]

Логічні вирази, які можна представити у класичному численні висловлювань мають еквівалентні вирази[en] у булевій алгебрі. Таким чином, термін булева логіка іноді використовується для зазначення числення висловлювань, що здійснюється в такий спосіб.[14][15][16] Булевої алгебри не достатньо для роботи із логічними формулами, в яких використовують квантори, таких як в логіці першого порядку. Хоча розвиток математичної логіки не відповідає Булевій, зв'язок між його алгеброю і логікою пізніше був закладений в основу алгебраїчної логіки, що також вивчає алгебраїчні системи багатьох інших логік.[9] Задача прийняття рішень про те чи є змінні даної булевої формули (висловлювання) приймати такі значення, що формула буде розрахована як істина називається задачею здійсненності булевих формул, і є дуже вадливою для теоретичної інформатики, що є першою задачею для якої було показано, що вона має складність NP-повної задачі. Тісно пов'язана з цим модель обчислення, що відома як булева схема[en] співвідносить часову складність (алгоритму) із складністю схем[en].

Див. також

Примітки

  1. Алгебра логіки // Большая советская энциклопедия : в 30 т. / главн. ред. А. М. Прохоров. — 3-е изд. — М. : «Советская энциклопедия», 1969—1978. (рос.)
  2. Boole, George (2003) [1854]. An Investigation of the Laws of Thought. Prometheus Books. ISBN 978-1-59102-089-9.
  3. "The name Boolean algebra (or Boolean 'algebras') for the calculus originated by Boole, extended by Schröder, and perfected by Whitehead seems to have been first suggested by Sheffer, in 1913." E. V. Huntington, "New sets of independent postulates for the algebra of logic, with special reference to Whitehead and Russell's Principia mathematica", in Trans. Amer. Math. Soc. 35 (1933), 274-304; footnote, page 278.
  4. Peirce, Charles S. (1931). Collected Papers. Т. 3. Harvard University Press. с. 13. ISBN 978-0-674-13801-8.
  5. а б в Givant, Steven; Halmos, Paul (2009). Introduction to Boolean Algebras. Undergraduate Texts in Mathematics, Springer. ISBN 978-0-387-40293-2.
  6. O'Regan, Gerard (2008). A brief history of computing. Springer. с. 33. ISBN 978-1-84800-083-4.
  7. Venn, John (July 1880). I. On the Diagrammatic and Mechanical Representation of Propositions and Reasonings (PDF). The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science. 5. 10 (59): 1—18. doi:10.1080/14786448008626877. Архів (PDF) оригіналу за 16 травня 2017. [1] [2]
  8. Shannon, Claude (1949). The Synthesis of Two-Terminal Switching Circuits. Bell System Technical Journal. 28: 59—98. doi:10.1002/j.1538-7305.1949.tb03624.x.
  9. а б в J. Michael Dunn; Gary M. Hardegree (2001). Algebraic methods in philosophical logic. Oxford University Press US. с. 2. ISBN 978-0-19-853192-0.
  10. Norman Balabanian; Bradley Carlson (2001). Digital logic design principles. John Wiley. с. 39—40. ISBN 978-0-471-29351-4., online sample
  11. Rajaraman & Radhakrishnan (1 березня 2008). Introduction To Digital Computer Design. PHI Learning Pvt. Ltd. с. 65. ISBN 978-81-203-3409-0.
  12. John A. Camara (2010). Electrical and Electronics Reference Manual for the Electrical and Computer PE Exam. www.ppi2pass.com. с. 41. ISBN 978-1-59126-166-7.
  13. Shin-ichi Minato, Saburo Muroga (2007). Binary Decision Diagrams. У Wai-Kai Chen (ред.). The VLSI handbook (вид. 2nd). CRC Press. ISBN 978-0-8493-4199-1. chapter 29.
  14. Alan Parkes (2002). Introduction to languages, machines and logic: computable languages, abstract machines and formal logic. Springer. с. 276. ISBN 978-1-85233-464-2.
  15. Jon Barwise; John Etchemendy; Gerard Allwein; Dave Barker-Plummer; Albert Liu (1999). Language, proof, and logic. CSLI Publications. ISBN 978-1-889119-08-3.
  16. Ben Goertzel (1994). Chaotic logic: language, thought, and reality from the perspective of complex systems science. Springer. с. 48. ISBN 978-0-306-44690-0.

Література

Посилання