Запись логической функции по таблице истинности. Объяснение нового материала

Таблица истинности - это таблица, которая описывает логическую функцию. Логическая функция здесь - это функция, у которой значения переменных и значение самой функции выражают истинность. Например, они принимают значения «истина» либо «ложь» (true либо false, 1 либо 0).

Таблицы истинности применяются для определения значения какого-либо высказывания для всех возможных случаев значений истинности высказываний, которые его составляют. Количество всех существующих комбинаций в таблице находится по формуле N=2*n; где N - общее количество возможных комбинаций, n - число входных переменных. Таблицы истинности нередко используются в цифровой технике и булевой алгебре, чтобы описать работу логических схем.

Таблицы истинности для основных функций

Примеры : конъюнкция - 1&0=0, импликация - 1→0=0.

Порядок выполнения логических операций

Инверсия; Конъюнкция; Дизъюнкция; Импликация; Эквиваленция; Штрих Шеффера; Стрелка Пирса.

Последовательность построения (составления) таблицы истинности:

  1. Определить количество N используемых переменных в логическом выражении.
  2. Вычислить количество всевозможных наборов значений переменных M = 2 N , равное количеству строк в таблице.
  3. Подсчитать количество логических операций в логическом выражении и определить количество столбцов в таблице, которое равно количеству переменных плюс количество логических операций.
  4. Озаглавить столбцы таблицы названиями переменных и названиями логических операций.
  5. Заполнить столбцы логических переменных наборами значений, например, от 0000 до 1111 с шагом 0001 в случае для четырех переменных.
  6. Заполнить таблицу истинности по столбцам со значениями промежуточных операций слева направо.
  7. Заполнить окончательный столбец значений для функции F.

Таким образом, можно составить (построить) таблицу истинности самостоятельно.

Составить таблицу истинности онлайн

Заполните поле ввода и нажмите OK. T - истина, F - ложь. Рекомендуем добавить страницу в закладки или сохранить в социальной сети.

Обозначения

  1. Множества или выражения большими буквами латинского алфавита: A, B, C, D...
  2. A" - штрих - дополнения множеств
  3. && - конъюнкция ("и")
  4. || - дизъюнкция ("или")
  5. ! - отрицание (например, !A)
  6. \cap - пересечение множеств \cap
  7. \cup - объединение множеств (сложение) \cup
  8. A&!B - разность множеств A∖B=A-B
  9. A=>B - импликация "Если..., то"
  10. AB - эквивалентность

Решение логических выражений принято записывать в виде таблиц истинности – таблиц, в которых по действиям показано, какие значения принимает логическое выражение при всех возможных наборах его переменных.

При составлении таблицы истинности для логического выражения необходимо учитывать порядок выполнения логических операций , а именно:

      1. действия в скобках,
      2. инверсия (отрицание ),
      3. & (конъюнкция ),
      4. v (дизъюнкция ),
      5. => (импликация ),
      6. <=> (эквивалентность ).

Алгоритм составления таблицы истинности :

1. Выяснить количество строк в таблице (вычисляется как 2 n , где n – количество переменных + строка заголовков столбцов).

2. Выяснить количество столбцов (вычисляется как количество переменных + количество логических операций).

3. Установить последовательность выполнения логических операций.

4. Построить таблицу, указывая названия столбцов и возможные наборы значений исходных логических переменных.

5. Заполнить таблицу истинности по столбцам.

6. Записать ответ.

Пример 6

Построим таблицу истинности для выражения F =(Av B )&(¬ A v ¬ B ) .

1. Количество строк=2 2 (2 переменных+строка заголовков столбцов)=5.

2. Количество столбцов=2 логические переменные (А, В)+ 5 логических операций (v ,&, ¬ , v , ¬ ) = 7.

3. Расставим порядок выполнения операций: 1 5 2 43

(A v B ) & (¬ A v ¬ B )

4-5. Построим таблицу и заполним ее по столбцам:

А v В

¬ А

¬ В

¬ А v ¬ В

(A v B )&(¬ A v ¬ B )

0

0

0

1

1

0

6. Ответ: F =0, при A= B=0 и A= B=1

Пример 7

Построим таблицу истинности для логического выражения F = X v Y & ¬ Z .

1. Количество строк=2 3 +1=(3 переменных+строка заголовков столбцов)=9.

2. Количество столбцов=3 логические переменные+3 логических операций = 6.

3. Укажем порядок действий: 3 2 1

X v Y & ¬ Z

4-5. Построи м таблицу и заполним ее по столбцам:

¬ Z

Y& ¬ Z

Xv Y & ¬ Z

0

0

0

0

0

0

1

0

6. Ответ:

F =0, при X= Y= Z= 0; при X= Y=0 и Z= 1.

Упражнение 8

Постройте таблицы истинности для следующих логических выражений:

1. F =(Av B )&(¬ A& ¬ B).

2. F = X&¬ Yv Z.

Проверьте себя (эталон ответов)

Обратите внимание!

Наборы входных переменных, во избежание ошибок, рекомендуется перечислять следующим образом:

А) разделить колонку значений первой переменной пополам и заполнить верхнюю часть колонки нулями, а нижнюю единицами;

Б) разделить колонкузначенийвторой переменной на четыре части и заполнить каждую четверть чередующимися группами нулей и единиц, начиная с группы нулей;

В) продолжать деление колонок значений последующих переменных на 8, 16 и т.д. частей и заполнение их группами нулей или единиц до тех пор, пока группы нулей и единиц не будут состоять из одного символа.

Тавтология - тождественно истинная формула истина " ("1

Противоречие - тождественно ложная формула , или формула принимающая значение "ложь " ("0 ") при любых входящих в нее значениях переменных.

Равносильные формулы - две формулы А и В принимающие одинаковые значения, при одинаковых наборах значений входящих в них переменных. Равносильность двух формул алгебры логики обозначается символом .

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

Для записи составного высказывания в виде логического выражения на формальном языке (языке алгебры логики) в составном высказывании нужно выделить простые высказывания и логические связи между ними.

Запишем в форме логического выражения составное выска­зывание «(2 - 2 = 5 или 2-2 = 4) и (2 2 ≠ 5 или 2-24)». Проанализируем составное высказывание. Оно содержит два простых высказывания:

А = «2 2 = 5» - ложно (0),

В = «2 2 = 4>> - истинно (1).

Тогда составное высказывание можно записать в следующей форме:

«(А или В) и (⌐А или (⌐ В)».

Теперь необходимо записать высказывание в форме логи­ческого выражения с учетом последовательности выполнения логических операций. При выполнении логических операций определен следующий порядок их выполнения: инверсия, конъюнкция, дизъюнкция. Для изменения указанного порядка могут использоваться скобки:

F = (A v В) & (A v В).

Истинность или ложность составных высказываний можно определять чисто формально, руководствуясь законами алгебры высказываний, не обращаясь к смысловому содержанию высказываний.

Подставим в логическое выражение значения логических переменных и, используя таблицы истинности базовых ло­гических операций, получим значение логической функции:

F = (AvB )&(⌐ Av B ) = (0v1)&(1v0) = 1 & 1 = 1.

Таблицы истинности. Для каждого составного высказывания (логического выражения) можно построить таблицу истинности, которая определяет его истинность или ложность при всех возможных комбинациях исходных значений простых высказываний (логических переменных).

При построении таблиц истинности целесообразно руко­водствоваться определенной последовательностью действий.

Во-первых, необходимо определить количество строк в таблице истинности. Оно равно количеству возможных ком­бинаций значений логических переменных, входящих в ло­гическое выражение. Если количество логических переменных равно n , то:

количество строк = 2 n .

В нашем случае логическая функция F = (AvB )&(⌐ Av B ) имеет 2 переменные и, следовательно, количество строк в таблице истинности должно быть равно 4.

Во-вторых, необходимо определить количество столбцов в таблице истинности, которое равно количеству логических переменных плюс количество логических операций.

В нашем случае количество переменных равно двум, а количество логических операций - пяти, то есть количество столбцов таблицы истинности равно семи.

В-третьих, необходимо построить таблицу истинности с указанным количеством строк и столбцов, обозначить столбцы и внести в таблицу возможные наборы значений исходных логических переменных.

В-четвертых, необходимо заполнить таблицу истинности по столбцам, выполняя базовые логические операции в необходимой последовательности и в соответствии с их таблицами истинности (табл. 4.4). Теперь мы можем определить значение логической функции для любого набора значений логических переменных.

Таблица 4.4. Таблица истинности логической функции

F =(AvB )&(⌐ Av B )

(AvB)&(⌐Av⌐B)

Равносильные логические выражения. Логические выражения, у которых последние столбцы таблиц истинности совпадают, называются равносильными. Для обозначения равносильных логических выражений используется знак «=».

Докажем, что логические выражения ⌐А &⌐В и ⌐(AvB ) равносильны. Построим сначала таблицу истинности логическое выражения ⌐А &⌐ В (табл. 4.5).

Таблица 4.5. Таблица истинности логического выражения ⌐А & ⌐В

А& В

Теперь построим таблицу истинности логического выражения ⌐(AvB ) (табл. 4.6).

Таблица 4.6. Таблица истинности логического выражения ⌐(AvB )

(AvB )

Значения в последних столбцах таблиц истинности совпадают, следовательно, логические выражения равносильны:

А & ⌐В = ⌐(AvB ).

Логическая функция - это функция, в которой переменные принимают только два значения: логическая единица или логический ноль. Истинность или ложность сложных суждений представляет собой функцию истинности или ложности простых. Эту функцию называют булевой функцией суждений f (a, b).

Любая логическая функция может быть задана с помощью таблицы истинности, в левой части которой записывается набор аргументов, а в правой части - соответствующие значения логической функции.

При построении таблицы истинности необходимо учитывать порядок выполнения логических операций. Операции в логическом выражении выполняются слева направо с учетом скобок в следующем порядке:

  • 1. инверсия;
  • 2. конъюнкция;
  • 3. дизъюнкция;
  • 4. импликация и эквивалентность.

Для изменения указанного порядка выполнения логических операций используются круглые скобки.

Предлагается следующий алгоритм построения таблицы истинности .

  • 1. Определить количество наборов входных переменных - всевозможных сочетаний значений переменных, входящих в выражения, по формуле: Q=2 n , где n - количество входных переменных. Оно определяет количество строк таблицы.
  • 2. Внести в таблицу все наборы входных переменных.
  • 3. Определить количество логических операций и последовательность их выполнения.
  • 4. Заполнить столбцы результатами выполнения логических операций в обозначенной последовательности.

Чтобы не повторить или не пропустить ни одного возможного сочетания значений входных переменных, следует пользоваться одним из предлагаемых ниже способов заполнения таблицы.

Способ 1. Каждый набор значений исходных переменных есть код числа в двоичной системе счисления, причем количество разрядов числа равно количеству входных переменных. Первый набор - число 0. Прибавляя к текущему числу каждый раз по 1, получаем очередной набор. Последний набор - максимальное значение двоичного числа для данной длины кода.

Например, для функции от трех переменных последовательность наборов состоит из чисел:

Способ 2. Для функции от трех переменных последовательность данных можно получить следующим путем:

  • а) разделить колонку значений первой переменной пополам и заполнить верхнюю половину нулями, нижнюю половину единицами;
  • б) в следующей колонке для второй переменной половинку снова разделить пополам и заполнить группами нулей и единиц; аналогично заполнить вторую половинку;
  • в) так делать до тех пор, пока группы нулей и единиц не будут состоять из одного символа.

Способ 3. Воспользоваться известной таблицей истинности для двух аргументов. Добавляя третий аргумент, сначала записать первые 4 строки таблицы, сочетая их со значением третьего аргумента, равным 0, а затем еще раз записать эти же 4 строки, но теперь уже со значением третьего аргумента, равным 1. В результате в таблице для трех аргументов окажется 8 строк:

Например, построим таблицу истинности для логической функции:

Количество входных переменных в заданном выражении равно трем (A,B,C) . Значит, количество входных наборов Q=2 3 =8 .

Столбцы таблицы истинности соответствуют значениям исходных выражений A,B,C , промежуточных результатов и (B V C ), а также искомого окончательного значения сложного арифметического выражения:

  • 0 0 0 1 0 0
  • 0 0 1 1 1 1
  • 0 1 0 1 1 1
  • 0 1 1 1 1 1
  • 1 0 0 0 0 0
  • 1 0 1 0 1 0
  • 1 1 0 0 1 0
  • 1 1 1 0 1 0
  • 7.4. Логические функции и их преобразования. Законы логики

Для операций конъюнкции, дизъюнкции и инверсии определены законы булевой алгебры, позволяющие производить тождественные (равносильные) преобразования логических выражений .

Законы логики

  • 1. ¬¬ А
  • 2. A&B
  • 3. AVB
  • 4. A&(B&C)
  • 5. AV(BVC)
  • 6. A&(BVC)
  • 7. AV(B&C)
  • 8. A&A
  • 9. AVA
  • 10. AV¬A
  • 11. A&¬A
  • 12. A&И
  • 13. AVИ
  • 14. A&Л
  • 15. AVЛ
  • 16. ¬(A&B)
  • 17. ¬(AVB)
  • 18. A => B

Основываясь на законах, можно выполнять упрощение сложных логических выражений. Такой процесс замены сложной логической функции более простой, но равносильной ей, называется минимизацией функции.

Пример 1. Упростить выражения так, чтобы в полученных формулах не содержалось отрицания сложных высказываний.

Решение

Пример 2. Минимизировать функцию

При упрощении выражения использовались формулы поглощения и склеивания.

Пример 3. Найти отрицание следующего высказывания: "Если урок будет интересным, то никто из учеников (Миша, Вика, Света) не будет смотреть в окно".

Решение

Обозначим высказывания:

Y - "Урок интересный";

M - "Миша смотрит в окно";

B - "Вика смотрит в окно";

C - "Света смотрит в окно".

При упрощении выражения использовались формула замены операций и закон де Моргана.

Пример 4. Определить участника преступления, исходя из двух посылок: логический компьютер таблица

  • 1) "Если Иванов не участвовал или Петров участвовал, то Сидоров участвовал";
  • 2) "Если Иванов не участвовал, то Сидоров не участвовал".

Решение

Составим выражения:

I - "Иванов участвовал в преступлении";

P - "Петров участвовал в преступлении";

S - "Сидоров участвовал в преступлении".

Запишем посылки в виде формул:

Проверим результат, используя таблицу истинности:


Ответ: Иванов участвовал в преступлении.

Построение логической функции по ее таблице истинности

Мы научились составлять таблицу истинности для логической функции. Попробуем решить обратную задачу.

Рассмотрим строки, где значение истинности функции Z истинно (Z=1). Функцию для этой таблицы истинности можно составить следующим образом: Z(X,Y) = (¬ X& ¬Y)V(X& ¬Y).

Каждой строке, где функция истинна (равна 1), соответствует скобка, представляющая собой конъюнкцию аргументов, причем если значение аргумента О, то мы берем его с отрицанием. Все скобки соединены между собой операцией дизъюнкции. Полученную формулу можно упростить, применив законы логики:

Z(X,Y) <=> ((¬X& ¬Y) VX)&((¬X&Y)V ¬Y) <=> (XV(¬X& ¬Y)) &(¬YV(¬X&¬Y)) <=> ((XV¬X)&(XV ¬Y))&((Y¬V ¬X)&(¬YV ¬Y)) <=> (1&(XV ¬Y))&((¬YV ¬X)& ¬Y)<=> (XV ¬Y)&((¬YV ¬X)& ¬Y).

Проверьте полученную формулу: составьте таблицу истинности для функции Z(X,Y).

Запишите правила конструирования логической функции по ее таблице истинности:

  • 1. Выделить в таблице истинности те строки, в которых значение функции равно 1.
  • 2. Выписать искомую формулу в виде дизъюнкции нескольких логических элементов. Число этих элементов равно числу выделенных строк.
  • 3. Каждый логический элемент в этой дизъюнкции записать в виде конъюнкции аргументов функции.
  • 4. Если значение какого-либо аргумента функции в соответствующей строке таблице равно 0, то этот аргумент мы берем с отрицанием.

Определение 1

Логическая функция – функция, переменные которой принимают одно из двух значений: $1$ или $0$.

Любую логическую функцию можно задать с помощью таблицы истинности: набор всех возможных аргументов записывается в левой части таблицы, а соответствующие значения логической функции – в правой части.

Определение 2

Таблица истинности – таблица, которая показывает, какие значения примет составное выражение при всех возможных наборах значений простых выражений, входящих в него.

Определение 3

Равносильными называются логические выражения, последние столбцы таблиц истинности которых совпадают. Равносильность обозначается с помощью знака $«=»$.

При составлении таблицы истинности важно учитывать следующий порядок выполнения логических операций:

Рисунок 1.

Приоритетом в выполнении порядка выполнения операций пользуются скобки.

Алгоритм построения таблицы истинности логической функции

    Определяют количество строк: кол-во строк = $2^n + 1$ (для строки заголовка) , $n$ – количество простых выражений. Например, для функций двух переменных существует $2^2 = 4$ комбинации наборов значений переменных, для функций трех переменных – $2^3 = 8$ и т.д.

    Определяют количество столбцов: кол-во столбцов = кол-во переменных + кол-во логических операций. При определении количества логических операций учитывают также порядок их выполнения.

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

Рисунок 2.

Пример 1

Составить таблицу истинности логического выражения $D=\bar{A} \vee (B \vee C)$.

Решение:

    Определим количество строк:

    кол-во строк = $2^3 + 1=9$.

    Количество переменных – $3$.

    1. инверсия ($\bar{A}$);
    2. дизъюнкция, т.к. она находится в скобках ($B \vee C$);
    3. дизъюнкция ($\overline{A}\vee \left(B\vee C\right)$) – искомое логическое выражение.

      Кол-во столбцов = $3 + 3=6$.

    Заполним таблицу, учитывая таблицы истинности логических операций.

Рисунок 3.

Пример 2

По данному логическому выражению построить таблицу истинности:

Решение:

    Определим количество строк:

    Количество простых выражений – $n=3$, значит

    кол-во строк = $2^3 + 1=9$.

    Определим количество столбцов:

    Количество переменных – $3$.

    Количество логических операций и их последовательность:

    1. отрицание ($\bar{C}$);
    2. дизъюнкция, т.к. она находится в скобках ($A \vee B$);
    3. конъюнкция ($(A\vee B)\bigwedge \overline{C}$);
    4. отрицание, которое обозначим $F_1$ ($\overline{(A\vee B)\bigwedge \overline{C}}$);
    5. дизъюнкция ($A \vee C$);
    6. конъюнкция ($(A\vee C)\bigwedge B$);
    7. отрицание, которое обозначим $F_2$ ($\overline{(A\vee C)\bigwedge B}$);
    8. дизъюнкция – искомая логическая функция ($\overline{(A\vee B)\bigwedge \overline{C}}\vee \overline{(A\vee C)\bigwedge B}$).