Егэ по информатике 23 задание методы решения. Задачи для самостоятельного решения

Носкин Андрей Николаевич,
учитель информатики
высшей квалификационной категории,
кандидат военных наук, доцент
ГБОУ Лицей №1575 город Москва

Оптимизированный метод отображения для решения задачи 23 из КИМ ЕГЭ по информатике и ИКТ

Одной из самой трудной задачей в КИМ ЕГЭ является задача 23, в которой надо найти количество различных наборов значений логических переменных, которые удовлетворяют указанному условию.
Данная задача является едва ли не самым сложным заданием КИМ ЕГЭ по информатике и ИКТ. С ним, как правило, справляются не более 5% экзаменуемых {1}.
Такой маленький процент учеников, которые справились с данным заданием объясняется следующим:
- ученики могут путать (забыть) знаки логических операций;
- математические ошибки в процессе выполнения расчетов;
- ошибки в рассуждениях при поиске решения;
- ошибки в процессе упрощения логических выражений;
- учителя рекомендуют решать данную задачу, после выполнения всей работы, так как вероятность допущения
ошибок очень велика, а «вес» задачи составляет всего лишь один первичный балл.
Кроме того, некоторые учителя сами с трудом решают данный тип задач и поэтому стараются решать с детьми более простые задачи.
Также усложняет ситуацию, что в данном блоке существует большое количество разнообразных задач и невозможно подобрать какое-то шаблонное решение.
Для исправление данной ситуации педагогическим сообществом дорабатываются основные две методики решения задач данного типа: решение с помощью битовых цепочек {2} и метод отображений {3}.
Необходимость доработки (оптимизации) данных методик обусловлена тем, что задачи постоянно видоизменяются как по структуре, так и по количеству переменных (только один тип переменных Х, два типа переменных Х и Y, три типа: X, Y, Z).
Сложность освоения данными методиками решения задач подтверждается тем, что на сайте К.Ю. Полякова существует разборов данного типа задач в количестве 38 штук{4}. В некоторых разборах приведены более одного типа решения задачи.
Последнее время в КИМ ЕГЭ по информатике встречаются задачи с двумя типа переменных X и Y.
Я оптимизировал метод отображения и предлагаю своим ученикам пользоваться усовершенствованным методом.
Это дает результат. Процент моих учеников, которые справляются с данной задачей варьируется до 43% от сдающих. Как правило, ежегодно у меня сдает ЕГЭ по информатике от 25 до 33 человек из всех 11-х классов.
До появления задач с двумя типами переменными метод отображения ученики использовали очень успешно, но после появления в логическом выражении Y, я стал замечать, что у детей перестали совпадать ответы с тестами. Оказалось, они не совсем четко стали представлять, как составить таблицу отображений с новым типом переменной. Тогда мне пришла мысль, что для удобства надо все выражение привести к одному типу переменной, как удобно детям.
Приведу более подробно данную методику. Для удобства буду ее рассматривать на примере системы логических выражений, приведенных в {4}.
Сколько различных решений имеет система логических уравнений

(x 1 ^ y 1) = (¬x 2 V ¬ y 2 )
(x 2 ^ y 2) = (¬ x 3 V ¬ y 3 )
...
(x 5 ^ y 5 ) = (¬ x 6 V ¬ y 6 )

где x 1 , …, x 6 , y 1 , …, y 6 , - логические переменные? В ответе не нужно перечислять все различные наборы значений переменных, при которых выполнено данное равенство. В качестве ответа нужно указать количество таких наборов.
Решение:
1. Из анализа системы логических уравнений мы видим, что присутствует 6 переменных Х и 6 переменных У . Так как любая из этих переменных может принимать только два значения (0 и 1), то заменим эти переменные на 12 однотипных переменных, например Z.
2. Теперь перепишем систему с новыми однотипными переменными. Сложность задачи будет заключаться во внимательной записи при замене переменных.

(z 1 ^ z 2) = (¬z 3 V ¬ z 4 )
(z 3 ^ z 4) = (¬ z 5 V ¬ z 6 )
...
(z 9 ^ z 10 ) = (¬ z 11 V ¬ z 12)


3. Построим таблицу, в которой переберем все варианты z 1 , z 2 , z 3 , z 4 , поскольку в первом логическом уравнении четыре переменных, то таблица будет иметь 16 строк (16=2 4); уберем из таблицы такие значения z 4 , при которых первое уравнение не имеет решения (зачеркнутые цифры).
0 0 0 0
1
1 0
1
1 0 0
1
1 0
1
1 0 0 0
1
1 0
1
1 0 0
1
1 0
1

4. Анализируя таблицу, строим правило отображения пар переменных (например, паре Z 1 Z 2 =00 соответствует пара Z 3 Z 4 = 11) .

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

6. Складываем все результаты: 9 + 9 + 9 + 27 = 54
7. Ответ: 54.
Приведенная выше оптимизированная методика решения задачи 23 из КИМ ЕГЭ позволила ученикам вновь обрести уверенность и решать успешно этот тип задачи.

Литература:

1. ФИПИ. Методические рекомендации для учителей, подготовленные на основе анализа типичных ошибок участников ЕГЭ 2015 года по ИНФОРМАТИКЕ и ИКТ. Режим доступа: http://www.fipi.ru/sites/default/files/document/1442163533/informatika_i_ikt.pdf

2. К.Ю. Поляков, М.А. Ройтберг. Системы логических уравнений: решение с помощью битовых цепочек. Журнал Информатика, № 12, 2014, с. 4-12. Издательский дом "Первое сентября", г.Москва.
3. Е.А. Мирончик, Метод отображения. Журнал Информатика, № 10, 2013, с. 18-26. Издательский дом "Первое сентября", г.Москва.

Интерактивный тренажер 23 ЕГЭ ДЕМО 2017

для затрудняющихся полное решение размещено в самом конце данной страницы

Возникли вопросы, сомнения или появились замечания, пишите...

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

Демонстрационный вариант ЕГЭ 2015 информатика и ИКТ задача 23.

Сколько существует различных наборов значений логических переменныхx1, x2, … x8, y1, y2, … y8, которые удовлетворяют всем перечисленным ниже условиям?
(x1 | x2) & ((x1 & x2) → x3) & (¬x1 | y1) = 1
(x2 | x3) & ((x2 & x3) → x4) & (¬x2 | y2) = 1
(x3 | x4) & ((x3 & x4) → x5) & (¬x3 | y3) = 1
(x4 | x5) & ((x4 & x5) → x6) & (¬x4 | y4) = 1
(x5 | x6) & ((x5 & x6) → x7) & (¬x5 | y5) = 1
(x6 | x7) & ((x6 & x7) → x8) & (¬x6 | y6) = 1
(x7 | x8) & (¬x7 | y7) = 1
(¬x8 | y8) = 1

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

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

Берем первое уравнение (x1 | x2) & ((x1 & x2) → x3) & (¬x1 | y1) = 1 и с помощью таблицы истинности находим все его решения. После чего остается выделить (вычеркнуть) все строки, имеющие 0 в итоговой колонке

Анализируя таблицу, строим отображения пар x 1x 2 в x 2x 3, замечая, что первая пара со значениями 01 отображается во вторую со значением 10 дважды (для значения y 1=1 и y 1=0 отсюда и двойная красная стрелка, аналогично строится отображение для пар со значениями 01-11)

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

Откуда и находим, что первые шесть уравнений имеют всего 53 решения.

А нам остается разобраться с оставшимися «добавочными» двумя уравнениями
(x7 | x8) & (¬x7 | y7) = 1
(¬x8 | y8) = 1
Остановимся на первом из них и, не вдаваясь в глубокие рассуждения, заполним таблицу истинности для него, где цифрой 1 обозначим условно первую скобку, а цифрой два – соответственно вторую и крышечкой – их произведение.

Из таблицы видно, что пара x7x8

    не имеет решений при значениях 00 (что означает следующее: пара x7x8 со значением 00 отобразится в y7 с теми же значениями 0 раз (т.е. не отображается)

    имеет два решения при значении 01 (y7 = 0 и y7 = 1 , что означает следующее: количество решений для пары x7x8 со значением 01, отобразившись в y7 - удвоится

    имеет по одному решению со значениями 10 и 11 , т.е. количество решений в отображении с этими значениями не изменится.

Нам остается, заполнив соответствующие ячейки найденными значениями, найти количество решений для первых семи уравнений

И вот он, самый ответственный шаг, поэтому с целью не совершения лишних ошибок вновь прибегаем к построению таблицы истинности, но уже для восьмого уравнения
(¬x8 | y8) = 1

Из построенной нами таблицы истинности видно, что

    если Х8 = 0, то Y8 имеет два решения 0 и 1 (т.е. количество решений при отображении удваиваем)

    если Х8 = 1, то Y8 имеет одно решение (т.е. количество решений при отображении неизменно)

это означает, что если x8 равно 0, то в отображении x8 на y8 при значениях 00 и 10 количество решений удваивается, а в случае, когда x8 равно 1 в отображении x8 на y8 при значениях 01 и 11 количество решений остается неизменным. Это и отобразим в заключительной таблице и суммируя все значения столбика Y8 находим искомый результат.

Правильный ответ: 61

Полное решение-подсказка для задания 23 Демоврсии ЕГЭ 2017 по информатике

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

Сортировка Основная Сначала простые Сначала сложные По популярности Сначала новые Сначала старые
Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word

Сколь-ко су-ще-ству-ет раз-лич-ных на-бо-ров зна-че-ний ло-ги-че-ских пе-ре-мен-ных x1, x2, x3, x4, x5, x6, x7, x8 ко-то-рые удо-вле-тво-ря-ют всем пе-ре-чис-лен-ным ниже усло-ви-ям?

(x1≡x2)->(x2≡x3) = 1

(x2≡x3)->(x3≡x4) = 1

(x6≡x7)->(x7≡x8) = 1

В от-ве-те не нужно пе-ре-чис-лять все раз-лич-ные на-бо-ры зна-че-ний пе-ре-мен-ных x1, x2, x3, x4, x5, x6, x7, x8 при ко-то-рых вы-пол-не-на дан-ная си-сте-ма ра-венств. В ка-че-стве от-ве-та Вам нужно ука-зать ко-ли-че-ство таких на-бо-ров.

Решение.

Запишем переменные в строчку: x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 . Импликация ложна только в том случае, когда из истины следует ложь. Условие не выполняется, если в ряду после пары одинаковых цифр присутствует другая цифра. Например, «11101...», что означает невыполнение второго условия.

Рассмотрим комбинации переменных, удовлетворяющие всем условиям. Выпишем варианты, при которых все цифры чередуются, таких два: 10101010 и 01010101. Теперь для первого варианта, начиная с конца, будем увеличивать количество повторяющихся подряд цифр (настолько, насколько это возможно). Выпишем полученные комбинации: «1010 1011; 1010 1111; 1011 1111; 1111 1111; 1010 1000; 1010 0000; 1000 0000; 0000 0000» таких комбинаций девять, включая исходную. Аналогично для второго варианта: «0101 0101; 0101 0100; 0101 0000; 0100 0000; 0000 0000; 0101 0111; 0101 1111; 0111 1111; 1111 1111» - таких комбинаций также девять. Заметим, что комбинации 0000 0000 и 1111 1111 учтены дважды. Таким образом, получаем 9 + 9 − 2 = 16 решений.

Ответ: 16.

Ответ: 16

¬(x 1 ≡ x 2) ∧ (x 1 ∨ x 3) ∧ (¬x 1 ∨ ¬x 3) = 0

¬(x 2 ≡ x 3) ∧ (x 2 ∨ x 4) ∧ (¬x 2 ∨ ¬x 4) = 0

¬(x 8 ≡ x 9) ∧ (x 8 ∨ x 10) ∧ (¬x 8 ∨ ¬x 10) = 0

В ответе не нужно

Решение.

Рассмотрим первое уравнение.

При x 1 = 1 возможны два случая: x 2 = 0 и x 2 = 1. В первом случае x 3 = 1. Во втором - x 3 либо 0, либо 1. При x 1 = 0 также возможны два случая: x 2 = 0 и x 2 = 1. В первом случае x 3 либо 0, либо 1. Во втором - x 3 = 0. Таким образом, уравнение имеет 6 решений (см. рисунок).

Рассмотрим систему из двух уравнений.

Пусть x 1 = 1. При x 2 = 0 возможен лишь один случай: x 3 = 1, переменная x 4 = 0. При x 2 = 1 возможно два случая: x 3 = 0 и x 3 = 1. В первом случае x 4 = 1, во втором - x 4 либо 0, либо 1. Всего имеем 4 варианта.

Пусть x 1 = 0. При x 2 = 1 возможен лишь один случай: x 3 = 0, переменная x 4 = 1. При x 2 = 0 возможно два случая: x 3 = 0 и x 3 = 1. В первом случае x 4 либо 1, либо 0, во втором - x 4 = 0. Всего имеем 4 варианта.

Таким образом, система из двух уравнений имеет 4 + 4 = 8 вариантов (см. рисунок).

Система из трёх уравнений будет иметь 10 решений, из четырёх - 12. Система из восьми уравнений будет иметь 20 решений.

Ответ: 20

Источник: ЕГЭ по ин­фор­ма­ти­ке 30.05.2013. Ос­нов­ная волна. Центр. Ва­ри­ант 1.

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

(x 1 ∧ ¬x 2) ∨ (¬x 1 ∧ x 2) ∨ (x 3 ∧ x 4) ∨ (¬x 3 ∧ ¬x 4) = 1

(x 3 ∧ ¬x 4) ∨ (¬x 3 ∧ x 4) ∨ (x 5 ∧ x 6) ∨ (¬x 5 ∧ ¬x 6) = 1

(x 7 ∧ ¬x 8) ∨ (¬x 7 ∧ x 8) ∨ (x 9 ∧ x 10) ∨ (¬x 9 ∧ ¬x 10) = 1

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

Решение.

Первое уравнение имеет 12 решений. Второе уравнение связано с первым только через переменные x 3 и x 4 . На основании древа решений для первого уравнения выпишем пары значений переменных x 3 и x 4 , которые удовлетворяют первому уравнению и укажем количество таких пар значений.

Количество

пар значений

x 3 x 4
×4 1 1
×4 0 0
×2 1 0
×2 0 1

Поскольку уравнения идентичны с точностью до индексов переменных, древо решений второго уравнения аналогично первому. Следовательно, пара значений x 3 = 1 и x 4 = 1 порождает два набора переменных x 3 , ..., x 6 , удовлетворяющих второму уравнению. Поскольку среди наборов решений первого уравнения данных пар четыре, всего получаем 4 · 2 = 8 наборов переменных x 1 , ..., x 6 , удовлетворяющих системе из двух уравнений. Рассуждая аналогично для пары значений x 3 = 0 и x 4 = 0, получаем 8 наборов переменных x 1 , ..., x 6 . Пара x 3 = 1 и x 4 = 0 порождает четыре решения второго уравнения. Поскольку среди наборов решений первого уравнения данных пар две, получаем 2 · 4 = 8 наборов переменных x 1 , ..., x 6 , удовлетворяющих системе из двух уравнений. Аналогично для x 3 = 0 и x 4 = 1 - 8 наборов решений. Всего система из двух уравнений имеет 8 + 8 + 8 + 8 = 32 решения.

Проведя аналогичные рассуждения для системы из трёх уравнений, получаем 80 наборов переменных x 1 , ..., x 8 , удовлетворяющих системе. для системы из четырёх уравнений существует 192 набора переменных x 1 , ..., x 10 , удовлетворяющих системе.

Ответ: 192.

Ответ: 192

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 501.

Гость 17.12.2013 18:50

Пересчитывали 3 раза, получается, что после 2 уравнения 34 решения, а у вас 32, у нас 8+12+8+6, а у вас 8+8+8+8

Петр Мурзин

Приведите ваше решение полностью. Напишите, каким образом вы получаете 12 и 6.

Иван Гребенщиков 12.06.2016 20:51

Вообще, можно решить эту задачу намного проще. Если заметить (x1 ∧ ¬x2) ∨ (¬x1 ∧ x2) тождественно ¬(x1 == x2) и (x3 ∧ x4) ∨ (¬x3 ∧ ¬x4) тождественно (x3 == x4), то,подставив в изначальное уравнение, получаем: ¬(x1 == x2) ∨ (x3 == x4) = 1. Однако и это выражение можно преобразовать и получить (x1 == x2) → (x3 == x4) = 1.

Преобразовав аналогичным образом все выражения получаем:

(x1 == x2) → (x3 == x4) = 1

(x3 == x4) → (x5 == x6) = 1

(x7 == x8) → (x9 == x10) = 1

Заменив (x1 == x2) на А1, (x3 == x4) на А3, ... , (x9 == x10) на А9 получаем наборы решений для А-итых:

А1 А3 А5 А7 А9

Каждому A-итому соответствует(вне зависимости от значения) пара пар значений i-того и i + 1 - ого x-сов => (2 * 2 * 2 * 2 * 2) * 6(так как шесть наборов решений для А-итых) = 192

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

(x 1 ∧ x 2) ∨ (¬x 1 ∧ ¬x 2) ∨ (¬x 3 ∧ x 4) ∨ (x 3 ∧ ¬x 4) = 1

(x 3 ∧ x 4) ∨ (¬x 3 ∧ ¬x 4) ∨ (¬x 5 ∧ x 6) ∨ (x 5 ∧ ¬x 6) = 1

(x 7 ∧ x 8) ∨ (¬x 7 ∧ ¬x 8) ∨ (¬x 9 ∧ x 10) ∨ (x 9 ∧ ¬x 10) = 1

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

Решение.

Построим древо решений для первого уравнения.

Таким образом, первое уравнение имеет 12 решений.

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

Количество

пар значений

x 3 x 4
×2 1 1
×2 0 0
×4 1 0
×4 0 1

Поскольку уравнения идентичны с точностью до индексов переменных, древо решений второго уравнения аналогично первому (см. рис.). Следовательно, пара значений x 3 = 1 и x 4 = 1 порождает четыре набора переменных x 3 , ..., x 6 , удовлетворяющих второму уравнению. Поскольку среди наборов решений первого уравнения данных пар две, всего получаем 4 · 2 = 8 наборов переменных x 1 , ..., x 6 , удовлетворяющих системе из двух уравнений. Рассуждая аналогично для пары значений x 3 = 0 и x 4 = 0, получаем 8 наборов переменных x 1 , ..., x 6 . Пара x 3 = 1 и x 4 = 0 порождает два решения второго уравнения. Поскольку среди наборов решений первого уравнения данных пар четыре, получаем 2 · 4 = 8 наборов переменных x 1 , ..., x 6 , удовлетворяющих системе из двух уравнений. Аналогично для x 3 = 0 и x 4 = 1 - 8 наборов решений. Всего система из двух уравнений имеет 8 + 8 + 8 + 8 = 32 решения.

Третье уравнение связано со вторым только через переменные x 5 и x 6 . Древо решений аналогичное. Тогда для системы из трёх уравнений каждая пара значений x 5 и x 6 будет порождать количество решений в соответствии с древом (см. рис.): пара (1, 0) породит 2 решения, пара (1, 1) породит 4 решения, и т. д.

Из решения первого уравнения мы знаем, что пара значений x 3 , x 4 (1, 1) встречается в решениях два раза. Следовательно, для системы из трёх уравнений количество решений для пары x 3 , x 4 (1, 1) равно 2 · (2 + 4 + 4 + 2) = 24 (см. рис.). Воспользовавшись таблицей выше, вычислим количество решений для оставшихся пар x 3 , x 4:

4 · (2 + 2) = 16

2 · (2 + 4 + 4 + 2) = 24

4 · (2 + 2) = 16

Таким образом, для системы из трёх уравнений имеем 24 + 16 + 24 + 16 = 80 наборов переменных x 1 , ..., x 8 , удовлетворяющих системе.

Для системы из четырёх уравнений существует 192 набора переменных x 1 , ..., x 10 , удовлетворяющих системе.

Ответ: 192.

1. Общие сведения

Сложность : высокая.

Примерное время решения (для тех, кто будет выполнять часть 2): 5-10 минут

Тема: Основы логики

Подтема: Анализ логических выражений

Что проверяется: Умение анализировать логические выражения. Умение описать на естественном языке множество значений логических переменных, при которых заданный набор логических выражений истинен.

Как может выглядеть задание:

Например, так.

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

2. Пример задания

2.1. Условие задачи.

Задача 2012- B15-1.

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

((x 1 ≡ x 2 ) \/ (x 3 ≡ x 4 )) /\ (¬(x 1 ≡ x 2 ) \/ ¬(x 3 ≡ x 4 )) =1

((x 3 ≡ x 4 ) \/ (x 5 ≡ x 6 )) /\ (¬(x 3 ≡ x 4 ) \/ ¬(x 5 ≡ x 6 )) =1

((x 5 ≡ x 6 ) \/ (x 7 ≡ x 8 )) /\ (¬(x 5 ≡ x 6 ) \/ ¬(x 7 ≡ x 8 )) =1

((x 7 ≡ x 8 ) \/ (x 9 ≡ x 10 )) /\ (¬(x 7 ≡ x 8 ) \/ ¬(x 9 ≡ x 10 )) =1

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

2.2. Набросок решения.

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

(x 1 ≡ x 2 ), (x 3 ≡ x 4 ), (x 5 ≡ x 6 ), (x 7 ≡ x 8 ), (x 9 ≡ x 10 )

Подобно тому, как это делается при решении алгебраических уравнений, сделаем замену переменных:

t 1 = x 1 ≡ x 2

t 2 = x 3 ≡ x 4

t 3 = x 5 ≡ x 6

t 4 = x 7 ≡ x 8

t 5 = x 9 ≡ x 10

Общая формула замены (k=1, 2, 3, 4, 5 ):

t k = (x 2 k-1 ≡ x 2 k)

(t 1 \/ t 2 ) /\ (¬t 1 \/ ¬ t 2 ) =1

(t 2 \/ t 3 ) /\ (¬t 2 \/ ¬ t 3 ) =1

(t 3 \/ t 4 ) /\ (¬t 3 \/ ¬ t 4 ) =1

(t 4 \/ t 5 ) /\ (¬t 4 \/ ¬ t 5 ) =1

Уравнения полученной системы имеют вид (k=1, 2, 3, 4 ):

(t k \/ t k+1 ) /\ (¬t k \/ ¬ t k+1 ) =1

Это означает, что из каждых двух переменных t k и t k +1 ровно одна равна 1 и ровно одна равна нулю, т.е. эти переменные имеют разные значения. Таким образом, систему можно еще немного упростить и записать ее так:

¬(t 1 t 2 ) =1

¬(t 2 t 3 ) =1

¬(t 3 t 4 ) =1

¬(t 4 t 5 ) =1

Б. Анализ системы.

В любом решении последней системы значения переменных чередуются. Поэтому такая система имеет ровно два решения: 01010 и 10101 (первая цифра – значение переменной t 1 , вторая - значение t 2 и т.д.).

t k = x 2 k-1 ≡ x 2 k

(здесь k=1, 2, 3, 4, 5 ), то каждому значению t k соответствуют две пары значений переменных x 2 k-1 иx 2 k . Например, t k = 1 в двух случаях: { x 2 k-1 = x 2 k =1 } и { x 2 k-1 = x 2 k =0 }.

2.2.2. Подсчет числа решений

Каждому из двух решений системы для переменных t соответствует 2 5 = 32 решения исходной системы. Поэтому исходная система имеет 2∙32 = 64 решения.

Упражнение. Выпишите все решения. Это немного утомительно, но полезно.

3. Пример из открытого сегмента банка заданий ФИПИ

3.1. Условие задачи.

Задача 2012- B15-2 (открытый сегмент, зачёт 3:2011)

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

¬(x 1 ≡ x 2) /\ (x 1 \/ x 3) /\ (¬x 1 \/ ¬x 3) =0

¬(x 2 ≡ x 3) /\ (x 2 \/ x 4) /\ (¬x 2 \/ ¬x 4) =0

¬(x 8 ≡ x 9) /\ (x 8 \/ x 10) /\ (¬x 8 \/ ¬x 10) =0

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

3.2. Набросок решения.

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

2.2.1. Как устроено множество решений

А. Предварительный этап – упрощаем уравнения.

Заметим, что выражение (a \/ b) /\ (¬a \/ ¬b) равносильно тому, что ровно одна из переменных a и b равна 1, то есть равносильно выражению ¬(a ≡ b). Поэтому каждое выражение вида (x k \/ x k+2) /\ (¬x k \/ ¬x k+2) , где k=1, …, 8, в наших уравнениях можно заменить выражением ¬(x k ≡ x k+2).

Таким образом, наша система эквивалентна системе

¬(x 1 ≡ x 2) /\ ¬(x 1 ≡ x 3) =0

¬(x 2 ≡ x 3) /\ ¬(x 2 ≡ x 4) =0

Поэтому систему можно записать в следующем виде

¬(x 1 ≡ x 2) (x 1 ≡ x 3) =1

¬(x 2 ≡ x 3) (x 2 ≡ x 4) =1

¬(x 8 ≡ x 9) (x 8 ≡ x 10) =1

Б. Анализ системы.

Каждое из уравнений полученной системы имеет вид (k = 1, …, 8):

¬(x k ≡ x k+1) (x k ≡ x k+2) =1

Иными словами, если два соседних элемента набора x k и x k+1 не равны между собой, то x k =x k+2 , то есть элементы x k+1 и x k+2 также не равны между собой. Таким образом, набор удовлетворяет системе, тогда и только тогда, когда он обладает следующими свойствами. В начале набора стоит несколько (может быть, одно) одинаковых значений (назовем это"головой" набора). Затем (после первого появления нового числа) значения в наборе чередуются ("хвост" набора).

Пример решения: 1111010101 (в этой последовательности первая цифра – значение переменной x 1 , вторая цифра – значение переменной x 2 , и т.д.)

Здесь голова набора состоит из четырех единиц, а хвост – это последовательность 01010101. в данном примере длина головы равна 4.

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

3.2.2. Как устроено множество решений

В соответствии с важным наблюдением, количество решений совпадает с количеством возможных голов. Очевидно, существует 10 голов, состоящих из единиц (1, 11, 111, …, 1111111111) и столько же голов, состоящих из нулей.

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

4. Обсуждение

4.1. Какие знания/умения/навыки нужны ученику, чтобы решить эту задачу

Эта задача – одна из самых сложных в экзамене, если не самая сложная. Для ее решения ученик должен уметь

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

Переводить формальное описание, в виде системы логических условий, на нормальный, "человеческий" язык и

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

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

Придумывайте свои подходы, применяйте их и сообщайте нам!

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

¬a \/ b равносильно a b

(a b) /\ (b a) равносильно a ≡ b

(¬a \/ b) /\ (a\/¬b) равносильно a ≡ b

(a \/ b) /\ (¬a \/ ¬b) равносильно ¬(a ≡ b).

Подробнее о преобразованиях логических выражений написано здесь [см. logic01. doc ]

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

4.2.2. Самое трудное – сообразить, что из себя представляет множество решений. В разделах 5 и 6 разобрано несколько примеров. Другие полезные примеры и рекомендации можно найти на сайте К.Ю.Полякова.

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

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

1) Повторить логические преобразования и элементы комбинаторики.

2) Порешать задачи и попрактиковаться в переводе формального описания, в виде системы логических условий, на нормальный, "человеческий" язык.

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

Во многих случаях система состоит из однотипных уравнений, каждое из которых связывает небольшое число переменных (две-три-четыре), при том, что в системе может быть 10 и более переменных. Обычно, количество переменных не является источником сложности, оно является параметром решения. Если не получается решить задачу в общем виде, можно попробовать перебрать все решения для системы с небольшим количеством переменных. Это может подсказать, как выглядит решение в общем виде.

5. Другие задачи

Задача 2012- B15-3

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

(x 1 x 2) /\ (x 2 x 3) /\ (x 3 x 4) /\ (x 4 x 5) = 1

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

Решение. Очевидно, выполнены следующие соотношения:

(x 1 x 2) = 1

(x 2 x 3) = 1

(x 3 x 4) = 1

(x 4 x 5) = 1

Допустим, что набор {a1, a2, a3. a4, a5} – решение нашего уравнения. Допустим, что a4 = 1. Тогда, из уравнения

(x 4 x 5) = 1

следует, что a5 = 1 (напомним: 1 → 0 ложно!). Допустим теперь, что а3=1. Из условия

(x 3 x 4) = 1

следует, что a4=1 и, значит, по доказанному, a5 = 1.

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

Таким образом, решения уравнения – это наборы, в которых сначала идут нули, а потом – единицы.

Важно не забыть про «особые» наборы – 00000 и 11111. Они тоже годятся.

Таким образом, вот все решения уравнения:

00000, 00001, 00011, 00111, 01111, 11111

Каждое решение полностью описывается количеством единиц в нем. Это количество может быть от 0 до 5. Количество решений – 6.

Задача 2012- B15-4

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

(x 1 x 2) /\ (x 2 x 3) /\ (x 3 x 4) /\ (x 4 x 5) = 1 (1)

(z 1 z 2) /\ (z 2 z 3) /\ (z 3 z 4) = 1 (2)

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

Решение. Про такие системы говорят, что переменные в них «разделенные»: x 1 , …, x 5 встречаются только в уравнении (1), а z 1 , …, z 4 - только в уравнении (2). Из решения задачи 3 следует, что уравнению (1) удовлетворяют 6 наборов значений переменных x 1 , x 2 , ..., x 5 , а уравнению (2) – 5 наборов значений переменных z 1 , …, z 4 Каждый из этих наборов для { x i } может образовать решение с любым из наборов для { z i }. Поэтому общее количество решений равно 6∙5 = 30.

6. Задачи для самостоятельного решения

Задача 2012- B15-Т1

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

(x 1 x 2) /\ (x 2 x 3) /\ … /\ (x 499 x 500) = 1

В ответе не нужно

Задача 2012- B15- Т2

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

(x 2 x 1) /\ (x 3 x 2) /\ … /\ (x 1000 x 999) = 1

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

Задача 2012- B15- Т3

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

(x 1 x 3) /\ (x 3 x 5) /\ … /\ (x 9 x 11) = 1

(x 2 x 4) /\ (x 4 x 6) /\ … /\ (x 8 x 10) = 1

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

Задача 2012- B15- Т4

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

(x 1 x 3) /\ (x 3 x 5) /\ … /\ (x 99 x 101) = 1

(x 2 x 4) /\ (x 4 x 6) /\ … /\ (x 98 x 100) = 1

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

Ответы: Т1. 501; Т2. 1001; Т3. 42; Т4. 2652.

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

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

Пример 1.

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных 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.

Ответ: 121

Пример 2.

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

(¬ (x1 ≡ y1)) ≡ (x2 ≡ y2)

(¬ (x2 ≡ y2)) ≡ (x3 ≡ y3)

(¬ (x8 ≡ y8)) ≡ (x9 ≡ y9)

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

Решение:

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

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

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

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

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

z1 z2 z3 z4 z5 z6 z7 z8 z9
0 1 0 1 0 1 0 1 0
1 0 1 0 1 0 1 0 1

Т.к. 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 наборов.

Ответ: 1024

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

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

Пример 3.

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

¬x9 ∨ x10 = 1,

где 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 наборов.

Ответ: 11

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

Пример 4.

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных 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.

Ответ: 61

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

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

Пример 5.

Сколь­ко су­ще­ству­ет раз­лич­ных на­бо­ров зна­че­ний ло­ги­че­ских пе­ре­мен­ных 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=1 i=2 i=3 i=4 i=5 i=6 i=7
(0,0) A i A i+1 =B i +C i +D i 0 3 7 15 31 63 127
(0,1) B i B i+1 =B i +C i +D i 1 3 7 15 31 63 127
(1,0) C i C i+1 =B i +C i +D i 1 3 7 15 31 63 127
(1,1) D i D i+1 =D i 1 1 1 1 1 1 1

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

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

Ответ: 255