Научная статья на тему 'Логические уравнения с множествами'

Логические уравнения с множествами Текст научной статьи по специальности «Математика»

CC BY
1168
53
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Педагогический ИМИДЖ
ВАК
Область наук
Ключевые слова
ТЕОРИЯ МНОЖЕСТВ / ЛОГИЧЕСКИЕ УРАВНЕНИЯ / ИСЧИСЛЕНИЕ ПРЕДИКАТОВ / ЛОГИЧЕСКИЕ ОПЕРАЦИИ / ИМПЛИКАТИВНЫЕ ФОРМЫ / МНОЖЕСТВА ДЕЛИМОСТИ / МНОЖЕСТВА ПОРАЗРЯДНОЙ КОНЪЮНКЦИИ / THEORY OF SETS / LOGICAL EQUATIONS / CALCULATION OF PREDICATES / LOGICAL OPERATIONS / IMPLICATIVE FORMS / SETS OF DIVISIBILITY / SET OF DIGIT-BY-DIGIT CONJUNCTION

Аннотация научной статьи по математике, автор научной работы — Хламов Евгений Владимирович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The Logical Equations Sets

One of the approaches to solution of the logical equations with over predicates by means of data to implicative forms and the subsequent set-theoretic interpretation of logical objects is considered. The description of methods of solving the logical equations for the sets generated by the divisibility relation on natural number and the relation of digit-by-digit conjunction is provided.

Текст научной работы на тему «Логические уравнения с множествами»

Онлайн-доступ к журналу: http://www.iro38.ru/o-jornal.html

УДК 510.22 : 510.635

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

Е. В. Хламов

Институт развития образования Иркутской области, г. Иркутск

А.НН°Тация. В статье рассматривается один из подходов к реше-

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

Ключевые

слова: теория множеств, логические уравнения, исчисление

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

Одной из задач ЕГЭ по информатике, вызывающей определённое затруднение, является задача на решение логических уравнений с переменными-множествами (задание 18). По официальным данным ФИПИ, в 2015 году эту задачу решило 11,3 % экзаменуемых [2]. В значительной степени это связано с недостаточным объёмом учебного времени и учебного материала, посвящённым изучению раздела «Логика» в курсе школьной информатики. Из анализа школьных учебников можно сделать вывод, что большая часть из них содержит достаточно формальное изложение этого раздела, не способствующее развитию практических навыков обучающихся. Исключение составляют, пожалуй, только учебники профильного уровня К. Ю. Полякова [4] и А. Г. Гейна [1]. Но и они не рассматривают решение задач такого уровня. Многочисленные пособия по подготовке к ЕГЭ, к сожалению, так же не содержат описания систематизированного подхода к решению таких задач. В лучшем случае в них рассматриваются одна-две типовые задачи, далеко не исчерпывающие все допустимые варианты. Исключение составляют работы К. Ю. Полякова [3; 5],

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

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

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

Множества и подмножества

Множество - это понятие неопределяемое и поясняется на примерах. Множества обозначаются большими буквами латинского алфавита.

Если каждый элемент множества А является в то же время элементом множества Р, то говорят, что А - подмножество Р, и пишут А £ Р.

Также в этом случае говорят, что Р является надмножеством А (Р 2 А). Максимальное подмножество - это само множество. Минимальное надмножество - это тоже само множество.

Теоретико-множественные операции

Объединение. Объединением множеств Р и Q называют множество А, состоящее из тех и только тех элементов, которые входят хотя бы в одно из этих множеств.

Объединение обозначают: Р и Q.

Пересечение. Пересечением множеств Р и Q называют новое множество А, содержащее те и только те элементы, которые входят и в множество Р и в множество Q. Пересечение обозначают Р П Q.

Разность. Разностью двух множеств Р и Q называют такое множество А, в которое входят все элементы из Р, не принадлежащие множеству Q. Разность обозначается Р^.

Соответствие теоретико-множественных операций логическим

Понятие множества с точки зрения алгебры логики есть не что иное, как высказывание: «все х, принадлежащие Р» или в символической записи: Ух £ Р. Далее будем обозначать это просто как Р. Такие высказывания являются переменными; в отличие от высказываний-констант называются «предикатами» или высказываниями второго порядка.

Объединение соответствует дизъюнкции: Р и Q = P+Q.

Пересечение соответствует конъюнкции: Р П Q = PQ.

Разность соответствует выражению: Р\0= —Q Р.

Отношение «А является подмножеством Р» А £ Р задаётся импликацией А ^ Р.

Отношение «А является надмножеством Р» А 2 Р задаётся импликацией Р ^ А.

Общая постановка задачи

Даны два множества В и C. Дано также логическое выражение Р(А, В, С). Требуется определить, каким должно быть максимальное (или минимальное) множество А, чтобы выражение F(A, В, С) было тождественно истинным.

Если перевести постановку на язык логики, то для решения необходимо найти некоторую функцию Ф, такую что исходное выражение принимает вид: А ^ Ф(В,С),

если требуется найти максимальное множества А. Это означает, что А С Ф(В,С).

При нахождении минимального множества А необходимо получить Ф(В,С) ^ А Это означает, что A э Ф(В,С).

И в том и в другом случае множество А будет определяться как А = Ф(В,С).

Уравнения с множествами делимости

Типичная задача о множествах, включаемая в состав ЕГЭ, имеет следующую формулировку.

Обозначим через ДЕЛ (п, m) утверждение «натуральное число п делится без остатка на натуральное число m». Для какого наименьшего (наибольшего) натурального числа А формула

¥(ДЕЛ(х, А), ДЕЛ(к, В), ДЕЛ(х, С))

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х и заданных значениях В и С)? Заметим, что необходимо найти нетривиальное, т. е. неравное 1 решение.

Введём более компактные обозначения для множеств

ВА = ДЕЛ(х, А) Вв = ДЕЛ(х, В) Вс= ДЕЛ(х, С)

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

ВА ^ Ф(Вв, вс) или ф^с) ^ ВА (*)

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

Утверждение 1. Пусть множество 0А является подмножеством множества

»в (ва с вв)

Тогда А = РВ, где Р - произвольное натуральное число. Доказательство этого утверждения очевидно.

Пример. Множества D8, D12, D16... являются подмножествами множества D4.

Рассмотрим теперь решение задачи(*) для некоторых наиболее распространённых случаев.

Случай 1. Исходная задача преобразуется к импликативной форме вида: Da ^ DB + Dc

Это означает, что DA С DB + Dc В этом случае нужно найти такое А, чтобы любое число, делителем которого оно является, обязательно делилось бы либо на В, либо на С. Это означает, что или: А = Р1В или:

А = Pf

Наименьшее А в этом случае получается при Р = 1 и равно наименьшему значению из пары В и С.

А . = min (В, С)

min 1 '

Отметим, что такой выбор А даёт наибольшее из возможных множеств DA. Наибольшего значения Amax не существует, так как Р1 и Р2 является произвольными натуральными числами, а, следовательно, сколь угодно большими.

Пример 1 ([1], Р-20). Обозначим через ДЕЛ (n, m) утверждение «натуральное число n делится без остатка на натуральное число m». Для какого наименьшего натурального числа А формула

ДЕЛ (х, А) — (ДЕЛ(х, 21) + ДЕЛ(х, 35))

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х)? Решение:

введём обозначения множеств: Da = ДЕЛ(х, А) D21 =ДЕЛ(х, 21) D33 =ДЕЛ(х, 35)

запишем формулу из условия в наших обозначениях:

Da ^ (D21 + D) что равносильно

da С D21 + D35'

Тогда либо Da С D21, либо DA С D35, либо DA С D21D35. Это значит, что либо А =Р1В, либо А =Р2С. Случай пересечения множеств в данной задаче можно не рассматривать, поскольку число А в этом случае является заведомо наибольшим по сравнению двумя другими. Тогда А равно 21 как наименьшему из этой пары. Ответ: 21.

Случай 2. Исходная задача преобразуется к импликативной форме вида:

DB + Dc - Da Это означает, что

Db + Dc С Da

В этом случае нужно найти такое А, чтобы оно делило любое число, которое делится на В или на С. То есть

В = РА и С = КА.

Это означает, что А является общим делителем и В, и С. Тогда для наименьшего значения А это будет наименьший общий делитель. А = НОД (В,С)

тт М ^ * ' /

Для наибольшего А следует взять наибольший общий делитель А = НБОД (В,С)

тах Б '' 1 '

Пример 2. ([1], Р-19). Обозначим через ДЕЛ (т, т) утверждение «натуральное число т делится без остатка на натуральное число т». Для какого наибольшего натурального числа А формула

-ДЕЛ (х, А) — (-ДЕЛ(х, 21) /\-ДЕЛ(х, 35))

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х)?

Введём обозначения множеств: РА, О, В35. Запишем условие в этих обозначениях

-оа ^ О21 О35

Раскроем импликацию

РА + -О21 - О35= В21 + О35 - оа

Это означает, что Р21+ Р35 является подмножеством РА.

»21 + О35 С оа

Как было показано выше, 21 = РА и 35 = КА.

Это означает, что А является одновременно делителем и 21, и 35. А наибольшее А будет наибольшим общим делителем этих чисел. Следовательно, А = 7. Ответ: 7.

Случай 3. Исходная задача преобразуется к импликативной форме вида:

ра ^ ОРс

Это означает, что РА С Орс. В этом случае нужно найти такое А, чтобы любое число, делителем которого оно является, обязательно делилось бы и на В, и на С. Тогда А = Р*НОК (В, С).

Наименьшее значение А получается при Р = 1 А . = НОК (В, С).

тт 1 '

Наибольшего значения А не существует.

Пример 3. Для какого наименьшего натурального числа А формула

(-ДЕЛ (х, 4) — -ДЕЛ (х, 6)) — -ДЕЛ (х, А)

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х)?

Перепишем в новых обозначениях:

(-в4 - - -°А = -(-°4 + °А =в4 в6 - -оа = °А - вр6

Это означает, что

ра С °Р6

или

ра С ВНОК(4,6).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Следовательно, А = РНОК(4,6) или

А = Р-12

Наименьшее А является получается при Р = 1 и равно 12. А = НОК(4,6) = 12 Ответ: 12.

Случай 4. Исходная задача преобразуется к импликативной форме вида

ввс ^ ва

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

ВЕВ С = ^НОК(В,Су

а это значит, что НОК (В,С)=РА.

Очевидно, что при таком условии А является наименьшим делителем НОК(В,С) или просто наименьшим из делителей чисел В и С.

Атт НМД (В,С)

Наибольшим значением А будет наименьшее общее кратное чисел В и С. А = НОК (В,С),

тах 1 '

так как

НОК(В,С) е вА.

Пример 4. (Пробный ЕГЭ 2015 г.) Для какого наименьшего натурального числа А формула

—ДЕЛ(х, А)^ (ДЕЛ(х, 4) ^ —ДЕЛ(х, 6))

тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?

Перепишем в новых обозначениях

—вА ^ (В4 ^ —ву = вА + -в4+ -в6= -(-в4 + —ву + вА= вр6 ^ вА

Это означает, что

ВВ6 С ва

или

ВНОК(4,6) С в а

Следовательно, НОК(4,6) = РА или

12 = РА

Наименьшее А является наименьшим делителем числа 12. А = НД(4,6) = 2 Ответ: 12.

Случай 5. Исходная задача преобразуется к импликативной форме вида

ва ^ -вВ + вС

Это означает, что ВА С —вВ + в Необходимо найти наименьшее А, удовлетворяющее этому условию.

Из импликативной формы следует, что либо DA С —DB, либо DA С Dc, либо Da С —DBDc. Тогда нужно найти такое А, чтобы оно удовлетворяло следующим условиям.

Условие 1. А - минимальное число, которое не является делителем В и не кратно В или А=РС.

Действительно, если А=Р}В или В=Р2А, то DADB Ф 0. Но это противоречит исходному условию Da С —DB + Dc , если при этом А Ф КС и DA С Dc. Условие 2. НОК(А,В)=РС

Допустим, что мы нашли некоторое значение А, удовлетворяющее Условию 1. В этом случае будет справедливо соотношение DA С —DB. Но для любого значения А существует элементы вида Р*НОК(А^), которые входят как в множество DA, так и в множество DB, что противоречит условию задачи. Это противоречие может быть снято, если НОК(А,B) входит в множество Dc. Это означает, что НОЩА^) =QC.

Таким образом, общая формула для наименьшего значения А имеет следующий вид:

А=тт(А: А Ф Р*B и B ФР*А или А=КС и НОЩА^) =QC) Наибольшего значения А не существует, поскольку из условия Da С —DB + Dc следует, что всегда можно построить множество DA С Dc Для этого нужно выбрать А = РС. Поскольку Р выбирается произвольно, то значение А может быть сколь угодно большим.

Пример 5.1 ([1], Р-17). Для какого наименьшего натурального числа А формула

ДЕЛ(х, А) ^ (—ДЕЛ(х, 21) + ДЕЛ(х, 35))

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х)?

Введём обозначения множеств: DA, D , D35. Запишем исходную формулу в новых обозначениях:

da ^ D21 + D35

Это означает, что DA является подмножеством —D21+ D35

da^= —d21+ D35

Формула для нахождения наименьшего А имеет в данном случае вид: А=тт (А: А Ф Р-21 и 21 Ф Р-А или А=К 35 и НОК(А,21) =Q 35) Представим наименьшее общее кратное в виде НОК(А,21) = R • 3 • 7

Для того чтобы это число делилось на 35, множитель R должен быть равен 5. Тогда

НОК(А,21) =5• 37=105

Теперь нужно найти наименьшее значение А, для которого выполняется это условие. Очевидно, А= 5. Ответ: 5.

Пример 5.2. Для какого наименьшего натурального числа А формула (ДЕЛ(х, 12) —ДЕЛ(х, 36)) ^ (—ДЕЛ(х, A) +—ДЕЛ(х, 12))

<ГАУДПОИРОГ

тождественно истинна (т. е. принимает значение 1 при любом натуральном значении переменной х)?

Задача аналогична предыдущей и преобразуется к импликативной форме:

рас -о12+ о36

Выпишем формулу нахождения А для данного примера. А=тт(А: А ф Р1 • 12 и 12 фР2•А или А=К36 и НОК(А,12) =Q• 36) Представим наименьшее общее кратное в виде НОК(А,12) = R ■ 3 • 4

Для того чтобы это число делилось на 36, множитель R должен быть равен 3. Тогда

НОК(А,12) =3 • 3 • 4=36

Теперь нужно найти наименьшее значение А, для которого выполняется это условие. Очевидно, А= 9. Ответ: 9.

Пример 5.3. Для какого наименьшего натурального числа А формула (ДЕЛ(х, 3) -ДЕЛ(х, 36)) — (—ДЕЛ(х, А) +—ДЕЛ(х, 3))

тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?

Задача аналогична предыдущей и преобразуется к импликативной форме:

ра с -о3 + о66

Выпишем формулу нахождения А для данного примера. А=тт(А: А ф Р1 • 3 и 3 фР2•А или А=К36 и НОК(А,3) =Q• 36) Представим наименьшее общее кратное в виде НОК(А,3) = R ■ 3

Для того чтобы это число делилось на 36, R должно быть равно 12. Тогда

НОК(А,3) =12• 3=36

Теперь нужно найти наименьшее значение А, для которого выполняется это условие. Очевидно, А= 36. Ответ: 36.

Случай 6. Исходная задача преобразуется к импликативной форме вида

Оа

или

-ов ос с оа

Это означает, что С=Р*А и В ф К*А

Заметим, что задача имеет решение только в случае, когда С не кратно В. В противном случае пересечение —Ов является пустым. Но если С ф Р*В, то это означает, что

БС С DВ или DС С ^

А это, в свою очередь, означает, что

-dв Д

Тогда

дс= дс

ос С Дд и С=рд.

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

тт

=НД(С)

Наибольшее значения А равно С, поскольку С £ О

А = С

тах

Пример 6. Для какого наименьшего натурального числа А формула

-ДЕЛ(х, А) ^ (- ДЕЛ(х, 21) ^ -ДЕЛ(х, 35))

тождественно истинна (то есть принимает значение 1 при любом натуральном значении переменной х)?

Введём обозначения множеств: ОА, D21, D35. Запишем исходную формулу в новых обозначениях:

^А ^ (^21 ^ - ^ = ^ + (^1 + - ^ = ^21 ^5 ^ ^

Это равносильно О35 ^ DA, поскольку О35 С —D . Тогда 35 = РА. Минимальное А равно в этом случае 5.

Ответ: 5.

Сводная таблица решений

Для удобства сведём все рассмотренные случаи в единую таблицу.

№ Форма А . A

1 +Dr min(B, Г) не существует

2 нмод (в ,r) НОДВС)

3 D^Dr НОК (В, Г) не существует

4 нмд (В, Г) НОК(В, Г)

5 Da^-db + Dr A=min (А: А фР1В и В ф Р2А или А=КГ и НОК(А, В) =QC) не существует

-dbPc^da нмд(с) r

Уравнения с множествами поразрядной конъюнкции Поразрядная конъюнкция.

Определение. Пусть Х и В - двоичные числа. Поразрядной конъюнкцией этих чисел будет двоичное число, разряды которого равны конъюнкции соответствующих разрядов чисел Х и В. Обозначим эту операцию как Х&В.

Пример. Пусть Х=11 и В=23. Двоичные представления этих чисел имеют вид:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Х = 010112 В = 101112 Х&В=000112

Считается, что двоичные представления конъюнктов имеют одинаковую разрядность. Если это не так, то короткое число дополняется незначащими ну-

|ГАУДП0ИР0Г

лями.

Зададим одно из чисел, например: В. Тогда выражения Х&В=0 или Х&ВФ0 определяют некоторые множества элементов Х. Будем обозначать эти множества ХВ и —ХВ соответственно. Можно всегда построить некоторый шаблон (маску), по которому могут быть построены элементы этих множеств. Далее под обозначениями ХВ и —ХВ мы будем понимать и множества, и маски этих множеств в зависимости от контекста.

Маска может быть однозначно построена на основе элемента В.

Рассмотрим, как можно построить маскуХ Пусть Ь ,...Ь - двоичная запись числа В. Тогда маскаХВ имеет вид х1,..., х, где каждое определяется формулой

х = I *, если Ь =0

г ^ г

I 0, если Ь =1

г

Здесь * - это любое значение либо 0, либо 1.

Например, В=20 в двоичной записи имеет вид 101002. Тогда маска имеет вид:

Х =0*0**

В

Действительно, для любого Х, определяемого этой маской, произведение Х&В=0.

Х&В 10100 =0

0*0**

Маска —ХВ строится по формулам:

х = I *, если Ь =0

гг

I 1 или *, если Ь =1

г

Вообще говоря, для того, чтобы выполнялось —Х&В^0, достаточно включения в маску только одной единицы. Но задачи, представленные в ЕГЭ обычно требуют полных масок с включением всех единиц числа. Так, для В=20=101002 множество —Х может иметь одну из трёх масок:

1****

**1**

1*1**

При этом последняя маска включает в себя две первые. Будем называть её полной маской, а остальные две - частичными.

Действительно, для любого Х, определяемого этими масками, произведение Х&ВФ0

10100

-Х&В 1**** ^0

**1**

1*1**

Произведение масок.

Определим операцию произведения масок ХВ и Хс. Произведение масок определяет пересечение множеств двоичных чисел, порождаемых этими масками.

От обычной поразрядной конъюнкции она будет отличаться тем, что в масках присутствуют символы «*». Поэтому требуется определить для них дополнительные правила умножения.

Произведение масок ХВ&Хс или просто ХХс - это числа вида d1,...,dn, где каждое из d. определяется по следующим правилам:

0*0=0 : пересечение множеств{0} и {0} даёт {0}.

**0=0 : пересечение множеств{0,1} и {0} даёт {0}.

*х*=* : пересечение множеств{0,1} и {0,1} даёт {0,1}.

1*1=1 :пересечение множеств{1} и {1} даёт {1}.

**1=1: пересечение множеств{0,1} и {1} даёт {1}.

1*0= ! (0,если в маске пересечения есть хотя бы одна 1 1 0

Последнее правило допускает, что множество ХВХс может быть пустым. Это соответствует определению пересечения, поскольку пересекаемые множества не содержат элементов, у которых в одной и той же позиции находятся 0 и 1 одновременно. Но если хотя бы одна 1 уже есть в результирующей маске, то этого достаточно, чтобы пересечение было непустым. Поэтому все остальные 1 любой из исходных масок могут быть заменены на 0, если они дают пустое пересечение.

Пример. Пусть даны два числа 49 и 33. Определим произведения различных чисел.

49 1 1 0 0 0 1 Х49 0 0 * * * 0

33 1 0 0 0 0 1 —Л 49 1 1 * * * 1

Хзз 0 * * * * 0

-Хзз 1 * * * * 1

Х49 Хзз 0 0 * * * 0

Х49 Хзз 0 1 * * * 0

—Х49 —Хзз 1 1 * * * 1

Сумма масок. Сумма масок ХВ + Хс эквивалентна операции объединения множеств, порождаемых этими масками и определяется поразрядно следующим образом:

0+0=0,

0+*=*, *+*=*

Результат этих операций очевиден и не требует дополнительных пояснений: 0+1=1 1+*=1 1+1=1

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

<ГАУДПОИРОГ

Поясним это на примере. Если ХВ =1*1, ХС= *1*, то должно содержать все множества с частичными масками 1**, 11*... и полной маской 111. Все эти множества входят только в множество с полной маской. Таким образом, ХВ + ХС=111.

Пример. Пусть даны два числа 49 и 33. Определим суммы различных масок этих чисел.

49 1 1 0 0 0 1 X 49 0 0 * * * 0

33 1 0 0 0 0 1 49 1 1 * * * 1

Хзз 0 * * * * 0

Хзз 1 * * * * 1

Х49 Хзз 0 0 * * * 0

~л\49 Хзз 0 1 * * * 0

~,Х49 —Хзз 1 1 * * * 1

Построение числа по маске.

Построение шаблона числа А по нулевой маске ХА выполняется по следующим правилам:

«0» заменяется на «*»;

«1» и «*» заменяется на «0».

Таким образом маске ХА соответствует некоторое конечное множество чи-сел{А}. ПустьХА=10*01. Тогда А=0*0*0. Наибольшее А=10, наименьшее А=2.

Построение числа А по единичной маске —Х Число А по единичной маске —Х строится по следующим правилам:

«0» и «*» заменяется на «*»

«1» заменяется на «1»

Пусть —ХА=10*01. Тогда А=1***1. Наибольшее А=31, наименьшее А=17.

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

В общем смысле множество ХА является подмножеством множества ХВ (ХА ^ ХВ), если маскаХВ порождает все числа, порождаемые маскойХА.

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

Определение. Множество —ХА является подмножеством множества —Хв, если существует следующее соответствие между разрядами

—ха —хв

1 1

* *, 1

0 0, *, 1

Например, —ХА =0*1, —Хв = 1*1. Тогда, согласно определению —ХА ^ - Хв. Для того чтобы убедиться в этом можно перечислить все элементы соответствующих множеств.

-ХА -Хв

0 0 1 0 0 1

0 1 1 0 1 1

1 0 0

1 0 1

1 1 1

Рассмотрим ещё один пример. Пусть —Х =111, —Хв = 1*1. Тогда —Х 1 —Хв Действительно, —ХА содержит элемент 010, а —Хв его не содержит. Дадим теперь определение вложенности для нулевых масок.

Определение. Множество ХА является подмножеством множества Хв, если существует следующее соответствие между разрядами

xa Хв1

* *

0 *, 0

1 *, 1

Например, *01 ^ **1. Убедиться в этом можно, сравнив все элементы обоих множеств.

Х=*01 А **1

0 0 1 0 0 1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 0 0 0 1 1

1 0 1

1 1 1

Рассмотрим ещё ряд примеров

49 1 1 0 0 0 1 Л49 0 0 * * * 0

33 1 0 0 0 0 1 1 1 * * * 1

Хзз 0 * * * * 0

-^Хзз 1 * * * * 1

Х49 С Х33

—X49 Ч —X33

—X33 С —X49

Сравнение масок.

Утверждение. Пусть Хр, Xq , —Хр, —X, - маски множеств поразрядной конъюнкции. Тогда:

а) если —Хр ^ —X,, то min P < min Q и max P < = max Q;

б) если Хр ^ Xq, то max P > max Q и min P > min Q.

Доказательство.

Случай а). Пусть —XP С —X Рассмотрим, как будут построены минимальные значения P и Q в соответствии с этими масками. Согласно алгоритму построения числа по единичной маске все единичные разряды остаются на своих местах а 0 и * заменяются на 0. Но из условия вложенности масок следует, что всем единичным разрядам маски —XP соответствуют единичные разряды —X но не наоборот. Из этого следует, что minP < minQ.

Заметим, что максимальные значения P и Q в этом случае равны максимальному числу данной разрядности.

Случай b). Пусть XP С Xq. Рассмотрим, какие максимальные значения P и Q могут соответствовать этим маскам.

По алгоритму построения числа по нулевой маске все значения * и 1 заменяются на 0, а 0 на 0 или 1. Но, согласно определению вложенности, маска XP содержит не меньше нулей, чем X,, так как по условию вложенности возможно только соответствие 0^0,*. А из этого следует, что max P > Q.

Утверждение доказано.

Следствие. В случае равенства масок —XP = —X, и Xp = Xq имеет место равенства minP < min Q и max P = max Q.

Метод решения.

Постановка задачи.

Определите наименьшее (наибольшее) натуральное число A для известных В и С, такое, что выражение

FX, —ХВ, Xc, —ХС, X , —XJ (*)

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Метод решения.

Общая идея состоит в преобразовании исходного выражения

FX, —хв, xc —XC XA, —XJ

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

Далее строится маскаXA (—XA), исходя из условий вложенности. Затем строится искомое число А по этой маске.

Рассмотрим применение метода для разных вариантов импликативных форм вида (*).

Случай 1. Импликативные форма вида с единичной маской —Х

В этом случае выражение приводится к одной из импликативных форм вида

а) F(-ХB,ХC)^ -ХА

б) ^а—Щ-^ хс).

Эти импликативные формы наиболее часто встречаются в составе ЕГЭ. Рассмотрим алгоритм решения подобных задач.

Замечание: для ХВХС— —Х задача не имеет решения.

Пример 1. Определите наименьшее натуральное число А, такое что выражение:

(X& 49 <> 0) ^ ((X & 33 = 0) ^ (X& А <> 0))

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Преобразование выражения.

Перепишем это выражение с использованием введенных нами обозначений масок —Х49, Х33, —ХА.

—Х49 ^ (Х33^—ХАА>

Для выражения

—Х49^ (Х33 ^—ХаА>

выполним следующие преобразования:

-Х49— (Х33

-49 ■ ^33 ' -ХА = Х49 + Х33 + ХА = - (Х49 + - Х33) "

Эта форма выражения соответствует случаю 1.а.

—ХА = Х49Х33

Х

Построение масок и их произведения.

Это соответствует случаю 1.а. Построим маски, используемые в импликации, по алгоритму, описанному выше.

49 1 1 0 0 0 1 -•A'49 1 1 * * * 1

33 1 0 0 0 0 1 Хзз 0 * * * * 0

-Хв= --ХмХзз 0 1 * * * 0

-ХА 0 1 * * * 0

min Л 0 1 0 0 0 0

Заметим, что для —Х49 взята полная маска, поскольку ХА включает в себя любые возможные значения —Х

Определение значения А.

Из найденного выше соотношения

—Х4Х33 ^ — ХА

следует, что множество —Х является надмножеством пересечения множеств —Х49Х33. Обозначим —ХВ = —Х49Х33. Тогда, согласно утверждению вложенности, для —ХВ С —Х справедливо неравенство min В<= min A. Наименьшее значение А быть построено по наименьшему надмножеству множества —ХВ, а следовательно, по самому —ХВ . Минимальное значение А равно в этом случае равно минимальному значению В.

А= 010000=16.

Ответ: 16.

Замечание к Примеру 1. Наибольшее А определятся в этом случае множе-

—>

|ГАУДП0ИР0Г

ством —Х , являющимся наибольшим надмножеством В. Это множество-универсум, включающее всевозможные двоичные цепочки заданной длины, кроме цепочки 0000002. Тогда маска —ХА=111111 Максимальное число А, построенное по этой маске тоже равно 111111 Как видим, это решение является тривиальным. Поэтому поиск абсолютного максимума А неконструктивен. Можно выполнить поиск наибольшего А, отличного от абсолютного максимума. В этом случае нужно обнулить минимальный разряд числа А, который не является единственным единичным в маске В. В данном случае

А=1111102=30

Пример 2 ([1], 152). Определите наименьшее натуральное число A такое, что выражение

(X&76<> 0) ^ ((X &10 = 0) ^ (X & A <> 0))

тождественно истинно (то есть принимает значение 1 при любом натуральном значении переменной X)?

Перепишем в более компактном виде:

х76 *(X 10 ^ xa = 1

Выполним преобразование выражения к каноническому виду:

x76 ^ (X10^—XJ =x76 + —X10 + —xa = (x76 + —x1¿ + —xa =

— X

10 —Х0

X

76 10

"x76X10 '

a

X

Это соответствует случаю 1.а. Построим маски:

76 1 0 0 1 1 0 0 ~'AVií 1 * * 1 1 * *

10 0 0 0 1 0 1 0 Хю * * * 0 * 0 *

А н — \ т<,\11> 1 * * 0 1 0 *

-Хд 1 * * 0 1 0 *

min А 1 0 0 0 1 0 0

Решения аналогично предыдущему примеру. А=68. Ответ: 68.

Пример 3. Определите наибольшее натуральное число A такое, что выражение

Г—Х76 + ^ ^ X

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

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

x76 — X10 + xa= —xa '

Построим маски:

" x76 —x10

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

76 1 0 0 1 1 0 0 Х76 0 * * 0 0 * *

10 0 0 0 1 0 1 0 ~*Х ю * * * 1 * 1 *

'Хв=Х7б 'Хю 0 * * 0 0 1 *

OÚ 0 * * 0 0 1 *

тах А 1 1 1 1 1 1 1

Обозначим —ХВ = Х?6—Х1а Тогда —ХА^—ХВ и наибольшее значение А может быть построено по наибольшему из возможных множеств —Х вложенных в —ХВ. В этом случае —ХА равно самому —ХВ. Тогда наибольшее А равно наибольшему В. В этом случае

А= 111111=31

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

А= 111110=30

Ответ: 30.

Замечание к Примеру 3. Наименьшее значение А в этом случае следует искать по минимальному множеству —X являющемуся подмножеством —Х Очевидно, что таким подмножеством будет подмножество из единственного элемента, состоящего из нулей во всех позициях, кроме одной, у которой в соответствующей позиции —ХВ находится 1. Поскольку мы ищем наименьшее А, то число 1 оставляем в младшей позиции. Тогда

А=0000010=2

Таким образом, А равно абсолютному минимуму В по неполной маске.

Пример 4. Определите наименьшее натуральное число А такое, что выражение

(—:К68 + X10> — ^

тождественно истинно (то есть принимает значение 1 при любом натуральном значении переменной X).

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

X68 -X10 + xa= xa ^ X68 -X10

Построим маски:

Маска —XА должна совпадать в этом случае с минимальной частичной единичной маской —X В этом случае —XА = 0000001. Наименьшее значение А по этой маске определяется как

А=0000001=1

Ответ: 1.

Случай 2. Приведение выражения к импликативной форме с положительной неизвестной маской.

В этом случае выражение приводится к одной из импликативных форм вида

а) ХХс ^ Ха или —хВХс - Ха

б) ХА - ХХс или Ха -—ХХс.

Пример 5. (1, Р-21) Определите наибольшее натуральное число А, такое что выражение

(X& А <> 0) — ((X& 20 = 0) — (X& 5 <> 0))

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Перепишем выражение в более компактной форме:

Проведём преобразования:

Х = ХЛ + Х

Х

^ ' ' -У = ХА+ (Х20~

( Х20 + -Х) + ХЛ= - ( Х20 + ХЛ = Х2оХ5 -Л

Здесь имеет место случай 2.а. Построим маски и найдём их произведение.

Х

20 1 0 1 0 0 Х20 0 * 0 * *

5 0 0 1 0 1 Xs * * 0 * 0

ХБ = Х20Х5 0 * 0 * 0

Хл = Xв 0 * 0 * 0

max А 1 0 1 0 1

Обозначим произведение масок X20X5 за ХВ. Это означает, согласно утверждению о вложенности масок, что max B >= max A. Тогда наибольшее значение А может быть построено по наименьшей маски Х которая является надмножеством ХВ. Очевидно, что в этом случае ХА = ХВ или ХА=0*0*0. Для такой маски наибольшее значение А равно.

А = 101012 = 21

Ответ: 21.

Замечание к Примеру 5. Наименьшее значение А определяется в этом случае на основании наибольшего Х Тогда ХА является множеством-универсумом, содержащим все двоичные цепочки заданной длины. Маска такого множества для нашего случая равна *****. Но если ХА = *****, то А=00000==0. Минимальное значение А, отличное от нуля, может быть получена установкой 1 в младший разряд, соответствующий нулевой позиции маски ХВ. Для нашего случая это последний разряд.

А=000012=1

Пример 6. Определите наибольшее натуральное число A, такое, что выражение

(X& A <>0) ^ ((X & 20 <> 0) ^ (X & 5 <> 0))

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Выражение преобразуется в импликативную форму вида:

"Х20Х5 ^ ХА

ХА.

Введём переменную В такую, что ХВ = —Х2(Х5- Тогда ХВ Наибольшему значению А будет в этом случае соответствовать наименьшая маскаХ Очевидно, что ХА= ХВ. Наибольшее А в этом случае будет равно наибольшему числу, которое можно построить по маске Х

Это соответствует случаю 2.а. Построим маски и найдем их произведение

20 1 0 1 0 0 ~'Х20 1 * 1 * *

5 0 0 1 0 1 Xs * * 0 * 0

Ав = -А20Х5 1 * 0 * 0

Хл=Хв 1 * 0 * 0

А 0 0 1 0 1

Тогда наибольшее А =00101 ,= Ответ: 5.

5.

Пример 7. Определите наименьшее натуральное число А, такое что выражение

((X& 20 <> 0) ^ (X & 5 = 0)) ^ (X& А <> 0)

тождественно истинно (то есть принимает значение 1 при любом натуральном значении переменной X)? Перепишем уравнение в виде

(Х20 ^ -Х) ^ ХА = ( Х20 + ХА = Х20 Х5 + -ХА = ХА ^ Х20 Х5

Это соответствует случаю 2.Ь. Построим маски и их произведения.

Введём переменную В, такую что XВ =X2X5. Тогда XА^ ХВ . Наименьшее значение А может быть получено из наибольшей маски Х но не большей чем XВ. Очевидно, что в этом случае ХА = XВ или = 0*0*0. Для любой нулевой маски ХА наименьшее значение А тривиально и равно 0. Если брать наименьшее, большее 0, то это будет число 000012.

Таким образом, наименьшее

А =1.

Ответ: 1.

Пример 8. Определите наибольшее натуральное число А, такое, что выражение

((X & 20 ф 0) ^ (X & 5 ф 0)) ^ (X & А = 0)

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Выражение преобразуется в импликативную форму вида:

ХА ^ 'Х2СХ5

Введём переменную В такую, что ХВ = —Х20Ху ТогдаХА ХВ. Наибольшему значению А будет в этом случае соответствовать наименьшая маска Х вложенная в ХВ. Построим такую маску по известной маске ХВ. Вспомним таблицу соответствия разрядов вложенных нулевых масок.

xa'

* *

0 *, 0

1 *, 1

Минимальная маска ХА может быть получена сохранением всех единиц и нулей маски ХВ и заменой в ней всех «звёздочек» на нули.

Наибольшее А в этом случае будет равно наибольшему числу, которое можно построить по маске ХВ.

Это соответствует случаю 2.Ь. Построим маски и найдём их произведение

20 1 0 1 0 0 1 * 1 * *

5 0 0 1 0 1 Xs * * 0 * 0

Хв = -Х2оХ5 1 * 0 * 0

Хл 1 0 0 0 0

А 0 1 1 1 1

Тогда наибольшее А=011112=15 Ответ: 15.

Сводная таблица решений.

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

Случай Выражение min А max А

1.а. min В Абсолютный max

lb Ав Абсолютный min В Абсолютный max В

2.а. хБ^хА 0 max В

2.Ь. Хв 0 max(min В)

Случай 3. Приведение выражения к конъюнктивно-дизъюнктивной импли-кативной форме.

Пример 1. Определите наибольшее натуральное число А, такое, что выражение

Х13 Х39 ^ ХА^Х13

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной Х).

Решение. Раскроем импликацию

Х13 Х39 ^ ХА Х13 = Х13+Х39 +ХА-Х13

Согласно закону поглощения это равно

Х13+Х39 +Ха

или

Х13+Х39 '

► Х

Такая импликативная форма соответствует случаю 2.а. Построим маски, используемые в выражении.

13 0 0 1 1 0 1 Х13 * * 0 0 * 0

39 1 0 1 1 1 Х39 0 * * 0 0 0

Хв =Л (9 * * * 0 * 0

А = max В 0 0 0 1 0 1

Наиболыпее значение А в этом случае равно наибольшему В и равно 5. А=5

Ответ: 5.

Пример 2 ([1], 168). Определите наименьшее натуральное число А, такое что выражение

(-X28+-XJ^(X^-XJ

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной X).

Решение. Раскроем импликацию

Х28Х45 +-Хп+-Ха

Приведём к конъюнктивно-дизъюнктивной импликативной форме

-Х2Х17+-Х4Х17 ^ ХА

Такая импликативная форма соответствует случаю 1.а. Наименьшее значение А для этого случая равно min B или А = 44. Построим маски, используемые в выражении.

28 0 1 1 1 0 1 X2S * 1 1 1 * #

45 0 1 1 1 0 0 -х45 1 # 1 1 * 1

17 0 1 0 0 0 1 х17 * 0 # * * 0

-A->SX„ * 0 1 1 * 0

-XfjX 17 1 0 1 1 * 0

~ХВ= "AJJXitH Xnlin 1 0 1 1 * 0

min .4=44 1 0 1 1 0 0

Ответ: 44.

Пример 3 ([1], 174). Определите наибольшее натуральное число А, такое, что выражение

Р^т) ^ <-Хх - ха)

тождественно истинно (т. е. принимает значение 1 при любом натуральном значении переменной Х).

Решение. Раскроем импликацию

-Х28-Х22 +Х56 +ХА

Приведём к конъюнктивно-дизъюнктивной импликативной форме

Х28-Х56+Х22-Х56 '

• Х

Обозначим Х28-Х56+Х22-Х56 заХВ. ТогдаХВ С ХА. В этом случае наибольшее А порождается наименьшей маской Х которая равна ХВ. Построим маски и вычислим выражение ХВ.

28 0 1 1 1 0 0 Хц * 0 0 0 * *

22 0 1 0 1 1 0 х22 # 0 # 0 0 #

56 1 1 1 0 0 0 1 1 1 * * #

1 0 0 0 * #

JY??-Х$<$ 1 0 1 0 0 *

Хв= X2S~Xi6+ X22~Xs6 1 0 1 0 # *

А 0 1 0 1 0 0

Построим наибольшее число А по маске ХА = Х А = 20 Ответ: 20.

Пример 4 ([1], 163). Определите наименьшее натуральное число А, такое, что выражение

((X& 13 ф 0) Л (X& 39 ф0)) ^ ((X& A ф 0) Л(Х& 13 ф 0)) Перепишем выражение в более компактных обозначениях

Х13-Х39 ' ' -А ^ Х13 +Х39

Х—Х„

ХА

или

ХА С Х13 +Х39'

= Х13 +Х39 '

^Х—Х,.

- Х13 +Х39+

Х

Это означает, что либо ХАС Х13, либо ХАС Х39, либо А С Х13Х39. Обозначим Х13Х39 заХВ. Согласно утверждению вложенности, это означает, что либо А >13, либоА >39, либо А>=В.

13 0 0 1 1 0 1 Хи * * 0 0 * 0

39 1 0 1 1 1 X¡9 0 * # 0 0 0

Хв ~ХцХз9 0 # 0 0 0 0

тахБ 1 0 1 1 1 1

Найдём наибольшее В. В данном случае оно равно 101111=47. Тогда наименьшее А=13. Ответ: 13.

Список литературы

1. Гейн, А. Г. Информатика и ИКТ. 10 класс / А. Г. Гейн, А. И. Сенокосов. - М. : Просвещение, 2014. - 279 с.

2. Лещинер, В. Р. Методические рекомендации для учителей, подготовленные на основе анализа типичных ошибок участников ЕГЭ 2015 года по информатике и ИКТ / В. Р. Лещинер, М. А. Ройтберг. - М. : ФИПИ, 2015. - 31 с.

3. Поляков, К. Ю. Битовые операции в задаче 18 КИМ ЕГЭ по информатике. [Электронный ресурс] / К. Ю. Поляков : сайт. - URL: http://kpolyakov.spb.ru/school/ege.htm (дата обращения: 12.12.2016).

4. Поляков, К. Ю. Информатика. 10 класс / К. Ю. Поляков, Е. А. Ерёмин. - М. : Бином, 2013. - 347 с.

5. Поляков, К. Ю. Множества и логика в задачах ЕГЭ / К. Ю Поляков // Информатика. - 2015. - № 10. - С. 38-42.

The Logical Equations Sets

E. V. Klamov

Institute of Education Development of Irkutsk Region, Irkutsk

Abstract. One of the approaches to solution of the logical equations with over predicates by means of data to implicative forms and the subsequent set-theoretic interpretation of logical objects is considered. The description of methods of solving the logical equations for the sets generated by the divisibility relation on natural number and the relation of digit-by-digit conjunction is provided.

Keywords: theory of sets, logical equations, calculation of predicates, logical operations, implicative forms, sets of divisibility, set of digit-by-digit conjunction.

Хламов

Евгений Владимирович

кандидат физико-математических наук, доцент, доцент кафедры предметной области

Институт развития образования Иркутской области

664007, г. Иркутск, ул. Красно-казачья, 10-А тел.: 8(3952)500904 e-mail: e.khlamov@iro38.ru

Khlamov

Evgeniy Vladimirovich

Candidate of Sciences (Physics and Mathematics), Associate Professor, Associate Professor of School Subjects' Department

Institute of Education Development of Irkutsk Region

10^ Krasnokazachiya St, Irkutsk, 664007

tel.: 8(3952)500904 e-mail: e.khlamov@iro38.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.