- Как пользоваться калькулятором
- Используемые символы
- Обозначения логических операций
- Что умеет калькулятор
- Инструкция к сервису
- Что такое булева функция
- Вычисления онлайн
- Алгоритм построения логической функции по ее таблице истинности
- Операция «Сложение по модулю 2» (XOR, исключающее или, строгая дизъюнкция)
- Помощь эксперта
- Что такое таблица истинности?
- Виды логических операций
- Операция НЕ — логическое отрицание (инверсия)
- Логические операции
- Таблица истинности логических операций
- Минимизация булевых функций
- Метод карт Карно
- Совершенная конъюнктивная нормальная форма
- Приоритет логических операций
- Как задать логическую функцию
- Совершенная дизъюнктивная нормальная форма
- Шпаргалка по работе с калькулятором.
- Операция «ЕСЛИ-ТО» — логическое следование (импликация)
- Операция «А тогда и только тогда, когда В» (эквивалентность, равнозначность)
- Способы представления булевой функции
- Совершенная дизъюнктивная нормальная форма (ДНФ)
- Совершенная конъюнктивная нормальная форма (КНФ)
- Алгебраическая нормальная форма (АНФ, полином Жегалкина)
- Алгоритм построения СДНФ для булевой функции
- Алгоритм построения СКНФ для булевой функции
- Алгоритм построения полинома Жегалкина булевой функции
- Пример задания
- Операция И — логическое умножение (конъюнкция)
- Операция ИЛИ — логическое сложение (дизъюнкция, объединение)
- Построение логической схемы по таблице истинности
- Примеры построения различных представлений логических функций
- Построение совершенной дизъюнктивной нормальной формы:
- Построение совершенной конъюнктивной нормальной формы:
- Аксиомы и законы
Как пользоваться калькулятором
- Введите в поле логическую функцию (например x1 ∨ x2) или ее вектор (например 10110101)
- Укажите действия, которые необходимо выполнить, с помощью переключателей
- Укажите, требуется ли вывод решения переключателем «С раствором»
- Нажмите кнопку «Построить»
Используемые символы
В качестве переменных используются буквы латинского и русского алфавита (большие и маленькие), а также числа, написанные после буквы (индекс переменной). Следовательно, имена переменных будут: a, x, a1, B, X, X1, Y1, A123 и так далее.
Для написания логических операций вы можете использовать как обычные символы клавиатуры (*, +,!, ^, ->, =), так и известные в литературе символы (∧, ∨, ¬, ⊕, →, ≡). Если на вашей клавиатуре нет необходимого символа операции, используйте клавиатуру калькулятора (если он не отображается, нажмите «Показать клавиатуру»), где доступны как все логические операции, так и набор наиболее часто используемых переменных.
Чтобы изменить порядок операций, используйте круглые скобки ().
Обозначения логических операций
- И (И):&•∧*
- ИЛИ (ИЛИ):∨+
- НЕ):¬!
- Исключающее ИЛИ (XOR):⊕^
- Следствие:-> →=>
- Эквивалентность:=~≡ <=>
- Кадр Шеффера:↑|
- Проколоть стрелку:↓
Что умеет калькулятор
- Составьте таблицу истинности по функциям
- Создайте таблицу истинности из двоичного вектора
- Построение идеальной нормальной формы конъюнктивы (SKNF)
- Постройте идеальную дизъюнктивную нормальную форму (SDNF)
- Построить многочлен Жегалкина (с Паскалем, треугольником, неопределенными коэффициентами)
- Определите, принадлежит ли функция к каждому из пяти классов голодания
- Постройте карту Карно
- Минимизировать DNF и CNF
- Ищите фиктивные переменные
Инструкция к сервису
Чтобы добавить логический элемент, выберите его левой кнопкой мыши, затем щелкните рабочее пространство.
Чтобы соединить элементы, вы должны сначала выделить их (один щелчок по объекту), затем нажать кнопку «Подключить». Чтобы подключиться к переменной xi, щелкните соответствующее имя. Созданную схему можно сохранить в формате docx или png.
Что такое булева функция
Булева функция f (x1, x2, . xn) — это любая функция от n переменных x1, x2, . xn, в которой ее аргументы принимают одно из двух значений: 0 или 1, а сама функция принимает значения 0 или 1. То есть это правило, согласно которому произвольному набору нулей и единиц присваивается значение 0 или 1. Подробнее о булевых функциях можно найти в Википедии.
Вычисления онлайн
В Интернете есть сервисы, которые автоматически создают таблицы истинности. Такие сайты предлагают свои услуги бесплатно, а также доступны для тех, кто плохо разбирается в теме. С их помощью можно найти таблицы для довольно сложных выражений, решение которых требует тщательности в расчетах. Онлайн-вычисления основаны на принципах логических законов, поэтому вам не нужно беспокоиться о достоверности результата. К тому же расчет занимает совсем немного времени.
Чтобы использовать компьютерные сайты, пользователь должен знать назначение операций, иметь подключение к Интернету и установленный веб-браузер, поддерживающий технологию Flash. Сервисы, которые предлагают данный вид услуг, не требуют регистрации, указания личных данных.
Из различных порталов можно отметить три самых популярных калькулятора:
- Allcalc.
- Программа для вас.
- Учим.
Эти сайты имеют интуитивно понятный интерфейс и, что очень полезно, содержат на своих страницах синтетическую теорию, используемую для составления таблиц истинности и даже примеров решений.
Алгоритм построения логической функции по ее таблице истинности
- Выделите строки со значением функции $ 1 $ в таблице истинности$.
- Искомая формула записывается как дизъюнкция нескольких логических выражений. Количество этих выражений равно количеству выбранных строк.
- Запишите каждое логическое выражение в этой дизъюнкции как соединение аргументов функции.
- В случае, если значение любого из аргументов функции в соответствующей строке таблицы принимает значение $ 0 $, запишите этот аргумент как его отрицание.
Пример 3
По данной таблице истинности некоторой логической функции $ Y (A, B) $ составьте соответствующую логическую функцию.
Рисунок 5.
Решение:
- Значение функции составляет $ 1 $ в строках таблицы $ 1 $ и $ 3.
- Поскольку у нас $ 2 $ строк, мы получаем дизъюнкцию двух элементов:
Рисунок 6.
- Мы записываем каждое логическое выражение в этой дизъюнкции как соединение аргументов функций $ A $ и $ B $: $ left (A wedge B right) vee left (A wedge B right)$
- В случае, если значение в соответствующей строке таблицы равно $ 0 $, запишите этот аргумент с отрицанием, мы получим искомую функцию: Y left (A, B right) = left ( overline {A} wedge overline {B} right) vee left (A wedge overline {B} right).
Операция «Сложение по модулю 2» (XOR, исключающее или, строгая дизъюнкция)
Применяемый номинал: A XOR B, A ⊕ B.
Таблица истинности:
А | Б | Б |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Результат эквивалентности операции истинен, только если A и B одновременно истинны или ложны.
Помощь эксперта
Что такое таблица истинности?
Таблица истинности — это таблица, которая описывает логическую функцию, то есть отражает все значения функции для всех возможных значений ее аргументов. Таблица состоит из n + 1 столбца и 2n строк, где n — количество используемых переменных. Первые n столбцов содержат все возможные значения аргументов (переменных) функции, а n + 1-й столбец содержит значения функции, которую она принимает на заданном наборе аргументов.
Очень часто встречается вариант таблицы, в которой количество столбцов равно n + количество используемых логических операций. В такой таблице первые n столбцов также заполнены наборами аргументов, а остальные столбцы заполнены значениями подфункций, включенных в запись функции, что позволяет упростить вычисление конечное значение функции в результате промежуточных вычислений.
Виды логических операций
Бит считается наименьшей единицей измерения объема данных. Вводится одно из двух значений: ложь (0) или истина (1). Каждая ячейка, соответствующая биту, находится только в одном из этих состояний. Для манипулирования ячейками используются следующие операции:
- И — используется для сравнения двух битов. Результат действия будет один, но только если значения двух ячеек совпадают. Для других вариантов общая сумма будет иметь стабильное нулевое состояние.
- ИЛИ (ИЛИ) — по сути, обратная операции И. Результат становится нулевым, если содержимое двух сравниваемых битов одинаково. В остальных случаях он равен единице.
- XOR (OR) — если значения, содержащиеся в двух сравниваемых битах, противоположны, при выполнении логического действия результат будет равен единице. Во всех остальных случаях он будет равен нулю.
- НЕ — Действие используется немного. Если ячейка изначально находилась в нулевом состоянии, после выполнения над ней операции она станет равной единице и наоборот. Реальное — это логическое обратное.
Эти операции являются основными элементами составления таблиц истинности и получения возможного результата. На их основе построена булева алгебра. Некоторые элементы получаются путем совмещения нескольких операций. Таким образом, существует состояние: И-НЕ (И-НЕ) и НИ (ИЛИ-НЕ). Первый элемент является обратной операцией И, а второй — операцией ИЛИ. На основе рассмотренных операторов построено функционирование всех цифровых интегральных схем.
В информатике есть терминология, обозначающая конкретное логическое действие. Следовательно, AND называется операцией соединения, OR — дизъюнкцией, XOR — сложением по модулю 2, NOT — отрицанием. Задача инженера при анализе схем или алгоритмов сводится к выполнению булевой арифметики и упрощению выражений. Для этого используются различные правила и нормы, не требующие тестирования.
Операция НЕ — логическое отрицание (инверсия)
Логическая операция НЕ применяется к одному аргументу, который может быть простым или сложным логическим выражением. Результат операции НЕ следующий:
- если исходное выражение истинно, результат его отрицания будет ложным;
- если исходное выражение ложно, то результат его отрицания будет истинным.
Следующие соглашения НЕ принимаются для операции отрицания:
не А, Ā, не А, ¬А,! К
Результат операции отрицания НЕ определяется следующей таблицей истинности:
А | не на |
0 | 1 |
1 | 0 |
Результат операции отрицания истинен, когда исходное утверждение ложно, и наоборот.
Логические операции
Логическая операция — это операция инструкции, которая позволяет вам составлять новые инструкции, связывая более простые. Основные операции обычно называются конъюнкцией (∧ или &), дизъюнкцией (∨ или |), импликацией (→), отрицанием (¬), эквивалентностью (=), исключающим ИЛИ (⊕).
Таблица истинности логических операций
а | б | а ∧ б | а ∨ б | к | б | а → б | а = б | а ⊕ б |
0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 |
Минимизация булевых функций
Этот сервис использует метод Куайна и карты Карно-Вейха для минимизации логических функций. После получения минимальной формы можно перестроить логическую схему. Если оригинальная схема понадобится в будущем, ее можно заранее сохранить (меню Действия / Сохранить). Можно сократить BF, применив некоторые эквивалентности логики высказываний:
- Kx v K ≡ K — тождество поглощения;
- Kx v Kx ≡ K — идентификатор облигации;
- Kx v Ky ≡ K (xvy) — закон распределения,
где K — элементарная конъюнкция. Большинство методов минимизации BF полагаются на первые две идентичности. И третий — закон распределения — уменьшает количество букв в формуле, но выводит формулу из класса DNF. При минимизации BF используются разные термины (и обозначения) для элементарных полных союзов (PEC).
Чаще всего используются термины «минтерм» и «составляющая единица». (Для полных элементарных дизъюнкций (PED) используются термины «maxterm» и «нулевая составляющая»). Слово «составляющая» означает «компонент», а название «minterm» происходит от определения конъюнкции как минимального значения его операндов. В этом случае используются обозначения mi — для minterm и Mi — для maxterm. Число i соответствует двоичной записи оценки переменной, для которой mi = 1.
Метод карт Карно
Этот метод используется для BF с не более чем шестью аргументами и основан на тождестве связывания: Kx v Kx ≡ K — два элементарных соединения (EC) склеиваются, если они отличаются только обратным знаком аргумента. Для облегчения поиска таких пар (четыре, восемь,…) склеенных КЭ используется специальное представление БФ в виде таблицы — карта Карно (другое название — диаграмма Вейха).
Чтобы заполнить карту Карно, щелкните левой кнопкой мыши соответствующую ячейку.
У карты Карно особенность в том, что две ПЭК, соответствующие соседним ячейкам карты, отличаются знаком инверсии только одного аргумента, то есть их можно склеивать. Кроме того, соседними ячейками являются не только ячейки, например, с номерами 1 и 3, но и ячейки с номерами 12 и 8, 12 и 4, т.е карту можно «свернуть» в цилиндр, соединив его горизонтальные края. (вертикальный.
Два юнита «прилипают» каждый раз, когда они стоят бок о бок в ряд или столбец (карту можно свернуть в цилиндр). В результате склейки количество букв, входящих в УИК, уменьшается на одну.
Совершенная конъюнктивная нормальная форма
Совершенная конъюнктивная нормальная форма формулы (SKNF) — это эквивалентная формула, которая представляет собой конъюнкцию элементарных дизъюнкций, удовлетворяющих следующим свойствам:
- Все элементарные предложения содержат все переменные, входящие в функцию F (x1, x2, . xn).
- Все элементарные дизъюнкции различны.
- Каждая элементарная дизъюнкция содержит переменную один раз.
- Никакая элементарная дизъюнкция не содержит переменной и ее отрицания.
Приоритет логических операций
- Действия в скобках
- Инверсия
- Соединение (&)
- Дизъюнкция (V), исключающее ИЛИ (XOR), сумма по модулю 2
- Следствие (→)
- Эквивалентность (↔)
Как задать логическую функцию
Есть много способов определить логическую функцию:
- таблица истинности
- наборы характеристик
- вектор ценностей
- серая матрица
- формулы
Рассмотрим некоторые из них:
Чтобы определить функцию через вектор значений, необходимо написать вектор из 2n нулей и единиц, где n — количество аргументов, от которых зависит функция. Например, функция с двумя аргументами может быть указана как: 0001 (операция И), 0111 (операция ИЛИ).
Чтобы определить функцию как формулу, вам необходимо написать математическое выражение, состоящее из аргументов функции и логических операций. Например, вы можете определить такую функцию: a∧b ∨ b∧c ∨ a∧c
Совершенная дизъюнктивная нормальная форма
Совершенная дизъюнктивная нормальная форма формулы (SDNF) — это эквивалентная формула, которая представляет собой дизъюнкцию элементарных конъюнкций со следующими свойствами:
- Каждый логический член формулы содержит все переменные, входящие в функцию F (x1, x2, . xn).
- Все логические члены формулы разные.
- Ни один логический термин не содержит переменной и ее отрицания.
- Ни один логический член в формуле не содержит одну и ту же переменную дважды.
SDNF можно получить с помощью таблиц истинности или с помощью эквивалентных преобразований.
Для каждой функции SDNF и SKNF однозначно определены до перестановки.
Шпаргалка по работе с калькулятором.
Переменные, которые могут принимать только два значения, 0 и 1, называются логическими переменными (или просто переменными). Обратите внимание, что логическая переменная x может означать с номером 0 ложное утверждение и с номером 1 истинное утверждение.
Из определения логической функции следует, что функция n переменных является отображением из Bn в B, которое может быть указано непосредственно из таблицы, называемой таблицей истинности этой функции.
Основные функции логики — это функции двух переменных z = f (x, y).
Количество этих функций равно 24 = 16. Пронумеруем их и расположим в естественном порядке.
Давайте подробнее рассмотрим эти функции. Два из них f0 = 0 и f15 = 1 — постоянные. Функции f3, f5, f10 и f12 по сути являются функциями одной переменной.
Наиболее важные функции двух переменных имеют специальные имена и обозначения.
- f1 — конъюнкция (функция И)
Обратите внимание, что конъюнкция — это на самом деле обычное умножение (нулей и единиц). Эта функция обозначается как x & y; - f7 — дизъюнкция (функция o). Обозначается v.
- f13 — импликация (следование). Обозначается ->
Это очень важная особенность, особенно в логике. Это можно увидеть следующим образом: если x = 0 (т. Е. X является «ложным»), то из этого факта могут быть выведены как «ложь», так и «истина» (и это будет правильно), если y = 1 (т.е. « Истина »), то истина выводится как из« лжи », так и« истины », и это тоже правильно. Только вывод «от истины ложно» неверен. Обратите внимание, что каждая теорема всегда содержит эту логическую функцию; - f6 — сложение по модулю 2. Обозначается знаком «+» или «+» в круге.
- f9 — эквивалентность или сходство. Это f9 = 1 тогда и только тогда, когда x = y. Обозначается x ~ y.
- f14 — выстрел Шеффера. Иногда эту функцию называют «non e» (поскольку она равна отрицанию конъюнкции). Обозначается x | у.
- f8 — стрела Пирса (иногда эту функцию называют штрихом Лукасевича).
Три оставшиеся функции (f2, f4 и f11) не имеют специальных обозначений.
Обратите внимание, что функции функций часто рассматриваются в логике, например, перекрытие вышеуказанных функций. В этом случае последовательность действий указывается (как обычно) в скобках.
Вы также можете скачать программу Логический калькулятор для Windows.
В настоящее время логический калькулятор может:
- Вставка и проверка правильности переменных. Правильность означает правильное написание букв и операции над ними
- Выдача таблицы истинности для выражения
- СКНФ и СДНФ
Операция «ЕСЛИ-ТО» — логическое следование (импликация)
Эта операция соединяет два простых логических выражения, первое из которых является условием, а второе — следствием этого условия.
Применяемые купюры:
если A, то B; A влечет B; если A, то B; А → Б.
Таблица истинности:
А | Б | А → Б |
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 0 |
1 | 1 | 1 |
Результат следующей операции (импликация) ложен только тогда, когда посылка А истинна, а заключение В (следствие) ложно.
Операция «А тогда и только тогда, когда В» (эквивалентность, равнозначность)
Номинал номинала: A ↔ B, A ~ B.
Таблица истинности:
А | Б | Б |
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Результат эквивалентности операции истинен, только если A и B одновременно истинны или ложны.
Способы представления булевой функции
С помощью формул вы можете достичь огромного количества различных функций, а с помощью разных формул вы можете достичь одной и той же функции. Иногда может быть очень полезно знать, как построить функцию, используя лишь небольшой набор предопределенных операций или используя как можно меньше произвольных операций. Рассмотрим основные способы задания логических функций:
- Совершенная дизъюнктивная нормальная форма (SDNF)
- Совершенная сослагательная нормальная форма (СКНФ)
- Алгебраическая нормальная форма (АНФ, многочлен Жегалкина)
Совершенная дизъюнктивная нормальная форма (ДНФ)
Простое соединение — это соединение конечного набора переменных или их отрицаний, и каждая переменная встречается не более одного раза.
Дизъюнктивная нормальная форма (ДНФ) представляет собой дизъюнкцию простых союзов.
Совершенная дизъюнктивная нормальная форма (SDNF) — это ДНФ относительно данного конечного набора переменных, каждая из которых конъюнкция включает все переменные данного набора.
Например, DNF — это функция ¬abc ∨ ¬a¬bc ∨ ac, но не SDNF, поскольку в последней конъюнкции отсутствует переменная b.
Совершенная конъюнктивная нормальная форма (КНФ)
Простая дизъюнкция — это дизъюнкция одной или нескольких переменных или их отрицаний, и каждая переменная появляется там не более одного раза.
Конъюнктивная нормальная форма (CNF) — это соединение простых дизъюнкций.
Совершенная конъюнктивная нормальная форма (SCNF) — это CNF относительно данного конечного набора переменных, каждая дизъюнкция которого включает в себя все переменные данного набора.
Например, CNF — это функция (a ∨ b) ∧ (a ∨ b ∨ c), но не SDNF, поскольку первая дизъюнкция не содержит переменной c.
Алгебраическая нормальная форма (АНФ, полином Жегалкина)
Алгебраическая нормальная форма, полином Жегалкина, представляет собой форму представления логической функции в виде полинома с коэффициентами вида 0 и 1, в котором операция конъюнкции используется как произведение, а исключающее ИЛИ используется как добавление.
Примеры полиномов Жегалкина: 1, a, a⊕b, ab⊕a⊕b⊕1
Алгоритм построения СДНФ для булевой функции
- Создайте таблицу истинности для функции
- Находит все наборы аргументов, для которых функция принимает значение 1
- Напишите простые союзы для каждого из наборов в соответствии со следующим правилом: если переменная в наборе принимает значение 0, то она включается в соединение с отрицанием, а в противном случае без отрицания
- Объедините все простые союзы, используя дизъюнкцию
Алгоритм построения СКНФ для булевой функции
- Создайте таблицу истинности для функции
- Находит все наборы аргументов, для которых функция принимает значение 0
- Напишите простые дизъюнкции для каждого из наборов в соответствии со следующим правилом: если переменная в наборе принимает значение 1, то она входит в дизъюнкцию с отрицанием, иначе без отрицания
- Объедините все простые дизъюнкции с помощью конъюнкции
Алгоритм построения полинома Жегалкина булевой функции
Существует несколько способов построения полинома Жегалкина, в этой статье мы рассмотрим наиболее удобный и простой из всех.
- Создайте таблицу истинности для функции
- Добавьте новый столбец в таблицу истинности и запишите в ячейки 1, 3, 5 . значения из тех же строк, что и предыдущий столбец таблицы истинности, и значения в строках 2, 4, 6 . сложите модуль два значения соответственно из 1, 3, 5 . строк.
- Добавьте новый столбец в таблицу истинности и перепишите значения 1, 2, 5, 6, 9, 10 . строк в новый столбец и добавьте те, которые были перезаписаны в 3, 4, 7, 8, 11, 12 строк, аналогичных значениям в предыдущем абзаце.
- Повторяйте шаги каждый раз, удваивая количество перенесенных и свернутых элементов, пока длина не станет равной количеству строк в таблице.
- Запись логических наборов, в которых значение последнего столбца равно единице
- Вместо единиц в наборах напишите имена переменных, соответствующие набору (для набора ноль, напишите единицу) и объедините их, используя операцию исключающее ИЛИ.
Пример задания
Предположим, вам нужно построить таблицу для логического выражения F = (A → B) * (A + B). Эта формула состоит из двух логических переменных A и B и нескольких операций. Компиляция начинается с определения строк. Используя формулу 2n + 1 для рассматриваемого примера, можно установить, что их количество будет: x = 22 + 1 = 5.
Теперь нужно определить количество столбцов. Для этого используется формула, учитывающая количество переменных и операций. Последние можно просто подсчитать, добавив количество различных знаков, используемых в вводе формулы. Но правильнее сначала организовать порядок действий, а потом уже считать. По порядку действий над операциями их нумерацию можно представить в следующем порядке:
- Значение в первых скобках.
- Обращение во второй скобке A.
- Отрицание во вторых скобках неизвестного Б.
- Дополнение во втором члене.
- Соединение.
В итоге получается, что столбцы будут: Y = 2 + 5 = 7. Теперь нужно построить таблицу 7X5. Переменные вводятся в заголовки первого и второго столбцов, а затем операции над ними. Затем в строках, соответствующих A и B, нужно записать все, что с ними может случиться. В итоге остается только правильно рассчитать последний столбец.
Для этого необходимо использовать законы. Вам нужно произвести логическое умножение значений в скобках. Первая и вторая строчки по очереди будут соответствовать работе продукта, что даст единицу в ответе. Третий и четвертый равны нулю к единице, что в конечном итоге даст ноль. Последний столбец является основным для рассматриваемой логической функции. Из него вы можете узнать значение логической функции для любого вида переменных A и B.
Это довольно простая задача всего с двумя переменными. Но на самом деле, например, в программировании, может быть намного больше. Решать такие задачи грубой силой проблематично. Поэтому при решении сложных примеров сначала пытаются упростить функцию.
Например, данное выражение (x + y + z) * (x + y). На самом деле это написано в совершенно нормальной форме конъюнктивы. Но чтобы привести его к такому виду, необходимо, чтобы во втором выражении было z. Чтобы его добавить, нужно обратить внимание на то, что внутри скобок есть логичное дополнение. Следовательно, добавление нуля не изменит результата. Вы можете добавить от нуля к z, так как ноль умножается на НЕ z. В результате вы получите выражение (x + y + z) * (x + y + z + z), для которого с помощью алгоритма уже не так сложно составить таблицу.
Операция И — логическое умножение (конъюнкция)
Операция логического И выполняет функцию пересечения двух операторов (аргументов), которые могут быть как простым, так и сложным логическим выражением. Результатом операции И является выражение, которое будет истинным тогда и только тогда, когда оба исходных выражения истинны.
Применяемые обозначения: A и B, A Λ B, A и B, A и B.
Результат операции И определяется следующей таблицей истинности:
А | Б | А и Б |
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Результат операции И истинен тогда и только тогда, когда утверждения A и B истинны одновременно, и ложны во всех остальных случаях.
Операция ИЛИ — логическое сложение (дизъюнкция, объединение)
Операция логического ИЛИ выполняет функцию объединения двух операторов, которые могут быть простым или сложным логическим выражением. Операторы, являющиеся источником логической операции, называются аргументами. Результатом операции ИЛИ является выражение, которое будет истинным тогда и только тогда, когда хотя бы одно из исходных выражений истинно.
Применяемые имена: A или B, AVB, A или B, A || Б.
Результат операции ИЛИ определяется следующей таблицей истинности:
А | Б | А или В |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Результатом операции ИЛИ является истина, когда A истинно, или B истинно, или оба A и B истинны одновременно, и ложь, когда аргументы A и B ложны.
Построение логической схемы по таблице истинности
На основе заданной SDNF (согласно таблице истинности) создается новая логическая схема (если не выбран элемент функции Create new circuit при булевой минимизации). Если расчеты производятся по оригинальной схеме и она вам понадобится в будущем, вы можете сохранить ее заранее (меню Действия / Сохранить). Имена переменных можно изменить. Для этого их нужно выделить (первая строка таблицы). Количество переменных
а | б | c | ж |
0 | 0 | 0 | |
0 | 0 | 1 | |
0 | 1 | 0 | |
0 | 1 | 1 | |
1 | 0 | 0 | |
1 | 0 | 1 | |
1 | 1 | 0 | |
1 | 1 | 1 |
Чтобы создать диаграмму и задать параметры решения, необходимо нажать кнопку «Далее.
Примеры построения различных представлений логических функций
Построены дизъюнктивные и дизъюнктивные совершенные нормальные формы, а также многочлен Жегалкина для функции трех переменных F = ¬ab∨¬bc∨ca
Построим таблицу истинности для функции
а | б | c | к | a∧b | б | b∧c | a∧b∨¬b∧c | c∧a | a∧b∨¬b∧c∨c∧a |
0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 |
0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1 |
0 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 |
1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
Построение совершенной дизъюнктивной нормальной формы:
Мы находим наборы, на которых функция принимает истинное значение: {0, 0, 1} {0, 1, 0} {0, 1, 1} {1, 0, 1} {1, 1, 1 }
В соответствии с найденными наборами для всех переменных ставим элементарные конъюнкции, и если переменная в наборе принимает значение 0, то будет записано отрицание:
- K1: {0, 0, 1} — a¬bc
- K2: {0, 1, 0} — ab¬c
- K3: {0, 1, 1} — abc
- K4: {1, 0, 1} — a¬bc
- K5: {1, 1, 1} — abc
Мы объединяем конъюнкции, используя дизъюнкцию, и получаем идеальную дизъюнктивную нормальную форму:
K1 ∨ K2 ∨ K3 ∨ K4 ∨ K5 = ¬a¬bc ∨ ¬ab¬c ∨ ¬abc ∨ a¬bc ∨ abc
Построение совершенной конъюнктивной нормальной формы:
Мы находим наборы, на которых функция принимает ложное значение: {0, 0, 0} {1, 0, 0} {1, 1, 0 }
В соответствии с найденными наборами ставим элементарные дизъюнкции во все переменные, и если переменная в наборе принимает значение 1, то будет записано отрицание:
- D1: {0, 0, 0} — a∨b∨c
- RE2: {1, 0, 0} — a∨b∨c
- RE3: {1, 1, 0} — a∨¬b∨c
Соедините дизъюнкции конъюнкцией, и вы получите идеальную конъюнктивную нормальную форму: D1 ∧ D2 ∧ D3 = (a∨b∨c) ∧ (¬a∨b∨c) ∧ (¬a∨¬b∨c)
Аксиомы и законы
Построение таблиц в удобной форме позволяет определить, когда определенное действие или утверждение приобретает правильный смысл, а если да, то нет. Логическая форма утверждения записана в верхней строке, а истинные значения в столбцах. Некоторые комбинации утверждений всегда будут верными или ложными, независимо от содержания. Поэтому были сформулированы следующие законы:
- Торжества. Записывается в виде утверждения: A = A. В этом случае таблица будет состоять из двух комбинаций — ложной и истинной. Бинарная логическая связка «Если А, то А» имеет материальный смысл. Для этого варианта всегда можно сказать, что A — это A. Этот закон означает, что нельзя заменять одно понятие другим, иначе возникнут логические ошибки.
- Противоречия. По его словам, утверждение, что A и NOT-A неверно: A & A = 0. Другими словами, если A — истинное значение, то его отрицание не может быть ложным. То есть их умножение всегда будет ложной операцией. Этот закон часто используется для упрощения сложных логических суждений.
- Третий исключен. Закон записывается в форме A v A = 1 и означает, что при этом утверждение может быть только истинным или ложным. То есть третьего не дано.
Эти три закона являются фундаментальными. Без их соблюдения невозможно сделать правильное утверждение.
Для решения логических задач с использованием таблиц истинности используются различные формулы, соответствующие разным типам операций. Одно из них — логическое умножение (союз). В этом случае функция считается истинной только тогда, когда истинны оба выражения: F = A & B. Еще одно логическое добавление (дизъюнкция). Он говорит, что если оба выражения ложны, логическая функция также будет ложной.
Кроме того, закон используется:
- инверсия (отрицание) — если логическое утверждение истинно, его отрицание будет ложным выражением;
- импликации (следовать) — для сложного логического выражения, которое всегда истинно, ложь будет тогда, когда из верности следует отрицание;
- эквивалентность (эквивалентность) — выражение будет истинным только тогда, когда оба утверждения имеют одинаковое значение.
При построении таблиц необходимо соблюдать установленный порядок упрощения операций. Сначала мы рассматриваем инверсию и конъюнкцию, затем дизъюнкцию, импликацию и эквивалентность. При изменении порядка выполнения действий в описании логических операций используются круглые скобки.