Логика
И, ИЛИ: Соединяем высказывания
Цели урока
- Понять конъюнкцию (И) и когда она истинна
- Освоить дизъюнкцию (ИЛИ) и её особенности
- Различать включающее и исключающее ИЛИ
- Научиться строить и читать таблицы истинности
"Скидка для студентов ИЛИ пенсионеров" - а если ты студент-пенсионер? Логика и бытовой язык расходятся чаще, чем кажется.
- Фильтры в интернет-магазинах: "красный И размер M"
- Условия в программировании: if (logged_in && has_permission)
- Юридические формулировки: "штраф или лишение свободы"
- Поисковые запросы: Google использует И/ИЛИ по-разному
Конъюнкция: оба должны быть истинны
**Конъюнкция** (И, ∧) - это сложное высказывание, которое истинно только тогда, когда **оба** простых высказывания истинны.
**Обозначения конъюнкции:** • В логике: P ∧ Q ("P и Q") • В программировании: P && Q или P and Q • В математике: P · Q • В русском языке: "и", "а также", "но" (иногда)
Конъюнкция - строгая связка. Достаточно одного ложного компонента, чтобы всё высказывание стало ложным. Как цепь: одно слабое звено - и вся цепь рвётся.
"Москва - столица России И Париж - столица Германии". Это высказывание...
Дизъюнкция: хотя бы одно истинно
**Дизъюнкция** (ИЛИ, ∨) - сложное высказывание, которое истинно, когда **хотя бы одно** из простых высказываний истинно.
**Внимание:** В логике "ИЛИ" - включающее. "Море ИЛИ горы" допускает и то, и другое одновременно! Это отличается от бытового "или-или" ("чай или кофе?").
Дизъюнкция - мягкая связка. Достаточно одного истинного компонента, чтобы всё высказывание стало истинным. Как параллельные дороги: если хотя бы одна открыта - ты проедешь.
"2 + 2 = 4 ИЛИ Луна сделана из сыра". Это высказывание...
Включающее ИЛИ: логика vs бытовой язык
В логике **ИЛИ всегда включающее**: "A или B" истинно, даже если истинны оба. Это часто противоречит интуиции.
**Почему включающее?** Так проще для математики и программирования. Большинство реальных условий допускают оба варианта: "знание Python ИЛИ JavaScript" - если знаешь оба, это ещё лучше!
Когда в жизни говорят "ИЛИ", часто имеют в виду исключающее: "чай или кофе?" - выбирай одно. Но в логике по умолчанию - включающее.
"Для входа нужен паспорт ИЛИ водительские права". Если у тебя оба документа, ты можешь войти?
Исключающее ИЛИ: или одно, или другое
**Исключающее ИЛИ** (XOR, ⊕) - истинно, когда истинно **ровно одно** из высказываний. Оба истинных или оба ложных - ложь.
**В программировании:** • Python: `a ^ b` (для чисел) • JavaScript: `a ^ b` • В условиях: `(a || b) && !(a && b)` XOR используется в криптографии, контрольных суммах, переключателях.
Когда важно различать: "Выберите способ доставки: курьер ИЛИ самовывоз" - здесь логически XOR, нельзя выбрать оба. Но часто контекст делает это неявным.
"Файл открыт ИЛИ закрыт" - какое это ИЛИ?
Таблицы истинности: шпаргалка на все случаи
**Таблица истинности** показывает значение сложного высказывания для всех комбинаций значений простых. Это универсальный инструмент проверки.
**Почему 4 строки?** Две переменные × два значения = 2² = 4 комбинации. Для трёх переменных: 2³ = 8 строк. Для четырёх: 2⁴ = 16 строк. Таблицы растут экспоненциально!
Таблицы истинности - как калькулятор для логики. Не нужно держать всё в голове: просто заполни таблицу и посмотри результат. В следующих уроках мы будем строить таблицы для более сложных выражений.
"ИЛИ" в логике означает "одно или другое, но не оба"
В логике "ИЛИ" (∨) - включающее: допускает и оба варианта
Исключающее ИЛИ (XOR) - отдельная операция. По умолчанию в логике и программировании ИЛИ - включающее. Это упрощает формулы и соответствует большинству реальных условий.
Сколько строк будет в таблице истинности для выражения с 3 переменными (P, Q, R)?
Главное
- Конъюнкция (И, ∧): истинна только когда ОБА компонента истинны
- Дизъюнкция (ИЛИ, ∨): истинна когда ХОТЯ БЫ ОДИН компонент истинен
- В логике ИЛИ — включающее (допускает оба варианта)
- XOR (исключающее ИЛИ): истинно когда РОВНО ОДИН истинен
Дальше
Теперь изучим самую важную связку - условное высказывание ЕСЛИ-ТО
- ЕСЛИ-ТО — следующий урок
- Валидность — предыдущий урок
Вопросы для размышления
- Найди в пользовательском соглашении какого-нибудь сервиса конъюнкции и дизъюнкции. Включающее или исключающее ИЛИ там используется?
- Как бы ты объяснил разницу между И и ИЛИ пятилетнему ребёнку?
- В каких ситуациях программист должен использовать XOR вместо обычного ИЛИ?