Логика

Теория: булева алгебра, булевы функции, таблицы истинности. Преобразования по законам булевой алгебры; разложение на конституэнты, СКНФ, СДНФ, функционально полная система/базис; операции над множествами, мощность множества, пересечения, объединения. Текстовые задачи.

Таблицы истинности

Булевы алгебры

Краткое введение

Демонстрационные варианты

Обозначения

a*b, a & b, a ∧ b

a+b, a | b, a v b

a', ¬a, ā

Инфиксная, префиксная, функциональная запись

(a ^ b) v c

v

/ \

^ c

/ \

a b

v∧abc

OR(AND(A1;B1);C1)

Об отличии дизъюнкции от "либо" (исключающего "или"):

я: Лена, скажи, пожалуйста, в справочнике поставщиков мы светим почтовый или юридический адрес? Елена: да я : почтовый или юридический? Елена: да

Вертолет 3400

Самолет 5600

Вертолет | Самолет 8000

Сколько страниц будет выдано

по запросу Вертолет & Самолет?

Можно нарисовать круги эйлера / диаграммы венна

и сделать вывод, что объединение - это (3400 - x ) + x + (5600 - x) = 3400 - x + x + 5600 - x = 9000 - x = 8000 т.е. x = 1000

или можно вывести формулу

Рассмотрим упрощенный пример:

множество {1,2,3,4,5,6} и множество {5,6,7,8,9}

их пересечение содержит 2 элемента: {5,6}

их объединение содержит 9 элементов: {1,2,3,4,5,6,7,8,9}

в первом множестве 6 элементов, во втором 5

если суммировать количества элементов, получим 5 +6 = 11

но 2 элемента общие

11 - 2 = 9

∑ - ⋂ = ⋃

сумма - это перечисление всех элементов обоих множеств - сначала первого, потом второго

объединение - это перечисление всех элементов обоих множеств по одному разу (т.е. после вычеркивания копий элементов)

M N

| M | + | N | - | M ∩ N | = | M ∪ N |

Таким образом вывод:

A|B = A + B - A&B

A = A|B - B + A&B

B = A|B - A + A&B

A&B = A + B - A|B

В демоверсии 2014 года эта задача была усложнена

там появляются ТРИ категории.

Хоккей И футбол И волейбол = 80

Футбол И волейбол = 260

Хоккей И Волейбол = 230

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

по запросу (хоккей ИЛИ футбол ) И волейбол

На первый взгляд тут придется применять формулу для трех множеств

N(A∪B∪C)=N(A)+N(B)+N(C)−N(A∩B)−N(A∩C)−N(B∩C)+N(A∩B∩C).

Но для применения такой формулы не хватает данных

на самом деле всё проще.

пользуемся законом булевой алгебры: (хоккей ИЛИ футбол ) И волейбол = (хоккей И волейбол ) ИЛИ ( футбол И волейбол)

переобозначим: А = (хоккей И волейбол ) = 230

Б = ( футбол И волейбол) = 260

А что дает первое? где 80? а это на самом деле перечение А и Б

Потому что А и Б = (хоккей И волейбол ) И ( футбол И волейбол) = Хоккей И футбол И волейбол = 80

и таким образом задача сводится к предыдущей

А И Б = 80

А = 230

Б = 260

А ИЛИ Б = 230 + 260 - 80 = 410

О задачах на маску подсети из Демо-2012

Ответ: 217.233.232.0

т.е. CDEA

Помощь при проверке себя может оказать ресурс http://www.ispreview.ru/ipcalc.html

http://content.screencast.com/users/g.ossoudarev/folders/Jing/media/d307571d-0492-4d2d-b1f2-245d5df3b70b/00000299.png

¬ (1Г -> 2Г) & ПГ = ¬ (1C v 2Г) & ПГ = 1Г & 2С & ПГ