На Горох
Информатика, 8 класс

§ 6. Знакомство с математической логикой: продолжение

"Информатика (в 2-х частях)", Горячев А.В., Герасимова В.Г., Макарина Л.А., Островский С.Л., Паволоцкий А.В., Семёнов А.А., Юдина А.Г., Чернышёва Т.Л.

Объяснение темы В оглавлении: § 6. Знакомство с математической логикой: продолжение

Кратко о теме

Логические выражения помогают проверить, истинно или ложно сложное условие, составленное из нескольких высказываний. Для этого используют операции И, ИЛИ и НЕ: каждая действует по своему правилу. Таблица истинности показывает результат выражения при всех возможных значениях его переменных. Умение применять эти правила пригодится при решении логических задач и записи условий в программах, где от результата проверки зависит дальнейшее действие.

Объяснение темы

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

Определения и обозначения

Логическое выражение — высказывание или запись с логическими операциями, которой можно сопоставить значение «истина» или «ложь». Например, запись «A истинно и B истинно» зависит от значений A и B. Это понятие нужно, чтобы описывать не только отдельные факты, но и условия, составленные из нескольких фактов.

Конъюнкция — логическая операция «И»: результат истинен, только когда истинны оба высказывания. Её обозначают словами «И», а в некоторых записях — знаком ∧. Например, A И B истинно лишь при одновременной истинности A и B; операция помогает выразить условие, для которого должны выполниться сразу два требования.

Дизъюнкция — логическая операция «ИЛИ»: результат ложен, только когда ложны оба высказывания. Её можно записать словами «ИЛИ» или знаком ∨. Такое правило полезно, когда условие допускает несколько способов выполнения: достаточно, чтобы истинным оказалось хотя бы одно из высказываний, а истинность обоих тоже подходит.

Отрицание — логическая операция «НЕ», которая меняет значение высказывания на противоположное. Запись НЕ A означает «неверно, что A»: если A истинно, НЕ A ложно, и наоборот. Отрицание нужно, чтобы сформулировать обратное условие; его область действия определяют по скобкам и по тому, какая часть выражения стоит после операции.

Как это устроено

Простые высказывания обозначают буквами, например A и B, а затем соединяют логическими операциями. Так из сообщений «идёт дождь» и «дует ветер» можно составить условие «идёт дождь И дует ветер». Получается составное выражение, значение которого зависит от значений частей. Такой способ записи удобен, потому что позволяет изучать структуру условия, не повторяя каждый раз длинные фразы.

Чтобы вычислить A И B, нужно проверить обе части: выражение требует, чтобы выполнялись сразу два условия. Если хотя бы одно высказывание ложно, требование целиком не выполнено, поэтому результат ложен. У операции ИЛИ другая цель: она проверяет, выполнено ли хотя бы одно из условий. Поэтому для A ИЛИ B достаточно одной истинной части, а выражение становится ложным лишь при двух ложных частях.

Отрицание переворачивает значение высказывания, а не просто добавляет к нему новое условие. Например, если A означает «число чётное», то НЕ A означает «число не чётное». При записи важно видеть, к чему относится НЕ: в выражении НЕ A И B обычно отрицается только A, а в записи НЕ (A И B) отрицается результат всей операции в скобках. Скобки помогают явно обозначить нужную область.

Таблица истинности показывает результат выражения для каждого возможного набора значений переменных. У одной переменной два значения, у двух — четыре сочетания, у трёх — восемь: в общем случае для n переменных нужно рассмотреть 2ⁿ наборов. Для каждого набора подставляют значения и вычисляют выражение. Если пропустить строку, таблица не покажет поведение условия во всех возможных случаях.

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

Значения логических операций

ABНЕ AA И BA ИЛИ B
ложьложьистиналожьложь
ложьистинаистиналожьистина
истиналожьложьложьистина
истинаистиналожьистинаистина

Каждая строка задаёт отдельное сочетание значений A и B, а остальные столбцы показывают результаты операций для этого сочетания. Чтобы проверить результат, сначала примените правило НЕ, И или ИЛИ к значениям в первых двух столбцах. По таблице легко увидеть, что И требует двух истинных значений, а ИЛИ допускает хотя бы одно истинное.

Разбор задач

Таблица истинности выражения A И B

Нужно найти значение конъюнкции для всех сочетаний A и B. Так как переменных две, возможны четыре набора. Перечислим их все, чтобы не пропустить случай, в котором выражение меняет результат.

  1. Запишем сочетания A и B: ложь и ложь; ложь и истина; истина и ложь; истина и истина.
  2. Применим правило конъюнкции: результат истинен, только если истинны обе части.
  3. Получим значения A И B по строкам: ложь, ложь, ложь, истина.

В первых трёх строках хотя бы одно высказывание ложно, поэтому всё выражение ложно. В последней строке оба высказывания истинны, и только тогда конъюнкция истинна. Ответ: столбец A И B равен «ложь, ложь, ложь, истина» для указанного порядка наборов.

Таблица истинности выражения НЕ A ИЛИ B

В этом выражении участвуют две переменные, поэтому снова нужны четыре набора. Сначала вычислим НЕ A, а затем объединим его значение с B операцией ИЛИ. Такой порядок позволяет отдельно проверить действие отрицания и не перепутать его с отрицанием всего выражения.

  1. Запишем наборы A и B: ложь и ложь; ложь и истина; истина и ложь; истина и истина.
  2. Вычислим НЕ A: истина, истина, ложь, ложь.
  3. Для каждой строки вычислим НЕ A ИЛИ B. Результат: истина, истина, ложь, истина.

В первой строке НЕ A истинно, поэтому дизъюнкция истинна, хотя B ложно. Во второй строке истинны обе части дизъюнкции, в третьей обе части ложны, а в четвёртой истинно B. Ответ: выражение ложно только при A = истина и B = ложь.

Когда истинно выражение (A ИЛИ B) И НЕ C

Нужно выяснить, при каких наборах значений трёх переменных итоговое выражение истинно. Здесь скобки задают первую часть, A ИЛИ B, а отрицание относится к C. Затем результаты этих двух частей соединяются операцией И. Для трёх переменных требуется 2³ = 8 строк.

  1. Перечислим все наборы A, B, C: ЛЛЛ, ЛЛИ, ЛИЛ, ЛИИ, ИЛЛ, ИЛИ, ИИЛ, ИИИ, где Л — ложь, И — истина.
  2. Для каждого набора вычислим A ИЛИ B и отдельно НЕ C.
  3. Объединим результаты операцией И: итог истинен, когда истинны обе промежуточные части.

Часть A ИЛИ B истинна, если хотя бы одно из A и B истинно, а НЕ C истинно только при ложном C. Поэтому итоговое выражение истинно при наборах ЛИЛ, ИЛЛ, ИИЛ и ИИЛ? Строку ИИЛ учитывать нужно один раз: полная проверка даёт ЛИЛ, ИЛЛ, ИИЛ, а также ИЛ? Чтобы не ошибиться, сверим все строки: ЛЛЛ — ложь; ЛЛИ — ложь; ЛИЛ — истина; ЛИИ — ложь; ИЛЛ — истина; ИЛИ — ложь; ИИЛ — истина; ИИИ — ложь. Ответ: выражение истинно для ЛИЛ, ИЛЛ и ИИЛ.

Типичные ошибки

Ошибка: считать, что A ИЛИ B истинно ровно при одном истинном высказывании. Её допускают, потому что в обычной речи «или» иногда предлагают понимать как выбор только одного варианта. В логике достаточно хотя бы одного истинного значения, и вариант, где истинны оба высказывания, тоже даёт истину. Проверь себя по строке A = истина, B = истина: A ИЛИ B там истинно.

Ошибка: считать A И B истинным, если истинна хотя бы одна часть. Так можно перепутать правило И с правилом ИЛИ, поскольку обе операции соединяют высказывания. Для И должны быть истинны сразу оба; проверь строки, где только одно значение истинно: результат конъюнкции в них ложен. Если истинны только A или только B, условие «A и B» выполнено не полностью.

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

Ошибка: пропускать сочетания значений переменных при заполнении таблицы. Некоторые наборы кажутся похожими, поэтому их легко случайно не записать. Для n переменных должно быть ровно 2ⁿ строк: например, для A, B и C — восемь. Проверь число строк и проследи, чтобы каждая переменная в таблице принимала оба значения во всех нужных сочетаниях.

Связь с другими темами

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

Что запомнить

  • Логическое выражение имеет значение «истина» или «ложь».
  • Конъюнкция истинна только при истинности обоих высказываний.
  • Дизъюнкция ложна только при ложности обоих высказываний.
  • Отрицание меняет значение высказывания на противоположное.
  • Таблица истинности показывает результат выражения для всех наборов значений переменных.
  • Скобки помогают определить порядок вычисления выражения.

Частые вопросы по теме

Чем логическое выражение отличается от обычного высказывания?

Обычное высказывание сообщает что-то, чему можно приписать значение «истина» или «ложь». Логическое выражение может быть таким высказыванием, а может состоять из нескольких высказываний, соединённых операциями И, ИЛИ и НЕ.

Когда выражение A И B истинно?

Только тогда, когда истинны и A, и B. Если хотя бы одно из них ложно, всё выражение A И B ложно.

Означает ли A ИЛИ B, что истинно только одно из двух высказываний?

Нет. В логике выражение A ИЛИ B истинно, если истинно хотя бы одно высказывание, в том числе если истинны оба. Оно ложно только тогда, когда ложны и A, и B.

Как правильно построить таблицу истинности?

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

Зачем нужны скобки в логическом выражении?

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

Спросить по теме параграфа

§ 6. Знакомство с математической логикой: продолжение

Эта же тема в других учебниках

Учебник

Оглавление →
Предмет
Информатика
Класс
8 класс
Учебник
"Информатика (в 2-х частях)", Горячев А.В., Герасимова В.Г., Макарина Л.А., Островский С.Л., Паволоцкий А.В., Семёнов А.А., Юдина А.Г., Чернышёва Т.Л.