Построить таблицу истинности для функции f. Совершенная дизъюнктивная нормальная форма

Логическая функция - это функция, в которой переменные принимают только два значения: логическая единица или логический ноль. Истинность или ложность сложных суждений представляет собой функцию истинности или ложности простых. Эту функцию называют булевой функцией суждений 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, то этот аргумент мы берем с отрицанием.

Продолжительность урока: 45 мин

Тип урока: комбинированный:

  • проверка знаний – устная работа;
  • новый материал – лекция;
  • закрепление – практические упражнения;
  • проверка знаний – задания для самостоятельной работы.

Цели урока:

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

План урока:

  1. Организационный момент (2 мин).
  2. Повторение материала предыдущего урока (устный опрос) (4 мин).
  3. Объяснение нового материала (12 мин).
  4. Закрепление
  • разбор примера (5 мин);
  • практические упражнения (10 мин);
  • задания для самостоятельной работы (10 мин).
  • Обобщение урока, домашнее задание (2 мин).
  • Оборудование и программный материал:

    • белая доска;
    • мультимедийный проектор;
    • компьютеры;
    • редактор презентаций MS PowerPoint 2003;
    • раздаточный справочный материал “Таблицы истинности”;
    • демонстрация презентации “Таблицы истинности”.

    Ход урока

    I. Организационный момент

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

    II. Повторение материала предыдущего урока

    Давайте вспомним основные определения и понятия:

    Вопрос Ответ
    1. Какое предложение является высказыванием? Повествовательное предложение, в котором что-либо утверждается или отрицается
    2. На какие виды делятся высказывания по своей структуре? Простые и сложные
    3. Истинность каких высказываний является договорной? Простых
    4. Истинность каких высказываний вычисляется? Сложных
    5. Как обозначаются простые высказывания в алгебре высказываний? Логическими переменными
    6. Как обозначается истинность таких высказываний? 1 и 0
    7. Что связывает переменные в формулах алгебры высказываний? Логические операции
    8. Перечислите их. Инверсия (отрицание)

    Конъюнкция (умножение)

    Дизъюнкция (сложение)

    Импликация (следование)

    Эквиваленция (равносильность)

    9. Определите, соответствует ли формула сложному высказыванию. Назовите простые высказывания. Определите причину несоответствия. (Задание на экране) Нет, неправильно поставлен знак
    10. Определите, соответствует ли формула сложному высказыванию. Назовите простые высказывания. Определите причину несоответствия. (Задание на экране) Да

    III. Объяснение нового материала

    Последние два примера относятся к сложным высказываниям. Как же определить истинность сложных высказываний?

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

    Итак, тема урока ТАБЛИЦЫ ИСТИННОСТИ.

    3.1) Определение. Таблица истинности – это таблица, показывающая истинность сложного высказывания при всех возможных значениях входящих переменных (Рисунок 1).

    3.2) Разберем подробнее каждую логическую операцию в соответствии с ее определением:

    1. Инверсия (отрицание) – это логическая операция, которая каждому простому высказыванию ставит в соответствие составное высказывание, заключающееся в том, что исходное высказывание отрицается.

    Эта операция относится только к одной переменной, поэтому для нее отведено только две строки, т.к. одна переменная может иметь одно из двух значений: 0 или 1.

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

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

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

    Можно убедиться, что таблица похожа на таблицу сложения кроме последнего действия. В двоичной системе счисления 1 + 1 = 10, в десятичной – 1 + 1 = 2. В логике значения переменной 2 невозможно, рассмотрим 10 с точки зрения логики: 1 – истинно, 0 – ложно, т.о. 10 – истинно и ложно одновременно, чего быть не может, поэтому последнее действие строго опирается на определение.

    4. Импликация (следование) – это логическая операция, ставящая в соответствие каждым двум простым высказываниям составное высказывание, являющееся ложным тогда и только тогда, когда условие истинное, а следствие ложно.

    5. Эквиваленция (равносильность) – это логическая операция, ставящая в соответствие каждым двум простым высказываниям составное высказывание, являющееся истинным тогда и только тогда, когда оба исходных высказывания одновременно истинны или ложны.

    Последние две операции были разобраны нами на предыдущем уроке.

    3.3) Разберем алгоритм составления таблицы истинности для сложного высказывания:

    3.4) Рассмотрим пример составления таблицы истинности для сложного высказывания:

    Пример. Построить таблицу истинности для формулы: А U В -> ¬А U С.

    Решение (Рисунок 2)

    Из примера видно, что таблицей истинности является не все решение, а только последнее действие (столбец, выделенный красным цветом).

    IV. Закрепление.

    Для закрепления материала вам предлагается решить самостоятельно примеры под буквами а, б, в, дополнительно г–ж (Рисунок 3).

    V. Домашнее задание, обобщение материала.

    Домашнее задание дано вам также на экране монитора (Рисунок 4)

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

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

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

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

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

    1. инверсия;

    2. конъюнкция;

    3. дизъюнкция;

    4. импликация;

    5. эквивалентность.

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

    Алгоритм построения таблиц истинности для сложных выражений :

    количество строк = 2 n + строка для заголовка ,

    n - количество простых высказываний.

    количество столбцов = количество переменных + количество логических операций ;

    · определить количество переменных (простых выражений);

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

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

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

    D = А & ( B V C )

    Решение:

    1. Определить количество строк:

    на входе три простых высказывания: А, В, С поэтому n =3 и количество строк = 23 +1 = 9.

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

    простые выражения (переменные): А, В, С ;

    промежуточные результаты (логические операции):

    А - инверсия (обозначим через E );

    B V C - операция дизъюнкции (обозначим через F );

    а также искомое окончательное значение арифметического выражения:

    D = А & ( B V C ) . т. е. D = E & F - это операция конъюнкции.

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

    font-size:12.0pt">Построение логической функции по ее таблице истинности:

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

    font-size:12.0pt">1 .

    Так как строки две, получаем дизъюнкцию двух элементов: () V () .

    Каждый логический элемент в этой дизъюнкции запишем в виде конъюнкции аргументов функции X и Y : ( X & Y ) V ( X & Y ).

    Сегодня мы поговорим о предмете под названием информатика. Таблица истинности, разновидности функций, порядок их выполнения - это наши основные вопросы, на которые мы постараемся найти ответы в статье.

    Обычно данный курс преподается еще в средней школе, но большое количество учеников является причиной недопонимания некоторых особенностей. А если вы собрались посвятить этому свою жизнь, то просто не обойтись без сдачи единого государственного экзамена по информатике. Таблица истинности, преобразование сложных выражений, решение логических задач - это все может встретиться в билете. Сейчас мы рассмотрим более подробно данную тему и поможем вам набрать больше балов на ЕГЭ.

    Предмет логики

    Что же это за предмет - информатика? Таблица истинности - как ее строить? Зачем нужна наука логика? На все эти вопросы мы сейчас с вами ответим.

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

    Основы науки логики даются преподавателями средней школы на уроках информатики. Таблицы истинности, функции, упрощение выражений - все это должны объяснять учителя информатики. Эта наука просто необходима в нашей жизни. Приглядитесь, все подчиняется каким-либо законам. Вы подбросили мяч, он подлетел вверх, но после этого упал опять на землю, это произошло из-за наличия законов физики и силы земного притяжения. Мама варит суп и добавляет соль. Почему когда мы его едим, нам не попадаются крупинки? Все просто, соль растворилась в воде, подчиняясь законам химии.

    Теперь обратите внимание на то, как вы разговариваете.

    • «Если я отвезу своего кота в ветеринарную клинику, то ему сделают прививку».
    • «Сегодня был очень тяжелый день, потому что приходила проверка».
    • «Я не хочу идти в университет, потому что сегодня будет коллоквиум» и так далее.

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

    Функции

    Для того чтобы составить таблицу истинности к предложенной вам задаче, необходимо знать логические функции. Что это такое? Логическая функция имеет некоторые переменные, которые являются утверждениями (истинными или ложными), и само значение функции должно дать нам ответ на вопрос: «Выражение истинно или ложно?».

    Все выражения принимают следующие значения:

    • Истина или ложь.
    • И или Л.
    • 1 или 0.
    • Плюс или минус.

    Здесь отдавайте предпочтение тому способу, который для вас является более удобным. Для того чтобы составить таблицу истинности, нам нужно перечислить все комбинации переменных. Их количество вычисляется по формуле: 2 в степени n. Результат вычисления - это количество возможных комбинаций, переменной n в данной формуле обозначается количество переменных в условии. Если выражение имеет много переменных, то можно воспользоваться калькулятором или сделать для себя небольшую таблицу с возведением двойки в степень.

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

    • Умножение (конъюнкция).
    • Сложение (дизъюнкция).
    • Следствие (импликация).
    • Эквиваленция.
    • Инверсия.
    • Штрих Шеффера.
    • Стрелка Пирса.

    Первая операция, представленная в списке, имеет название «логическое умножение». Ее графически можно отметить в виде перевернутой галочки, знаками & или *. Вторая в нашем списке операция - логическое сложение, графически обозначается в виде галочки, +. Импликацию называют логическим следствием, обозначается в виде стрелки, указывающей от условия на следствие. Эквиваленция обозначается двухсторонней стрелкой, функция имеет истинное значение только в тех случаях, кода оба значения принимают либо значение «1», либо «0». Инверсию называют логическим отрицанием. Штрих Шеффера называют функцией, которая отрицает конъюнкцию, а стрелку Пирса - функцией, отрицающей дизъюнкцию.

    Основные двоичные функции

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

    Конъюнкция (умножение). Если два то в результате мы получаем истину, во всех остальных случаях мы получаем ложь.

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

    Логическое следствие имеет ложный результат только тогда, когда условие является истиной, а следствие - ложью. Здесь можно привести пример из жизни: «Я хотел купить сахар, но магазин был закрыт», следовательно, сахар так и не куплен.

    Эквиваленция является истиной только в случаях одинаковых значений входных данных. То есть при парах: «0;0» или «1;1».

    В случае инверсии все элементарно, если на входе есть истинное выражение, то оно преобразуется в ложное, и наоборот. На картинке видно, как она обозначается графически.

    Штрих Шиффера будет на выходе иметь ложный результат только при наличии двух истинных выражений.

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

    В каком порядке выполнять логические операции

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

    • логическое отрицание;
    • умножение;
    • сложение;
    • следствие;
    • эквиваленция;
    • отрицание умножения (штрих Шеффера);
    • отрицание сложения (стрелка Пирса).

    Пример №1

    Сейчас мы предлагаем рассмотреть пример построения таблицы истинности для 4 переменных. Необходимо узнать в каких случаях F=0 у уравнения: неА+В+С*D

    Ответом на это задание будет являться перечисление следующих комбинаций: «1;0;0;0», «1;0;0;1» и «1;0;1;0». Как видите, составлять таблицу истинности довольно просто. Еще раз хочется обратить ваше внимание на порядок выполнения действий. В конкретном случае он был следующий:

    1. Инверсия первого простого выражения.
    2. Конъюнкция третьего и четвертого выражения.
    3. Дизъюнкция второго выражения с результатами предыдущих вычислений.

    Пример №2

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

    • Если Ваня не крал или Петя крал, то Сережа принял участие в краже.
    • Если Ваня не виновен, то и Сережа мяч не крал.

    Введем обозначения: И - Ваня украл мяч; П - Петя украл; С - Сережа украл.

    По данному условию мы можем составить уравнение: F=((неИ+П) импликация С)*(неИ импликация неС). Нам нужны те варианты, где функция принимает истинное значение. Далее необходимо составить таблицу, так как данная функция имеет целых 7 действий, то мы их опустим. Будем вносить только входные данные и результат.

    Обратите внимание на то, что в данной задаче мы вместо знаков «0» и «1» использовали плюс и минус. Это также приемлемо. Нас интересуют комбинации, где F=+. Проанализировав их, мы можем сделать следующий вывод: Ваня участвовал в краже мяча, так как во всех случаях, где F принимает значение +, И имеет положительное значение.

    Пример №3

    Сейчас предлагаем вам найти количество комбинаций, когда F=1. Уравнение имеет следующий вид: F=неА+В*А+неВ. Составляем таблицу истинности:

    Ответ: 4 комбинации.

    Поделитесь с друзьями или сохраните для себя:

    Загрузка...