Логические уравнения и их виды

Логические уравнения. Логика

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

Любую логическую функцию от \ переменных — \можно задать таблицей истинности.

Решим несколько логически уравнений:

\[\rightharpoondown X1\vee X2=1 \]

\[\rightharpoondown X2\vee X3=1\]

\[\rightharpoondown X3\vee X4=1 \]

\[\rightharpoondown X9\vee X10=1\]

Начнем решение с \[Х1\] и определим какие значения данная переменная может принимать: 0 и 1. Далее рассмотрим каждое их вышеприведенных значений и посмотрим, какое может быть при этом \[Х2.\]

Как видно из таблицы наше логическое уравнение имеет 11 решений.

Где можно решить логическое уравнение онлайн?

Решить уравнение вы можете на нашем сайте https://сайт. Бесплатный онлайн решатель позволит решить уравнение онлайн любой сложности за считанные секунды. Все, что вам необходимо сделать — это просто ввести свои данные в решателе. Так же вы можете посмотреть видео инструкцию и узнать, как решить уравнение на нашем сайте. А если у вас остались вопросы, то вы можете задать их в нашей групе Вконтакте http://vk.com/pocketteacher. Вступайте в нашу группу, мы всегда рады помочь вам.

Назначение сервиса . Онлайн-калькулятор предназначен для построения таблицы истинности для логического выражения .
Таблица истинности – таблица содержащая все возможные комбинации входных переменных и соответствующее им значения на выходе.
Таблица истинности содержит 2 n строк, где n – число входных переменных, и n+m – столбцы, где m – выходные переменные.

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

Например, логическое выражение abc+ab

bc необходимо ввести так: a*b*c+a*b=c+a=b*c
Для ввода данных в виде логической схемы используйте этот сервис .

Правила ввода логической функции

  1. Вместо символа v (дизъюнкция, ИЛИ) используйте знак + .
  2. Перед логической функцией не надо указывать обозначение функции. Например, вместо F(x,y)=(x|y)=(x^y) необходимо ввести просто (x|y)=(x^y) .
  3. Максимальное количество переменных равно 10 .

Проектирование и анализ логических схем ЭВМ ведётся с помощью специального раздела математики — алгебры логики. В алгебре логики можно выделить три основные логические функции: «НЕ» (отрицание), «И» (конъюнкция), «ИЛИ» (дизъюнкция).
Для создания любого логического устройства необходимо определить зависимость каждой из выходных переменных от действующих входных переменных такая зависимость называется переключательной функцией или функцией алгебры логики.
Функция алгебры логики называется полностью определённой если заданы все 2 n её значения, где n – число выходных переменных.
Если определены не все значения, функция называется частично определённой.
Устройство называется логическим, если его состояние описывается с помощью функции алгебры логики.
Для представления функции алгебры логики используется следующие способы:
По алгебраической форме можно построить схему логического устройства, используя логические элементы.


Рисунок1- Схема логического устройства

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

Операция НЕ — логическое отрицание (инверсия)

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

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

Для операции отрицания НЕ приняты следующие условные обозначения:
не А, Ā, not A, ¬А, !A
Результат операции отрицания НЕ определяется следующей таблицей истинности:

Aне А
01
10

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

Операция ИЛИ — логическое сложение (дизъюнкция, объединение)

Операция И — логическое умножение (конъюнкция)

Логическая операция И выполняет функцию пересечения двух высказываний (аргументов), в качестве которых может быть и простое, и сложное логическое выражение. Результатом операции И является выражение, которое будет истинным тогда и только тогда, когда истинны оба исходных выражения.
Применяемые обозначения: А и В, А Λ В, A & B, A and B.
Результат операции И определяется следующей таблицей истинности:

ABА и B
000
010
100
111

Результат операции И истинен тогда и только тогда, когда истинны одновременно высказывания А и В, и ложен во всех остальных случаях.

Операция «ЕСЛИ-ТО» — логическое следование (импликация)

Эта операция связывает два простых логических выражения, из которых первое является условием, а второе — следствием из этого условия.
Применяемые обозначения:
если А, то В; А влечет В; if A then В; А→ В.
Таблица истинности:

ABА → B
001
011
100
111

Результат операции следования (импликации) ложен только тогда, когда предпосылка А истинна, а заключение В (следствие) ложно.

Операция «А тогда и только тогда, когда В» (эквивалентность, равнозначность)

В.
Таблица истинности:

ABА↔B
001
010
100
111

Операция «Сложение по модулю 2» (XOR, исключающее или, строгая дизъюнкция)

Применяемое обозначение: А XOR В, А ⊕ В.
Таблица истинности:

ABА⊕B
000
011
101
110

Результат операции эквивалентность истинен только тогда, когда А и В одновременно истинны или одновременно ложны.

Приоритет логических операций

  • Действия в скобках
  • Инверсия
  • Конъюнкция (&)
  • Дизъюнкция (V), Исключающее ИЛИ (XOR), сумма по модулю 2
  • Импликация (→)
  • Эквивалентность (↔)

Совершенная дизъюнктивная нормальная форма

Совершенная конъюнктивная нормальная форма

Способы решения систем логических уравнений

Киргизова Е.В., Немкова А.Е.

Лесосибирский педагогический институт –

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

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

Задача: Решить систему логических уравнений:

Рассмотрим метод сведения к одному уравнению . Данный метод предполагает преобразование логических уравнений, таким образом, чтобы правые их части были равны истинностному значению (то есть 1). Для этого применяют операцию логического отрицания. Затем, если в уравнениях есть сложные логические операции, заменяем их базовыми: «И», «ИЛИ», «НЕ». Следующим шагом объединяем уравнения в одно, равносильное системе, с помощью логической операции «И». После этого, следует сделать преобразования полученного уравнения на основе законов алгебры логики и получить конкретное решение системы.

Решение 1: Применяем инверсию к обеим частям первого уравнения:

Представим импликацию через базовые операции «ИЛИ», «НЕ»:

Поскольку левые части уравнений равны 1, можно объединить их с помощью операции “И” в одно уравнение, равносильное исходной системе:

Раскрываем первую скобку по закону де Моргана и преобразовываем полученный результат:

Полученное уравнение, имеет одно решение: A = 0 , B =0 и C =1 .

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

Решение 2: Составим таблицу истинности для системы:

Полужирным выделена строчка, для которой выполняются условия задачи. Таким образом, A =0 , B =0 и C =1 .

Способ декомпозиции . Идея состоит в том, чтобы зафиксировать значение одной из переменных (положить ее равной 0 или 1) и за счет этого упростить уравнения. Затем можно зафиксировать значение второй переменной и т.д.

Решение 3: Пусть A = 0, тогда :

Из первого уравнения получаем B =0, а из второго – С=1. Решение системы: A = 0 , B = 0 и C = 1 .

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

Первое уравнение системы зависит только от A и B , а второе уравнение от А и C . Переменная А может принимать 2 значения 0 и 1:

Из первого уравнения следует, что , поэтому при A = 0 п олучаем B = 0 , а при A = 1 имеем B = 1 . Итак, первое уравнение имеет два решения относительно переменных A и B .

Изобразим второе уравнение, из которого определим значения C для каждого варианта. При A =1 импликация не может быть ложной, то есть вторая ветка дерева не имеет решения. При A = 0 получаем единственное решение C = 1 :

Таким образом, получили решение системы: A = 0 , B = 0 и C = 1 .

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

Задача: Сколько решений имеет уравнение ( A → B ) + (C → D ) = 1? Где A, B, C, D – логические переменные.

Решение: Введем новые переменные: X = A → B и Y = C → D . С учетом новых переменных уравнение запишется в виде: X + Y = 1.

Дизъюнкция верна в трех случаях: (0;1), (1;0) и (1;1), при этом X и Y является импликацией, то есть является истинной в трех случаях и ложной – в одном. Поэтому случай (0;1) будет соответствовать трем возможным сочетаниям параметров. Случай (1;1) – будет соответствовать девяти возможным сочетаниям параметров исходного уравнения. Значит, всего возможных решений данного уравнения 3+9=15.

Следующий способ определения количества решений системы логических уравнений – бинарное дерево . Рассмотрим данный метод на примере.

Задача: Сколько различных решений имеет система логических уравнений:

Приведенная система уравнений равносильна уравнению:

Предположим, что x 1 – истинно, тогда из первого уравнения получаем, что x 2 также истинно, из второго — x 3 =1, и так далее до x m = 1. Значит набор (1; 1; …; 1) из m единиц является решением системы. Пусть теперь x 1 =0, тогда из первого уравнения имеем x 2 =0 или x 2 =1.

Когда x 2 истинно получаем, что остальные переменные также истинны, то есть набор (0; 1; …; 1) является решением системы. При x 2 =0 получаем, что x 3 =0 или x 3 =, и так далее. Продолжая до последней переменной, получаем, что решениями уравнения являются следующие наборы переменных ( m +1 решение, в каждом решении по m значений переменных):

Такой подход хорошо иллюстрируется с помощью построения бинарного дерева. Количество возможных решений – количество различных ветвей построенного дерева. Легко заметить, что оно равно m +1.

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

Перепишем систему уравнений в виде:

И составим таблицу истинности отдельно для одного уравнения:

Составим таблицу истинности для двух уравнений:

(x 1 → x 2) * (x 2 → x 3)

Далее можно увидеть, что одно уравнение истинно в следующих трех случаях: (0; 0), (0; 1), (1; 1). Система двух уравнений истина в четырех случаях (0; 0; 0), (0; 0; 1), (0; 1; 1), (1; 1; 1). При этом сразу видно, что существует решение, состоящее из одних нулей и еще m решений, в которых добавляется по одной единице, начиная с последней позиции до заполнения всех возможных мест. Можно предположить, что общее решение будет иметь такой же вид, но чтобы такой подход стал решением, требуется доказательство, что предположение верно.

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

1. Логические задачи / О.Б. Богомолова – 2-е изд. – М.: БИНОМ. Лаборатория знаний, 2006. – 271 с.: ил.

2. Поляков К.Ю. Системы логических уравнений / Учебно-методическая газета для учителей информатики: Информатика №14, 2011 г.

Решение систем логических уравнений методом замены переменных

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

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных x1, х2, х3, х4, х5, х6, х7, х8, ко­то­рые удо­вле­тво­ря­ют всем пе­ре­чис­лен­ным ниже усло­ви­ям?

(x1 → х2) → (х3→ х4) = 1

(х3 → х4) → (х5 → х6) = 1

(х5 → х6) → (х7 → х8) = 1

В от­ве­те не нужно пе­ре­чис­лять все раз­лич­ные на­бо­ры зна­че­ний пе­ре­мен­ных x1, х2, х3, х4, х5, х6, х7, х8, при ко­то­рых вы­пол­не­на дан­ная си­сте­ма ра­венств. В ка­че­стве от­ве­та Вам нужно ука­зать ко­ли­че­ство таких на­бо­ров.

(x1 → х2) = y1; (х3 → х4) = y2; (х5 → х6) = y3; (х7 → х8) = y4.

Тогда можно за­пи­сать си­сте­му в виде од­но­го урав­не­ния:

(y1 → y2) ∧ (y2 → y3) ∧ (y3 → y4) = 1. Конъюнкция равна 1 (истинна), когда каждый операнд принимает значение 1. Т.е. каждая из импликаций должна быть истинна, а это выполняется при всех значениях, кроме (1 → 0). Т.е. в таблице значений переменных y1, y2, y3, y4 единица не должна стоять левее нуля:

Т.е. условия выполняются для 5 наборов y1-y4.

Т.к. y1 = x1 → x2, то значение y1 = 0 достигается на единственном наборе x1, x2: (1, 0), а значение y1 = 1 – на трех наборах x1, x2: (0,0) , (0,1), (1,1). Аналогично для y2, y3, y4.

Поскольку каждый набор (x1,x2) для переменной y1 сочетается с каждым набором (x3,x4) для переменной y2 и т.д., то количества наборов переменных x перемножаются:

Кол-во наборов на x1…x8

Сло­жим ко­ли­че­ство наборов: 1 + 3 + 9 + 27 + 81 = 121.

Сколько существует различных наборов значений логических переменных x1, x2, . x9, y1, y2, . y9, которые удовлетворяют всем перечисленным ниже условиям?

В ответе не нужно перечислять все различные наборы значений переменных x1, x2, . x9, y1, y2, . y9, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.

Сде­ла­ем за­ме­ну пе­ре­мен­ных:

(x1 ≡ y1) = z1, (x2 ≡ y2) = z2,…. ,(x9 ≡ y9) = z9

Систему можно записать в виде одного уравнения:

(¬ z1 ≡ z2) ∧ (¬ z2 ≡ z3) ∧ …..∧ (¬ z8 ≡ z9)

Эквивалентность истинна, только если оба операнда равны. Решениями этого уравнения будут два набора:

z1z2z3z4z5z6z7z8z9
010101010
101010101

Т.к. zi = (xi ≡ yi), то значению zi = 0 соответствуют два набора (xi,yi): (0,1) и (1,0), а значению zi = 1 — два набора (xi,yi): (0,0) и (1,1).

Тогда первому набору z1, z2,…, z9 соответствует 2 9 наборов (x1,y1), (x2,y2),…, (x9,y9).

Столько же соответствует второму набору z1, z2,…, z9. Тогда всего 2 9 +2 9 = 1024 наборов.

Решение систем логических уравнений методом визуального определения рекурсии.

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

Сколь­ко раз­лич­ных ре­ше­ний имеет си­сте­ма урав­не­ний

где x1, x2, … x10 — ло­ги­че­ские пе­ре­мен­ные?

В от­ве­те не нужно пе­ре­чис­лять все раз­лич­ные на­бо­ры зна­че­ний x1, x2, … x10, при ко­то­рых вы­пол­не­на дан­ная си­сте­ма ра­венств. В ка­че­стве от­ве­та Вам нужно ука­зать ко­ли­че­ство таких на­бо­ров.

Решим первое уравнение. Дизъюнкция равна 1, если хотя бы один из ее операндов равен 1. Т.е. решениями являются наборы:

Для x1=0 существуют два значения x2 (0 и 1), а для x1=1 только одно значение x2 (1), такие, что набор (x1,x2) является решением уравнения. Всего 3 набора.

Добавим переменную x3 и рассмотрим второе уравнение. Оно аналогично первому, значит для x2=0 существуют два значения x3 (0 и 1), а для x2=1 только одно значение x3 (1), такие, что набор (x2,x3) является решением уравнения. Всего 4 набора.

Несложно заметить, что при добавлении очередной переменной добавляется один набор. Т.е. рекурсивная формула количества наборов на (i+1) переменных:

N i +1 = N i + 1. Тогда для десяти переменных получим 11 наборов.

Решение систем логических уравнений различного типа

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных x 1 , . x 4 , y 1 . y 4 , z 1 . z 4 , ко­то­рые удо­вле­тво­ря­ют всем пе­ре­чис­лен­ным ниже усло­ви­ям?

(x 1 → x 2) ∧ (x 2 → x 3) ∧ (x 3 → x 4) = 1

(y 1 → y 2) ∧ (y 2 → y 3) ∧ (y 3 → y 4) = 1

(z 1 → z 2) ∧ (z 2 → z 3) ∧ (z 3 → z 4) = 1

x 4 ∧ y 4 ∧ z 4 = 0

В от­ве­те не нужно пе­ре­чис­лять все раз­лич­ные на­бо­ры зна­че­ний пе­ре­мен­ных x 1 , . x 4 , y 1 , . y 4 , z 1 , . z 4 , при ко­то­рых вы­пол­не­на дан­ная си­сте­ма ра­венств.

В ка­че­стве от­ве­та Вам нужно ука­зать ко­ли­че­ство таких на­бо­ров.

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

Рассмотрим первое уравнение. Конъюнкция истинна (равна 1) только тогда, когда все ее операнды истинны (равны 1). Импликация равна 1 на всех наборах, кроме (1,0). Значит, решением первого уравнения будут такие наборы x1, x2, x3, x4, в которых 1 не стоит левее 0 (5 наборов):

Аналогично, решениями второго и третьего уравнений будут абсолютно такие же наборы y1,…,y4 и z1,…, z4.

Теперь проанализируем четвертое уравнение системы: x 4 ∧ y 4 ∧ z 4 = 0. Решением будут все наборы x4, y4, z4, в которых хотя бы одна из переменных равна 0.

Т.е. для x4 = 0 подойдут все возможные наборы (y4, z4), а для x4 = 1 подойдут наборы (y4, z4), в которых присутствует хотя бы один ноль: (0, 0), (0,1) , (1,0).

Общее количество наборов 25 + 4*9 = 25 + 36 = 61.

Решение систем логических уравнений методом построения рекуррентных формул

Метод построения рекуррентных формул применяется при решении сложных систем, в которых порядок увеличения количества наборов неочевиден, а построение дерева невозможно из-за объемов.

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных x1, x2, … x7, y1, y2, … y7, ко­то­рые удо­вле­тво­ря­ют всем пе­ре­чис­лен­ным ниже усло­ви­ям?

(x1 ∨ y1) ∧ ((x2 ∧ y2) → (x1 ∧ y1)) = 1

(x2 ∨ y2) ∧ ((x3 ∧ y3) → (x2 ∧ y2)) = 1

(x6 ∨ y6) ∧ ((x7 ∧ y7) → (x6 ∧ y6)) = 1

В от­ве­те не нужно пе­ре­чис­лять все раз­лич­ные на­бо­ры зна­че­ний пе­ре­мен­ных x1, x2, . x7, y1, y2, . y7, при ко­то­рых вы­пол­не­на дан­ная си­сте­ма ра­венств. В ка­че­стве от­ве­та Вам нужно ука­зать ко­ли­че­ство таких на­бо­ров.

Заметим, что первые шесть уравнений системы одинаковы и отличаются только набором переменных. Рассмотрим первое уравнение. Его решением будут следующие наборы переменных:

число наборов (0,0) на переменных (x1,y1) через A 1 ,

число наборов (0,1) на переменных (x1,y1) через B 1 ,

число наборов (1,0) на переменных (x1,y1) через C 1 ,

число наборов (1,1) на переменных (x1,y1) через D 1 .

число наборов (0,0) на переменных (x2,y2) через A 2 ,

число наборов (0,1) на переменных (x2,y2) через B 2 ,

число наборов (1,0) на переменных (x2,y2) через C 2 ,

число наборов (1,1) на переменных (x2,y2) через D 2 .

Из дерева решений видим, что

A 1 =0, B 1 =1, C 1 =1, D 1 =1.

Заметим, что набор (0,0) на переменных (x2,y2) получается из наборов (0,1), (1,0) и (1,1) на переменных (x1,y1). Т.е. A 2 =B 1 +C 1 +D 1 .

Набор (0,1) на переменных (x2,y2) получается из наборов (0,1), (1,0) и (1,1) на переменных (x1,y1). Т.е. B 2 =B 1 +C 1 +D 1 .

Аналогично рассуждая, заметим, что С 2 =B 1 +C 1 +D 1 . D 2 = D 1 .

Таким образом, получаем рекуррентные формулы:

A i+1 = B i + C i + D i

B i+1 = B i + C i + D i

C i+1 = B i + C i + D i

D i+1 = A i +B i + C i + D i

НаборыОбозн .Формула
i=1i=2i=3i=4i=5i=6i=7
(0,0)A iA i+1 =B i +C i +D i037153163127
(0,1)B iB i+1 =B i +C i +D i137153163127
(1,0)C iC i+1 =B i +C i +D i137153163127
(1,1)D iD i+1 =D i1111111

Последнему уравнению (x7 ∨ y7) = 1 удовлетворяют все наборы, кроме тех, в которых x7=0 и y7=0. В нашей таблице число таких наборов A 7 .

Тогда общее количество наборов равно B 7 + C 7 + D 7 = 127+127+1 = 255

J ∧ ¬K ∧ L ∧ ¬M ∧ (N ∨ ¬N) = 0, где J, K, L, M, N — логические переменные?

Выражение (N ∨ ¬N) истинно при любом N, поэтому

Применим отрицание к обеим частям логического уравнения и используем закон де Моргана ¬ (А ∧ В) = ¬ А ∨ ¬ В. Получим ¬J ∨ K ∨ ¬L ∨ M = 1.

Логическая сумма равна 1, если хотя бы одно из составляющих ее высказываний равно 1. Поэтому полученному уравнению удовлетворяют любые комбинации логических переменных кроме случая, когда все входящие в уравнение величины равны 0. Каждая из 4 переменных может быть равна либо 1, либо 0, поэтому всевозможных комбинаций 2·2·2·2 = 16. Следовательно, уравнение имеет 16 −1 = 15 решений.

Осталось заметить, что найденные 15 решений соответствуют любому из двух возможных значений значений логической переменной N, поэтому исходное уравнение имеет 30 решений.

Сколько различных решений имеет уравнение

((J → K) → (M ∧ N ∧ L)) ∧ ((J ∧ ¬K) → ¬ (M ∧ N ∧ L)) ∧ (M → J) = 1

где J, K, L, M, N – логические переменные?

В ответе не нужно перечислять все различные наборы значений J, K, L, M и N, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов.

Используем формулы A → B = ¬A ∨ B и ¬(А ∨ В) = ¬А ∧ ¬В

Рассмотрим первую подформулу:

(J → K) → (M ∧ N ∧ L) = ¬(¬J ∨ K) ∨ (M ∧ N ∧ L) = (J ∧ ¬K) ∨ (M ∧ N ∧ L)

Рассмотрим вторую подформулу

(J ∧ ¬K) → ¬(M ∧ N ∧ L) = ¬(J ∧ ¬K) ∨ ¬(M ∧ N ∧ L) = (¬J ∨ K) ∨ ¬M ∨ ¬N ∨ ¬L

Рассмотрим третью подформулу

1) M → J = 1 следовательно,

(J ∧ ¬K) ∨ (M ∧ N ∧ L) = (1 ∧ ¬K) ∨ (1 ∧ N ∧ L) = ¬K ∨ N ∧ L;

(0 ∨ K) ∨ 0 ∨ ¬N ∨ ¬L = K ∨ ¬N ∨ ¬L;

¬K ∨ N ∧ L ∧ K ∨ ¬N ∨ ¬L = 0 ∨ L ∨ 0 ∨ ¬L = L ∨ ¬L = 1 следовательно, 4 решения.

(J ∧ ¬K) ∨ (M ∧ N ∧ L) = (1 ∧ ¬K) ∨ (0 ∧ N ∧ L) = ¬K;

(¬J ∨ K) ∨ ¬M ∨ ¬N ∨ ¬L = (0 ∨ K) ∨ 1 ∨ ¬N ∨ ¬L = K ∨ 1 ∨ ¬N ∨ ¬L

K ∨ 1 ∨ ¬N ∨ ¬L ∧ ¬K = 1 ∨ ¬N ∨ ¬L следовательно, 4 решения.

(J ∧ ¬K) ∨ (M ∧ N ∧ L) = (0 ∧ ¬K) ∨ (0 ∧ N ∧ L) = 0.

(¬J ∨ K) ∨ ¬M ∨ ¬N ∨ ¬L = (1 ∨ K) ∨ 1 ∨ ¬N ∨ ¬L.

Сколько различных решений имеет уравнение

((K ∨ L) → (L ∧ M ∧ N)) = 0

где K, L, M, N – логические переменные? В Ответе не нужно перечислять все различные наборы значений K, L, M и N, при которых выполнено данное равенство. В качестве Ответа Вам нужно указать количество таких наборов.

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

((K + L) → (L · M · N)) = 0

1) из таблицы истинности операции «импликация» (см. первую задачу) следует, что это равенство верно тогда и только тогда, когда одновременно

K + L = 1 и L · M · N = 0

2) из первого уравнения следует, что хотя бы одна из переменных, K или L, равна 1 (или обе вместе); поэтому рассмотрим три случая

3) если K = 1 и L = 0, то второе равенство выполняется при любых М и N; поскольку существует 4 комбинации двух логических переменных (00, 01, 10 и 11), имеем 4 разных решения

4) если K = 1 и L = 1, то второе равенство выполняется при М · N = 0; существует 3 таких комбинации (00, 01 и 10), имеем еще 3 решения

5) если K = 0, то обязательно L = 1 (из первого уравнения); при этом второе равенство выполняется при М · N = 0; существует 3 таких комбинации (00, 01 и 10), имеем еще 3 решения

6) всего получаем 4 + 3 + 3 = 10 решений.

Сколько различных решений имеет уравнение

Выражение истинно в трех случаях, когда (K ∧ L) и (M ∧ N) равны соответственно 01, 11, 10.

1) «01» K ∧ L = 0; M ∧ N = 1, => M, N равны 1, а K и L любые, кроме как одновременно 1. Следовательно 3 решения.

2) «11» K ∧ L = 1; M ∧ N = 1. => 1 решение.

3) «10» K ∧ L = 1; M ∧ N = 0. => 3 решения.

Сколько различных решений имеет уравнение

(X ∧ Y ∨ Z) → (Z ∨ P) = 0

где X, Y, Z, P – логические переменные? В ответе не нужно перечислять все различные наборы значений, при которых выполнено данное равенство. В качестве ответа вам нужно указать только количество таких наборов.

(X ∧ Y ∨ Z) → (Z ∨ P) = 0 =>

¬(X ∧ Y ∨ Z) ∨ (Z ∨ P) = 0;

(¬X ∨ ¬Y ∧ ¬Z) ∨ (Z ∨ P) = 0;

Логическое ИЛИ ложно только в одном случае: когда оба выражения ложны.

(Z ∨ P) = 0 => Z = 0, P = 0.

¬X ∨ ¬Y ∧ ¬Z = 0 => ¬X ∨ ¬Y ∧ 1 = 0 =>

¬X ∨ ¬Y = 0 => X = 1; Y = 1.

Следовательно, существует только одно решение уравнения.

Сколько различных решений имеет уравнение

где K, L, M, N – логические переменные? В ответе не нужно перечислять все различные наборы значений K, L, M и N, при которых выполнено данное равенство. В качестве ответа вам нужно указать только количество таких наборов.

Логическое И истинно только в одном случае: когда все выражения истинны.

K ∨ L = 1, M ∨ N = 1.

Каждое из уравнений дает по 3 решения.

Рассмотрим уравнение А ∧ В = 1 если и А и В принимают истинные значения в трех случаях каждое, то в целом уравнение имеет 9 решений.

Следовательно ответ 9.

Сколько различных решений имеет уравнение

где A, B, C, D – логические переменные?

В ответе не нужно перечислять все различные наборы значений A, B, C, D, при которых выполнено данное равенство. В качестве ответа вам нужно указать количество таких наборов.

Логическое «ИЛИ» истинно, когда истинно хотя бы одно из утверждений.

(D ∧ ¬D)= 0 при любых D.

(A → B)∧ C) = 1 => C = 1; A → B = 1 => ¬ A ∨ B = 1, что дает нам 3 варианта решений при каждом D.

(D ∧ ¬ D)= 0 при любых D, что дает нам два варианта решений (при D = 1, D = 0).

Следовательно: всего решений 2*3 = 6.

Итого 6 решений.

Сколько различных решений имеет уравнение

(¬K ∨ ¬L ∨ ¬M) ∧ (L ∨ ¬M ∨ ¬N) = 0

где K, L, M, N – логические переменные? В ответе не нужно перечислять все различные наборы значений K, L, M и N, при которых выполнено данное равенство. В качестве ответа вам нужно указать только количество таких наборов.

Применим отрицание к обеим частям уравнения:

(K ∧ L ∧ M) ∨ (¬L ∧ M ∧ N) = 1

Логическое ИЛИ истинно в трех случаях.

K ∧ L ∧ M = 1, тогда K, L, M = 1, а ¬L ∧ M ∧ N = 0. N любое, то есть 2 решения.

¬L ∧ M ∧ N = 1, тогда N, M = 1; L = 0, K любое, то есть 2 решения.

Следовательно, ответ 4.

A, B и С — целые числа, для которых истинно высказывание

¬ (А = B) ∧ ((A > B)→(B > C)) ∧ ((B > A)→(С > B)).

Чему равно В, если A = 45 и C = 43?

Обратим внимание, что это сложное высказывание состоит из трех простых

1) ¬(А = B); (A > B)→(B > C); (B > A)→(С > B);

2) эти простые высказывания связаны операцией ∧ (И, конъюнкция), то есть, они должны выполняться одновременно;

3) из ¬(А = B)=1 сразу следует, что А B;

4) предположим, что A > B, тогда из второго условия получаем 1→(B > C)=1; это выражение может быть истинно тогда и только тогда, когда B > C = 1;

5) поэтому имеем A > B > C, этому условию соответствует только число 44;

6) на всякий случай проверим и вариант A 0 →(B > C)=1;

это выражение истинно при любом B; теперь смотрим третье условие получаем

это выражение может быть истинно тогда и только тогда, когда C > B, и тут мы получили противоречие, потому что нет такого числа B, для которого C > B > A.

Составьте таблицу истинности для логической функции

X = (А ↔ B) ∨ ¬(A → (B ∨ C))

в которой столбец значений аргумента А представляет собой двоичную запись числа 27, столбец значений аргумента В — числа 77, столбец значений аргумента С — числа 120. Число в столбце записывается сверху вниз от старшего разряда к младшему(включая нулевой набор). Переведите полученную двоичную запись значений функции X в десятичную систему счисления.

Запишем уравнение, используя более простые обозначения операций:

1) это выражение с тремя переменными, поэтому в таблице истинности будет строчек; следовательно, двоичная запись чисел, по которым строятся столбцы таблицы А, В и С, должна состоять из 8 цифр

2) переведем числа 27, 77 и 120 в двоичную систему, сразу дополняя запись до 8 знаков нулями в начале чисел

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

X

0

АВС
00
011
001
101
111
010
100
110

4) заполняем столбцы таблицы:

АВСX
00010101
01101100
00111101
10101100
11111101
01001100
10000011
11011101

значение равно 1 только в тех строчках, где А = В

значение равно 1 в тех строчках, где либо В либо С = 1

значение равно 0 только в тех строчках, где А = 1 и В + С = 0

значение — это инверсия предыдущего столбца (0 заменяется на 1, а 1 – на 0)

результат Х (последний столбец) — это логическая сумма двух столбцов и

5) чтобы получить ответ, выписываем биты из столбца Х сверху вниз:

6) переводим это число в десятичную систему:

Каково наибольшее целое число X, при котором истинно высказывание (10 (X+1)·(X+2))?

Уравнение является операцией импликации между двумя отношениями:

1) Конечно, здесь можно применить тот же способ, что и в примере 2208, однако при этом понадобится решать квадратные уравнения (не хочется…);

2) Заметим, что по условию нас интересуют только целые числа, поэтому можно попытаться как─то преобразовать исходное выражение, получив равносильное высказывание (точные значения корней нас совершенно не интересуют!);

3) Рассмотрим неравенство : очевидно, что может быть как положительным, так и отрицательным числом;

4) Легко проверить, что в области высказывание истинно при всех целых , а в области — при всех целых (чтобы не запутаться, удобнее использовать нестрогие неравенства, и , вместо и );

5) Поэтому для целых можно заменить на равносильное выражение

6) область истинности выражения — объединение двух бесконечных интервалов;

7) Теперь рассмотрим второе неравенство : очевидно, что так же может быть как положительным, так и отрицательным числом;

8) В области высказывание истинно при всех целых , а в области — при всех целых , поэтому для целых можно заменить на равносильное выражение

9) область истинности выражения — закрытый интервал;

10) Заданное выражение истинно везде, кроме областей, где и ;

11) Обратите внимание, что значение уже не подходит, потому что там и , то есть импликация дает 0;

12) При подставлении 2, (10 (2+1) · (2+2)), или 0 → 0 что удовлетворяет условию.

Таким образом, ответ 2.

Каково наибольшее целое число X, при котором истинно высказывание

Применим преобразование импликации и преобразуем выражение:

(50 (X+1)·(X+1)) ⇔ ¬(X 2 > 50) ∨ ((X+1) 2) ∨ (|X+1|).

Логическое ИЛИ истинно когда истинно хотя бы одно логическое высказывание. Решив оба неравенства и учитывая, что видим, что наибольшее целое число, при котором выполняется хотя бы одно из них — 7 (на рисунке жёлтым изображено положительное решение второго неравенства, синим — первого).

Укажите значения переменных К, L, M, N, при которых логическое выражение

(¬(М ∨ L) ∧ К) → (¬К ∧ ¬М ∨ N)

ложно. Ответ запишите в виде строки из 4 символов: значений переменных К, L, М и N (в указанном порядке). Так, например, строка 1101 соответствует тому, что К=1, L=1, M=0, N=1.

Дублирует задание 3584.

Применим преобразование импликации:

(K ∧ ¬M) ∨ (¬L ∨ M ∨ N) = 0

Применим отрицание к обоим частям уравнения:

(¬K ∨ M) ∧ L ∧ ¬M ∧ ¬N = 1

(¬K ∧ L ∨ M ∧ L) ∧ ¬M ∧ ¬N = 1

Следовательно, M = 0, N = 0, рассмотрим теперь (¬K ∧ L ∨ M ∧ L):

из того, что M = 0, N = 0 следует, что M ∧ L = 0, тогда ¬K ∧ L = 1, то есть K = 0, L = 1.

Укажите значения переменных K, L, M, N, при которых логическое выражение

(¬(M ∨ L) ∧ K) → ((¬K ∧ ¬M) ∨ N)

ложно. Ответ запишите в виде строки из четырех символов: значений переменных K, L, M и N (в указанном порядке). Так, например, строка 1101 соответствует тому, что K=1, L=1, M=0, N=1.

Запишем уравнение, используя более простые обозначения операций (условие «выражение ложно» означает, что оно равно логическому нулю):

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

2) из таблицы истинности операции «импликация» следует, что это выражение ложно тогда и только тогда, когда одновременно

3) первое равенство (логическое произведение равно 1) выполняется тогда и только тогда, когда и ; отсюда следует (логическая сумма равна нулю), что может быть только при ; таким образом, три переменных мы уже определили

4) из второго условия, , при и получаем .

Укажите значения логических переменных Р, Q, S, Т, при которых логическое выражение

(Р ∨ ¬Q) ∨ (Q → (S ∨ Т)) ложно.

Ответ запишите в виде строки из четырех символов: значений переменных Р, Q, S, T (в указанном порядке).

(1) (Р ∨ ¬Q) = 0 => P = 0, Q = 1.

(2) (Q → (S ∨ Т)) = 0 Применим преобразование импликации:

¬Q ∨ S ∨ Т = 0 => S = 0, T = 0.

Укажите значения переменных K, L, M, N, при которых логическое выражение

ложно. Ответ запишите в виде строки из четырех символов: значений переменных K, L, M и N (в указанном порядке). Так, например, строка 1101 соответствует тому, что K=1, L=1, M=0, N=1.

Логическое «ИЛИ» ложно тогда и только тогда, когда ложны оба утверждения.

(K → M) = 0, (L ∧ K) ∨ ¬N = 0.

Применим преобразование импликации для первого выражения:

¬K ∨ M = 0 => K = 1, M = 0.

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

(L ∧ K) ∨ ¬N = 0 (см. результат первого выражения) => L ∨ ¬N = 0 => L = 0, N = 1.

Укажите значения переменных K, L, M, N, при которых логическое выражение

(K → M) ∧ (K → ¬M) ∧ (¬K → (M ∧ ¬L ∧ N))

истинно. Ответ запишите в виде строки из четырех символов: значений переменных K, L, M и N (в указанном порядке). Так, например, строка 1101 соответствует тому, что K=1, L=1, M=0, N=1.

Логическое «И» истинно тогда и только тогда, когда истинны оба утверждения.

1) (K → M) = 1 Применим преобразование импликации: ¬K ∨ M = 1

2) (K → ¬M) = 1 Применим преобразование импликации: ¬K ∨ ¬M = 1

Отсюда следует, что K = 0.

3) (¬K → (M ∧ ¬L ∧ N)) = 1 Применим преобразование импликации: K ∨ (M ∧ ¬L ∧ N) = 1 из того что K = 0 получаем.

Логические уравнения

В ЕГЭ (но не в учебниках) встречается тип заданий, которые до 2011 года имели один из двух видов:

    • при каких значениях переменных a,b,c. данное выражение становится истинным(ложным);
    • сколько различных решений имеет уравнение f(a,b,c. ) = 1 (0)

Это могут быть короткие выражения:

(K ^ L ^ M ) v (⌝L ^ ⌝M ^ N) = 0

((J → K) → (M /\ N /\ L)) /\ ((J /\ ¬K) → ¬(M /\ N /\ L)) /\ (M → J) = 1

(((J -> K) -> (M & N & L)) & ((J &

и системы однотипных или не совсем однотипных выражений.

в случае коротких выражений иногда проще всего построить таблицу истинности. Существуют онлайн-построители, например http://programming.dojo.net.nz/study/truth-table-generator/index

также можно писать несложные программы для построения таблиц истинности:

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

В целом дело сводится к анализу выражения, попыткам найти скрытую схему в нем.

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

Если это дизъюнкция, то могут быть рассуждения вида «если левая скобка 0, то правая обязана быть 1»

В демонстрационном варианте 2012 г., А ТАКЖЕ в реальных вариантах весны/лета 2011 года появилась новая формулировка:

Алгоритм решения системы с большим числом однотипных уравнений

    1. преобразовать уравнения, найти что-то с известной таблицей истинности
    2. проанализовать таблицу истинности. например, если получается XOR то либо первый аргумент 1 либо второй
    3. метод гипотез: пусть х1 = 0, тогда при х2 = 0 получаем 00ххххххх, при х2 = 1 получаем 01ххххххх
    4. первое уравнение дает N ветвей решений, нужно посмотреть что у них общего
    5. так же разобрать второе уравнение, после чего должна проявиться закономерность построения решений
    6. найти закономерность — определить, на сколько увеличилось число ветвей благодаря второму уравнению
    7. подсчитать общее количество распространив эту схему до конца системы
    8. может быть проще увидеть взаимосвязь всех уравнений вместе, как они определяют закономерность построения решения

2012 год

B15

Вот два способа рассуждения.

I.

Если обозначить A = x1 ≡ x2, B = x3 ≡ x4 и так далее

то получим: (A ∨ B) ∧ (¬A ∨ ¬B)

или, по закону Де Моргана, (A ∨ B) ∧ ¬(A ∧ B)

это достаточно известная альтернативная формула для исключающего ИЛИ, как и (A ∧ ¬B) ∧ (¬A ∧ B)

Тогда система принимает вид:

Из первого уравнения видно, что либо x1 и x2 одинаковы, либо x3 и x4 одинаковы.

то есть если x1 и x2 одинаковы, то x3 и x4 разные

и наоборот, если x1 и x2 различны, то x3 и x4 одинаковы

Иными словами, рассмотрим наборы при x1 = 0, тогда

если x2 = 0, то левая скобка 1, тогда правая скобка д.б. 0, т.е. либо x3,x4 = 0,1 либо 1,0,

если x2 = 1, то левая скобка 0, тогда правая скобка д.б. 1, т.е. либо x3=x4=0 либо x3=x4=1

получается четыре ветви

теперь рассмотрим наборы при x1 = 1, тогда

получается опять четыре ветви

то есть первое уравнение дает восемь «ветвей» решений

Что даст второе уравнение?

либо x3 и x4 одинаковы, либо либо x5 и x6 одинаковы

в каждой из 8 ветвей на некоторую пару x3,x4 приходится по две пары x5,x6

то есть второе уравнение даст 16 ветвей

Аналогично, третье уравнение даст 32 ветви,

а четвертое уравнение в каждой из них по два итоговых решения.

Итого — 64 решения.

II.

Если смотреть на систему как на целое, то можно получить общий вид цепочек

тогда не верно (x3x4), но верно (x5x6), не верно (x7x8) и верно (x9x10)

это наборы вида 00xx00xx00 00xx00xx11

в которых xx — это 01 или 10

Т.е. в каждом таком решении значения идут парами, если где-то пара одинаковая, то перед ней будет разная, и после будет разная.

8 групп комбинаций, в каждой из которых по 4 возможных значения на местах xx xx 8*4 = 32

И то же самое, если НЕ верно (x1x2)

Итого 64 решения.

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

Обозначим A0 = пара 00, A1 = пара 11, B0 = пара 01, B1 = пара 10

После любого A может идти только B и наоборот.

Рассмотрим комбинации по две:

A0B0 A0B1 A1B0 A1B1 B0A0 B0A1 B1A0 B1A1 — их получилось 8.

если их будет по три

то на каждую такую кобминацию будет по две трехбуквенных, то есть 16

если по четыре, то 32

Итого 64 решения.

2014 год

B15

Преобразуем уравнения к удобному виду:

(x1 ⊕ x2 ) ^ (x1 ⊕ x3) = 0

(x2 ⊕ x3 ) ^ (x2 ⊕ x4) = 0

(x8 ⊕ x9 ) ^ (x8 ⊕ x10) = 0

рассмотрим решения 0ххххххххх

(0 ⊕ x2 ) ^ (0 ⊕ x3) = 0

эти две скобки не должны быть одновременно 1, чтобы конъюнкция была 0

если левая скобка 1, то вторая д.б.0 и наоборот, и еще они могут быть равны 0 одновременно

итак если x2 = 1 то x3 = 0

если правая 1, то левая 0

а одновременно они нули — это 011ххххх

рассмотрим решения 1ххххххххх

(1 ⊕ x2 ) ^ (1 ⊕ x3) = 0

если х2 = 0, левая скобка 1, правая д.б. 0, т.е. х3 = 1

если х3 = 0, правая скобка 1, левая д.б.0, т.е. х2 = 1

и одновременно скобки нули при х2 = х3 = 1

итак, первое уравнение дает шесть ветвей решений

010xxxxxxx 001ххххххх 011ххххх

(1 ⊕ 0 ) ^ (1 ⊕ x4) = 0 (0 ⊕ 1 ) ^ (0 ⊕ x4) = 0 (1 ⊕ 1 ) ^ (1 ⊕ x4) = 0

0101хххххх 0010хххххх 0110хххххх

101ххххххх 110ххххххх 111ххххххх

(1 ⊕ 0 ) ^ (1 ⊕ x4) = 0 (0 ⊕ 1 ) ^ (0 ⊕ x4) = 0 (1 ⊕ 1 ) ^ (1 ⊕ x4) = 0

1010хххххх 1100хххххх 1110хххххх

итак второе уравнение дало 8 ветвей

третье должно дать 10

итак, ответ — 20 решений

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

2013 год

B15

преобразуем второе уравнение

все скобки здесь должны быть истинами

рассмотрим x1 = 1 и y1 = 1

т.е. комбинации 1xxx1xxx

(1 → x2) /\ (x2 → x3) /\ (x3 → x4) = 1

(1 → y2) /\ (y2 → y3) /\ (y3 → y4) = 1

(1 → 1) /\ (y2 → x2) /\ (y3 → x3) /\ (y4 →x4) = 1

это сразу определяет что x2 = 1, x3 = 1, x4 = 1 и то же для игреков

т.е. из этой ветви годится только решение 11111111

И (*) ВООБЩЕ если xn = 1 то очевидно для всех i xn+i = 1

и то же для всех y

т.е. если встречается 1, то далее все одноименные переменные тоже 1

01110111 например годится, 00110011 и 00010001

это следует из первых двух уравнений

а что дает третье уравнение?

то что если какой-то y=1 то однономерной x с ним тоже будет 1

т.е. ветви решений не симметричны:

годится 01110000 но не годится 00001111

подсчитаем комбинации исходя из этого

xx110011 (00, 01 и 11)

xxx10001 (000, 001, 011 и 111)

xxxx0000 (0000, 0001, 0011, 0111, 1111)

Ответ: 15

И еще примеры решения конкретных систем: Пример 1, Пример 2

Рассмотрим решение коротких и длинных одиночных уравнений

Два варианта решения:

  • таблица истинности (гарантия верного ответа)
  • аналитический (упрощение, сведение к системе)

АЛГОРИТМ аналитического решения

    1. возможно решать противоположную задачу, определив общее число наборов,
    2. в зависимости от необходимости превратить в конъюнкцию = 1 или дизъюнкцию = 0
    3. разбить на систему
    4. согласно таблице истинности описать наборы решений для каждой части системы
    5. по возможности выбрать ту, где меньше решений
    6. посмотреть какие решения совпадают, т.е. протестировать решения одной части для другой части
    7. выкинуть из второй части то, что не является решениями первой части.
    8. для системы из двух легко воспользоваться формулой количества пересечений.
    9. иногда довольно легко подсчитать комбинации по их «правилу образования», иногда нагляднее и проще выписать их себе списком (если это в пределах десятка).

Рассмотрим пример: (K V L) → (L ^ M ^ N) = 0

Импликация. Ложна когда первая часть истинна, а вторая ложна. Отсюда система:

Первый вариант рассуждений. Рассмотрим антирешения.

дизъюнкция ложна в 4 случаях: 0000 0001 0010 0011

конъюнкция истинна в 2 случаях: 0111 1111

при этом эти «антирешения» не пересекаются, т.е. получается, что все остальные 16-6 = 10 комбинаций должны подходить обоим уравнениям. Потому что эти 10 комбинаций не содержат ни антирешений первого, ни антирешений второго уравнения.

Второй вариант рассуждений. Выберем уравнение с наименьшим числом решений, это первое (16-4 = 12).

Подставим эти решения во второе. Как это сделать, если у нас нет их полного списка?

Очень просто. Среди этих 12 решений есть 2 антирешения второго, так как она оба НЕ входят в 4 антирешения первого.

Значит их нужно выкинуть. 12-2 = 10

Третий вариант. Объединение множеств решений первого и второго — 16. Решений первого 12, решений второго 14.

А найти надо пересечения. По формуле мощности пересечения множеств

|X ∩ Y| = |X| + |Y| — |X U Y| = 12 + 14 — 16 = 26 — 16 = 10

Ответ: 10 решений.

( K | L ) | ( L & M & N )

0 0 0 0 | 1 0 0 0 1 0 0 0 0 0

0 0 0 1 | 1 0 0 0 1 0 0 0 0 1

0 0 1 0 | 1 0 0 0 1 0 0 1 0 0

0 0 1 1 | 1 0 0 0 1 0 0 1 0 1

0 1 0 0 | 0 0 1 1 0 1 0 0 0 0

0 1 0 1 | 0 0 1 1 0 1 0 0 0 1

0 1 1 0 | 0 0 1 1 0 1 1 1 0 0

0 1 1 1 | 0 0 1 1 1 1 1 1 1 1

1 0 0 0 | 0 1 1 0 0 0 0 0 0 0

1 0 0 1 | 0 1 1 0 0 0 0 0 0 1

1 0 1 0 | 0 1 1 0 0 0 0 1 0 0

1 0 1 1 | 0 1 1 0 0 0 0 1 0 1

1 1 0 0 | 0 1 1 1 0 1 0 0 0 0

1 1 0 1 | 0 1 1 1 0 1 0 0 0 1

1 1 1 0 | 0 1 1 1 0 1 1 1 0 0

1 1 1 1 | 0 1 1 1 1 1 1 1 1 1

Рассмотрим другой пример: (K v L) & (M v N) = 1

Первому не подходят 0000, 0001, 0010, 0011, т.е. решений 12

Второму не подходят 0000, 0100, 1000, 1100, т.е. решений 12

Объединение множеств решений первого и второго — 15,а не 16, так как комбинация 0000 не подходит обоим уравнениям..

|X ∩ Y| = |X| + |Y| — |X U Y| = 12 + 12 — 15 = 24 — 15 = 9

Или можно просто сказать, что уникальных антирешений всей системы 7 — они складываются из антирешений первого, антирешений второго минус 1 (одно) повторение антирешения 0000, 16-7 = 9

Ответ: 9 решений

(K ^ L ^ M ) v (⌝L ^ ⌝M ^ N) = 0

Дизъюнкция равна 0, это система

16 комбинации всего возможны

антирешения первого: 111х, их два, следовательно 16-2 = 14 решений первого

антирешения второго: х001, их два, следовательно 16-2 = 14 решений второго

антирешения НЕ пересекаются

поэтому решений 14+14 — 16 = 12

(K v L v M ) ^ (⌝L ^ ⌝M ^ N) = 1

Здесь у второго вообще 2 решения (0001 и 1001), подставляем их в первое, 0001 является антирешением первого.

Ответ: 1 решение

(K ^ L ^ M ) → (⌝M ^ N) = 1

решим сначала (K ^ L ^ M ) → (⌝M ^ N) = 0

не противоречат ли они второй?

значит здесь 2 решения

значит у противоположной задачи 16 — 2 = 14 решений

Задания в 2010 году были в два раза длиннее. И переменных там больше.

Учитель информатики

Сайт учителя информатики. Технологические карты уроков, Подготовка к ОГЭ и ЕГЭ, полезный материал и многое другое.

§ 18 Алгебра логики

Информатика. 10 класса. Босова Л.Л. Оглавление

§ 18. Алгебра логики

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

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

Джордж Буль (1815-1864) — английский математик, основоположник алгебры логики. Дж. Буль изучал логику мышления математическими методами и разработал алгебраические методы решения традиционных логических задач. В 1854 году он опубликовал работу, в которой изложил суть алгебры логики, основанной на трёх операциях: and, or, not. Долгое время алгебра логики была известна достаточно узкому классу специалистов. В 1938 году Клод Шеннон применил алгебру логики для описания процесса функционирования релейноконтактных и электронно-ламповых схем.

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

Высказывание — это предложение, в отношении которого можно сказать, истинно оно или ложно.

Например, высказывание «Джордж Буль — основоположник алгебры логики» истинно, а высказывание «2 + 2 = 5» ложно.

Что вы можете сказать об истинности или ложности предложения «Данное высказывание — ложь»?

Из имеющихся высказываний можно строить новые высказывания. Для этого используются логические связки — слова и словосочетания «не», «и», «или», «если …, то», «тогда и только тогда» и др.

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

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

Обоснование истинности или ложности элементарных высказываний не является задачей алгебры логики. Эти вопросы решаются теми науками, к сфере которых относятся элементарные высказывания. Такое сужение интересов позволяет обозначать высказывания символическими именами (например, А, В, С). Так, если обозначить элементарное высказывание «Джордж Буль — основоположник алгебры логики» именем А, а элементарное высказывание «2 + 2 = 5» именем В, то составное высказывание «Джордж Буль — основоположник алгебры логики, и 2 + 2 = 5» можно записать как «А и В». Здесь А, В — логические переменные, «и» — логическая связка.

Логическая переменная — это переменная, которая обозначает любое высказывание и может принимать логические значения «истина» или «ложь».

Для логических значений «истина» и «ложь» могут использоваться следующие обозначения:

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

18.2. Логические операции

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

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

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

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

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

При построении отрицания простого высказывания:

• используется оборот «неверно, что» или к сказуемому добавляется частица «не»;
• в высказывании, содержащем слово «все», это слово заменяется на «некоторые» и наоборот.

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

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

Операция импликации обозначается символом ? и задаётся следующей таблицей истинности:

В разговорной речи импликации соответствуют предложения, содержащие связку «если …, то». Эту связку мы используем тогда, когда хотим показать наличие причинно-следственной связи, иначе говоря, зависимость одного события от другого. Например, пусть некоторый человек сказал: «Если завтра будет хорошая погода, то я пойду гулять». Ясно, что человек окажется лжецом лишь в том случае, если погода действительно будет хорошей, а гулять он не пойдёт. Если же погода будет плохой, то, независимо от того, пойдёт он гулять или нет, во лжи его нельзя обвинить: обещание пойти гулять он давал лишь при условии, что погода будет хорошей.

Результат операции импликации, как и других логических операций, определяется истинностью или ложностью логических переменных, а не наличием причинно-следственных связей между высказываниями. Например, абсурдное с житейской точки зрения высказывание «Если 2 > 3, то существуют ведьмы» является истинным с точки зрения алгебры логики.

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

Строгая дизъюнкция обозначается символом ? и задаётся следующей таблицей истинности:

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

Например, высказывая утверждение «На сегодняшнем матче Петя сидит на трибуне А либо на трибуне Б», мы считаем, что Петя сидит либо только на трибуне А, либо только на трибуне Б, и что сидеть одновременно на двух трибунах Петя не может.

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

В логике эквиваленция обозначается символом и задаётся следующей таблицей истинности:

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

Рассмотрим высказывание «Денис пойдёт в бассейн тогда и только тогда, когда он выучит уроки».

Это высказывание истинно (договорённость соблюдается), если истинны оба элементарных высказывания («Денис пойдёт в бассейн», «Денис выучит уроки»). Высказывание истинно (договорённость не нарушается) и в том случае, если оба элементарных высказывания ложны («Денис не пойдёт в бассейн», «Денис не выучит уроки»). Если же одно из двух высказываний ложно («Денис пойдёт в бассейн, хотя и не выучит уроки», «Денис выучит уроки, но не пойдёт в бассейн»), то договорённость нарушается, и составное высказывание становится ложным.

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

Можно сделать выводы:

• операция эквиваленции есть отрицание операции строгой дизъюнкции

• операция строгой дизъюнкции есть отрицание операции эквиваленции

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

Таблица 4.1

Логические операции и их обозначения

Операция отрицания выполняется над одним операндом. Такие операции называются одноместными или унарными. Все остальные логические операции, представленные в таблице 4.1, выполняются над двумя операндами и называются двуместными или бинарными.

18.3. Логические выражения

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

Для логического выражения справедливо:

1) всякая логическая переменная, а также логические константы (О, 1) есть логическое выражение;
2) если А — логическое выражение, то и — логическое выражение;
3) если А и В — выражения, то, связанные любой бинарной операцией, они также представляют собой логическое выражение.

При преобразовании или вычислении значения логического выражения логические операции выполняются в соответствии с их приоритетом:

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

Операции одного приоритета выполняются в порядке их следования, слева направо. Как и в арифметике, скобки меняют порядок выполнения операций.

Пример 1. Выясним, какие из приведённых слов удовлетворяют логическому условию (первая буква согласная ? вторая буква согласная) & (последняя буква гласная ? предпоследняя буква гласная):

1) ОЗОН;
2) ИГРА;
3) МАФИЯ;
4) ТРЕНАЖ.

Вычислим значение логического выражения для каждого из данных слов:

Итак, заданному условию удовлетворяют первое и четвёртое слова.

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

Пример 2. Решим логическое уравнение

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

Таким образом, значение переменной D уже найдено. Импликация равна нулю в единственном случае — когда из истины следует ложь. Иначе говоря, в нашем случае: А = 1 и С = 0.

Подставим найденные значения переменных в уравнение

Ответ: А = 1, В = 1, С = 0, D = 0.

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

Пример 3. Выясним, сколько различных решений имеет логическое уравнение

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

Первое равенство будет выполняться только при А = 1, В = 1 и С = 0. Поскольку D в этом уравнении не задействовано, оно может принимать любое из двух значений (0 или 1). Таким образом, всего первое уравнение имеет два решения.

Самостоятельно выясните, сколько решений имеет второе уравнение (из совокупности двух уравнений).

Сколько решений имеет исходное уравнение?

Пример 4. Выясним, сколько решений имеет очень простое с виду логическое уравнение х1 & х2 ? х3 & х4 = 1.

Введём замену переменных. Пусть t1 = х1 & х2, t2 = х3 & х4. Тогда исходное уравнение примет вид: t1 ? t2 = 1.

На t1 никаких ограничений нет, эта переменная может принимать значения 0 и 1. Импликация равна 0 только в случае, когда из истины (1) следует ложь (0). Исключим этот вариант. Построим дерево решений, представив на нём значения переменных t1 и t2 при которых t1 ? t2 = 1.

Получаем для t1 и t2 три набора значений: 00, 01, 11. Первая двоичная цифра в каждом из этих трёх наборов — результат выражения х1 & х2, вторая — х3 & х4. Рассмотрим первый набор: существует три набора х1 и х2 таких, что х1 & х2 = 0, другими словами, первый 0 мы можем получить тремя способами. Второй О в этом наборе мы также можем получить тремя способами.

Из курсов информатики и математики основной школы вам известно одно из основных правил комбинаторики — правило умножения. Согласно ему, если элемент А можно выбрать n способами, и при любом выборе А элемент В можно выбрать m способами, то пару (А, В) можно выбрать n • m способами.

Согласно правилу умножения, пару 00 можно получить 3 • 3 = 9 способами.

Что касается пары 01, то первый 0 мы можем получить тремя способами, а для получения 1 существует единственный вариант (х3 & х4 = 1 при х3 = 1 и х4 = 1). Следовательно, есть ещё три набора переменных х1, х2, х3, х4, являющихся решением исходного уравнения.

Самостоятельно доведите решение этой задачи до конца.

18.4. Предикаты и их множества истинности

Равенства, неравенства и другие предложения, содержащие переменные, высказываниями не являются, но они становятся высказываниями при замене переменной каким-нибудь конкретным значением. Например, предложение х 2 + у 2 = 1) — множество точек окружности единичного радиуса с центром в начале координат. Следует отметить, что многие задания, выполняемые вами на уроках математики, прямо связаны с предикатами. Например, стандартное задание «Решить квадратное уравнение x 2 — 3x + 2 = 0» фактически означает требование найти множество истинности предиката Р(х) = (x 2 — 3x + 2 = 0).

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

Пусть А и В соответственно являются множествами истинности предикатов А(х) и В(х). Тогда пересечение множеств А и В будет являться множеством истинности для предиката А(х) & В(х), а объединение множеств А и В будет множеством истинности для предиката А(х) ? В(х).

Пример 5. Найдём все целые числа 2, превращающие предикат

P(z) = (z > 5) & (z — 2 5) являются целые числа 6, 7, 8 и т. д. Множеством истинности предиката В(z) = (z — 2

Множество истинности исходного предиката — пересечение (общие элементы) множеств истинности образующих его предикатов:

Его мощность |Р| = 11.

Пример 6. Рассмотрим предикат (50 2 ) ? (50 > (х + 1) 2 ), определённый на множестве целых чисел. Найдём множество истинности этого предиката.

Зачастую задания такого рода формулируют несколько иначе.

Например, так: «Найдите все целые числа х, для которых истинно высказывание (50 (х + 1)2)».

Проанализируем отдельно каждый из элементарных предикатов (50 2 ) и (50 > (x + 1) 2 ), решив соответствующие неравенства:

Определим значение исходного предиката на каждом из полученных подмножеств, причём отдельно рассмотрим значение х = -8 (оно попадает в два подмножества) и значение х = 7 (оно не попадает ни в одно подмножество):

Итак, множеством истинности исходного предиката являются целые числа, принадлежащие отрезку [-8; 7]. Наименьшим элементом этого множества является число -8, наибольшим — число 7; мощность множества равна 16.

САМОЕ ГЛАВНОЕ

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

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

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

Логические операции имеют следующий приоритет:

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

Операции одного приоритета выполняются в порядке их следования, слева направо. Скобки меняют порядок выполнения операций.

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

Вопросы и задания

1. Из данных предложений выберите те, которые являются высказываниями. Обоснуйте свой выбор.

1) Как пройти в библиотеку?
2) Коля спросил: «Который час?»
3) Картины Пикассо слишком абстрактны.
4) Компьютеры могут быть построены только на основе двоичной системы счисления.

2. Из каждых трёх выберите два высказывания, являющихся отрицаниями друг друга:

1) «1999 2000», «1999 ? 2000»;
2) «Петя решил все задания контрольной работы», «Петя не решил все задания контрольной работы», «Петя решил не все задания контрольной работы»;
3) «Луна — спутник Земли», «Неверно, что Луна — спутник Земли», «Неверно, что Луна не является спутником Земли »;
4) «Прямая а не параллельна прямой с», «Прямая а перпендикулярна прямой с», «Прямые а и с не пересекаются» (считаем, что прямые а и с лежат в одной плоскости);
5) «Мишень поражена первым выстрелом», «Мишень поражена не первым выстрелом», «Неверно, что мишень поражена не первым выстрелом».

3. Рассмотрите следующие элементарные высказывания: А = «Река Днепр впадает в Чёрное море», В = «45 — простое число», С = «Вена — столица Австрии», D = «0 — натуральное число».

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

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

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

1) На вкус и цвет товарищей нет.
2) Если долго мучиться, что-нибудь получится.
3) Не зная броду, не суйся в воду.
4) Тяжело в ученье, легко в бою.
5) То не беда, что во ржи лебеда, то беда, что ни ржи, ни лебеды.
6) Где тонко, там и рвётся.
7) Или грудь в крестах, или голова в кустах.
8) За двумя зайцами погонишься — ни одного не поймаешь.
9) И волки сыты, и овцы целы.

5. Подберите вместо А, В, С, D такие высказывания, чтобы полученные сложные высказывания имели смысл:

1) если (А или В и С), то D;
2) если (не А и не В), то (С или D);
3) (А или В) тогда и только тогда, когда (С и не D).

7. Сколько из приведённых чисел Z удовлетворяют логическому условию: ((Z кратно 4) v (Z кратно 5)) ? (Z кратно 6)?
1) 4; 2) 6; 3) 7; 4) 12.

8. Найдите все целые числа Z, для которых истинно высказывание:

9. Какие из высказываний А, В, С должны быть истинны и ка кие ложны, чтобы были ложны следующие высказывания?

10. Даны три числа в различных системах счисления:

Переведите А, В и С в двоичную систему счисления и вы полните поразрядно логические операции (A v В) & С. Отвеп дайте в десятичной системе счисления.

11. Логическое отрицание восьмиразрядного двоичного числа записанное в десятичной системе счисления, равно 217 Определите исходное число в десятичной системе счисления,

12. Определите логическое произведение и логическую сумм> всех двоичных чисел в диапазоне от 1610 до 2210, включая границы. Ответ запишите в восьмеричной системе счисления.

13. Сколько различных решений имеет логическое уравнение?

14. Сколько решений имеет логическое уравнение х1 & х2 v х3 & x4 = 1?

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

16. Предикат ((8x — 6) 65) определён на множестве целых чисел. Найдите его множество истинности. Укажите наибольшее целое число х, при котором предикат превращается в ложное высказывание.


источники:

http://www.sites.google.com/site/metinformat/logika/logiceskie-uravnenia

http://murnik.ru/18-algebra-logiki