Текст
                    и вкус к
Честерфилд
каким бы я был теперь несчастным человеком, если бы смолоду не приобрел известный
запас знаний
«Письма к сыну»
ЕТНАЯ
АТИКА
Я.М. ЕРУСАЛИМСКИЙ

Я.М. ЕРУСАЛИМСКИЙ ДИСКРЕТНАЯ МАТЕМАТИКА: теория, задачи, приложения Москва «Вузовская книга» 2000
УДК 519.1 Ерусалнмскин Я.М. Дискретная математика: теория, задачи, приложения. 3-е издание. — М.: Вузовская книга, 2000. — 280 с. ISBN 5-89522-034-7 Учебное пособие по дискретной ма1ема!Ике. Содержит разделы- алгебра йысказываний, алгебра предикатов и множеств, отображения, элементы комбинаторики, отношения, булевы функции, элементы теории 1рафов Отдельный раздел состааляют задачи и упражнения Для студентов и преподавателей вузов, инженеров-системотехников, про(раммиетов. Введение . © Ерусдлимскии Я М . 1‘)9 ISBN 5-89522-034-7 © «Вузовская книи», оформление. ir Памяти моего брата посвящаю Дискретная математика — бурно развивающаяся в XX веке ветвь математики. Ее роль и место определяются в основном тремя факторами* — дискретную математику можно рассматривать как теоретические основы компьютерной математики; — модели и методы дискретной математики являются хорошим средством и языком для построения и анализа моделей в различных науках, включая химию, биологию, генетику, физику, психологию, экологию и др-; — язык дискретной математики чрезвычайно удобен и стал фактически метаязыком всей современной математики. Математика как наука, естественно, от рождения делится на дискретную и континуальную математику. Что мы относим к континуальной математике? Все, что явно иди неявно содержит идеи теории пределов и непрерывности. Все остальное — дискретная математика (т. е. арифметика, алгебра, теория множеств и общая теория отображений, математическая логика, комбинаторный анализ, теория алгоритмов и многое другое). В учебный предмет «Дискретная математика» включают только тот круг вопросов, который можно озаглавить «Теоретические основы компьютерной математики». Прообраз этого пособия — курс дискретной математики, читаемый в течение ряда лет автором студентам первого курса специальности 01.02 ’ * — «Прикладная математика» и направления подготовки 51.02 — «При--стадная математика и информатика». Это и определило его содержание характер изложения.
4 Введение Учебный курс дискретной математики на механикоматематическом факультете Ростовского государственного университета читается в первых двух семестрах и включает в себя 70 часов лекционных и 35 часов лабораторных занятий. Главных задач у этого учебного предмета две: первая — дать элементарное введение в теорию множеств, отображений, комбинаторику, язык предикатов и кванторов; вторая — стать теоретической основой для дисциплин компьютерного цикла. Существенным отличием этого пособия от других является систематическое использование языка множеств и отображений (в том числе при изложении элементов комбинаторики). Это позволило сделать курс дискретной математики достаточно цельным, несмотря на разнообразие и внешнюю неоднородность изначального материала. Такой подход к изложению материала сложился на кафедре алгебры и дискретной математики РГУ со дня ее основания в 1972 г. и отражает методические воззрения заведующего кафедрой проф. Симоненко И. Б. и его учеников. Нам представляется, что главная задача учебных курсов — не сообщение всех фактов, известных лектору, а привитие математической культуры мышления с помощью тщательно отобранного материала. Учебное пособие является по существу третьим вариантом (переработанным и дополненным) учебного пособия Я. М. Ерусалимского и И. Б. Симоненко «35 лекций по дискретной математике» (Гаудеамус XXI, Ростов н/Д 1991) Второе издание этого пособия, рекомендованное Госкомитетом РФ по высшему образованию в качестве учебного пособия по дискретной математике для направлений подготовки «Прикладная математика и информатика» и «Математика», по не зависящей от авторов причине не увидело свет. В настоящем издании существенно расширен раздел «Введение в теорию графов». Изложены наиболее распространенные и применяемые алгоритмы на графах, уделено больше внимания матрицам графов. Ответим на некоторые вопросы, которые могут возникнуть у читателя: Какие предварительные знания необходимы изучающему дискретную математику по этому пособию? Достаточным и необходимым является знание школьного курса математики. Для изучения каких предметов будут полезны знания, полученные из этого курса? Перечислим основные учебные курсы: математический анализ, алгебра, теория вероятностей, функциональный анализ и все предметы компьютерного цикла дисциплин. Какие источники необходимо дополнительно привлечь для изучения курса дискретной математики? Учебное пособие замкнуто в себ- Ёведение 5 и одновременно открыто. Что это означает? Все сведения и факты, составляющие содержание пособия, приведены в нем самом. В пособии содержатся задачи и упражнения, что позволит обойтись без специальных Задачников. Каждый раздел снабжен вопросами и замечаниями для самоконтроля усвоения материала. Открытость курса обеспечена наличием списка литературы, позволяющей заинтересованному читателю продвинуться дальше. Что можно посоветовать лектору, избравшему это пособие в качестве основного к своему курсу? Небольшой объем материала и подробнее доказательства в тексте пособия позволят лектору: а) не требовать обязательного конспектирования лекций; б) уделить на лекциях большее внимание обсужд^ию существа дела, оставив выкладки, а порой и доказательства целых теорем на самостоятельное изучение. Что можно посоветовать ассистенту? Следует уделить особое внимание упражнениям по комбинаторике. Изложение этого раздела существенно отличается от традиционного. Это должно сказаться и на подходах к решению задач и необходимых комментариях преподавателя. Перечислим имена крупных математиков, внесших существенный вклад в современную дискретную математику: английский математик и философ Б. Рассел, английский математик А. Тьюринг, американские математики А. Черч, К. Гёдель, Э. Пост, С. Клини, польские математики Л. Лукасевич, С. Мостовской, советские математики А. А. Марков, И. И. Жегалкин, П- С. Новиков, В М. Глушков. Активно работают в бурно развивающейся области дискретной математики — математической кибернетике — российские ученые С. В. Яблонский, О. Б. Лупвнов, Ю. И. Журавлев. Мы постарались скабдить пособие биографическими ссылками, считая, что, изучая предмет, нельзя не уделять внимания и его истории, и людям, которым принадлежат основополагающие результаты. Большинство биографических ссылок подготовлено по книге: Бородин А. И., Бугай А. С. Биографический словарь деателей в области математики Пер. о укр. К: Радяньска школа, 1979. 607 с. В заключение считаю необходимым выразить благодарность: — моему учителю и научному руководителю профессору Л-1. Б, Симоненко, поставившему курс дискретной математики в Ростовом государственном университете. Этот курс и составил основу посо-п<
6 — профессору М. А. Фальковичу, рецензировавшему рукопись; — моим коллегам по кафедре алгебры и дискретной математики Ростовского государственного университета; — - международному научному фонду Дж. Сороса, его образовательной программе в области естественных наук, трижды присудившей мне звание Соросовскога доцента и соответствующий грант. Это явилось моральным и материальным стимулом к работе; — моей семье — за понимание важности этой работы, — заместителям декана механико-математического факультета РГУ И. А. Чернявской, В. Д. Кряквину, А. В. Наседкину, Г. Г. Мермелыпгей-ну, С. В. Ревиной, взявшим на себя часть работы декана, что позволило автору завершить задуманное; — Ю. А. Ждановой, выполнившей набор и компьютерный дизайн текста; — студентам механико-математического факультета Ростовского госу-дарственного университета, слушавшим в разные годы мой ауре лекций по дискретной математике. Их вопросы, ошибки, заинтересованность и увлеченность существенно влияли и влияют как на содержание курса, так и на самого автора. Глава 1 Алгебра высказываний 1.1 Высказывания. Операции над высказываниями Как и во всей математике, в нашем курсе, в каждом его разд еле существуют основные понятия, с которых все начинается. Основные понятия не определяются. Считается, что у каждого из нас существуют интуитивные представления о них. В этих интуитивных представлениях спрессован исторический опыт человечества в области математических знаний. Основные понятия не определяются, для них даются квазиопределения, как правило содержащие отсылки к другим неопределенным понятиям и объектам. В первой главе таким основным неопределяемым понятием является высказывание. Высказывание — связное повествовательное предложение, о котором можно сказать, истинно оно или ложно. 0 Пример 1.1. «2x2 = 4». (Дважды два равно четырем.) Пример L2. «2 < 3». Пример 1.3. река Дон в 1998 году н. э. впадает в Каспийское море. Пример 1.4. вх < 2, х е Й». (Вещественное число х меньше двух.) Пример 1.5. Площадь отрезка меньше длины куба. Пример 1.6. Является ли х = 3 корнем уравнения х2 -5а: +6 = О? цц Пример 1.7. Меньше один в является два при.
1 Алгебра высказываний Пример 1.8. Слава российским студентам! Пример 1.9. 3 > 5. В приведенных примерах высказываниями являются 1.1, 1.2, 1.3, 1.9. Причем 1.1 и 1.2 — истинные высказывания, а 1.3 и 1.9 — ложные. Пример 1.5 — это пример связного повествовательного предложения, которое не является высказыванием, так как о нем нельзя сказать, истина оно или ложь (из-за отсутствия в этом предложении какого-либо смысла). 1.6 и 1.8 не являются высказываниями, так как не являются повествовательными предложениями. 1.7 не является высказыванием, несмотря на его пове-ствовательность (в конце его стоит точка), по причине его несвязности^ а значит, и отсутствия смысла. ' Предложение примера 1.4 не является высказыванием, несмотря на свою повествовательностъ, связность и осмысленность. В нем содержится переменная, и из-за ее присутствия это предложение обладает свойством превращаться в высказывание при фиксации значения этой переменной. Если через Р(х) обозначить предложение примера 1.4, то ₽(-1) — истинное высказывание, Р(3) — ложное высказывание. Ясно, что объекты такого типа являются обобщением понятия высказывания. К изучению этик объектов мы приступим позже в главе 2. В дальнейшем нас будет интересовать не то, о чем идет речь в выска-зываанн (его содержательная часть), а лишь какое значение истинности («истина», «ложь») опо имеет. В алгебре высказываний все высказывания, имеющие одинаковые знгнения истинности, взаимно заменяемы, т. е. мы имеем два класса высказываний: класс истинных высказываний и класс ложных высказываний. Введем следующие обозначения: если а — высказывание, то через а будаи обозначать его значение истинности. Если а — истинное высказывание, то а — 1 (и, t). Если а — ложное высказывание, то а — 0 (л, f). (Здесь и далее в скобках приводятся другие встречающиеся обозначения.) Таким образом,"' может рассматриваться как отображение множества высказываний в двухэлементное множество {0; 1}. . Определение 1.1 Два высказывания а и bбудем называть равносильными (и писать а = Ь), если а = Ь, т. е. а = Ъ а = Ь 1.1. Высказывания. Операции над высказываниями у (знак <==> используется нами как символ метаязыка, заменяющий «тогда и только тогда, когда»). Логические операции иад высказываниями В русском языке (как и в любом другом) из простых связных повествовательных предложений с помощью некоторых стандартных связок (конструкций) можно образовывать новые (составные) повествовательные предложения. В алгебре высказываний этим конструкциям соответствуют логические операции. Так как нас интересует не содержательный смысл высказывания, а только его значение истинности, то для определения (задания) операции достаточно определить значение истинности результата применения операции. Отрицание Отрицание — унарная логическая операция (т. е. применяемая к одному высказыванию), соответствующая конструкциям: «Не ...», «Не верно, что ...». Определение 1.2 Отрицание высказывания а — высказывание, обозначаемое а (-‘в) и определяемое следующей таблицей: а а 0 1 1 0 Очевидно, имеет место свойство' а = а. Оно называется законом двойного отрицания. Перейдем теперь к определению бинарных (т. е. применяемых к паре высказываний) операций алгебры высказываний. Конъюнкция ^Конъюнкция (логическое умножение) соответствует союзу «и» в русском Чмыке, т. е. конструкции «... и ХХх».
Ю ) Алгебра высказываний Определение 1.3 Конъюнкцией высказываний а и b называется высказывание, обозначаемое а Л b (а • b, ab, а&Ь) и определяемое следующей таблицей: а, Ъ аЛЬ ООО 0 1 0 1 0 0 1 1 1 т. е. конъюнкция аЛЬ истинна тогда и только тогда, когда истинны оба высказывания а, Ь. Имеют место следующие свойства: а)ад& = &ла — коммутативный таком б) а л 1 = а | > — законы «0» и «1» для конъюнкции в) а Л 0 = 0 J г) а Л а = а — закон идемпотентности. Дизъюнкция Дизъюнкция (логическое сложение) соответствует неразделительному «или» в русском языке, т. е. конструкции «... или х х х». Определение 1.4 Дизъюнкцией высказываний а, Ъ называется высказывание, обозначаемое aVbu определяемое следующей таблицей: a b aVb ООО 0 1 1 1 0 1 1 1 1 т. е. дизъюнкция а V 6 ложна тогда и только тогда, когда ложны оба высказывания а, Ь. 1 1 Высказывания. Операции над высказываниями В Имеют место следующие свойства: а) «V b = b V а — коммутативный закон б) а V 1 = 1 __ законы «0» и «1» для дизъюнкции в) а V 0 = a. J г) а V а = а — закон идемпотентности. Эквивялеиция Эквиегуй^я (равносильность) соответствует конструкции «... равносильно ххх» («• • • тогда и только тогда, когда ххх »)• Определение 1.5 Эквиволенцией высказываний а, b называется высказывание. обозначаемое а~Ь (а^Ъ)и определяемое следующей таблицей: а Ь а~Ъ 0 0 1 0 10 1 0 0 1 1 1 т. е. эквиваленция а ~ Ь истинна тогда и только тогда, когда образующие ее высказывания а. Ъ имеют одинаковые значения истинности. Очевидно, имеют место следующие свойства: а)а~Ь = ^~а — коммутативный закон; в) а ~ 1 = а; б) ft ~ b = « ~ Ь; г) а ~ 0 = «. Импликации Импликация соответствует конструкции «Если ..., то х х х » («Из ... следует ххх.») ' Определение 1.6 Импликацией высказываний а, b называется высказы-‘ viue, обозначаемое а -* b (а Э Ь, а Ь) и определяемое следующей иблццей:
1 Алгебра выскюывии И- Высказывай» 01Ч»щи 1.» вЬИ™..1.иям« т. е. импликации а 6 жтжнтт тогда и только тогда, когда а -а о — ложь. Высказывания, образующие импликацию а ь, имеют специальные <Гт"Яа’ Ь ~ (вывод, При первоначальном знакомстве с логическими операциями кажется что все они, кроме импликация, введены довольно естественно, а восцрщ •тот введенного определении импликации наше сознание сопротивмег-ся. Однако, можно привести пример, показывающий, что такое определение импликации соответствует нашей иигунптвной логике и конструкции «если . то ххх», которой мы пользуемся в математике очень часто Вспомним одну теорему аз арифметики _ ад = <<Ес1га натуральное число .т делится на 4, то око (натуральное число .-г) делится на 2» В справедливости згой теоремы мы не сомневаемся, т с какое натуральное чиагад мы ив зафиксируем в ад, мы получим истинное высказывание. Обозначим Л(х) = «Натуральное число .т делится на 4 » Дг = «Натуральное число х делится на 2 ». ' ' ' Тогда имеем Q(x) = А(х) —* В(х). Фиксируя в (11) значения х = 8> 2, з, мы реализуем строки 1 _ х J2. ’ ° Уда?“ ДЛЯ (11) подобРзть такое значение х, 0 (так как справедлива приведенная (1.1) чтобы реализовалась ситуация 1 —* ( теорема, т. е. Q(«) = 4(i) В{х) = 1). Очевидно, имеют место свойства: a)a^b£b^a-, в) 0 а = 1 д) а —, 1 = 1; б)а-»а=1; г) 1 -р а == а; е)а-,0 = г. Заметим, что в обычном языке в предложении вида «Если А то Я» А и В содержательно (контекстно) связаны. Ого совершенно необязательна . пашем определении импликации, т. е. мы имеем право рассматривать импликации вила: «Если сегодня четверг, то 2 х 2 - 5.», которая истинна во все дни, кроме четверга, а в четверг ложна. В большинстве алгоритмических языков имеется логический оператор «if Р then S» использование которого несколько отличается от определе-кия импликации, а именно, если Р -- истина, то отрезок S программы выполняется, а если Р — ложь, то отрезок S программы опускается (не выполняется). га Пример 1.10. Каково значение переменной х после выполнения |1 || следующего фрагмента программы if г < 2 tlien х := Зг, если до начала его выполнения а) х = 1: б) х - 4? Ответ: а) х = 3; б) х 4. С импликацией а - Ъ связывают еще две импликации: & -* а. 5 - £ Первую из них называют обращением а -* Ъ, вторую — контрапозицией а —’ Ь. 0 Пример 1.11. Найти обращение и контрапозицию следующей нм-пликации: «Если сегодня четверг, то 2 х 2 = 4.» - Решение. Обращение исходной импликации имеет вид: «Если t х t 4. то сегодня четверг.», а контрапозиция: «Если 2 х 2 / 4. то сегодня не четверг.». Зависимости между операциями Введенные операции не являются независимыми, одни из них могут быть выражены через другие. Теорема 1.1 Справедливы следующие равносильности: а b = (а Ь)(1> а) = (aV b) - (aVb) = (a-b)V (а-Ь) (Всюду В дальнейшем знак ► означает начало доказательства, решения примера и т. д, а знак •< — окончание.)
14 1. Алгебра высказываний i.t. Высказывания. Операции над высказываниями к Любую из этих равносильностей можно доказать с помощью таблицы истинности (см. «Замечания и вопросы в конце параграфа», п. 2). < Из приведенных равносильностей видно, что -* и ~ выражаются через V, А н В дальнейшем будет показано, что через V, А и -i можно выразить любую операцию алгебры высказываний. Поэтому мы основное внимание уделим изучению свойств этих операций, которые принято называть булевскими1 (булевыми) операциями алгебры высказываний. Теорема 1.2 Справедливы следующие 19 равносильностей для булевых операций алгебры высказываний: 0. а = а - закон двойного отрицания 1. а V Ъ = b V а! > — коммутативные законы 2. а A Ь = ЬА а J 3. а V (bVc) = (a V6) Vc) > — ассоциативные законы 4. а А (Ь А с) = (а Л Ь) Л с J 5. а V (Ь Л с) = (а V Ь) Л (а V с) 1 > — дистрибутивные законы 6. a A (b V с) = (а A b) V (а Л с) J 7. а V а = а 1 > — законы идемпотентности 8. а А а = a J 9. aVb = aAa| t ____ _ > — законы де Моргана^ 10. aAb^aVbJ 'Буль Джерак (1815-1864) — внгляйский ыетемапмс-самоучка В 1848 г. опубликовал «Ibe Mathematical Analysis of Logic» — первую работу по символической логике. С 1849 г. — профессор a Queen’s College (Ирландия). В 1854 публикует «Tie Ijws of Thought» — наибмее «местную из своих работ Здесь он впервые определил то, что теперь яазыке-ют булевыми алгебрами. Дж Буль — автор учебника по дифференциальным уравнениям, использовавшегося в Великобритании до конка XIX в. 2Де Моргая Август (1806-1871) — английский ютешпж Окончив Trinity College (Кембридж) в 1827 г В 1828 г. избран на должность a University College (Лондон), но занял ее только а 1836 г. Известен как преподаватель, ставивший идеи выше техники. Среди его учеников много известных математиков, а т. ч. Ада Августа де Лавлейс — основатель про-граммярования. Де Морган опубликовал свыше тъквчи работ, в т. ч. несколько учебников. Ему принадлежит строгое излажен не принципа (метода) матемятмческой иидуюгик и первое четкое определение предела. 11. aV1 = 1 12. аАО = 0 13. aVO s a 14. аА1 = a законы нуля и единицы 4 ' у — законы поглощения 16. а Л (а V 6) = a J 17. а Va = 1 — закон исключенного третьего 18. a A a = 0 - закон противоречия ► Любую из них можно доказать с помощью таблицы истинности. Логические и битовые операции В компьютерах основной единицей информации является бит. Бит принимает два возможных значения 0 или 1, иными словами, бит -- одноразрядное двоичное число. Для обозначения значеивя истинности высказывания мы также использовали 0, 1. Таким образом, если а ~ высказывание, то его значение истинности а — бит информации. Переменная, принимающая значения во множестве {0,1}, обычно называется булевой переменной, Т. е. булева переменная — это такая переменная, задание значения которой определяет один бит информации. Компьютерные битовые (или логические) операции соответствуют операциям над высказываниями (вернее, над их значениями истинности). Приведем таблицы, определяющие операции or (V), and (&, А), хот (Ф): доеателъность длины п, элементами которой являются биты. - Например, 0110010 — битовая строка длины 7. Битовые операции естественным образом (поэлементно) распространяются на битовые строки раякой длины. Их обозначения: bitwise -i, bitwise or, bitwise and, bitwise xor.
Ю| Пример 1.12. bitwise “ (0110010) = 1001101 0110010 1101010 Ш1010 —bitwise ог 0100010 —bitwise and 1011000 — bitwise xor Замечания и вопросы в конце параграфа га ryi 1. У нас встречались записи типа: wiV0>>. 1»,... Повсю- I • I I • I ду в них 0 и 1 — символы ложного и истинного высказывания соответственно. 2. При задании логических, операций мы пользовались таблицами «□6 где □ — символ определяемой операции, в первых столбцах таблиц перечислены возможные наборы значений истинности высказываний а, Ъ. Всевозможные наборы значений истинности порождают строки таблицы. Каждый такой набор значений истинности может рассматриваться как двоичная запись неотрицательного целого числа. Наборы мы всегда будем располагать сверху вниз в порядке возрастания неотрицательных целых чисел 00г = Ощ. 01г = 1ю, Ю2 = W Hz ~ 310. Такое расположение наборов называется лексикографическим порядком, которого мы будем всегда придерживаться. 3. Приведите примеры теорем, имеющих конструкцию эквива-ленции, импликации; посмотрите, какие строки таблицы, определяющей операцию, можно реализовать, а какие ист. 4. Постройте примеры неверных математических утверждений, имеющих конструкцию эквиваленции, импликации. Какие строки таблицы, определяющей операцию, удастся реализовать, показывая, что утверждение неверно? S. Сколько всего различных бинарных операций над высказываниями можно определить? 1.2 Формулы алгебры высказываний Будем считать, что существует некоторое множество энементариых высказываний (типа «2x2 = 4»). Как правило, их будем обозначать первыми буквами латинского алфавита, а также 0,1. Введем в рассмотрение выска-зывательные переменные — символы, вместо которых можно подставлять высказывания. Высдазывательные переменные, как правило, обозначают последними буквами латинского алфавита (х. у, z,t,w, ... ). Мы ввели также знаки (обозначения) логических операций. Введем еще два служебных символа «(>> — открывающая скобка и «)» — закрывавшая скобка. Под формулами алгебры высказываний будем понимать осмысленные выражения, полученные из символов элементарных высказываний, символов высказывательных переменных, знаков операций (конечного числа) и скобок, определяющих порядок действий. 0 Пример 1.13. ((« —> х) V «) ~ (х А у). Пример 1.14. {(a V 0) Л ((^ё) V а)) -> х. Пример 1.15. (а —») ~ (сУт)). Пример 1.16. (—> .г VI/) 1.13, 1.14 — формулы, 1.15, 1.16 не являются формулами (проверьте, почему). Дадим более четкое определение формулы алгебры высказываний. Определение 1.8 ► 1. Элементарные высказывания, символы логических переменных — формулы. 2. Если Fi и F% — формулы алгебры высказывании, то К (FjVFj), (FtAF2), (Fi~F2), — формулы алгебры высказываний. 3. Других формул алгебры высказываний нет. У -4
□Замечание 1. Из определения 1.8 видно, что любая формула, отличная от перечисленных в п. 1, должна быть заключена в наружные скобки. Поэтому выражения из примеров 1.13 и 1.14 также не являются формулами в смысне определения 1.8 Каковы же функции наружных скобок? Они нужны для будущего — для подготовки формулы к образованию из нее новых формул (с помощью п. 2). Замечание 2. Определение формулы таково, что формулы насыщены скобками и трудночитаемы, поэтому мы примем соглашения об упрощении записи формул: а) наружные скобки в записи формул можно опускать; б) условимся, что конъюнкция «сильнее» дизъюнкции, а обе они «сильнее» —» и ~, поэтому часть скобок, определяющих порядок действий, можно опускать; в) скобки, определяющие порядок действий, в ассоциативном случае можно опускать; г) конъюнкцию будем обозначать знаком «» или знак конъюнкции опускать. Пример 1.17. Дана формула ((((а Л 6) ЛЕ) V с) —»((а V Ь) Л о)). Ее упрощенная запись имеет вид: a&cv с~» (a v Б) • а. Приведем теперь без доказательства три важнейшие теоремы алгебры высказываний. Теорема о фиксации значений в формуле Теорема 13 (теорема о фиксации значений в формуле) Если Е(Т1,Хг,...,хп) — формула алгебры высказываний, где ®i,X2, ..., хп — высказывателъные переменные формулы, то при фиксации значений всех высказывательных переменных (т. е. при подстановке вместо них высказываний) формула алгебры высказываний превращается в высказывание. Т. е. формула алгебры высказываний является отображе- наем множества наборов значений высказывательных переменных в высказывания. Можно также говорить о функции истинности формулы — j?(xi, Х2> • • • > — отображении множества наборов высказывательных переменных во множество {0; 1}. Теорема о подстановке формул в формулу Определение 1.9 Пусть F(yi,У2,.. .,ут), /i(xi,x2, • • -,хп), /2(xi,i2, . ,Хп)..fm(xi,X2,.. . ,хп) — формулы алгебры высказываний. Под- становкой формул ft в формулу F будем называть следующую конструкцию: ФСС1,3-2,---,ТП) (Fly,.-/,) (/1,*2, •,*,„) М F (fl (Xj, Х2,х„), /zfri, х2,..., xltfm(xi,x2,...,xn)). Последняя запись означает, что все вхождения у\ заменяются на fi(xi. Х2,-..,Хп). Vi на /2(2-1,г-2, • ..,Жп).Ут на /m(ii,x2,.. ,,хт). Теорема 1.4 (теорема о подстановке формул в формулу) Если F и jt — формулы алгебры высказываний, то (F| _y.)(xi,x2....хп) — фор- мула алгебры высказываний. При этом говорят, что она получена из формулы F подстановкой формул ft вместо ее переменных. Равносильность формул. Теорема о равносильной подстановке Определение 1.10 Дее формулы алгебры высказываний fi(xi,... ,хп) и /д(^1, • • •,®») называют равносильными (пишут /i(xi,...,xn) = Л(*1,.:.,Х„)). если Л (Xi,..., х„) = /2(Т1,..., ®„). В высказываниях нас не интересует содержательная часть, а интересуют только значения истинности; множество всевозможных наборов значений истинности высказывательных переменных конечно (состоит из 2П наборов) и функцию /(г],.. .,Хп) можно задать таблично. Такая таблица называется таблицей истинности формулы. Дадим второе определение равносильности формулы.
20 1. Ал! ебра высказываний Определение 1.10'. Две формулы /i(xj,...,Tn) и , *п) равно- сильны, если столбцы Д w Д их таблиц истинности совпадают. Теорема 1.5 (теорема о равносильной подстановке) Пусть F'(yi,y2. ...,ут) = /1(-Т1,.--,Хп) = g, (jj, . . ., .Тп). /2(ГГ1. . . -.. =y,n(zI,.. .,x„). тогда .... Слушатель, интересующийся длинными и скучными доказательствами. может обратиться к книге С. Клини «Математическая логика». М.: Мир, 1973. Определение 1.11 Формулы алгебры высказываний, при образовании которых не использовались операции, отличные от V, Л и называют булевыми формулами алгебры высказываний. Теорема 1.6 Для любой формулы алгебры высказываний существует равносильная ей булева формула алгебры-высказываний. ► Прежде чем начать доказательство теоремы, дадим определение ранга формулы. Определение 1.12 Рангам формулы называется число логических операций, встречающихся в формуле, причем каждая операция считается столько раз, сколько встречается. Q Пример 1.18. a-lj- —формула ранга 6. Доказательство теоремы проведем индукцией по рангу формулы. 0° (случай формул нулевого ранга), rang (/) — 0. Все формулы ранга 0 перечислены в п. I определения формулы (определение 1.8) — все это булевы формулы (т. к. в инх нет небулевых операций). 1° (случай формул ранга 1). Все формулы ранга 1 имеют конструкции 1)^Д, 2)ДУЦ 3)ДлЦ 4) Д—»□, 5)Д~Ц где Д и □ — формулы нулевого ранга, и значит (см 0°), булевы формулы. Тогда 1-3 также булевы формулы. Очевидно, в случае 4 и 5 имеет место: 3 фо&твагность в алгебре высказываний 21 Д — D = AVQ, д~о = д-ауд.Ц [ри этом справа стоят булевы формулы. 2° (индуктивный переход). Допустим, утверждение теоремы спра-a»nnwBQ для любой формулы ранга меньшего или равного по. Докажем, гго тогда утверждение теоремы справедливо и для любой формулы ранга io +1- Пусть rang (/) = «о + 1 Выделим в / последнюю операцию, тогда < имеет одну из следующих конструкций,-1) -Д, 2) Д V □, 3) Д Л О, I) Д —» □, 5) Д ~ □. где Д и □ формулы ранга меньшего или равного щ. Для Д и О справедливо предположение индукции, т. е. Д = Дб, □ = Qg, где Дб и Oq —- булевы формулы алгебры высказываний, тогда -.де-.Дб, Д7П = дб7С^, дла = дблаб . ' Д—»П=Дб7Пб, Д ~ Ое Дб-OgV Дб-Об, гак как справа стоят булевы Зюрмулы, то индуктивный переход доказан, 1 вместе с этим и вся теорема. ч Вопрос в конце параграфа Я При доказательстве последней теоремы мы неявно пользовались те-LJ оремой о равносильной подстановке. Самостоятельно разберитесь. в каких местах доказательства используется эта теорема. 1.3 Двойственность в алгебре высказываний. Принцип двойственности. Закон двойственности Определение 1.13 Пусть - .,хп) — формула алгебры вискозы-- ваний. Двойственной к ней будем зазывать формулу /*(х\,Х2ч... ,хп), определенную следующим: /(Т,,.та.. .,.'г„) = /(т1,5:2....,Т„) Из закона двойного отрицания следует, что (/*)“ — /.
В Пример 1.19. (СГГ==0=1: (1)‘ = 1_=0- (tfsSs (т Vj/)’ = (xVy) = х-у, (.тЛу)г = =.гУу. Теорема 1.7 (закон двойственности) Формулы fi(xi,x2.......хп) и , xrt) равносильны тогда и только пюгда, когда равносильны и • •-.£»). « е. /1(2=1, з-2,. = /2(^1,а=г, • • •, хп) «£=> Л(хьхз, fg (*1,12, - ,х„). Для доказательства закона двойственности установим связь между таблицами истинности формулы и двойственной к ней. Утверждение. Столбец значений /• может быть получен из столбца f > Пусть Д = /2, тогда столбцы fi и /^совпадают, тогда инвертированные столбцы, т. е. столбцы для f{ и /2, совпадают. Эго означает, что мы доказали, что Л = /г =*> // е /2*. но тогда » /2 =* (/‘)‘ = (/г)‘==* Л = Л- * । ^Двойственность в алгебре высказываний Ф*(Х1,Х2,...,Х„) = ((Р|у[^/1)(Х1.Х2,...,ТП)) = s (F х2,..., тя),... х2,.... хп)))‘ = Н F (Л (гг, т2,..., Тя),... Л, (3t л2 s S F . .. /т(-?1, Т2, . ,3fn)J = = F (/,* (ll, Т2,.. •, хп),... /т (xi, Х2, - • •,Хпj) = s(F4tW(.)(ai,Xa,...,Sn). Теорема 1.9 (принцип двойственности для булевых формул) Двойственная к булевой формуле может быть получена заменой констант 0 на 1, 1 на 0, V на Л, Л на V и сохранением структуры формулы (т. е. соответствующего порядка действий). 0 Пример L20. (x-yvz)’ ~(xVy)-z Скобка в правой части поставлена для сохранения структуры формулы. г к Доказательство теоремы проведем индукцией по рангу формулы. 0-й шаг (случай ранга 0). Все формулы 0-го ранга описаны в п. 1 определения формулы (см. определение 1.8). Это формулы 0, 1, г. Мы знаем из примеров, что 0‘ = 1,1’ = 0, х* = х, т. е. утверждение теоремы выполнено. 1-й шаг (случай ранга 1). Все булевы формулы имеют вид: ->Д, Avd, Д Л (J, где Д й — булелы формулы ранга 0. Применим общий принцип двойственности Теорема 1.8 (общий принцип двойственности) Пусть Ф(.Т1,Я2,....Жя) = (г|у_Л) (хьд2, -.. ,тя), тогда ♦'(»!.«»-----Х„) = (f (Xl.O,....«.). НХ)‘ = (Ч11у,_д) = ^‘; (Ava)' = (у! I 2йЛй|й₽д> нА*ла* \ У2--О/ У2- D* (Ала)* = pi лу2(У1„д) =У1 = Д‘ va* \ УЗ’-О/
, _ ’-*4 Нормальные формы СДНФ. СКИФ }. Алгебра высказыванщ . 1 Очевидно, во всех случаях в правой части получилось то. что нужно. Индуктивный переход. Предположим. что утверждение теоремы слра веддиво для любой формулы ранга меньшего либо равного «о, докажем, что тогда оно справедливо и для формулы ранга по + 1- Пусть rang(/) — по +-1. Выделим в / последнюю операцию, тогда / имеет един из следующих видов: -’А, A v □, А д □, где А. □ — бу-девы формулы ранга меньшего или разного пОу тогда по предположению индукции А’ и □’ получаются из А и □ по предписанным теоремой правилам. Тогда, повторяя рассуждения первого шага, имеем: (“•A)* s A*; (A VO)* = А’ Л (А АП)* г A’ VD’. Индуктивный переход доказан, а вместе с ним и вся теорема ч Замечание в конце параграфа В Закон двойственности облегчает нашу жизнь вдвое, т. е. если мы. например, с помощью таблиц истинности шли равносильными преобразованиями доказали, что /; = /2> т° автоматически мы доказали. что fj = f-2- В теореме 1.2 о девятнадцати основных равносильностях для булевых операций мы располагали их, начиная с первой, двойственными парами, поэтому достаточно с помощью таблиц истинности доказать равносильности 0,1,3,5,..., 17. а 2,4, б,, 18 будут выполнены по закону двойственности. 1.4 Нормальные формы. СДНФ. СКНФ. Понятие о показателе степени. Показательные уравнения Определение 1.14 Пусть а е {0,1}, х — высказывательная переменная. Определим । х, если а = 1 X ~ ч х, если а = О 25 Удобство введенного показателя степени состоит в том, что однотипно обозначаются х и х. Рассмотрим уравнение. Ха =5 1, (1.2) где х — неизвестное, ст — параметр. Очевидно, уравнение (1.2) имеет единственное решение х = а (£ = о). Рассмотрим уравнение: х°' -X? •...•••<" = 1, (1.3) где х, — неизвестные, ст, —параметры. Очевидно, уравнение (1.3) имеет единственное решение X] — CTj, Х2 = СТ2, • •. , Хге 5 СТП. Рассмотрим уравнение: V (1.4) (^1,аз.. Очевидно, множеством решений уравнения (1.4) является множество Е. Лемма 1.1 (о разложении по переменной) Пусть /(Xi,x2, • • - ,®»<) — формула алгебры высказываний, 1 < i < п, тогда /(.ri,ar2,... ,хп) = x,/(xi,x2,... ,x,_i,l,xl+i.... ,xn)V VT,/(X1,12,• • - ,x,-.i,O,x,+i,-.. ,х„) = = V .^-1>СТ<,Х»+1,..-,хп) (1.5) к Множество всевозможных наборов значений истинности высказывательных переменных разобьем на два множества I, П, отнеся к 1 все такие наборы а - (а1ча2,... ,ап), в которых а, = 1, к II — все такие наборы 7F- (tti,a2,- • • ,»п), в которых at = 0. Пусть а € I. Подставляя его в правую часть (1.5), получим 1 • /(01,02, ••• ,04-1, 1. <*»+!.••• ,Оп) V vl-/(ai,a2,... ,rt,.110,a,+i,... ,о„) = = 1 - /(ai,a2,... ,04-1,04,04+1,... ,««) VO = = /(СТь... ,0,,).
Пусть a G II. Подставляя его в правую часть (1.5), получим О •/(ац ,лз,... , сщ- 1,1 ,a,+i,,.. ,an)V v0-/(ai,a2»••• ,a,-i,0,a,+ll,.. ,а„) = 0У/(айа2)... , а.-!,-»,, а,+11... ,a„)s/(ai,... ,ап). < Пусть ,®2t • •• ,х«) — формула алгебры высказывании. Применяя лемму о дизъюнктивном разложении по переменной Xi, получим f(xi,X2,... ,Sn) = \/ Ij1 • ,Тп). (1.6) <ц€(0;1) Применяя к подчеркнутым множителям в (1.6) лемму о разложении по переменной х2, получим .....хп) = = V *l’-f V *2 •/6п,<72,г3,... ,Xn)J . (1.7) <пё{о,1} \<^е{о-,1} / Применим в правой части (1.7) дистрибутивный закон для конъюнкции относительно дизъюнкции (п. 6 теоремы 1.2), тогда f(Xi,X2,... ,®п) = \/ У X? • Х22 -/(СГ1,^2,ХЗ,... ,Хп). <75ё{0;1} Продолжая последовательное разложение по переменным, получаем: •• !®п) = = V V V Xj'-Х23 ,(ГП) = e>€(O,l}<7je(O;l} <Zn6{0;i} V V xf I?- .......а,). (1-8) Полученное в правой части (1,8) представление формулы f(x\,x2, ... ,Хп) называется ее полным дизъюнктивным разложением. Множители ДоцОг,... ,ап) не содержат переменных, т. е. являются высказываннами. Опуская в (1.8) все слагаемые, в которых /(01,02. ... , оп) = 0, получим f(X!,X2,... ,Хп)= У Х^‘-Х^--Х^. <г,£{0;1)1 .в„)^1 (1.9)
'УТ. с. мы доказали следующую теорему. , Теорема 1.10 Для любой формулы алгебры высказывание, отличной от ^тождественно ложной, существует ее представление в виде (1.9), ко-торое называется совершенной дизъюнктивной нормальной формой. Докажем единственность СДНФ, т. е. если /(Х1,.Т2, . ,-Гн) = \/ Х°' -Х22 (1.10) («1 Bi,--- -то правая часть (1.10) совпадает с правой частью (1.9) с точностью до -порядка слагаемых. Рассмотрим уравнение: f(ll,X2,--' = (1-U) В силу (1.10) оно рааноенльно уравнению у = (1.12) ,"Тп>*5.£ я в начале этого параграфа мы доказали, что множеством репений такого уравнения является множество Е. Таким образом. это множество всех тех наборов значений переменных. на которых /(<7Ь а2.....<7П) - 1, это же множество фигурирует в правой части (1.9). Единственность доказана. Таким образом, мы доказали теорему: Теорема 1,11 Для любой отличной от тождественно ложной формулы . алгебры высказываний существует и единственное ее представление в виде СДНФ — дизъюнкции полных совершенных элементарных конъюнкций (слагаемых вида х*' х%‘ - • х°п). Теорема 1.12 Для любой отличной от тождественно истинной формулы алгебры высказываний существует и единственное ее представление в виде совершенной конъюнктивной нормальной формы (СКНФ)) — конъюнкции полных совершенных элементарных дизъюнкций (т. е. сомножителей вида (х°1 V х1^2 V ... V х^п)).
,ХП} - (/'(.С1.Х2.....-г-„))' = (СДНФСГ))* = -( V -A-J' ••<;• =1 V,e{O;l)| /-(п,™.т„)-1 / Д (x[,Vl’!V...V^)£ лв{0,1Н ?(п.пг.л.) I /\ (г°* Vz^V.-.V^”). /(<7l,<Tj,.. .^u)=0 Существование СКНФ доказано. Докажем единственность СКНФ. Будем доказывать от противного, т. е. предположим, что существует такая формула .. г,хп),у которой по крайней мере две СКНФ (СКНФ(^)т « СКНФ^Д гы да ((СКНФШ’ =СДНФ(Оь ЦСКНФ(<р)2Г =СДПФ(^Ь, что противоречит единственности СДНФ идя •#*. •< Таким образом, мы показали, что для формул алгебры высказываний существуют равносильные нм, однозначно определенные ими канонические представления — СДНФ и СКНФ. 0 Пример 1.21. Рассмотрим формул}' л, —► J-2 == (^’i V' л2). Мы получили СКНФ для вмнлихаини. Продолжим ирео&раюаапия, опусти» внешние скобки. Xt Х2 S Т| VX2 = Xt 1 V 1 • Х2 = Х\ • (т-2 Vr2) V (rt Vx() -Х2 = = $1 • Х2 V X) • Х2 V X] • Х2 V Т| -Х2 = 51 ®2 V Х| Л’2 — СДНФ импликаций. На этом примере покажем связь между таблицей истинности формулы и ее совершенными нормальными формами: Л; —’ Х2 = Х^Х^ V Xjx} V Т| j:2 -= = Х\Х2 ^X\Xi V Х',3-’2 -------------------------------- СДНФ XI -< Х2 = (х! V ,-rf) S (J-? V г] ) = (zi — СКНФ.
1,4. Нормальные формы СДНФ СКНФ •29 К Дадим серию определений. жпрсделенне 1.15 Пусть V,t = {xii’Zitxrffy;... ;хп;Яп} « пусть С I n. к Элементарной конъюнкцией, порожденной подмножеством v, называется конъюнкция всех элементов V. Определение 1.16 Элементарная конъюнкция называется совершенной, %см в нее не входит никакая из переменных одновременно с отрицанием ^рпои переменной. ^Определение 1.17 Элементарная конъюнкция называется полной, если в &ей представлены все переменные. - Аналогично с ЭК. СЭК и ПСЭК определяются ЭД (элементарная дизъ-йоикция), СЭД, ПСЭД, 2-Опредсленне 1.18 Дизъюнктивной нормальной формой (ДНФ) называ-цется дизъюнкция элементарных конъюнкций. (Определение 1.19 Конъюнктивной нормальной формой (КНФ) называется конъюнкция элементарных дизъюнкций. ) ? Ясно, что СДНФ является ДНФ, СКНФ является КНФ. Сформулируем sh докажем основную теорему для нормальных форм. Теорема 1.13 Для любой формулы алгебры высказываний существуют ^равносильные ей ДНФ и КНФ. * к Приведем конструктивное доказательство, опишем алгоритм перехода к ДНФ (КНФ). Рассмотрим отдельно случай формул ранга 0: 1=.тУ7 = (.тУ7), 0= х х = (х) • (х). ДЦФ КНФ ДНФ КНФ - Формула х является одновременно и ДНФ, и КНФ. Случай формулы г > 1 Опишем шаги алгоритма, приводящие к цели: 1. Пользуясь формулами х. — у = 34 у их ~у ^.х-уЧТ-д, перейти к равносильной булевой формуле
2. Пользуясь законами де Моргана, перейти к формуле с тесными отрицаниями, т. е. содержащей отрицание не выше, ’гем над переменными (пропустить отрицание анутрь формулы). 3. Пользуясь дистрибутивными законами, сделать дигьюнкцию (конъюнкцию) внешней операцией. К) Пример. (т ~у) -> (г ~ху) = (xy\Jx-у) v (туг Vxy-г) = = 0П7) V (туг) - (Ту • Т) = = (TVj)(jVy)v(!Fvj;v5){jyV2)3 £ х - х V ху V Ту V уу v х • ху V .ту у V ху z V ?г V уг V гг = = ху vxy Vxyz УТг Vyz = (xtfVxyz) VryV^zV^z^ = г (у V уг) V ху V хг v yz = т(у v yz} V Ту V xz V у z = = VtfvZyVTzVyzs = xz'Jxy-'Jxz'Jyz^. (j(j/'/T) VT(y Vs))Vyz = s(^V?)VT)-((^V^V(yVi))V^ = = (zvyvz) ((xvy Vz)(y v zvy Vz^vyzs = ((x V у V £) (x V у v г) V $) ((x V у V г)(х V у V z) V г) = = (7V5VzV?/)(.rVyVzVy)(TVyVzV2)(.-rVyvz.Vz)^ = (TVyVzJfzVy V z). Выражения после =. s, = являются ДНФ, после н, г являются КНФ: выражение после s — СКНФ. Замечания в конце параграфа 0 1. Как видно из примера, ДНФ и КНФ. в отличие от СДНФ и СКНФ, не обладают свойством едииственности (однако это нс всегда является недостатком). 2. Пункт 3 алгоритма для построения ДНФ психологически выполнять легче (раскрыть скобки), чем п. 3 для КНФ. поэтому можно предложить обходной мвневр: после выполнения п. п. 1, 2 перейти к двойственной формуле, выполнить для нее п. 3 построения ДНФ и выписать для полученной ДНФ двойственную (это и будет КНФ исходной формулы, т. к. (/*)* - /).
я 1.5 Основные проблемы алгебры 1 высказываний. Критерий тождественной 4 истинности и тождественной ложности _ Формулы алгебры высказываний обычно делят на три типа: тождествен-но истинные (тавтологии), тождественно ложные (противоречия) и нетри-% внально выполнимые (остальные). Наибольший интерес для математики ♦ представляют собой тождественно истинные формулы — они предртавля-' ют собой скелеты (схемы) логически безупречных рассуждений. к Класичесский пример такой схемы рассуждений дает следующая то-I ждественно истинная формула: х(т р) —»у (modus penens) Эта формула — схема рассуждения вада: «Известно, что из .т следует у ит — выполнено, значит, выполнено у». В алгебре высказываний выделяют три основные проблемы’ разрешения, равносильности, представимости. Сформулируем их. Проблема разрешения , Существует ли алгоритм, позволяющий с помощью равносильных пре-’ образований для произвольной формулы алгебры высказывания выяснить, является ли она тождественно истинной, тождественно ложной или нетривиально выполнимой? Проблема равносильности Существует ли алгоритм, ’позволяющий с помощью равносильных- преобразований для произвольных формул выяснить, равносильны ли онн? Проблема представления Можно ли двузначную 0-1 функцию п двузначных переменных . ,,т«) реализовать формулой алгебры высказываний F(Tj.r2, .. .,х„) так, ‘по f(Xl, ®2. • - - <Гп) = *’(-тЬ *2, • • •, -Т»)?
Ответ положителен. Причем для двух последних проблем его можно получить. применяя теорию СДНФ-СКНФ, что касается первой проблемы, дтлдсе проще обойтись ДНФ и КНФ. Теорема 1,14 (критерий тождественной истинности формулы) Для того, чтобы формула алгебры высказываний была тождественно истинной, необходимо и достаточно, чтобы в равносильной ей КНФ были тождественно истинны все элементарные дизъюнкции. ► Справедливость критерия очевидна. -4 Теорема 1.15 (критерий тождественной истинности элементарной дизъюнкции) Для того, чтобы элементарная дизъюнкция была тождественно истинна, необходимо и достаточно, чтобы в ней существовала хотя бы для одной переменной пара — переменная и ее отрицание. ► Достаточность очевидна, так как - •- v х vs v • • • = 1. Необходимость. Докажем ее от противного, т. е. предположим, что существует тождественно истинная элементарная дизъюнкция, для которой не выполнены условия теорамы Высказывательные переменные с помощью этой ЭД разобьем на зри типа: «+». «—». «0». К типу «+» отнесем переменные, которые вошли в ЭД сами (без отрицания). к типу «-» отнесем переменные, которые входят в ЭД своими отрицаниями, к типу «0» — те переменные, которые вовсе не представлены в ЭД, Сформируем (ai,a2,...,Qn) — набор значений переменных, полагая !0, если ж, с и + »; ' 1, если £ « — »и «0» и подставим этот набор в нашу ЭД- Получим 0v0V-v0 = 0, что противоречит тождественной истинности ЭД
Теорема 1.16 (критерий тождественной ложности формулы) Дее ого, чтобы формула алгебры высказываний была тождественно ложной, необходимо и достаточно, чтобы в равносильной ей ДНФ все ЭК были тождественно ложны. I Теорема 1.17 (критерий тождественной ложности ЭК) того, чтобы ЭК была тождественно ложной, необходимо и достаточно, чтобы в ней существовала хотя бы для одной переменной пара - переменная и ее отрицание. Ясно, что две иосяедиие теоремы - - двойственные результаты для предыдущих. Пример 1.22. Дана формула ху (т -» z) ~ z. Классифицировать ч ► Построим ДНФ: , ху • (а—» z) ~ z = ху- (х -» z) -z Viy- (х -► z) • z = £ = ^y(SVz)-zV^VyV(®Vz)j-Z = ? ~ Ху -X ' 2 V ху • Z • Z V ®Z V yzV $z • Z = ? =X-ZVy-Z. I у По критерию получаем, что формула не является тождественно лож-< ной. ; Построим КНФ: * ху • (х -* z) ~ Z = х zV у • z = (z V у) • z. По критерию получаем, что формула не является тождественно истинной. Вывод: формула нетривиально выполним^. -ч Замечания и вопросы в конце параграфа 1. Ясно, что для проблемы разрешения можно обойтись только совершенными нормальными формами. 2. Попробуйте в терминах СДНФ (СКИФ) для формулы от п переменных дать решение проблемы рззрашення.
1.6 Релейно-контактные схемы и схемы из функциональных элементов Рассмотрим электромагнитные реле, состоящие из катушки индуктивности, контактной труппы и вспомогательных элементов (пружина, корпус и т. п.). Роле бывают двух типов: нормально-разомкнутые (рис. 1.1) и нормально-замкнутые (рис. 1.2). Рис. 1.2. Условимся, что если по катушке индуктивности течет ток, то значение управляющего сигнала равно I. если нет тока, то значение управляющего сигнала равно 0. Если контактная группа находится в замкнутом положении, то значение функции проводимости реле раяно I, если в разомкнутом — 0. Работа реле описывается таблицами: Функция проводимости Упрвл. Функция проводимости сигнал норм.-разомки. реле сигнал норм.-замки, реле т. е нормально-разомкнутое реле имеет тождественную функцию проводимости. а нормально-замкнутое — отрицание управляющего сигнала. Если управляющий сигнал обозначить г, то нормально-разомкнутое реле будем обозначать:
нормально-замкнутое. Рассмотрим схем)': Очевидно, ее функция проводимости — х Л, т. е. последовательное соединение реле реализует конъюнкцию. Рассмотрим схему; Очевидно, ее функция проводимости — х Vj7, т. е. параллельное соединение реле реализует дизъюнкцию. Определение 1.20 Функцией проводимости схемы называется способность проводить или не провади/нь п«зк через схему соединения контакт-них групп реле в зависимости от комбинации управляющих сигналов, по-9 данной на обмотки всех реле, образуюищх схему. | Сформулируем основные задачи теории релейно-контактных схем, t 1. Задача синтеза. Построить схему, реализующую заданную функ-? цию проводимости. 4 Эта задача разрешима — достаточно построить формулу алгебры вы-сказываний типа СДНФ или СКНФ (очевидно, что формулы такого типа 5 реализуемы схемами). 2. Задача упрощения. По данной схеме построить более простую схе» му, имеющую такую же функцию проводимости (равносильную схему). Сразу заметим, что единого критерия прктош схемы нет. а пример упрощения будет приведен позже (машина голосования). 3. Задача анализа схемы. Не включая схему в работу, проанализировав соединения контактных групп, найти функцию проводимости схемы.
1. Алгебра высказываний Ц.6. Релейно-контактные схемы и схемы из функциональных элементов 37 (Задачи такого типа — одна из составляющих промышленного шпионажа.) В качестве примера решения задач 1 и 2 рассмотрим построение машины голосования. 0 Пример. Комитет состоит из трех человек (г, у, с) и принимает решения простым большинством голосов. Построить схему машины голосования для этого комитета так, чтобы в случае принятия решения загоралась лампочка. Очевидно, если договориться о том, что в случае голосования <ва» управляющий сигнал равен 1, а «Против»— 0, то функция проводимости имеет следующий вид: ,т 0 0 0 0 1 1 1 1 У 0 0 1 1 0 0 1 1 г 0 1 0 1 0 1 0 1 Функция проводимости 0 0 0 1 0 1 1 I Выпишем по таблице СДНФ — xyz V туг V туг V туг. Задача синтеза уже решена. Нарисуем схему для полученной формулы: Перейдем к задаче упрощения. jtyz V туг V хуг V туг — = ryz V ryz V туг V xyz V туг V туг — = (ZV x)yzv x(yVy)zVxy(zV z) = = .TyVxzVyz. Нарисуем схему полученной формулы: —Г * ~1------Г~у~]— ---------1 X I-----ГZ I-------- —Г у I-------ГТП— Мы сэкономили 6 реле (1). Можно продолжить упрощения ту V тг V yz = х(у V z) V yz. Сэкономлено еще одно реле, но схема стала менее технологичной (потеряна симметричность). Нарисуем схему для полученной формулы: | —I у I---------Г~Г~1—1 £ I-----1 I------1 I Е J Двоичный сумматор Перейдем к построению схемы основного элемента арифметического процессора любой ЭВМ — «-разрядного двоичного сумматора. «-разрядный сумматор будем строить из ?г штук одноразрядных двоичных- сумматоров. Управляющими сигналами одноразрядного сумматора i-ro разряда явля I ч ются хг. у, — значения i-ro разряда слагаемых и рх — перенос в i-й разряд । ’ из предыдущего (pi = 0). В результате работы сумматора должны быть ' сформированы: z, — значимые суммы в i-ом разряде и р1+1 — значение | переноса в i +• 1 разряд
Очевидно, p,+i = х4у, V тгрг v ytp, (см. машину голосования), а -P,+l(®tVy,Vp,)VT,y,p,. Построим схему одноразрядного сумматора как схему из функциональных элементов, испольтуя такие элементы: (вверху входы (упр. сигналы), внизу выход). Тогда схема сумматора имеет вид:
Полученную схему одноразрядного сумматора можем считать функциональным элементом с тремя входами и двумя выходами. Построим теперь схему «-разрядного сумматора: на устройство управления машины Q — элементы задержки, запирающие сумматор до того, как прошло суммирование в предыдущем разряде. pll+i подается на устройство управления для выработки сигнала о переполнении сумматора в случае, когда pn+1 -- 1. Вход pi заземлен.
1. Алгебра высказываний Замечания и вопросы в конце параграфа га ГП 1. Ясно. что в современной вьщислительной технике исполь-!_• j ; • 1 з),ются не электромеханические реле, однако смысл от этого не меняется. 2, Дм. чего необходим в ЭВМ датчик частоты? 3. Почему с увеличением разрядности ултеиыиается быстродействие? 4. Почему заземлен вхад р) в п-разрядном сумматоре? Глава 2 Алгебры предикатов и множеств. Отображения 2.1 Предикаты. Логические операции иад предикатами. Кванторы Предметом изучения в этой главе будут предикаты — отображении произвольных множеств во множество высказываний. Фактически, мы совершаем переход на новый уровень абстракции, переход такого типа, какой был совершен в школе — от арифметики вещественных чисел к алгебре числовых функций. Определение 2.1 Пустъх^хг, • - - ,тп —символы переменных произвольной природы. Эти переменные будем называть предметными. Пусть наборы переменных (xj, Х2,.. - ,хЛ) принадлежат (выбираются из) множеству fl. которое будем называть предметной областью. Предикатом местности п (h-местным предикатам), определенным на предметной области Q, называют отображение О во множество высказываний. Прежде чем перейти к рассмотрению примеров, дадим квазиолрсдсле-нис п-месгного предиката: Определение. «Связное повествовательное предложение, содержащее я переменных к обладающее следующим свойством: при фиксации значе
ний всех переменных о нем (предложении) можно скашть, истинно оно или ложно». 0 Пример 2.1. £)(тьХ2) = «Натуральное число .?i делится (без остатка) на натуральное число х2.» — двуместный предикат, определенный на множестве пар натуральных чисел N х N. Очевидно, Р(4,2) •— 1, Р(3,5) = 0. Пример 2.2. Q(x) =«.r2 < -1, х ё Я.» — одноместный предикат, определенный на Л Ясно, что Q(-l) = 0, Q(x/3) = 0, и вообще предикат Q{x) — тождественно ложен, т.е. = 0. Пример 2.3. R{x, у, г) =«х2 4 у2 < г\ x,y,z£ Я.»— трехмест- -ныи предикат, определенный на Я3. Я(1,1,-2) = 0, Я(1,1,2) — 1. Пример 2.4. Я(.т, у) -«sin 2ту > -3; т, у е Я.» — тождественно истинным двуместный предикат. Пусть P(ti,.T2, ... ,т„) — 71-местный предикат, определенный на Q Свяжем с ним два множества (подмножества Q). определенные следующим: Я'1({1}) = {(.тьт2,...,г11)еП|Я(т,,.г2,.....тп) = 1} — множество истинности предиката Я, Я-1({О}) = {(.г1,,т2,...,.г,1)еП|?(х1..г-2,...,.т11) = 0) — множество ложности предиката Я. Определение 2.2 Предикат Я, определенный на Q, называется тождественно истинным, если Р-‘({1)) = О(Р-’({0»~г); тождественно ложным, если нетривиально выполнимым, если « P ‘((0}) t и-
2.1. Предикаты Логические операции над предикатами Кванторы Изобразим в У?3 множества Я R J({0}) (см. рис. 2J) для предиката К(.т, у, г) примера 2.3. Х«1» Рис. 2.1: Поверхность и внутренность изображенною параболоида вращения — К"!({1}), внешность — Я-1({0}). Логические операции над предикатами Поскольку предикаты — это отображения со значениями во множестве высказываний, где введены логические операции, то эти операции естественно определяются и для предикатов. Определение 2.3 Пусть Р — предикат, определенный на Q. Отрицанием предиката Р называется предикат, обозначаемый -,Р (Р), определенный на Q следующим образом ...., х(1) Р{ху, ...,хп)
Пусть Р и Q — предикаты, определенные па О. Дизъюнкцией (конъюнкцией, импликацией, эквиваленцией) предикатов Р и Q называется предикат, определенный на Г?, обозначаемый PV Q (Р AQ{P Q,Pb.Q,PQ)), Р —Q. Р ~ Q) и определяемый следующим: (PVQ)(r,,..^xn)fs ((Р Л Q)^,... л») Л= ......*ч) Л .., ли)) Ш... ,®„) d= P(«i. < >я-п) Q(-ti, • - - ,г„>) ((й ~ Q)^,... Лп) Р(ть -. , .г,.) ~ QGn,.... .?„)) Определение 2.4 Предикаты Р и Q, определенные на О, называются равносильными (пишут Р = Q), если P{Xl,...,Xn) = Q{fz,...,Xn) для любого набора (.tj,..., г„) предметных переменных из Q. Теорема 2.1 АТиожесшво п-.месшных предикатов, определенных на О. образует булеву алгебру предикатов, т. е. для них справедливы 19 основных равносильностей булевой алгебры: 0. -^Р ~ Р. 1 PVQ^QvP 2. PaQsQaP j. Pv(QvR} = (PvQ}vRd=? PVQVR 12. РАО SO /.-Р a(QлЙ) = (РaQ) ЛRd= PAQAH 12. Р VO SP 5. PV(^Aft) = (PV^)A(FV«) 6. PA(QvR) = (PaQ)V[PAR) 7. ^PVQ) = ^PA-Q,:. 8 ^PAQ)^PV-,Q 9. PVPsP 10 1>АР=Р И. PV 1 = 1 (4. PA1SP IS. PV(PAQ)sP 16. Pa(PvQ) = P 17. PV--P = 1 18 PA^PsO Здесь 1 — обозначение тождественно истинного предиката на О. О — обозначение тождественно ложного предиката ка (I
> Справедливость этой теоремы очевидна, так как операции над предикатами вводились с помощью операций над высказываниями, а высказывания образуют булеву алгебру (теорема 1.2). -я 2.2 Кванторы, их свойства и применение В этом параграфе мы познакомимся с двумя операциями, уменьшающими местность (т.е. количество переменных) предиката — фиксацией значений переменной и навешиванием кванторов (квантификацией). Эти операции принципиально отличаются от изученных ранее логических операций, которые сохраняли местность предикатов. Наиболее важными с точки зрения приложений в других областях математики являются операции навешивания кванторов, они широко используются для записи определений. особенно в математическом анализе. Операции, уменьшающие местность предикатов 1. Фиксация значении переменных Пусть P(.tj, ... ,.т„) — п-местиый предикат, определенный на Q. Зафиксируем т, = а. 1 < г < п. Обозначим QJ, — множество значений переменных Xi,.. ... ,хп, определяемое следующим: {.tj ...., r,_ j, xt+1, -... xtl) € <==> <=> (.Т[, - •., ... ,zn) 6 fl. Определим на (п - 1)-мсстный предикат ... ,.т„) следующим: Q(xi,... .. ,.тп) = P(xi,..., x,_i,a,xt+i,... ,zn). Говорят, что предикат Q(ri,... . ,хГ1) получен из преди- ката Р(Т1,. -., х„) фиксацией значения i-й переменной хг = а, 0 Пример 2.5. Зафиксировав в предикате Л(х, у, г) примера 2.3 значение третьей переменной z = 3, получим двуместный предикат «а-2 + у2 < 3; х, у 6 Я.»-
2. Кванторы Приведенные ниже конструкции очень распространены в математике (особенно в математическом анализе), и, вероятно, вам уже приходилось с ними встречаться. Обратите особое внимание на приведенные ниже определения. так как при интуитивном пользовании неаккуратно введенными объектами у вас могли уже выработаться «вредные привычки и дурной, тон». Определение 2.5 Пусть — одноместный предикат. Поставим ему в соответствие высказывание, обозначаемое Vx Р(х) (читается «для любого х Р(х)>Л которое истинно тогда и только тогда, когда Р(х) — тождественно истинный предикат. О высказывании Ух Р(х) говорят, что оно получено из предиката Р навешиванием квантора всеобщноаии по переменной х. Определение 2.6 Пусть Р(х) — одноместный предикат. Поставим ему в соответствие высказывание, обозначаемое Эх Р(х) (читается «существует х Р(х)»А которое ложно тогда и только тогда, когда Р(.т) — тождественно ложный предикат. О высказывании Эх Р(х) говорят, что оно получено из предиката Р навешиванием квантора существования по переменной х, 0 Замечание 2.1. Обозначения V и Э для кванторов — это перевернутые латинские буквы А и Е соответственно, которые являются первыми буквами в английских словах all — все, exist — существовать. Замечание 2.2. Высказывания можно считать предикатами, не содержащими переменных, т, е. О-местными предикатами (или предикатами любой местности). Замечание 2.3. В силу замечания 2.2 кванторы можно рассматривать как отображения множества одноместных предикатов во множество высказываний (0-местаых предикатов), т. е. отображения, уменьшающие местность на 1. Замечание 2.4. Формулы влгебры высказываний от п высказьша-тельных переменных можно рассматривать как н-меотные предикаты от этих переменных.
Основные равносильности, содержащие кванторы. Кванторы как обобщение логических операций Пусть P(xi,...., ru) — n-местный предикат, определенный на П. Зафиксируем б нем значения переменных .rj,.. ..., хп, на полу- ченный одноместный предикат Q(xt) навесим квантор всеобщности (существования). получим высказывание. Тем самым фиксированному набору значений переменных г1(..x,_i,xf+i,... ,хп с помощью квантора всеобщности (существования) поставлено в соответствие высказывание Сопоставление любому набору значений переменных xi,.. .,х4_1,х,+1, ..., хп вполне определенного высказывания — это отображение из множества наборов значений переменныхХ1,...,х,-1, x,+i,...,xn во множество высказываний, т. е. предикат от этих переменных. Говорят, что этот (п — 1)-местнын предикат переменных Xi,... ,x<-i,1,4-1,.. - ,тп получен из исходного предиката P{xi,... ,хп) навешиванием квантора всеобщности (существования) по г-н переменной. Этот предикат обозначают: V.Tf Р(Х1,...,Хп) (3xt Р(х1,...,хп)). Об г-й переменной (которой уже нет) говорят, что она связана квантором всеобщности (существования). 0 Пример 2.6. Пусть Р(.Т1,Х2) — предикат примера 2.1. Навесим последовательно на его переменные кванторы. Ясно, что l)Vxi Vr2 P(xi,x2) = 0. 3)Bxi Эха O(Ti,x2) = 1. 5)Vxj Зх2 P(xj,x2) = 1. 7) Bii Vx2 P(®i, т2) = 0. 2)Vx2Vxj П(хьХ2) = 0 4) 3x2 ЭХ1 О(хьХ2) = 1 6) 3l2Vxt Р(Х1,Х2) = 1 8)Vx2 3x1 Р(х!,х2) = 1 Таким образом (сравнением 7 и 8 в последнем примере) мы доказали теорему: Теорема 2.2 разноименные кванторы, вообще говоря, не коммутируют.
Теорема 2.3 (основные равносильности, содержащие кванторы) Имеют место следующие равносильности: Законы де Моргана для кванторов 1. Ух Р(х) = Эх Р(х) 1 2. Зх Р(х)=Ух'Р^)) Ъ. Ух Уу Р(х,у) = Ау Ух Р(х,-у) . > Коммутация одноименных 4. Зх Зу Р(х, у) = Зу Зх Р(х, у) J кванторов 5. Vx(P(x) Л Q(x)) = VxP(x) Л VxQ(x) 1 > Дистрибутивные законы 6. Зх(Р(х) V Q(x)) = ЗхР(х) V Зх<?(х) / для кванпюров 7. Vx(P(r) V Q(y)) = VxP(x) V Qfy) 1 , > Законы ограничения 8. Зх(Р(х) Л Q(y)) = ЗхР(х) Л Q(y) j действия кванторов 9. ЗуУхР(х, у) —♦ Vx3yP(x, у) = 1 — каков бы ни был двумест- ный предикат Р[х,у). ► ► Пусть Р такой предикат, что левая часть в (I) ложна УхР(х) — истина Р(х) — тождественно истинный предикат [Ага Р(х) — тождественно ложный предикатч=> ЗхР(х) — ложь. Таким образом, мы доказали, что левая и правая часть в (1) ложны одновременно, значит, и истинны они тоже только одновременно. Чт 2 ► ЗхР(х) = ЗхР(х) = УхР(х) = УхР(х). Ч2 3 ► Пусть Р(х,у) — такой двуместный предикат, что левая часть в (3) — истина 4=Ф УуР(х,у) — тождественно истинный предикат переменной I <=> зафиксировав произвольное хо, мы нолучнм, что УуР(х0,у) — истина зафиксировав произвольное xq, мы получим /’(хц.у) — тождественно истинный предикат переменной у <=> зафиксировав произвольно хо и у0 в Р(х,у), мы получим Р(хо,уо) — истина, т.е. Р(х,у) - тождественно истинный предикат. Очевидно, истинность правой части в (3) равносильна тому же самому — тождественной истинности предиката Р(х, у). <з 4 ► ЗхЗуР(х,у) = ЧхВуР(х,у) ЗхУуГ,(х,1/) = VzV//P(x, у) = VyVxP(x,y) = ЗуУхР(х,у) :•= ЗуЗз;Р(.с,у) ЗуЪР(х, у). 41
5 ► Пусть левая часть в (5) — истина <==> P(-'c)aQ(x) — тождественно истинный предикат Р(.т) — тождественно истинный предикат и ф(-т) — тождественно истинный предикат <=> (УхР(х) —• истина) и (VrQ(x) — истина) <=> УхР(.т) aVxQ(x) — истина, т.е. мы доказали, что левая часть в (5) — истина тогда и только тогда, когда правая часть в (5) — истина, значит, и ложны они только одновременно. 4$ -а ► V Q(t)) = 3.т(Р(д) VQ(x)) = Vx(P(x) V Q(x)) = У.т(Г(.т) л Q(r)) s У.тР(.т) A VrQ(.t) = VxP(x) v VrQ(x) = ЭхР(х) V 3.tQ(x) = ЗхР(х) V lr(?(.r). -<e Равносильности (7) и (8) докажите самостоятельно. 9 ► Допусти*; противное. т. е. что существует такой двуместный предикат Р0(.г, у}, «по ЗуУ.тРо(х, у) -* УхЗуР0(.т, у) — ложь {ЭуУхР{|(.т,у) — истина; УхЗуРоСЛУ) — ложь. Ра вберемся отдельно с верхней и нижней строками последнего соотношения. ЗуУхРи(х,у).— истина <=> У.тРо(.т,у) — не тождественно ложный предикат переменной у -е=> можно зафиксировать такое значение уо. что Л>(.т, уо) — тождественно истинный предикат переменной х (а). УтЗг/Р0(.т,у) — ложь ==> ЭуРи{х, у) не тождественно истинный предикат х <=> можно зафиксировать такое значение го, что ЭуРо(.то,у) — ложь <=> можно зафиксировать такое значение хо, что 7’о(-то, у) — тождественно ложный предикат у (0). Зафиксировав в (а) значение то, найденное в (/3), получим Ро(а:о,Уо) — истина (J), а зафиксировав в {0) значение j/о из (а), получим Ро(хо,Уо) — ложь (2). (1)и (2) противоречат друг другу, ig М Теорема 2.4 (кванторы как обобщение логических oacpauiiii) Пусть Р(х) — одноместный предикат, определенный на конечном множестве £1 — (ti;.T2; - -. ;хдг), тогда
WPG0 з Р(.ТО Л Р(.тг) Л... Л Р(.-СЛ-); ЗхР(х) = Р(х,) V Р(х3) V • • • VP(xN). Доказательство теоремы очевидно следует из определения кванторов и логических операций, а смысл теоремы состоит в том. что квантор всеобщности обобщает конъюнкцию, а квантор существования — дизъюнкцию в случае предикатов, определенных на бесконечных множествах. Применение языка предикатов и кванторов для записи математических утверждений В качестве примера рассмотрим определение тою, что вещественное число а является пределом числовой последовательности (хп) Р Образуем следующие предикаты. «п > N» — двуместный предикат переменных n»N (переменные принимают натуральные значения); «|тп - а[ < е» — двуместный предикат переменных пне (п — натуральное число, с — положительное вещественное число); «(n > N) —♦ (|in - а| < е)» — трехместный предикат переменных п, N, е, порожденный парой: — последовательность, a — веще- ственное число. Навесим на этот трехместный предикат кванторы V£3Wn((n > N) —» (]х„ - aj < е)). Мы получим высказывание. Утверждение, что а является пределом числовой последовательности {xn}^i, равносильно истинности полученного высказывания. Итак, lim хп =• a 4=>Vf3Wn((n > jV) — (|xn - ti| <e)) = 1. (2.1) Разберемся, что означает, что а не является пределом последовательности {xn}S-v Это означает, что истинным высказыванием является отрицание последнего высказывания в равносильности (2.1). т. е. Ve3/Wn((n > N) —* (|х„ - а| < е)) = 1 Be3/Wn((n > У) —• (|х„ - а| < е)) = 1
Э&Мп((п > N) — (|rn - «| < £)) == I 3fW3?2((n > N) —’ (|.r„ - ft) < e)) = 1 SeVN3n((v">7/) V (]тп - a| < e)) = 1 3eVN3n((n > N) • (|xn - n| < e)) = 1 3sVW3n((n > /V) • ((т„ - a( > г)) = I, n, N — натуральные числа, e — положительное вещественное число. Замечания н вопросы в конце параграфа gryi I. Доказав, что 3ytfxP{x, у) Vx3yPl_x,y) = 1, мы доказа-1 • 1 ли, в частности, что если функция равномерно непрерывна на множестве, то она и непрерывна на множестве. Разберитесь, почему. 2. Имеет место следующее: УхР{х) = УуР{у), ЗхР(х) = ЗуР(у), т. е. все равно, как обозначена переменная, по которой навешен квантор (Аналогия: f f(x)dx := J о о 3. Дайте самостоятельно определение формулы алгебры предикатов (по аналогии с определением формулы алгебры высказываний). 2.3 Алгебра множеств Основными понятиями этого параграфа являются понятия множества и элелгента множества (и значит, они не определяются).
Понятие об универсальном н пустом множестве Буш» считать, что мы выбрали и зафиксировали достаточно широкое множество, за пределы которого не будем выходить. Элементы всех множеств, которые будем рассматривать, одновременно являются элементами этого шпрекого фиксированного множества, называемого универсальным множеством. Для этого множества будем применять обозначение 1. Пусть А — некоторое множество. Говорят, чю Л задано, если относительно любого элемента х е 1 можно сказать, принадлежит или не принадлежит он множеству Л. Таким образом, с каждым множеством ,4 свя ин одноместный предикат Рд(х), определенный на универсальном множестве. Рд(г) = «х е Л». Ясно, что РДх) — тождественно истинный предикат. Наряду с универсальным множеством удобно иметь дело с его Противоположностью — не содержащим элементов множеством — пустым множеством, обозначаемым 0. Ясно, что Ра(гг) — тождественно ложный предикат. Oit[M^eneiiiie 2,7 Два множества А и В называются равными (пишут А - В) тогда и только тогда, когда РаЮ = Рв^)- 0 Пример 2.7. Пусть Л — множество неотрицательных целых чисел, не превосходящих 9, В — множество цифр, используемых в десятичной записи чисел. Ясно, что А =- В - {0,1,2...., 9}. Операции над множествами Очевидно, что любой одноместный предикат Р(х), определенный на I, можно считать предикатом, порожденным множеством. Действительно, если положить Последнее позволяет вводить операции над множествами, используя операции над предикатами.
Булевы операции над множествами О»])еделС1ше 2.8 Дополнением ко множеству А относительно универсального множества I называется множество, обозначаемое "А (см. рис. 2.2]), определяемое следующим: Определение 2.9 Объединением множеств А и В называется множество, обозначаемое AU В (см рис. 23), определяемое следующим: Определение 2.10 Пересечением множеств А и В называется множество. обозначаемое АГ\В (см. рис. 2.4), определяемое следующим: 'Картинки, интерпретирующие операции над множествами, называют диаграммами Ви- Виеин Диего (1834-1923) — ашлибский математик, получил ученую степень в области математики a 18У1 т. а Кембридже, где и работал всю жизнь Помимо математики интересовался исюрией и теологией. Широко известна работа Внеина по символической логике, являющаяся хорошим изложением идей Дж. Буля В этой книге впервые используются диаграммы, получившие затем имя Внеина. Диего Вмени написал н широко известным учебник по теории вероатпоелй.
2- ЛМрь, ч,оищге> в Ш10жега ОпЛражвд, a6/^"^y^^6°pvZZ2“' дттш""а‘ ‘Ы‘«-‘ты 19 хтта:равенств: У”^Руунозт„., „,.„. л„ тх еилм 0. .4 = А Закон двойного 1-ЛиВ=Дид) дополнения 2. АПВ = ВпА] Налшутатиеные законы ЗЛи(ВиС) = (.4ив)иС-Й/лигис,| 4 - А П {3 п С) = (Я п gj п с */ А п в п с, ! Ассоциативные законы 5 Ли(вЛС) = (лиг)п(ЛиС)| > 6 . А П (В U С) = (А п В) и (А П С) ( ЦРотрзбутизиые законы 8. Jn'B’а Яив j 9. A U А = А | 10АГ1А = А( IL AUI = I 12. 4П0 - <g 13. A U0 = А 14-Ani = A 15- Ли(4Пб)^Я 16. А П (Ди 5)^ А ^-AU'A^I 18- 4йЯ= 0. ittKOHbi де А/органа 'коконы иделтотентности Законы 0 и I Законы поглощения I
Справедливость 0-18 следует из определения операций над множествами и того, что предикаты относительно V и л образуют алгебру предикатов. Другие операции изд множествами Определение 2.11 Разностью множеств А и В называется множество, обозначаемое А \ В (А — В) (см. рис. 2.5), определяемое следующим: Ра\о{х) S Рв(х). Рис. 2.5: -А\В Очевидно, имеет место равенство: А\В = АГ)В. (2.2) Ясно, что разность множеств — некоммутативная операция. Действительно. пусть А ~ {1;2;3}: В — (1;2'.-5;7). Л\Я = {3); 0\А = {5;7}. Имеют место следующие равенства: ). .4\0 = А. 2. 0\ А = 0. 3. А\7 = 0. 4. /\4=Д. 5 А \ А - 0.
Определение 2.12 Симметрической разностью множеств А и В называют множество, обозначаемое ДАВ (А— В) (су. рис. 2.6/, определяемое следующим: 4 ДАВ = (,4\ В) U (В \ Д). Рис. 2.6: А&В Имеет место равенство: ААВ= (ДиВ)\(ЛПВ). (2 3) ► Радв{®)- VPb^(x)= Pa(-t)-Ps(-t)V Р/?(.т) = = Ра Ф Р^У V Рв to Р^)У Ра (х) ГЭД V Рв(т) - рДГ) = = (Рл(.т) v Рв(х)) Рв(-г) v (Pa to V Рв(х))/?а(т) = S P.4UB (х) Ppto v P.4UB (х) РА (.г) = = Рлив(х) (P^to v Рд to) В P.4usto - Р'^-У-Р^Т) = = Р.А<ов(х) Рапв(х) = P(A‘jB}\{AC'.B't{x). Имеют место следующие равенства: 1. ЛАВ - ВАД — коммутативность. 2. ЛА/ = А. 3. ЛА0 = А. Подмножество Важным понятием является понятие подмножества, Понятие подмножества — понятие относительное, то есть применяется к ларе множеств. Определение 2.13 Говорят, что множество А является подмножеством множества В (пишут А С В) тогдо и только тогда, когда каждый эпе-мент уножества А является элементом множества В (см. рис 2 7), то есть
57 Теорема 2.6 Для того, чтобы множество А являлось подмножеством множества В, необходимо и достаточно, чтобы А\В = 0. ► А с В Рв(х) = 1 <=*Рл(х) ->Рв(7) = 0 Рд(х) V Pfl(x) = о => Ва(г) • о => ^Рл(1).Рв(г) = О^РЛ\в(х)еО<=^Д\й^0. « Свойства «с» Теорема 2.7 место соотношения: Л А С А — рефлексивность. 2. (А с В)&(£? С С) ==> А С С — транзитивность. 3. (А С B)&(B С А) <==>• А -- В — антисимметричность. ► 1, Составим разность А \ А = 0 *=*• Ас А. 2. л СЙ»Рл(г)^Я>(.т)31 ) ВСС«Рв(.т) Рс(.т) S1J <=» (f4(x) - <Ш1)' (йвЯ РсМ) S 1 <=> _____<=> (РлМ'у ftW) (РвН у feW) s 1 <=» <=>PA(x)-PB(^)yPB(x)-PB(a:) У Рл(х)Рс(х) У Рв(х)-Рс(х) = «=»7ЭД-Рдаур^)-Рс(х)УРлИРс(х)УРвИ-Рс(х) = )<=» <=л Рл(х)(Рв(х)УРс(х)) у (Рл(х)УРв(х)) PcW =► ?>лоусл, =гпоусл. [ Ра {х) V Рс(х) = 1 - Ра(х) Рс(х) = 1 <==> А С С.
А С В <=> А \ В - 0 В С А <=> В\А~ 0 (А\ B)U(B\ ,4) = 0 <=> АДВ = 0 -t=> А == В. Множество всех подмножеств множества А обозначают Ясно, что 0 € 2Л и А € 2Л. Они называются несобственными подмножествами множества А. Остальные подмножества (если они есть) называются собственными. 0 Пример 2,8. Пусть А = {1,2,3). Ясно, что 21 - (1). {2}, (3}, {1.2), (1,3). (2,3), (1,2,3)} Замечания и вопросы в конце параграфа И ГП 1. Докажите самостоятельно, что А = В <=> АЛЛ = 0. I • I I • 1 2. Докажите, что пустое множество единственно. 3. Докажите, что нельзя выразить \ через Л. 4. Диаграммы Виенна являются лишь хорошей иллюстрацией и способом построения контрпримеров, а не методом доказательства равенств в теории множеств. 2.4 Отображения. Образ н прообраз множества при отображении. Свойства образов и прообразов Отображение (синоним — функция) — термин, знакомый по средней школе. В этом параграфе мы уточним понятие отображения как тройки объектов: двух множеств и правила, сопоставляющего элементам первого множества элементы второго множества, и определим два новых понятия, связанных с отображениями, — образ и прообраз множества при отображении. Пусть X и У — множества, f — отображение X а т. е. правило, сопоставляющее каждому элементу х 6 X вполне определенный элемент /(л:) е У. Если задано отображение из X в У, будем писать / : X —* 1 . Последняя запись «/ : .Y —» V» и означает, что под отображением мы понимаем тройку (X Г" /).
Напомним, что два отображения fa : X, —> }\ и Д : Хг —» Уг считают равными, если -Д - Хг, Yi — ¥г и fi =- fa (т. е. для любого .т е X, (= Хг) имеет место равенство Д(т) = /(12»- Определение 2.14 Пусть f X —• V, В С 1' Прообразом множества В при отображении J называется множество /-1(В)(С X), определяемое следующим: хеГЧв)^Кх)еВ. Определение 2.15 Пусть f : X —‘ У, А с X. Образом множества А при отображении f называют множество f(A) flZ Y), определяемое следующим: у 6 /(А) <=> /" 1 ({у)) П A f- 0. g Пример 2.9. Рассмотрим отображение синус: R —* R. Ясно, что sin"’([О; 2j) = {(2лтт;тг + 2яп]; п 6 Z}, ыи((0;тг/4)) = (0; 75/2); shrI((~3:-2j) = 0. Теорема 2.8 (с&ойства обратен н прообразов) Пусть f . X —> Г; А1, Лг С X: Bt, П-2 С ¥; тогда имеют место соотношения: 1) /(Л,ила), 2) /-‘(В!иВг) = /-,(В,)и/-,(В2)-, 3) HA,rlA'jcf(Ai'inf(A3y, 4) г 'IB.n/y-r'fB.lnr^B,). >. 1 к Пут у е ДЛ, и Аз) <=► /-1 {И) п (Л, и Аг) 0 =>(/-‘(Ы)ПЛ,)и(/-1({1/))ПЛ!) 54 0«=» IrWl'l'Ii /0)V (/-({!/)) nAJS4 0) <=» (»e/Hi))v(9e О»
2 ► Пусть :г 6 / ’1 № U Bf) <=> /(.г) € Bt U Н-г <=>№)es,)v№)ea|rf «(ier‘(Hi»v(.Te/ №))«= <=>.те/-1(в1)и/-'(в2).<2 3 ► Пусть уе ДЛ, ПЛ2) <=> / ’({»}) П(Л> ОЛ2) 0 <=» Ой пл,) п (г‘((у)) пл2) /0^. (ГЧЬ))пА, И0)л(/-'({у})пл2-/0) <= *=>уе/(Л)п/(Л2). -<3 4 ► Пусть X Е П В2) -г=^> (/(х) е вх) л(/(г) е в2) (X € ГЧВ1)) А (я- е г1(в2)) <=>!?/ чв,) пгЧВг). -<4 Приведем пример такого отображения, для которого /(Aj П Л2) / У(А1) П /(Л2) (т. е. когда с строгое): sin:R—* Я; А1=|0;я/2]; Л2 = [2тг;2/г + я/2]; sin(Aj) = {0; 1|; sin(A2) = (О', 1 (; sin(Ai)Dsin(Ag) = [O;1J; sin(At Г)А2) =siti(2>) = 0; С (0; 1]. 4 Композиция отображений Определение Z16 Пусть J : X -* У, У -» Z. Композицией опюбраже-mtii fug (сложным отображением) называется отображение д о f _ X —» Z, определяемое следующим: ='у№». Тео}»ема 2.9 (ассоциативность композиции) Если f : X —* Y, g : У —» Z, h : Z -> W, mo Vx(€ X) (fto(flo/))(x) =((/?o3)o/)(x). (2.4)
(h о (д о /))(т) Щд о = Л(г(/(.т))); ((Л од) о/)(т) (йод)(}(тУ) = h(g(f(x))), т е. левая часть (2.4) равна правой части. Замечания н вопросы в конце параграфа га Гр1 1. Запись и}*™ воспринимать как цельный символ и ] • I 1 • I ие путать с обратным отображением (которое не всегда существует). Однако когда f — обратимое отображение, прообраз 2? яри отображении / совпадает с образом В при отображении /-1- > 2. Приведите пример такою отображения, для которого образ пересечения множеств равен пересечению образов множеств
2.5 Типы отображений. Обратимость и одно-стороняя обратимость Сделаем в начале этого параграфа одно существенное замечание Типы отображений, введенные в нем — инъективные, сюръективные, биективные, — не дают полной классификации отображений Существуют сто-бражених, являющиеся «никакими», т. е. неинъективнымн, несюръективными, небиективными. Однако свойства,1 связанные с выделенными типами отображений — инъективность, сюръективность, биективность, — чрезвычайно полезны и важны при изучении отображений Выделяют три основных типа отображений' сюръективные, инъективные, биективные. Определите 2.17 Отображение f : X —* ¥ называется сюръективным, еслиУу($ У) 1 ({у}) 0. Определение 2.18 Отображение f . X — У называется инъективным. гегь-V,Tj(e X) VZ2(e X) ((Xi Х2) => f(xt) Определение 2.19 Отображение f : X Y называется биективным, если оно сюръективно и инъективно. 0 Пример 2.10. sin : R —г [—1; 1J — сюръективное отображение, но не инъективное (?). Пример 2.11. sin: [—к/2; tt/2J —> R— инъективное отображение, но не сюръективное (?). Пример 2.12. sin : [-?г/2;7г/2| —» [-1;I] — биективное отображение. Теорема 2.10 (о композиции инъективных отображений) Если J : X —» У и д : У —* Z — инъективные отображения, та до/: Х->2- инъективное отображение. ► Пусть Xi / .Т2, т. к. J — инъективно, то /(.Ti) /(•’"2). так как д — инъективно, то g(/(.ri)) -/ д(/(хя)). Последнее означает, что (go/)CTi) -/ (до/)(т2)- Инъективность композиции доказана. м
Теорема 2.11 (о композиции сюръективных отображений) Если f : X —• Y и д : У —• Z — сюръективные отображения, то до f : X —» Z — сюръективное отображение. ► Пусть z — произвольный элемент Z. Так как д : У —> Z сюръективно, то д' *({г}) 0 <==* .существует уо € (или, что то же самое, <?(уо) = г). Так как / — сюръективное отображение, то /~4{Sto}) 0 <=> существует .to G /^({Уо}) (или, что то же самое, Дхо) = Уо)- Ясно, что (д о/)(х0) =д(/(.т0)) = д(уо) = z. Значит, х0 € (до/)"'({*}) <=> (у ° /)-*({ 4) 0- а это и означает сюръективность до f. < Теорема 2.12 (о композиции биективных отображений) Если f : X —г Y и д : У —г Z — биективные отображения, то д о f : X —г Z — биективное отображение. Ясно, что эта теорема — следствие предыдущих. Удобно пользоваться (и мы это уже неявно делали при доказательстве теоремы 2.11). следующим равносильным определением сюръективности. Определение 2.20 Отображение f : X —> У сюръективно, если уравнение /(г) = у, где х — неизвестное, у — параметр, имеет хотя бы одно решение при любом значении параметра у 6 Y. Определение 2.21 Пусть X — множество. Тождественным па X отображением называется отображение ех '• X —> X, определяемое следующим: ех(х) = х, Vx е X- Ясяо. что тождественные отображения играют роль нейтральных элементов в композиции, т. е. для любого / : X —» У имеет место /(т) =-- (еу о /)(х) --- (/оеА-)(х), Vx 6 X, т, е. / =еу о / := / о ед-. Определение 2.22 Отображение J : X —• У называется обратимым слева (справа), если существует отображение /£1 : У X (fnl : У -* XI такое, что /л1о/^ех (2.5) =еу). (2.6)
Определение 2,23 Отображение f : X —» У называется. обратимым, если существует отображение f~l : У —> X такое, что J ’о/= еА; /°/”1 -еу. (2 ?) Критерии односторонней обратимости и критерий обратимости Теорема 2.13 (притерпй обратимости слева) Для того, чтобы отображение f : X —> У было обратимым слева, необходимо и достаточно, чтобы f было инъективным. ► Необходимость. ► Докажем ее от противного, т. е. предположим, что существует ненмъ-ектнвное отображение f : .Y —* У, которое обратимо слева. Неинъектив-ность f откачает, что существуют такие Т] и .т2 (€ X), что .tj .т3, а /("1) = /fe) Применим к обеим частям последнего равенства отображение Д’1 (сг-ществованне которого мы предположили), тогда . И'ИЫ)-- »(/л1 ° /)(Л ) = (/;'» Л(>’г) « ед-М “ ел (т2) <—> т, - .г-.. Последнее противоречит выбору Т) и х2 (г, /- х2). ч Необходимость. Достаточность. ► Представим У в виде У = f(X)U(Y\/(X)) и зададим отображение g : У —* X правилом такое, что /(т) - у, если у е /(X), Xq — произвольный фиксированный элемент X, ' ' если у € y\/(zY). Ясно, что отображение g и есть левое обратное к / ч Достаточность ч Суть дела проясняет следующая картинка (см рис 2 У)
РиС. 2.9. Точкам, в которых заканчиваются стрелки, сопоставляются начала стрелок, а точкам, не покрытым стрелками, — произвольная точка хо из X Теорема 2.14 (критерий обратимости справа) Дта того, чтобы отображение f : X —» У было обратимым справа, необходимо и достаточно, чтобы оно было сюръективно. ► Необходимость. ► Докажем се от противного, т. е. предположим, что существует такое отображение / ; X —► У, которое иесюръективно, не является обратимым справа. Несюръекгивность отображения / означает, что существует У) е У такое, что = 0- С другой стороны, yi = ey(yj = (/ 0 ~ /СЛ/Ой)/ Последняя цепочка равенства означает, что = /п!(У1) (€ X) принадлежит 1 ({yj}), а это противоречит тому, что /п!({У1}) = 0. ◄ Необходимость. Достаточность. ► Сюръективность f означает (см. определение 2.20). что уравнение ' (2 8) имеет хотя бы одно решение при любом у е У. Рассмотрим отображение g : Y —* X. заданное правилом д(у) .т, где х — какое-то решение уравнения (2.8) (которое существует) Очевидно, что это и есть правое обратное к /. < Достаточность. . ч
Теорема 2.15 (критерий обратимости) Дчя того, чтобы отображение j •. X —* Y было обратимым, необходимо и достаточно, чтобы f было биективным. ► Необходимость очевидна, так как обратимость отображения означает правую и левую обратимость, а значит, сюръективность и инъективность отображения (см. предыдущие теоремы), т. е. бнективность. Достаточность. ► Так как отображение / биективно, то оно. в частности, инъективно, и значит, имеет левое обратное отображение 1 : Y —, X такое, что /д 1 о / = ех, а так как / биективно, то оно. в частности, сюръективно, я значит, имеет правое обратное отображение /„“ : У —» X такое, что /о/n1 =ег. Покажем, что в этом случае /л 1 = /п 1 ’ что и завершит доказательство достаточности /л"1 = /л 1 0 eY - fn 1 ° (/ О /п ') = (/л1 ° Л °/п‘ сх о/п1 - /п1- 4 Достаточность. < Замечания и вопросы в конце параграфа рр! ЛД 1. Покажите, что теоремы, обратные к теоремам о композиция, Ш Ш не верны. 2. Приведите пример, показывающий. что ’ может быть не единственным. 3. То же самое, что и 2, только для /п 1. 4. Возможны ли варианты построения /л отличные от приведенного в доказательстве критерия обратимости слева9 5. Приведем мнемоническое правила, позволяющее запомнить, за обратимость с какой стороны отвечает инъективность, а с какой стороны — сюръективность. Для этого выпишем алфавитное упорядочение слов «инъективность» н «сюръективность». То. что оказалось слева, отвечает за обратимость слева, а то, что оказалось справа, отвечает за обратимость справа.
2.6 Семейства множеств и операции иад семействами В этом параграфе операции над множествами — дополнение, объединение и пересечение — будут распространены на случай, когда мы имеем дело с бесконечными наборами (семействами) множеств. Средством для этого являются операции навешивания кванторов, так как они являются обобщением Ли V (см. теорему 2.5) Определение 2.24 Пусть I — некоторое универсальное множество. J (f 0) — множество, называемое множеством индексов. (Оно может и не являться подмножеством универсального множества I.) Семейством множеств над универсальным множеством I, индексированным множеством индексов J, называется отображение множества J в 21. (Здесь 21 — множество всех подмножеств множества [.) Таким образом, задать семейство — значит указать правило, сопоставляющее каждому индексу' i из .7 вполне определенное подмножество универсального множества I. Для обозначения семейства используется запись, аналогичная обозначениям, применяемым для последовательностей. А именно: подмножество, соответствующее индексу г. обозначают не /(г), а А„ а все семейство обозначают не f: J —* 21, а {Яг}г£ц. В Пример 2.13. Пусть J /?v = [0; сю), I - С (С — множество комплексных чисел). Рассмотрим семейство {АГ),-ёд+ над С, заданное правилом ArMzecfH - И. Множества Ао и Я,- (г / 0) изображены на рис. 2.10. Пример 2Д4. Пусть / = (0; 2тт). Z = С. Рассмотрим семейство {7?и)ае(0;27г| над С, заданное правилом = {с 6 С | arg: - с»}, (argO — любой). На рис. 2.11 изображены множества Во и Ва (а / 0).
Пример 2.15. Пусть J — [0; 1]; 1 = б.'([(); i])—множество непрерывных на отрезке функций. Рассмотрим семейство {С,°(|0; 1])}|{=[о,1] над С’([0; 1]), заданное правилом с?(М) - (/ е е(1°; И) I /() = о}. На рисунке 2.12 условно изображено множество С',/2([0; 1|) — «паучок» всех графиков непрерывных на [0; 1) функций, обращающихся в 0 в точке х = 1/2, Пример 2.16. Пусть Л 0) — произвольное множество, J = I — X. Рассмотрим семейство ({т))г6х (семейство всех одноэлементных подмножеств X. Операции над семействами Сейчас мы определим три операции над семействами множеств: дополнение к семейству, объединение семейства, пересечение семейства Эти операции над семействами будем вводить, как и операции над множествами. используя связь между множествами и предикатами. Пусть задано семейство {Л,}iej над универсальным множеством I. Рассмотрим предикат ^.ч,(.т) «,т € .4,. .т е /. i е J». Это дву- местный предикат переменных х и г, т. е. семейство множеств — то же самое, что двуместный предикат, где одна переменная — из множества индексов, л другая — из универсального множества. Определение 2.25 Дополнением к семейству {.4,},cj над I называется семейство над !, обозначаемое определяемое предикатом Вернемся к примеру 2.5. Ясно, что АТ = {z е С | / г). Определение 2.26 Объединением семейства {.4,},fcj над J называется множество, обозначаемое (J1€j At. определяемое следующим
Ясно, что в примере 213 Аг ~С. r€Rh В примере 2.14 U В."С. а€(0,2л) 8 примере 2.15 «5l0.ll Здесь <_'°{[0,1]} — мнржество всех непрерывных на {0; 1] функций, обращающихся в ноль хотя бы в одной точке отрезка [0; 1}. В примере 2.(6 хг-Х Определение 2.27 Пересечением семейства {А,},^ j над I называется множество, обозначаемое П,£уА;, определяемое следующим:
Рис- 2.11: Ясно, что в примере 2.13 В примере 2-14 п Во= (О)- В примере 2.15 П Г?(«);1|)'{0(мГ *€[0;1] где через °ho ij обозначена функция, тогедественно равная 0 во всех точках отрезка \0; 11- В примере 2.16 если X — одноэлементное множество, если X содержит более одного элемента.
Ряс. 2.12; Ш Теорема 2.16 (законы де Моргана для семейств) Длялюбого семейства справедливо: Замечания и вопросы в конце параграфа 1. Самостоятельно докажите законы де Моргана для семейств. 2. Пусть у нас есть конечный набор Ai, А2, •••> Ап (все они подмножества одного и того же универсального множества). Рассмотрим множество J = |l;n]jv = {Т,2; Тогда набор множеств Аь Д-2...Ап можно рассматривать как семейство (A,)tCj. При этом, очевидно (см. теорему 2.4), выполнено AiUA2U---UAn = IJlCJAt; Aj Л А2 Л • • П An - QJ6J А<. 3. Из замечания 2 следует, что операции пересечения и объединения семейств обобщают обычные операции пересечения и объединения на случай семейств индексированных бесконечным множеством.
4. Пусть — семейство ъгножеств. и Ai э Аг Э Ах Э Аз Э • •.. Докажите, что Q Л = Р Ла, -- П А,, nN i€N nN 5. Справедливы ли равенства. »>Л\(и,£,Л,)=П,е/(Л\Л,); б)А\(п,61л.) = и,6,(л\л,); в> U|£J (П|€7 -г filei (Ui₽i 0 (n.€iA0U(n3£j^) =CWuj(AU53); (Uie; d (QfeJ = Bj)-
Глава 3 Элементы комбинаторики Спросил меня голос В пустыне дикой: — Много ли в море Растет земляники? — Столько же, сколько Селедок соленых Растет на березах И елках зеленых. 3.1 Что такое комбинаторика? Число элементов во множестве. Правило суммы Основным вопросом этой главы является вопрос «Сколько?» в различных вариантах, а основным способом ответа на этот вопрос является установление взаимно однозначного соответствия (осуществляемого биективным отображением) между множеством, в котором нам предстоит подсчитать количество элементов (т.е. ответить на вопрос «Сколько?»), и множеством, в котором количество элементов нам известно. Этот принцип подсчета — основной принцип комбинаторики — прекрасно изло-
жен С. Я. Маршаком в его переводах из английской детской поэзии. Эги строки мы и предпослали главе «Элементы комбинаторики» в качестве эпиграфа. Комбинаторика — раздел математики, посвященный способам подсчета числа элементов в конечных множествах. — имеет широкий круг приложений: теория вероятностей, теория информации, теория надежности, алгебраическая топология и алгебра и, наконец, математический анализ. Особенно полезными являются сами комбинаторные рассуждения. Они позволяют обойтись без излишнего формализма, и там, где эти принципы срабатывают, получаются красивые и понятные результаты. Ярким примером эффективности комбинаторного подхода является теория бинома Ньютона. Все красивые результаты — различные соотношения между биномиальными коэффициентами — имеют простое комбинаторное истолкование. Некоторые из этих соотношений будут приведены в нашем курсе. Число элементов в конечном множестве. Основной принцип комбинаторики В качестве утверждений, принимаемых без доказательства, возьмем следующие: 1. Отрезок натурального ряда [1;ч]д- = (1; 2; 3;..., п} содержит л элементов. 2. Если Ан В — множества и существует биективное отображение р: А —» В,то [А[ = |В|, где [А| — обозначение числа элементов во множестве А. 3. |0] =0. Вторая аксиома носит название «Основной принцип комбинаторики» и является главным рабочим инструментом комбинаторики (соответственно искусство решения комбинаторных задач и состоит в определении множеств А, В и построении биективного отображения реализующею основной принцип комбинаторики). Определение 3.1 Говорят, что отрезок натурального ряда [l;n|jv нумерует множество А если существует биективное отображение р : [1; nbv -»А.
Если задана нумерация р множества А. то применяют следующие обозначения: «i; p(2)d= a2‘,...;>p(n)^ а»-A - {ajjflgjag;. Утверждение 3.1 Если отрезок [1;п|м нумерует множество А то = н. Ясно, что оно является прямым следствием определения нумерации и основного принципа комбинаторики. Определение 3.2 Говорят, что множество А конечно, если существует такое натуральное числа яд, что отрезок 11;лл]л’ нумерует А, при этом |Л| = п,4. Утверждение 3,2 Число элементов в конечном множестве определено однозначно. ► Нам нужно показать, что число пЛ. фигурирующее в определении 3.2, для каждого конечного множества А единственно. Доказательство проведем от противного, т. е. предположим, что существует такое множество А, для которого существует по крайней мере два различных нумерующих отрезка р\ : [1; (пд)1к А-, р? • H;(’m)2]w -»А, где y?i , у?2 — биективные отображения и (»a)i / (»а)2- Не наружная общности, будем считать, что (пА)1 < (пд)2- Так как <Рг — биективное отображение, то оно обратимо, и обратное отображение (^2 ' : U; — биективно. Рассмотрим биективное отображение V’: |1;(па)1].ч-»|1;(пд)2]л/; =‘Рг1 01Pj-
Обозначим через Мг = max{V>(l); V’(2);. -.; V-((nx)i)}. Возможны два слу'оя: a) Mi = (пх)2; б) Mi < (ял)2. В случае б) ^"’(((пл^)) = 0, и мы получаем противоречие с биек-тивностью отображения ip. В случае а) обозначим через i М1 (е (1; (пл) i|n ) такой номер, что ) - Mi = и рассмотрим отображение V1: |1; (пд)11ж \ {ш,} -»[1; (пл)г- 1|n, равное Очевидно, отображение ipi биективно. Применив к тс же рассуждения, что мы применили к ip, мы либо получим противоречие, либо построим биективное отображение V>2 Н; \ {«Afi;«А/а) 1}: (пл)2 - 2)tf и т. д. Тогда мы за (nx)i — 1 шагов либо получим противоречие, либо построим биективное отображение : X —> У, где X - (1;(пл)х]к \ ;‘MlnA)l.i} У = [1; (пл)2 — (пх)1 + 1U. Очевидно, (Xf = I; [У( > 2. что противоречит биективноаи -1- 3,1.1 Правило суммы Теорема 3.1 Пусть А и В — конечные непересекающиеся множества (т. е. А П В = 0J, тогда
► Зафиксируем A, ipg : [1;|В|]л —» В нумерации А и В соответственно и рассмотрим отображение <?лив: М Ml + MIM - А и в. заданное правилом: ... _ (<рл(»), если 1 < i < |А], = (epfift- Ml), ^ли Ml <i < И)-Не- очевидно, р.чив — биективное отображение, тогда на основании основного принципа комбинаторики получаем Миг( = М1 + И •« Теорема 3.2 (следствие предыдущей) Пусть А, В — конечные множества, тогда м и е| = Ml + |В| - И П £ф (3.2) ► Очевидно, Ми#1 — AU(B\A). и множества А и В\А не пересекаются, тогда из равенства (3./) получим Мий| = МЖ-Е*\Л|. (3.3) Очевидно, В - (А П В) и (В \ А), и множества Ап В и S \ А не пересекаются, тогда из равенства (3.1) получаем |В|«|ЛПВ| + |В\Л|, (3 4) подставляя выражение для [В \ AI из (3.4) в (3.3), получаем Ми5| = М1 + |В)-ИпВ|. « Теорема 3.3 (правило включении-исключении) Пусть А1,Аг...Ап — конечные множества, тогда J.4, U Л2 и • и Л„| = (И,) + |Л2| + • + И„|) - (И1 ПЛ2| + +1Л1пЛ3Н - - + |Л„_1 ПЛ„|) + (|Л, пл, пЛ3| +. + 4|Л„.гпЛ„-1 H.4J)-------+ (-О—ЧА, ПЛ2П--ПЛ„| = -Ей.!- Е И.П/У+ Е и.пл,плк(---------------------------3
В правой части формулы (3.5), называемой формулой включения-исключения, стоят с чередующимися знаками скобки, содержащие всевозможные попарные пересечения множеств А1,Аз, . .,А„, пересечения троек множеств и т д. ► Докажем формулу включения-исключения по индукции. Справедливость ее для случая п - 2 доказана в лрсдыду/цей теореме Рассмотрим индуктивный переход, т. е. предположим, что формула верна для любых (п — 1) множеств и покажем, что тогда она верна и для п множеств. |Ai и А2 (J-• • U А,>( = |(Ai UA2 U-•• UAu-J и Ап| = теорема 3.2, , . . , , , , = |Aj U Ai U -I |АП| - -|(Aj U Аг U - • • U A„_)) П А„| = = Е|А|- Е -! (-1)” 2И1П---пл„_1|'| ]А„[ - (Ai Л А,О U (А2 Л Ап) U • • • U (Ап. j Л А„) •здесь (п- и скобка -Еи.|-г<Еп |А. ЛА?| + V |А,П А;П Afc|---н (-1)’1 -21Д1П • • • ЛA„_i[ - <i<3<k<n-l (Еи.пл,н Е 4 Ч‘=1 |(Л,ПЛ„)Г1(-»^А.,)| + КА^А^ЛС-ЬСА^ГЧА^ЛА^-... П А„) Л (Аз Л Ап) п Л (А„. j п А„)|^ = 52lA|~ 52 И«ЛАУН- 52 HiHAjPAJ-------------+ (-l)n-1|Ai л а2л---лап|.
Здесь мы воспользовались равенствами: (А1 А Л„) А (А-2 А Ап) = Ai А А-2 А Ая (Ai А А„) А (А2 А А,,) А(А3 А Ап) = Ал А А2 А Аз А А„ (А, А А») П (А3 A AJ А • • • A (An-j A Art) = Ai А Аг А • • • А Ап- •« Теорема 3.4 (правило суммы) Если Aj, Ai, -> An — конечные попарно непересекающиеея множества (in. е. At A Aj = 0, г j), то £И,|. (3-6) »=1 Ясно, что это тривиальное следствие из предыдущей теоремы. Замечания и вопросы в конце параграфа рЛ ГЯ I. Дайте определение бесконечного множества (т. е. не являю-I • I I • I шегося конечным). 2. В конце доказательства утверждения 3.2 мы привели без доказательства утверждение о там. что не существует биективного отображения <р : X —- У, если /XI ~ I, a jl'f > 2. Докажите его самостоятельно. 3. Справедливо ли следующее утверждение: «Отображение | |, действующее из множества конечных множеств во мколество Z+ неотрицательных целых чисел, сопоставляющее конечному множеству число элементов в нем, сюръективно»? 4. В студенческой группе 25 человек, 13 из них знают английский язык, 12 — немецкий, 13 — французский, 4 человека знают английский и французский, 6 — английский и немецкий. 5 — немецкий и французский. Сколько студентов знают все три языка?
3.2 Декартово произведеиие множеств; множество степень Определение 33 Декартовым' произведением множеств XuY называется множество, обозначаемое XxY, элементами которого являются упорядоченные пары (х; у), где х € X, у € У. Равенство упорядоченных пар понимается в следующем смысле: пусть Z1 ~ (X^yi) U Z2~ (Х3',У2) (Z],Z2 € X х У) = Z2 (xt = = Уз). Теорема 3.5 Если X uY — конечные множества, то X х У — конечное множество и |ХхУ| = |Х|-|У| (3.7) ► Ясно, что в случае, когда одно из множеств X, У пусто, то и .¥ х У пусто и (3.7) тривиально выполнено. Рассмотрим случай, когда X и У — непустые множества. Зафиксируем в X нумерацию X = {з1,а-2,...,Х|А-|}. Ясно, что X х У — U {т,} х У и множества {тг) х У попарно не пересекаются, тогда по правилу суммы имеем: 1*1 . I* X Г| » £Ц«.) х У|. (3.8) ‘Декарт Рене (1596-1650) — выдающийся французский математик и философ, сын судьи из провинциального городка на юго-западе Франции Окончил иезуитский колледж, после чего посвятил даа года изучению математики. Затем путешествовал и пытался стять военный, однако слабое здоровье не позволило осуществить ему эти юношеские мечты. После окончания небольшой военной карьеры и путешествия по Европе Декарт провел несколько лет в Париже, где занимался изучением математики и философия, а также конструированием оптических приборов После этого периода обучения Декарт провел свыше 20 лет в Голландии, где им были сделаны основные математические и философские открытия Основным для нас в трудах Декарта является метод координат, а значит, все то, что теперь включают в аналитическую геометрию и лилейную алгебру. В 1649 г Р Декарт был иршлашен в Швецию королевой Кристиной для обучения ее философии Климат Швеции — земли между скалами и льдами (по выражению Декарта) — оказался для него нетюцхоцкицш Суровой зимой 1650 г Р Декарт скончался от пневмонии
Рассмотрим отображение /,: {i,} х Y —* У, действующее по правилу f№i-,yY) = у- Ясно, что fi — биективное отображение, тогда по основному принципу комбинаторики получаем |{*.) х Г| = |Г|. (3.9) Подставляя (3.9) в (3.8), получим; |Х| |ХхГ| = £|Г| = |Х|.|И Оп[>еделепие 3.4 Пусть X — множество u п 6 N. Определим декартовы степени множества X следующим: Хп = Х”-*1 х X. В Замечание. Традиционно п-я декартова степень множества R(C, Z) обозначается не Rn{Cn,Zn), а Rn(Cn, Zn); в последнее время входят в употребление обозначения ЯП(С",2’1), соответствующие определению 3.4. • Теорема 3.6 Если X — конечное множество, то |Х’Ч = |Х|”. (З.Ю) Ясно, что теорема 3.6 — следствие теоремЬ 3.5. га Задача 3.1. Из города Л в город В ведет три дороги, а из города В I • I в город С — 4 дороги. Сколькими способами можно добраться из АвС через В? ► Задача, конечно, очень проста. Однако она демонстрирует особенности задач по комбинаторике, которые создают трудности при решении. Укайсем на главную из этих особенностей.
Задача первоначально ([юрмулируется не как математическая, а как задача реальной жизни, и поэтому требуется се переработка в математическую задачу. При этом нужно отделить существенные факторы от несущественных (Как правило, нужно четко уяснить, что понимается под способом.) Действительно, если при подсчете способов мы будем учитывать время суток, скорость и способ перемещения (пешком, на автомобиле, велосипеде н т. п.), то задача становится чрезвычайно простой, а ответ ее вряд ли устроит составителя задачи. Ясно, что при учете указанных факторов ответ задачи: «Имеется бесконечное множество способов», Если же отвлечься от всех указанных Дикторов и под способом попасть из Л в С через В понимать упорядоченную пару (дорога, по которой перемешаемся из А в В; дорога, по которой перемещаемся из В в С), то решение задачи можно получить, используя понятие декартова произведения. Обозначим: АВ — множество дорог, ведущих из А в В; ВС — множество дорог, ведущих из В в С. Тогда математическая задача, к которой свелась исходная задача, выглядит так: «Найти число элементов в декартовом произведении АВ х ВС». Ясно, что [АВ х ВС( = [АВ\ |ВС[ = 3 • 4 12. Ответ: 12 способов. ' 4 га Задача 3.2. Из города А в город В ведет три дороги, из города ! • I В в город С — четыре; имеется также пдуь дорог из А в С, не проходящих через В. Сколькими способами можно попасть из А в С. используя указанные дороги? ► Множество всех способов добраться из А в С разобьем на непересе-кающиеся подмножества I и II. отнеся к первому способы добраться из А в С через В, а ко второму — способы добраться из А в С, минуя В. Тогда по правилу суммы «число способов попасть из А в С» = = [7| +177| *= \АВ х 7KV |77['= 3 - 4 + 5 := 17. Ответ: 17 способов. •
Определение 3.5 Пусть X и Y — непустые множества. Обозначим через Ух множество отображений, действующих из X в У, т. е. J € YX Y. Множество Vх называют множеством степень. Мы хотим доказать теорем)- о числе элементов во множестве степень, когда X и У — конечные множества. Доказательство опирается на две леммы. Лемма 3.1 Пусть X и У — конечные непустые множества и )Xj = 1, тогда Р'Х| = |У|. (3.11) ► Зафиксируем в X и У нумерации — = т = {и.и, ...siYib Занумеруем элементы множества Ух условием: Zl(--ri) =У1, /2(Х1) = №, •••, /|И(Х1) =У1Г|. Ясно, что нумерующий отрезок — |1; |У||дг. Лемма 3.2 Пусть X. У — конечные непустые множества, |zYJ > 2, т fe X, тогда |rA'| = |r|.|rA''W|. (3.12) ► Зафиксируем в X и У нумерации, выбрав такую нумерацию множества X, при которой X = .Т|Х|- Множество Ух представим в виде объединения попарно непересека-ющихся множеств A, (i = 1,2,..., |У|), отнеся / (е Ух) ко множеству А,, если Л*|Х|) = У»- По правилу суммы (равенство (3.6)) получаем: |i'xl = !U'M-=El-'1<l' <3-13>
Рассмотрим одно из множеств А>. Каждое отображение / Е Л, однозначно определяется своим ограничением (сужением) на множество -¥\{.т1х(}. (Стрелочная диаграмма любого отображения/€ А, содержит стрелку, ведущую из Х|Х) в у,) (см. рис. 3.1). Ясно, что |.4,|_|Гл'\<"^|1| = |Ул''М|. (3.14) Подставляя (3.14) в (3.13), получаем !>'*! - Теорема 3.7 Пусть X uY — конечные непустые множества, тогда Yx — конечное множество и |r*|=J>'|W. (3J5) ► Проведем доказательство методом математической индукции, взяв в качестве параметра индукции число элементов во множестве X. 1-Й шаг (случай |,Y — I). Применяя лемму 3.1, имеем: |1'Х1 = 1>'| = 1И1 41F
2-й шаг (индуктивный переход). Допустим, что утверждение теоремы справедливо для любого п-элсментного множества. Докажем, «по в этом случае оно справедливо и для множества X такого, что [Х| = п + 1. Зафиксируем в X произвольный элемент х и применим лемму 3.2. Множество X \ {т} содержит п элементов и к Ух\<*> применимо предположение иялукпик, тогда |УА'| - |Г| | = |У| = = |Г|.|Г|1*1-г = |г|1Ч Индуктивный переход, а значит, и вся теорема доказаны. ч @ Задача 3.3. В ВИИ работает* курьера—А,-В, С, D. Сколько существует способов разослать 7 писем в 7 различных организаций, если доставка осуществляется только курьерами, работающими в НИИ? ► Ясно, что мы не учитываем время суток, погодные условия, скорость доставки н т. п. Каждый способ доставки однозначно определяется указанием для каждого письма, какой из курьеров его доставляет. Т. е. способ доставки — отображение из множества ннсем П во множество курьеров К. Тогда «число способов доставки писем» = = |КП| = ||<|1п1 = 4’ = 16384 способа < га Задача 3.4. В кабину лифта 9-этажного дома вошло 3 пассажира: I • I А. В, С, каждый ><з которых может выйти на любом из 8 этажей. Сколькими способами может осуществиться разгрузка лифта? ► Способ разгрузки — это указание, на каком этаже выходит пассажир А, на каком — В, па каком — С, т. е. сопоставление пвесажнру этажа, на котором он выходит. Обозначим через П множество пассажиров, Э — множество этажей выхода. Значит, «число способов осуществления разгрузки лифта» = |эИ| = ]Э|1П| = 83 = 512. , >4
Вопросы в конце параграфа @1. Попробуйте самостоятельно составить комбинаторные задачи, сводящиеся к нахождению числа элементов в декартовом произведении множеств и во множестве степень. 2. Справедливы ли теоремы, обратные к теоремам 1-3 этого параграфа, и как они формулируются? 3. Попробуйте доказать коммутативность сложения и умножения натуральных чисел, используя комбинаторный подход. 3.3 Множества инъективных и биективных отображений. Размещения, перестановки В этом параграфе мы продолжим изучение множеетва Ух, вернее, его подмножеств: множества инъективных отображений — InYx и множества биективных отображений — BiYx (в случве, когда |,¥| = |У|). Затем будут введены основные комбинаторные понятия — размещения н перестановки. Множество ннъективых отображений Опдкделеиие 3.6 Пусть X, У —непустые множества. Обозначим через !п Ух множество инъективных отображении из X в Y, т. е. f С /П1- * •₽=» ! : X У — инъективное отображение. Теорема 3.8 (критерий 11епустоты в случае конечных множеств) Пусть X, У — конечные непустые множества. Для того, чтобы In Vх было непусто, необходимо и достаточно, чтобы ]У| > |,Y|. к Необходимость. ► Так как In Yx непусто, то существует f ; X Y инъективное отображение. Представим У в виде
Очевидно, 1/(Х)| = |Х|. Действительно, если рассмотреть отображение Д : X —» f(X}, заданное правилом Л(т) = f(x) (Vx € X), то Д биективно. Тогда на основании основного принцнна комбинаторики получаем, что |Х[ := |Д(Х)| - |/(Х)|. Множества f(X} и У \/(Х) не пересекаются, поэтому in = mi+in/(*)i= = |Х| 4- [У\/(X)j > |Х|. Необходимость Достаточность ► По условию теоремы, 1 < |Х| < |У| < сю. Зафиксируем нумерации множеств X и У, т. е. X = {яца-г; - - • У = {viJUa; • • • ;viv|}- Рассмотрим отображение ут X —>Y, порожденное этими нумерациями, — = У1. Ясно, что это отображение инъективно, и значит, множество InYx непусто. Достаточность Лемма 3.3 Пусть X, У — непустые конечные множества и 1 = |Х| < |У| <оо, тогда |/пГх| = |Г|. (3.16) ► Очевидно, в случае [.Y] — 1 любое отображение f : X —•Y инъективно, т. е. /пУх = У А, тогда, используя лемму 3.1 нз предыдущего параграфа, получаем |/пУх| = |Ух| = |У[. -< Лемма 3.4 Пусть X, Y — непустые конечные множества, 1 < [Х| < |yj < оо и х € X, тогда |/пГх| = |V|-|3n(V\{!,))x'<->|, . (3.17) где у е У.
► Как и при доказательстве леммы 3.2 предыдущего параграфа, зафиксируем в X такую нумерацию, что х = ®;х|- Представим 1пУх в виде объединения попароо непересекающихся множеств Bi (г = 1,2., |У|), отнеся / (б Jn Yx} ко множеству В<, если Z(®|X1) = Vi- Используя правило суммы (равенство (3.6)), получаем ||У| I |У| |/пГ*| = рВ, =£|В,|. (3.18) Рассмотрим одно из множеств Каждое отображение f € Bi однозначно определяется своим ограничением на множество X \ Ясно, что yt g f(X \ {Ж|а*|}) инъективности /. При этом — инъективно. Стрелочная диаграмма любого отображения f € Bi содержит стрелку, ведущую из T|xj в у,, а стрелки, ведущие из X \ (.т}, ведут в l' \ {yt} «инъективно» (см. рис. 3.2). .?2 л 4 < Х|Х| Рис. 3.2: Стрелки, указанные пунктиром, Тогда Уз / • У> \ Ч^УП'1-1 \ У|У| — ограничение / на X \ {i|х।}. |В.| = |/п(У\(yi})XUWl- (3.19)
Поскольку нумерация в Y зафиксирована произвольно, а эти рассуждения можно повторить для любой нумерации, можно записать |Bi| = \ln(Y\(3.20) где т е X, у € У. Подставляя (3.20) в (3.18), получаем |/п Г* | = У |В(| = У |/n (Y \ (!/))?'<-> I = = |Г| |/ч’(У \ «ех, y£Y. Теорема 3.9 Пусть X, Y — конечные непустые множества, 1 < |Х| |У| < оо, тогда |/пУх1 = |У| - (jy| - 1) • (|У[ - 2)... (|У| - |Х| + 1) = |У|! (|У| ~ PW (3.21) (В средней части формулы (3.21) содержится |Х| сомножителей, первый из которых — наибольший, а каждый следующий меньше предыдущего на 1.) ► Проведем доказательство методом математической индукции, взяв в качестве параметра индукции число элементов во множестве X. 1-й шаг (Случай |Х| - 1). Применяя лемму 3.3, имеем • - 1П В правой части, как и требует в этом случае формула 3.21, один сомножитель — | У|. 2-й шаг (индуктивный переход). Допустим, что утверждение теоремы справедливо для любого п-элемекгного множества Докажем, что оно справедливо и для множества X такого, что |Л| — п + 1. Зафиксируем в X произвольный элемент т и применим лемму 3.4, |/пП'| = |Г| |/,|(Г\ы)*'<"11, ‘tx, yeY.
Множество X \ {.г) содержит п элементов, и к In(Y \ в последнем равенстве применимо предположение индукции, тогда - |Н (|У \Ы1 (1г \ Ь}| -1) (|у \ Ml - I* \ WI +1» -1ЛЛЫНХ1-1 !у|. ((|Г| „ ;). (|У| _ 2) (|У| _, „ w11)) = = М «|Г| -1) (|Г| -2). ..(И - 1*1 + 1)). Индуктивный переход, а значит, и вся теорема доказаны. @ Задача 3.5, Имеется 15 различных книг и книжная полка, вмещающая 12 книг. Сколько способов заполнить книжную полку, используя имеющиеся книги ? ► Ясно, что мы не учитываем время суток, толщину книг и т. п,, однако можно считать, что на полке имеются места (отсскн) для книг — 1 -е место, 2-е место, ..12-е место. Заполнить полку — это значит сопоставить месту на полке книгу, его (место) заполняющую, т.е заполнить полк)’ — это значит задать отображение из множества мест во множество книг, при этом, поскольку любая книга не может заполнить более одного места, отображения инъекгивиы. Значит, «число способов заполнения книжной полки» = = |/пЛ'м| = |7<| - (JAJ - 1) ... ()Л'1 - |М) 4-1) - 15 • 14... 5 - 4 = $ = =-- 217945728000 способов Здесь К — множество книг, М — множество мест на книжной полке -ч га Задача 3.6. В кабину лифта 9-этажного дома вошло 3 пассажира, I • I каждый из них может выйти на любом из 8-ми этажей. Сколько способов разгрузки лифта, при которых на каждбм этаже выходит не более одного пассажира? ► Ясно, что «число способов разгрузки» = iz ]7п ЭП| - 8 • 7 • 6 3:46. (Обозначения см. в задаче 3.4.) -ч Определение 3.7 Пусть X и Y — множества, обозначим через Bi Yx множество биективных отображений множества X во множество У. f G BiYx J . X -+Y — биективное отображение. Теорема 3.10 (критерий непусготы BiYx) Пусть X, Y — непустые конечные множества. Для того чтобы В •. Yx 0, необходимо и достаточно, чтобы m-in к Необходимость ► Пусть / е BiYx, тогда, так как f сюръективно, то /(X) = У, а так как f — инъективно, то |/(Х)| = |Xj. Значит, — |К|. Необходимость Достаточность ► Зафиксируем нумерации в .Y и У. X = {ri:x2i- - ;*»}, У = (УьУз; - • - :1м). гдеп = |,Y| = |У|. Рассмотрим f : X -» Y, заданное правилом/(xj = у;. Ясно, что / биективно, т. с. Bi Yx / 0. Достаточность ◄ Теорема 3.11 Пусть X, У — конечные непустые множество и |,Y | = |У). Имеет место формула |^УХМЛР=|У|!, (3.22) где |Х|! = |Х|-(|Х|- 1)(|Л| — 2). -.2 • 1- ► Очевидно, в случае, когда |Х| = |У|, имеет место BiYx - lnY\ значит, по теореме 3.10 имеем: |«irA'| = |Znn|=jr|.(M-i)...i»in = |.Y|i. -«
Основные комбинаторные понятия Определение 3.8 Пусть X — непустое конечное множество, | - п, 1 < т < п: Размещениями длины пг элементов множества X называют инъективные отображения множества [IjttjJv в X. Обозначим через А.х множество размещений длины т элементов множества X, т. е. А£ = (3.23) а через — число размещений длины т элементов множества X, т. е. Л^=М1 (3-24) Теорема 3.12 Пусть 1 <т<п, тогда ' п! А™ = n(n - 1)... (п - т 4-1) = • JI Замечание 1. О! 1. ► Ясно, что теорема ЗЛО — переформулировка теоремы 3.9. Определение 3.9 Пусть X — конечное непустое множество, п = |Х |. Перестановками элементов множества X называют биективные отображения множества fl; ti]jv в X. Множество перестановок элементов X обозначают Рх, а число перестановок элементов X — через Р|х|, т. е. P|X|=JPx|. <3.25) Теорема 3.13 Пусть 1 < п < оо, тогда Рп =п!. (3.26) ► Ясно, что теорема 3.13 — переформулировка теоремы 3.11 Замечания и вопросы в конце параграфа 1?1 ГН !•. В обозначении А^ есть формальный след множества Л, I I Ш в записи А™ этот след исчез, можно в этом случае в качестве порождающего множества X такого, что |Х| — п, взять X -[1;п]х. 2. То же самое, что и замечание 1, только для случая Рп. 3. Сколькими способами можно заполнить полку, вмещающую 17 книг, если ока используется студентом, у которого 17 различных книг? 4. Коробка для хранения 12 дискет имеет нумерованные отсеки, вмещающие каждый по одной дискете. Сколько способов заполнения короб кн 12-ю различными дискетами? 11-ю различными дискетами? 10-ю дискетами? 5. У студента 15 дискет с различной информацией. Для хранения дискет он приобрел коробку (см. 4). Сколькими способами он может заполнить коробку' (так, что в ней все отсеки заполнены)? То же самое, только студент может хранить в коробке 12,11,10,..., 1,0 дискет? 6. У студента 15 дискет с различной информацией. Для хранения дискет он приобрел синюю и красную коробки (см. 4) Сколько способов размещения всех дискет на хранение? 3.4 Бином Ньютона. Сочетания. Сочетания с повторениями Этот параграф посвящен перечислению подмножеств конечных множеств и приложениям полученных результатов в теории бинома Ньютона. Начнем этот параграф с бинома Ньютона, т. е. с разложения по степеням а, Ь бинома (а + b)n (п € Z+). Ясно, что (а +1>)° — 1; (а + 6)" = ^С”о"-'“4га (nSJV). (3.27) Коэффициенты (% называются биномиальными коэффиннедтами (для них применяют и другие обозначения: C(n,i) и (£)). Какой комбинаторный смысл имеют эти коэффициенты? Правая часть формулы (3.27)
получается после возведений а + b в n-ю степень {т. е. перемножения скобок (а + Ъ) и приведения подобных членов), т. е. мы имеем произведение скобок (а+ i>)i • (а + Ь)2.(а + Ъ)л и должны раскрыть скобки, привести подобные и расположить слагаемые по убывающим степеням а. Коэффициент С™ стоит при выражении а”_"’6’и, слагаемые такого вида получаются при раскрытии скобок в тех случаях, когда из т скобок берется t>, из оставшихся п — т скобок —- а. Т, е. С™ — это число способов выбора т скобок из имеющихся п скобок. Выбирая т скобок из имеющихся п скобок, мы выделяем гл-элемеитное подмножество из п-элемектаого множества. Заметим, что из этого комбинаторного истолкования коэффициентов бинома мы. еще не зная формулы для числа m-элементных подмножеств данного п-элеменгного множества, получаем следующее свойство: 0<т<п. (3.28) ► а и b входят в разложения бинома равноправно, тогда (о + Ь)" = У2С"о“-"Ч>"‘ = т=О = (6+о)- = >п=0 Приравнивая коэффициенты при одинаковых степенях в даух разложениях одного и того же бинома, получаем равенство (3.28). Определение 3.10 Пусть X — конечное непустое множество, 0 < т < п = |Х|. Сочетаниями длины т из элементов множества X называют т-элементные подмножества X. Множество сочетаний длины т из элементов множества X обозначают С™, а их число — т. е. !С£| = С™. Теорема 3.14 Пусть n > 1 и 0 <т<п, тогда fjm _ 4» _ n(n ~ 1). • • (П-* 1) _ " - Рт ~ т! тЦп -т)Г 3 29}
> Пусть X — какое-нибудь «-элементное множество. Рассмотрим множество Разобьем его на непересекающиеся подмножества по следующему принципу: два инъективных отображения /, д : [1; mj/v —» X относятся к одному и тому же подмножеству разбиения тогда и только тогда, когда (т. е. если образы области определения совпадают). Образ области определения — отрезка натурального ряда при инъективном отображении является m-элементным подмножеством X. Ясно, что любое m-элементное подмножество X является образом хотя бы одного инъективного отображения отрезка натурального ряда [1; в X, т. е. множеств разбиения множества 1пХ^;т^ мы получим столько, сколько существует пг-элемекгиых подмножеств X, т. е. С™. Займемся одним из множеств разбиения. В нем находятся все инъективные отображения отрезка в X, дающие одни и тот же образ области определения. Ясно, что их столько, сколько биективных отображений из [1;пг]/у в этот образ, т. е. Рт. Тогда, применяя правило суммы, получим: 4? = |А?1 = в.| - Z IB.I = Z р» = или 6'“ € 0 Замечание. Ясно, что = |{0}| = 1, если положить = 1, Ро — 1, то формула (3.29) будет справедлива и для случая т - 0. га Задача 3.7. В студенческой группе 25 человек. Сколькими способа-I • I ми можно выбрать из них 3-х человек для участия в профсоюзной конференции факультета? ► Ясно, что представители, выбранные на конференцию, •— трехэлементное подмножество множества студентов группы, тогда «число способов выбора» « = 2300. «4
Напомним, что если X множество, то 2х- — множество всех его подмножеств. (Напомним, что обозначение «2х» введено в конце § 2.4.) Теорема 3.15 Для любого конечного множества X имеет место равенство |2Л'| = 2т. (3.30) ► Ясно, что в случае, когда X = 0 (<=> |Х| = 0), формула (3,30) верна. Рассмотрим случай, когда X — непустое множестао. т е. когда п ~ |Х[ > 1. Зафиксируем нумерацию X, т. е. X = -J-Tn}. Каждому А € 2х (<==? А с X) сопоставим (X (-разрядное двоичное число &А — (<11ДЙ2Д . • • Й|Л'|д)2« положив (I, если х, G А, О, если г, & А. Ясно, что отображение 2х —> «множество (Х|-разрядных двоичных чисел», действующее по правилу <р(А) ~dA, является биективным отображением. Тогда, по основному принципу комбинаторики, \2Х| ~ («множество (Х (-разрядных двоичных чисел») = 2|Х|. •« Проведем еще одно доказательство теоремы 3.15 в случаен = |Х) > 1. ► Рассмотрим множество {0; 1 }А — множество отображений из множества X в двухэлементное множество {0; 1} и сопоставим каждому А е 2х (А С X) отображение Хл : X - {0; 1) (G {0; 1)х), заданное правилом: {1, если х € А, Л 0, если х $А.
Ясно, что F ; 2х -+ {0; 1). действующее по правилу ЯЛ) = Ха, является биективным отображением, тогда по основному принципу комбинаторики 2Х - |{0; 1р | ТК,р<* 3’7 |(0; 1)|W = 21Я 4 Некоторые свойства биномиальных коэффициентов Теорема 3.16 Пусть 0 <т <п. Имеют место следующие свойства: 1) С™ = С”~,п: 2) с;^!1 = С'™+1 + С™; 31 £>’” = 2" т=Х> ► I) ► Соотношение 1 мы уже доказали (см. формулу (3.28)) Используя симметрию бинома, его можно легко доказать и воспользовавшись формулой С" = ” m!(n — ni)! Действительно, тогда ” (п-т)’(п-(п-тп.))! (п —т)!тн! Приведем еще одно {третье!) комбинаторное доказательство. Зафиксируем X — п-элемеитное множество и рассмотрим С* — множество «/-элементных- подмножеств X- Рассмотрим отображение v?: -> С^-т, заданное правилом ^(Л)=Х\А. Ясно, что ip — биективное отображение из С™ в CJ-”1. Тогда, по основному принципу комбинаторики,
2) ► Зафиксируем в (v + 1)-элемеитном множестве X нумерацию, т. с. X = {xi;t2; ... ;.т„;.т„+1}. Разобьем множество С’^‘4 1 на два непересекающихся множества I н II, отнеся ко множеству I такие (т + 1)-элементные подмножества X, которые не содержат хп+ь а ко второму такие (т + 1)-элсмеитные подмножества X, которые содержат тп+,. Ясно, что с"Й‘ -|сГ‘1 = И + т И = = <^+'- I"' = “ с" В пояснении нуждается только последнее равенство. Действительно, любое (т + 1)-элемектаое подмножество X, содержащее xn+i. может быть получено добавлением к m-элемеитному подмножеству множества X \ {xll+i} элемента тп+1. >2 3) ► Пусть X — n-элементное множество, тогда 2Х - U Сл!- Множества С'£ не пересекаются, т. е. Сд- 0Сд- =0, если ? / j. Тогда, по правилу суммы 2” = i2xi = Z;ra = Sc” <3 Приведем еще одно доказательство соотношения 3 и теоремы 3.15 {ее третье доказательство). Если X — произвольное «-элементное множество, то
Соотношение (Ж сг1 + С™ (3.31) для бинома Ньютона означает, что коэффициент в биноме степени п+1 получается суммированием двух соседних коэффициентов в биноме fl-ой степени. На этом свойстве основана конструкция знаменитого треугольника Паскаля2 (см. рис. 3.3а; рис. 3.36). Равенство (3.31) называют соотношением Паскаля. с? с? С! <*0 z-il z->2 С'2 '•'2 *-"2 с3° Cl Cl ^ci V cl Рис. 3.3a. 6 Рис. 3.36. 2Пасклль Блез (1623-1662} — знаменитый французский математик, известен вместе с Декартом И Ферма как основоположник аналитической геометрии, ему принадлежат основные результаты а теории конических сечений. Результаты Паскаля стали основополагающими для раздела «Геометрическая вероятность»
Теорема 3.17 (тождество Ъапдермонда1) Пусть m,n,r € Z+ и О <г < min{n?,n}, тогда С(т + п, г} ® У^С(т,г — г) • С(п,г). (3.32) ► Возьмем произвольное т+«-элементное множество X и зафиксируем в нем произвольную нумерацию % — {Xl! X?' . • J Хт', ^тп+1> • • • i •’£«+,>}• Множество Сгх г-злементных подмножеств множества X разобьем на непересекаюшиеся подмножества S, (i = 0,1,2,, г), отнеся А (^ Сх) ко множеству S< тогда и только тогда, когда 2?2! - • •; Tm+n}| -i- (3.33) Ясно, что при этом |лР){лг1;.«2;--•;«,«}[ == г - I. (3.34) Мы получили, что Ci-.-Us., (3.35) «=0 а так как множества S, попарно не пересекаются, по правилу суммы (теорема 3.6) получаем cr„„ = |cy=£|s.l 1=0 3Вавдермо«д Александр-Теофия (1735-1796). Родители прочили сыну иртыкаямок» ка- пый вклад s теорию клгебракчеекях уравнений, теорию опраделителей (в т. ч. знаменитый опредалктель Вандермонда) и до. Математическое творчество Вандермонда было кратким,
3 4. Бином Ньютона. Сочетания Сочетания с повторениями 101 Займемся одним из множеств St (напомним, что St состоит из таких г-элементных подмножеств множества X, для которых выполнено (3.33) и (3.34)). Разобьем множество S, на попарно непересекающиеся подмножества Stk по следующему правилу: два подмножества А и В из S, относятся к одному Stk тогда и только тогда, когда A Q{®1, х2,.... ®го} = в Q{ii,х2,..., Хт}. (3.37) Пересечения, стоящие в левой и правой частя (3.37), являются (см. (3.34)) г — i-элемекгными подмножествами множества {ть х2,..., х,п]. Таких подмножеств С£*‘. Тем самым мы доказали, что существует С^"‘ множеств Sjjt (т. е. k принимает значения от 1 до С£"‘). По правилу суммы получим |S,| = U S.J = £ |S^1. (3.38) I k=l Рассмотрим множество Stfc (fc фиксировано). Ясно, что = <3-39> Подставляя (3.39) в (3.38). получаем сгт-' = (з.4О) Подставляя теперь (3.40) в (3.36), получаем с^+„ = £с^-с;. •4 Следствие. В теореме 3.17 тип фигурируют равноправно, поэтому справедливо где т,п € Z+, 0 < г < min{m,n}.
Сочетания с повторениями га Задача 3.8. В кондитерской продаются пирожные 5-ти видов (бис-Ы квитиые, корзиночки, буше, эклеры, трубочки). Сколькими способами можно купить 12 пирожных? ► Покупка взаимно однозначно определяется набором неотрицательных чисел (xi, Х2,.. .,хз), гдех, — количество приобретаемых пирожных г-го вида (.Г2 = 0 означает, что мы решили не покупать «корзиночки»). Тогда наша задача равносильна задаче о числе решений уравнения х-I + 12 + Хз + Х4 + Ед = 12, (3.42) Сделаем взаимно однозначную замену yt = xt + 1. тогда наша задача равносильна задаче о числе решений уравнения У[ -I У2 + УЗ 4- У4 + Уд - 17, Vi 6 N. (3.43) На прямой отметим 17 точек. Каждому решению уравнения (3.43) сопоставим картинку из отмеченных точек и разделяющих черточек, которав строится следующим образом. Если — решение уравне- ния (3.43), т. е. набор из пяти натуральных чисел, сумма которых равна 17 (например (1,2,7,2,6)). то отсчитаем слева направо у\ отмеченных точек и за последней отсчитанной точкой ставим вертикальную разделяющую черточку. Затем отсчитываем от полученной черточки у? точек и ставим следующую разделяющую черточку и т. д. Какое бы решение уравнения (3.43) мы ни брали, последняя (пятая) черточка будет стоять за последней (семнадцатой) отмеченной точкой Договоримся последнюю черточку не рисовать. Решению (1,2,7,2,6) соответствует рис 3.4. Рис 3.4. Ясно, что соответствие между решениями и картинками биективное. Подсчитаем количество квртинок Каждая картинка взаимно однозначно определяется набором из четырех промежутков между точками, в которых проставляются разделяющие черточки.
Число способов выбора четырех промежутков из имеющихся 16 равно Ofc. Таким образом, число способов покупки двенадцати пирожных, если имеется 5 видов пирожных, равно -s-i 16-151413 _ - L - 1-2-3-4 ~ 182°' ч Определение 3.11 Задачами на сочетания с повторениями длины п из т видов называют задачи, сводящиеся к нахождению числа решений уравнений Х1 4 Х2 4- ••• 4- хт = п, ж, £ Z+. (3.44) Теорема 3.18 Число сочетаний с повторениями длины п из т видов равно rT+m-i- ► Можно дословно повторить решение задачи о пирожных, начиная с уравнения (3.44). ч Вопросы в конце параграфа 1. Приведите комбинаторное доказательство того факта, что сумма I • I биномиальных коэффициентов, стоящих на четных местах в разложении бинома («4- Ь)п по степеням а, Ь, равна сумме коэффициентов, стоящих на нечетных местах. 2. Сколько различных «слов» можно составить, переставляя буквы слова «арбуз»? 3. То же самое для слова «математика». 4. Сравнивания задачи 3 и 4. попробуйте ввести понятие «перестановка с повторениями» и получить формулу для числа перестановок с повторениями. 3.5 Число сюръективных отображений В этом параграф мы получим формулу (к сожалению, не очень компактную) для числа сюръективных отображений и некоторые следствия из нее.
Обозначим через зигУх множество сюръективных отображений, действующих из X в У, Через -вигУх обозначим множество отображений, действующих из X в У и не обладающих свойством сюръективности. Ясно, что sur УА" = Ух \ (-.sur)'*) (3.45) и. если X и У конечные множества, то |suryA| = |УХ| — |“>5игУА |. (3.46) Попробуем вычислить |->suryx |. Зафиксируем в У произвольную нумерацию — У = . ,У|У|}- Пусть Аи V {/ е >'А' | /-‘(А/) = 0, и с >'} тогда -^игГЛ = U Л„. (3.47) MtCj, К сожалению, множества А» не являются попарно неперссекающи-мися, и мы не можем воспользоваться правилом суммы и вынуждены применить фортуну включения-исключения: НиГ*| = | и Ли|= £ И.«|- £ Ил,| + Мес* Мес*, м<-с$. + £ HMl-'-' + t-l)1’'1-2 £ Ил/Н- (-1)1’3-‘|Лг|. Мес?, мес^'1 Ясно, что Ау = 0; (3.48) = 1(П ....7<Л)Л'1 = (|1'ЬЧ|А|. (3.«) Учитывая (3,49), получаем £ M«l-c‘r|(iИ-Ч,л', <з.з») AfeCj-
Воспользуемся (3.48) и (3.50) и вернемся к вычислению |-<8игУх|. “С^СП - 1)И -Cfr|(|Y| -2)М +... + (-l)l1'l-3c|l^2m-(|T|-2))m + + (-1 )ll'l"2c|lf1H1(| П - (|П- 1 ))|х| + + - П1*1 - Cfy,(|Y| - 2)'xl + - . + + (-1)l''H3C|iy|l~22lx| + (-1 )ly|-‘С^1. (3,51) Из (3.46) и (3.51) получаем следующую теорему. Теорема 3.19 Пусть X, Y — конечные непустые множества. Тогда |»rYx| = |Y|И - C|V,(|YI - l)|xl + cfM(ln - 2)W - + + (-l)l'',-2C1ly'l"22|x| +'(-1)lrhIC^I~\ (3.52) Ясно, что в случае, когда |Х| = |У|, surYx = Biyx, и мы получаем Следствие 3.1 Имеет место формула: n!=n"-Cj(„-1)"+Cj(„-2)”- -С2(п-3)"+-.. + (.~1)”-,СГ1. (3-53) Если 1 < |Х| < |У|, множество suryx = 0,имы получаем Следствие 3.2 Пусть т < п, m, п € N. Тогда справедлива формула: n” = Cj(„ - 1 )” - Cj(n - 2)” + • + (-1 )"-3c;-22m + + ("1)"_2СГ1. (3-54) Формулы (3.53) и (3.54) неожиданны и непривычны. Проверим их на конкретных п пт. Подставим в (3.53) п = 4: 24=4! =44 - С] -34+С424 — С3 = = 256-4-81 +6-16 —4 = = 256 - 324 + 96-4 = 24. Подставим в (3.54) п - 4, т = 3: 64 = 43 = С’ • З3 - Cj 23 + Cf = = 4-27-6-8 + 4 = 108-48 + 4 = 64.
Вопросы в конце параграфа К] Пусть-¥ = {1,2,3}. У = {1,2}. I • I 1. Проверьте, что |surY'A’| = 6. 2. Найдите множество suryx. 3. Найдите множество-’StirУх. 4. Формулы (3.53) и (3.54). может быть, и не так важны, однако мы привели их из-за необычной «техники» их доказательства.
Глава 4 Отношения Эта небольшая глава посвящена отношениям и операциям над ними. С отношениями мы имеем дело каждый день, таковыми являются отношение равенства на произвольном множестве, отношения <, <, >, > на множестве аещественных чисел, отношения подобия фнтур на плоскости и т. п. Оказывается, что и числовые функции можно рассматривать как частный случай отношений. При этом легче понять, что означает обратимость функции и т. п. В этом ваедении все упомянутые отношения двуместны. Можно рассматривать и п-местные (п > 2) отношения, однако наибольшее внимание мы уделим двуместным отношениям. 4.1 n-местные отношения. Булевы алгебры отношений и матриц 1. п-местиые отношения Определение 4.1 Пусть Х^.Х-з, - Хп — непустые множества, п-мес-тным отношением. заданным на Xj х Хг х ••• х Хп, называют подмножество S декартова произведения Xi х Хг х х Хп. Об п-ке (х^.то: • •,гп) говорят. что она связана отношением S, если , г„) S, или не связана отношением S, если (х(;.Г2;. . ;яп) $ S.
В Пример 4.1. Рассмотрим на декартовой плоскости Л2 — R х R множество S — окружность единичного радиуса с центром в начале координат. Ясно, что лара (Х1,.тг) связана двуместным отношением S' тогда и только тогда, когда Пример 4.2. Рассмотрим трехместное отношение на R\ заданное следующим (*Ь .Тз) 6 s -4=> 3-f 1 г3. Ясно, что S — параболоид вращения с вершиной в начале координат и осью вращения О.т3 (см. рис. 4.1). Пример 4 J. Рассмотрим двуместное (о бинарное) отношение на R2, заданное следующим (хь^г) 6 S < т3. Ясно, что S — полуплоскость, лежащая выше биссектрисы 1-го и 1(1-го координатных углов, и сама биссектриса (см. рис. 4.2). Рис. 4.1
4 1. п-местные отношения Вуяевы алгебры отношений и матриц 109 Рис. 4.2 Для дауместных (бинарных) отношений вместо записи (х, у) € 5' принята запись ха,у, а если ясно, о каком S идет речь, то пишут .тау (за наиболее распространенными отношениями закреплены обозначения«-», «<>>, «<», «>», «>», «С») 2. Булева алгебра отношений Зафиксируем X, Y—непустые множества и рассмотрим множество R(X х Y} — множество бинарных отношений на X х У. Введем на R(X х У) операции дополнения, объединения, пересечения. Определение 4.2 Дополнением по отношению а,, порожденному множеством S, называется отношение а„ порожденное множеством S — дополнением S относительно X х У, т. е. та,у *=> ?asy. Определение 4.3 Объединением (пересечением) отношений as и QT на~ зывается отношение а$Уат (asP.aT). порожденное множеством SuT
de/ xas U ату xas^Ty xas П ату <==> xas^ry) Пример 4.4. Рассмотрим на Я2 отношения < и >, тогда т < и > у — тривиальное отношение, которое связывает между собой любые два аеществеиных числа. Теорема 4.1 Множество R(X х У) образует относительно операции дополнения, объединения, пересечения булеву алгебру, т. е. для них (отношении) выполняется 19 основных равенств булевой алгебры. (Доказательство следугш из определения операций над отношениями и теоремы о том, что множества относительно операций дополнения, объединения и пересечения образуют булеву алгебру.) 3. Булева алгебра матриц Пусть X и У — конечные непустые множества. Зафиксируем нумерацию в X н в У, т. е. X ={xi;x2;-..;.T)xj}; У = (уьУ2,--»У|Г|). Рассмотрим на X х У бинарное отношение а. Поставим ему в соответствие матрицу Д* размера |Л| х [У| с элементами (Aa)tJ(e {0; 1}), определенную следующим 1, если xtay}; О, если .T,apj. Справедливо и обратное: если X я У — конечные непустые нумерованные множества и А — произвольная |Х( х |У|«0-1» матрица («• (A)v е (0:1}), то существует бинарное отношение а на X х У такое, что Аа А.
4 1. n-мес'гные отношения Ьулевы алгебры отношений и матриц Ш Таким образом, между множеством R(X Я Y) бинарных отношений на X х Y (X и у — непустые конечные нумерованные множества) и множеством «0-1» матриц размера |Х| х |У| существует взаимно однозначное соответствие — сопоставление бинарному отношению его матрицы. Значит, булевы операции над «0-1» матрицами размера mxn можно вводить, используя булевы операции над бинарными отношениями, положив X = У = М;«)аг с их естественной нумерацией. Приме]) 4.5. Пусть 1001 1101, В = 0010. 0100 / \0101 Тогда (0000 0000 0100 Замечание 4.1. Ясно, что в битовых операциях имеют место равенства: М)о = (А}у (AuB)v =(A)V V(B)v (AnB)iJ = (A)vA(B),j (4.1) Теорема 4.2 Множество В(гн х п) - «О-1» матриц (булевых матриц) размера т х п образует булеву алгебру относительна операций- дополнения. объединения, пересечения, т.е. для булевых матриц выполнено 19 основных соотношений булевой алгебры.
4. Композиция бинарных отношений. Булево произведение матриц Определение 4.4 Пусть а — бинарное отношение па X хУ, 0 — бинарное отношение на У х Z. Определим композицию бинарных отношений а о 0 как бинарное отношение на X х Z, заданное следующим: хао0г <=> Эу((хау)(у0г)) = 1. Очевидно, что композиция ассоциативна, т. е. z ' (а о 0)о-у - а о (Доу) и, вообще говоря, не коммутативна, т. е. существуют а и 0 такие, что ао0 -/ 0о а. Отмеченное выше соответствие между бинарными отношениями на конечных множествах и булевыми матрицами порождает операцию булева умножения «0-1» матриц. (Композиции отношений соответствует булево произведение матриц.) Ясно, что оно определено следующим правилом’ Определение 4.5 Пусть А — булева матрица размера тхр с элементами (Д)1?, В — булева матрица размера р х г. с элементами (В),}. Булерым произведением матриц Д В называется булева матрица Дх]Вразмера тхп с -элементами (Дх1В)ц. определенными равенствам (ЛНВ),, = V(A),tA(B)t,. Ясно, «по булево умножение матриц ассоциативно, т. е. (Л0В)[хр - ЛЕХКВ0С) (4.2) и, вообще говоря, нс коммутативно, т. е. существуют такие матрицы А и В, для которых Д{х]В ± В04. (4.3) Замечания и вопросы в конце параграфа. га ГП 1. Мы определили булевы операции для двуместных отноше-Ш Ы ний. Ясно, что они определяются точно так же для отношений любой местности. 2. Как скатывается на матрице Д, бинарного отношения а на X х У изменение нумерации Х\ изменение нумерации )-? 3. Приведите пример таких отношений, для которых о о0 Ф 0оа. 4. Приведите пример таких булевых матриц, для которых Дх]с В0Д 5. Приведите пример таких отношений, для которых а о 0 — 0 о а. 6. Приведите пример таких булевых матриц, для которых Дх]В = В[х|Д 7. Пусть А — квадратная п х п булева матрица. Определим ее булевы натуральные степени, положив дШ _ А- Л0 = Л[хр1; /10 = д1Дх]л; ...;/|1Е1] = л1В[х]л. Докажите, что ______ 8, Докажите, что для любой п х п булевой матрицы А имеет место:
4.2 Бинарные отношения на множестве. Свойства бинарных отношений Определение 4.6 Бинарным отношением на множестве X называется бинарное (двуместное) отношение на X х X. В Пример 4.7. Пусть X заданное правилом: = R. Рассмотрим бинарное отношение а, </е/ 2 2 !«£/<=> X = У*. Пример 4.8. Пусть X = R. Рассмотрим бинарное отношение 0, заданное правилом: Х0У х2 < у2. Пример 4.9. Пусть X — С (С — множество комплексных чисел). Рассмотрим бинарное отношение 7, заданное правилом: 2,732 |Z1| = |Z2|. Пример 4.10. Рассмотрим на С бинарное отношение 5, заданное правилом: г1б22 (Re*, < Re32)^(bnzi = Im z2). Выделяют следующие основные свойства бинарных отношений: рефлексивность, транзитивность, симметричность, антисимметричность, а затем с помощью присутствия определенной комбинации этих свойств выделяют два важнейших типа бинарных отношений: отношения порядка и отношения эквивалентности. Определение 4.7 Бинарное отношение а на X называется рефлексивным, если V.t (хах) = 1. Т. е. бинарное отношение о, порожденное множествам Sa, называется рефлексивным, если множество Ба, порождающее а, содержит целиком
4.2- Бинарные отношения па Множестве, Свойства бинарных отношений 115 диагональ декартова квадрата X к X — diag(X X X) = (J {(«; ®)}. Определение 4,8 Бинарное отношение а на X называется транзитивным, если УхЧуУх ([xoiyfatyctz) —> (хаг)) = 1, (VxVyVz ((хау)1с(уах) =* (am))). Определение 4.9 Бинарное отношение а на X называется симметричным, если УхУу((хогу)---> (уосх)) = L (VxVy((xay) ==> (уа®)}}. Т. е. бинарное отношение а на X симметрично, если множество Sa, его порождающее, расположено симметрично относительно diag(X х X) (см. рис. -4.3). Рис. 4.3 . Определение 4.10 Бинарное отношение а на X называется антисимметричным, вали '^x'iy^xay^^yax) —» (® = у)) = 1. (VxVy((®ay)&(ya®) =4- (х ~ у)))
'Г е бинарное отношение а на X антисимметрично. если множество его порождающее, не содержит ни одной пары [хыличиых точен, симметричных относительно diag(X х Л) (см. рис -J /). X Рис. 4.4
Вопросы в конце параграфа га 1. Приведите примеры рефлексивных отношений. I • I 2. Приведите примеры отношений, не являющихся рефлексивными. 3. Приведите примеры симметричных отношений. 4. Приведите примеры отношений, не являющихся симметричными. 5. Приведите примеры транзитивных отношений. 6. Приведите примеры отношений, не являющихся транзитивными. 7. Приведите примеры антисимметричных отношений. 8. Приведите примеры отношений, не являющихся антисимметричными. 9. Для приведенных вами в вопросах 1-8 отношений проверьте наличие и отсутствие остальных, выделенных определениями 4.6-4 10 свойств. 4.3 Отношение порядка и доминирование Оп|юделеннс 4,11 Бинарное отношение а на X называется отношением порядка на X, гачи оно рефлексивно, транзитивно и антисимметрично. Классическим примером отношен на порядка является отношение < на R. Ясно, что отношение 6 (см. пример 4.2) является отношением порядка на С. Отношение порядка а на X называется отношением линейного порядка на X (линейным порядком на X). если VzVy((.roy) V (уат)) = 1. В противном случае порядок называется частичным. То есть отношение порядка на X является линейным порядком, если любые два элемента множества X сравнимы этим отношением. Ясно, что отношение < на R является отношением линейного порядка, а отношение 6 на С — частичного порядка, так как 1-Н/52 - 2t и 2 -21 /1 + 1. В Пример 4.12. Рассмотрим произвольное множество А и на множестве 2Л — бинарное отношение С. Ясно, что с является отношением порядка, причем если < 1 — порядок линейный, а если |Л| > 2 — частичный.
Пара (Х,л). где а — бинарное отношение на X, начинается упорядоченным множеством, если а — отношение порядка на Л; линейно-упорядоченным множеством, если а — линейный порядок; частично-упорядоченным множеством, если а — частичный порядок. Ясно, что (/?,<) — линейно-упорядоченное множество, а (С,5) (см. пример 4.2) — частично-унорядочснное множество. Пусть (X, а) — упорядоченное множество, определим на X еще одно биварное отношение — доминирование. Определение 4Л2 Говорят, чпю у (€ X) доминирует над х (е X) по отношению порядка a (nutuym xday), если 1) х / у; 2) хау; 3) Vz ((xaz)k(zay) —• (х = z) v (z = у)) = 1. В Пример 4ЛЗ. Рассмотрим (N, <). Ясно, что 4 доминирует над 3, 5 над 4. Пример 4Л4. Пусть ( = {1;2;3}. На множестве 2<; = {0, (]}, {2}, {3},{1;2}, {1;3}, {2;3},£} рассмотрим отношения с, dc. Элементы множества 2е- изобразим точками, а пару точек .т, у соединим стрелкой от х к у, если xdcy. Тогда мы получим (см. рис. 4.5): Этот рисунок (-S- граф) называется диаграммой Хассе, или диаграммой доминирования. Определение 4ЛЗ Пусть (X, а) — упорядоченное множество. Последовательность {.rt}JL0 (xt € X) называется цепью доминирующих элементов длины и, соединяющей х с у, если выполнены два условия' 1) х — xq. у — хп: 2) Xi-idart г — 1,2...п.
Теорема 4 J (о цепях доминирующих элементов/ Пусть (ж, а) — конечное (]Х | < <х>) упорядоченное множество, х,у € X, х у и хау, тогда существует цепь доминирующих элементов, соединяющая х су. ► Для каждой пары (х, у) такой, что хау, х у, в конечном упорядоченном множестае (X, а) можно ввести характеристику 0(х, у) — «число элементов, лежащих между х и у (говорят, что г лежит между х и у, если (zrtz)<k(ztty)&(z x)&(z у))». Теораму будем доказывать индукцией по 0(х, у). Шаг I. хау, х у. 0(х,у) = 0. Это означает, что у доминирует над х. Положим .то = х, х\ = у — искомая цепь построена. Индуктивный переход. Допустим, утверждение теоремы справедливо для любых'двух элемекгов i/ и <д множества X таких, что < «о. Докажем, что тогда теорема справедлива для любых х, у таких, что 0(х,у) = по + 1. Зафиксируем какой-либо элемент г, лежащий между х и у. Ясно, что 0(х.г)<па; 0(z,y)<nQ. Тогда по предположению индукции существуют: цепь доминирующих элементов соединяющая тег, и цель {.т<2) }”До> соединяющая z с у. Рассмотрим последовательность {г,}?Хо заданную правилом: {.тр1, если 0 < i < пхс (2) . , если пхс < г < пгг + п1у. Ясно, что {т.}”Хо п‘>< — искомая цепь доминирующих элементов. Индуктивный переход а значит, и вся теорема доказаны. ч Смысл доказанной теоремы 4.3 состоит в том, что в конечном упорядоченном множестве (X, а) порядок полностью восстанавливается цепями доминирующих элементов Вопросы в конце параграфа 1. Прежде чем сформулировать вопросы, определим важные понятия, связанные с отношением порядка:
— пусть (-Х,а) упорядоченное множество и А С X. Элемент ад/ е А (ат е .4) называется наибольшим (наименьшим) элементом множества А, если для любого элемента а & А выполнено «а«л/ («-»««)• — элемент а' е А называется максимальным (минимальным) элементом в А. если для любого элемента я 6 А выполнено а'аа => а' = а, (ааа1 => а' ~ а}. Ясно, что если рассмотреть (И, <) во множестве (0; 1]. то элемент I является и наибольшим, и максимальным, а наименьшего и минимального элемента нет. 2. Рассмотрим упорядоченное множество (2^1,2-3),С) (пример 4.3) и А = {{1}, {2,3}, {1,3}, {1,2,3}}. В нем {1,2,3} — наибольший элемент, (1,2,3} — максимальный элемент, {!}, {2,3}, {1,3} — минимальные элементы, наименьшего элемента нет. та 3. Рассмотрим (С, <5) (см пример 4.2). ПуСть А — множество точек I • I комплексной плоскости, удовлетворяющих условию' a) z е А <==> |z| < 3; б)г€Д <=> (1 <Rez < 2)&(-г < Im: < г). Найдите в А наибольший, наименьший, максимальные, минимальные элементы. 4. Докажите самостоятельно, что если во множестве су шествует наибольший элемент, то он единственен и является при этом единственным максимальным элементом То же самое справедливо и для наименьшего элемента. 5. Справедливы ли утверждения, обратные к утверждениям из вопроса 4? 4.4 Отношение эквивалентности Определение 4.14 Бинарное отношение а на множестве X называется отношением эквивалентности, если оно рефкксивно, симметрично и транзитивно. 0 Пример 4,15. Отношение “ на любом множестве X является отношением эквивалентности. Пример 4.15. Отношения а и 7 примеров 4 7 и 4.9 являются отношениями эквивалентности.
Определение 4.1$ Пусть а- отношение эквивалентности на X. х € X Рассмотрим множество *£ {у Е Xjxoty}, это множество называется классом эквивалентности (смежности) элемента х по отношению эквивалентности а. 0 Пример 4.13. |х]_ = {.г}; (3]а = {-1; 1}; [2 - г|.у—множество точек на комплексной плоскости, образующих окружность радиуса 'А с центром в начале координат (а из примерз 4.2, у из примера 4.9). Теорема 4.4 Пусть а — отношение эквивалентности на X. Множества [х]а обладают свойствами: I) (я)* 0 Vx Е X; 2) ЧхЧу ({х|а П {у|в / 0 =е> [х)а = |yja); 3) U>U = x. ► I) Так как а рефлексивно, то хах х Е [х)в, значит, [х]л 0. 3) Так как х е (х]а, то {х} С [х]а, тогда -•« (J ы с U м»с х ,4 4> z<-X z€X (последнее — J [x|ft с X выполнено, так как [,т]а с X). Мы получили. хвХ что в (4.4) слева и справа стоит множество X, значит, в этой цепочке все знаки С тривиальны, т е. заменяются на знак =. 2) Пусть [.т]а п [у]а -f- &. Покажем, что в этом случае [х]« = ;у],г Тривиальным является случай, когда х = у. Рассмотрим случай х у. Зафиксируем произвольную точку z t [х]яп[у]л и возьмем произвольную точку t Е [у]а. тогда мы. имеем: da) xaz (z е [х]а); б) yaz (г е [у]а), в) ycd (t Е [у]а) Так как а симметрично, то yaz <4. б1) zay. Из а) и б‘) по транзитивности а подучаем г) ray. Из в) и г) по транзитивности а получаем, что xat д) t е [лг)а. Так как t — произвольная точка (у]а, то мы доказали, что из (r]n п |yj« / 0 lyjo, с |x]a. Но условие [.т}в п [у]a / 0 o (у)а n [xja 7^ 0, значит, по доказанному и [х]а с [yja. но тогда мы доказали, что Ma = Ma- •«
Определение 4.16 Пусть а — отношение эквивалетннрсти на X. Фак-тор-множеством множества X по отношению а называется множество, обозначаемое Х/а, элементами которого явмюшся классы эквивалентности — [.г]а- 0 Пример 4.19. Пусть 7 — отношение эквивалентности на С, заданное правилом «• UJ = |г2| (пример 4-9), тогда С/? — множе- ство концентрических окружностей с центром в начале координат, включая и вырожденную — |z[ = 0. Пример 4.20. Пусть w —отношение эквивалентности на С, заданное правилом: Z^WZq <==> ImZi = 111122- C/w — множество горизонтальных прямых на плоскости. Мы видим, что при переходе от X к Х/а происходит изменение «природы» объектов (были точки комплексной плоскости — стали концентрические окружности (пример 4.19), горизонтальные прямые (пример 4.20)). Важным понятием, позволяющим вернуться к объектам исходной природы, является система различных представителей (СРП). Определение 4.17 Пусть а — отношение эквивалентности на X. Х'(С X} называется СРП по отношению эквивалентности а, если для любого х из X выполнено |Х'П[.т]а| = 1. В Пример 4.21. Ясно, что в качестве СРП примера 4.4 можно взять множество таких комплексных чисел z. у которых Im г -- 0. Re z > 0, Пример 4.22. Ясно, что в качестве СРП примера 4.20 можно взять множество таких комплексных чисел z, у которых Re г = 0. Теорема 4.5 Если а —отношение эквивалентности на X, то между X1 СРП по а и Х/а можно установить биективное соответствие, <•-частности, если |Х/а\ < оо, то |X'| = |-Y/or[. Вопросы в конце параграфа И 1. Постройте другие СРП для поимеров 4.4 я 4.4. I • I 2. Постройте пример множества X и отношения эквивалентности о на нем, для которых имеет место |Х| - сю, |А7а1 < сс- 3. Докажите, что если а — отношение эквивалентности на конечном множестве X, |Х| - fX/aj, то « — отношение равенства на X.
Глава 5 Булевы функции В этой главе мы возвращаемся к началу нашего курса. Мы знаем, что с каждой формулой алгебры высказываний f(xi,X2,. ,хп) связана функция /(Х1,Х2.хп), сопоставляющая каждому фиксированному набору высказывательных переменных значение истинности формулы (€ {0,1}). Поскольку в самих высказываниях нас интересует не содержательная часть, а только значение истинности, то фактически /(т^тг, • • • ,А») — отображение множества {0,1}" в {0, i}. Сейчас мы отойдем от схемы формула—функция и займемся изучением множества булевых функций — отображений {О, I}’1 в (0,1). Особенностью этого множества является следующее: все переменные и значения функций одной природы ({0,1}), что создает «широкий» простор для построения суперпозиций, так как вместо любой переменной можно подставить в булеву функцию булеву функцию. 5.1 Функция алгебры логики. Многочлены Же-галкина Множества Р2С0» Р? Определение 5.1 Пусть Е? = {0; 1}. Булевой функцией (функцией алгебры логики (0-1 функцией) от п переменных называется отображение
/ : Е± —» Е2 Напомним, что EX ~ Ei х Е2 х • • - х Е2. и раз .Множество булевых функций от п переменных обозначим Р2(п), п<- е-^(») = в?, а множество всех булевых функций обозначим через Р2, т. е. п = U 11=0 Теорема 5.1 |Р2(>.)|=22". ► Применим теоремы о |УХ| и |ХП| (теоремы 3,6. 3.7): |л(>1)I - 1е‘‘; I _ |£j|Ie;I „ U 22’ 4 Заметим, что множества A’af’i) конечны, но число элементов в них быстро растет в зависимости от п. Действительно, |Ш1 = 2, 1ВД1-4. 1ЗД|=16, ’ |Р2(3)| - 22’ = 256, |?>2(4}| = 65536, Уже для небольших п (3. 4, 5) множество Р2(п} становится «необозримым». Выпишем все функции нз множества А(2), задав их своими таблицами Столбцы значений функций из Л>(2} будем рассматривать как четы-рсхразрядные двоичные числа и будем их располагать (и нумеровать) в лексикографическом порядке (таблица 5.1). Среди этих функций много наших «хороших знакомых»: /о “ /15 -= 1, /1(Т1>^г) ~.Т1-Х2 /-(11,^2) = -Т1 V.T2. /1з(*Ь*2) = -Т) -» Х-2, А(-Т1,.тг) = 3-! ~.Т2, /з(-Т1,Т2) ~хг. /з^ь^г) = -Т5> /12(ll,X2) = Х2) ---^i /б(Х1,12} - ~ Х2 - Х1 фж3, /1) (хь Х2) = Х2 -» -Т1-
Таблица 5.1: ^2(2) .Т1 Х2 /о /1 А А А Л /в /т 0 0 0 0 0 0 0 0 0 0 0 1 Q 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 0 1 •Ti •Т2 Л А /ю /11 /12 /13 /14 /15 0 0 1 1 1 1 1 1 1 1 0 1 0 0 0 0 1. 1 1 1 1 0 0 0 1 1 0. 0 1 1 1 1 0 1 0 1 0 1 0 1 Функция /в = tj V .г2 называется функцией Пирса и обозначается rrt f тэ (стрелке Пирса), а функция /14(^1. ^2) = • х2 называется функ- цией Шеффера и обозначается л s |.Т2 (штрих Шеффера). Как мы увидим в дальнейшем, каждая из двух последних функций обладает удивительной способностью порождать все множество булевых функций. В этом и следующем параграфах мы более подробно изучим множество булевых функций, а вернее, алгебру булевых функций, т. е. множество этих функций, оснащенное операцией суперпозиции функций. Множество 0-1 функций уже возникало в наших рассмотрениях в связи с изучением формул алгебры высказываний (таковыми были /, где f — формула алгебры высказываний). Более того, мы уже знаем (после изучения теории нормальных форм), что любая функция из Р? реализуема в виде высказывательноя функции булевой формулы алгебры высказываний, т. е. использующей только V, л. Главной задачей, которую мы ставим на ближайшее время, является получение ответа на вопрос «Каким условиям должен удовлетворять набор функций {/i, f-2, • • •, /т}, чтобы любая функция алгебры логики могла быть реализована в виде формулы над набором (/ь А, • • • ./>п}'?»-Исчерпывающий ответ на этот вопрос дает теорема Поста, доказательство которой и составит основную содержательную часть этой главы. Алгебра булевых функций интересна с даух точек зрения — чисто математической и прикладной
С математической точки зрения это алгебра с «богатой» внутренней структурой, которая возникает из-за того, что асе переменные и множество значений функций имеют одну природу, поэтому в Р- можно вместо любой переменной подставлять функцию из Р^ (суперпозиция) и отождествлять переменные (т. е. осуществлять суперпозицию с тождественной функцией одной и той же переменной). С прикладной точки зрения интерес к О-i функциям основан на том, что вся современная электроника (в т. ч. компьютерная) — цифровая 0--1 электроника. Успехи, достигнутые в этой области, позволили применять 0-1 электронику и там, где, казалось, должна была вечно господствовать континуальная электроника — в радиовещания и в телевидении. Аудно-и видеозапись высокого качества, в том числе и системы телевидения высокого разрешения, лазерные проигрыватели и т. п. — это тоже системы 0-1 электроники. Многочлены Жегалкина В качестве «строительного материала» для построения многочленов Же-галкина1 используют константы 0 и 1 и символы переменных, в качестве «саязующего материала» — операции конъюнкции (&.) и сложения по mod 2 (ф, см. /в В табл. 5.1). Определение 5.2 Многочленом Жегалкина от переменных Д], а?2, • • - ,хп называется выражение, полученное изО; 1; .т, (i - 1,2.... ,п) путем применения конечного числа операций <fc, ф и скобок, определяющих порядок действий. g Пример 5.1. Р(Т1,;г2,*з) = (^1 -Х2 Ф 1) • (rt Ф 0-т2 • -тз Ф 1) Ф 1- 0 Замечание. Так как конъюнкция — идемпотентная операция (.т.т = .т), в алгебре логики нет степеней переменных. 'Жегалкнп В. И. (1869-1947) — профессор МГУ, основатель первого в стране научного семинара по математической логике, в котором работали П С Новиков, В М Глнвенко,
Определение 5.3 Каноническим многочленом Жегалкина от п переменных Xi, i-г,.. .а называется многочлен в«<3а: ^(.Г1, .т2,..., х„) ~ а0 ф abti ф а2т2 ф • • • Ф a„.tn ф Ф«12Х1Т2 ф «i3-Xj.T3 Ф •• -«fln-l.nln-iXw ФФ. •- Ф 52 °‘**г ‘*х‘гт»г -xik ® '® °I2 .Хп, 1<И<’2< -<и<» где «о,«ь ••• - Л.;»г- »*>- • - .«123. ,п € {0,1}. ГЛ Замеча1ше. Считается, что «•» сильнее, чем «ф». Теорема 5.2 Любой многочлен Жегалкина может быть приведен к каноническому виду. Доказательство следует из существования дистрибутивного закона о • (& Ф с) = « • b Ф ас (5.3) в правила приведения подобных О, если k - 2п, п ф N; а, если к = 2п — 3, и 6 N. (5.2) Имея дистрибутивный закон (5.1) и правило приведения подобных (5.2), помня об идемпотентности конъюнкции, для получения канонического многочлена Жегалкина нужно раскрыть скобки к привести подобные. 1р1 Пример 5.2. Вернемся к примеру 5.1. Р(Х1,.Т2,Х3) - (xjX2 ф 1) • (xi фох2хз ф 1} ф 3 = --- Т1Т2ФХ1 ФО -Х1Т2ТЗФ0 -X2X3 фХ112фХ1Х2ф1 ф I = ОФЗ • лч Ф 0 • ,г2 Ф 0 .тз ф 0 • ,TiX2 ф 0 - .Т1.Г3 ф .х2хэ ф ФО - Т1Х2х3. Получен канонический многочлен Жегалкина для исходного многочлена р(хь.т2,т3), «о -- 0, «! = 3, «2 = «3 - «12 ~ «И <*23 = «123 = О-
Для канонического многочлена часто используют сокращенную запись, в которой слагаемые с нулевыми коэффициентами опущены, а единичные коэффициенты не написаны, тогда p(xt,xa,x3) Теорема 5.3 Для любой функции алгебры логики cyufccmeyem ее представление в виде многочлена Жегалкина. ► Мы уже знаем (см. § 1.5), что любая функция алгебры логики может быть реализована (представлена) булевой формулой (например, СДНФ или СКНФ). потому для доказательства теоремы достаточно доказать существование многочлена Жегалкина для функции, реализованной булевой формулой, а для этого достаточно доказать, что операции V и выражаются через жегалкинские операции. Очевидно, справедливы формулы: ->« = а Ф1; аУ Ь = аЬф а ФЬ- (5.3) (5 4) Справедливость (5.3) следует из определения операции ф. Докажем (5.4): a УЬ = а - Ь = (а ф ])(Ь ф 1) Ф 3 = ^а-ЬФдфаФ1ф1 = ab Ф п ф //. Если теперь в булевой формуле исключить с помощью (5.3) и (5 4) отрицание и дизъюнкцию, то будет получен многочлен Жегалкина. < Теорема 5.4 Для любой функции f € /^(’О существует единственное представление каноническим многочленом Жегалкина. ► Существование представления каноническим многочленом следует из теорем 5.2 и 5.3. Докажем единственность. Обозначим через Q(n) множество канонических многочленов от п переменных. Каждый канонический многочлен порождает свой набор коэффициентов. Поэтому [£(я)| = |«множество наборов коэффициентов»]. Если мы докажем, что [«множество наборов коэффициентов»! ~ 22’ -- |/’2(ц)|, (5 5)
то это будет означать, что для каждой булевой функции от п переменных существует точно по одному представлению каноническим многочленом Жегалкина. Каждому набору индексов у коэффициентов многочлена поставим в соответствие (биективно) множество по следующему правилу: 0^0, 2^{2),... {„) {„), 12-<(l;2}1...,n-l,n-»{n-l;n},... 1,2,...,я-*{1;2;. Эти множества — подмножества [ 1; п|у, т. е. элементы множества 211,niw. Тогда |«множесгво индексов коэффициентов»! = |2',;”*л'| = = 2". Таким образом, набор коэффициентов канонического многочлена Жегалкина от п переменных можно рассматривать как 2п-разрядное двоичное число, а их количество равно 22". Соотношение (5.5) и вся теорема доказаны. < Следствие из теоремы 5.4. Различные канонические многочлены Жегалкина различны и как функции из Р^п). g Пример 5.3. Найти канонический многочлен Жегалкина для (XiVT2)-+SiX.2. ► 1-й способ (равносильные преобразования). (xi V 77) —» Т1Х2 “ X] VtJ VT1T2 = т?т2 V X1I2 ~ Х2- 2-п способ (метод неопределенных коэффициентов). (ll V 77) —< Х}Х2 = «О ф 01X1 Ф 02^2 ф 012X1X2. Подставляя последовательно в левую и правую части наборы значений переменных (0,0). (0,1). (1,0). (1,1). получаем (О VI) —’ОО^ыоФа^ОФаз-Офа^О'О О = «О
(0 V 0) —» 0 • 1 = 0 ф flj - 0 tb «2 ’ 1 'fe тцзО 1 I = аа (I VI) -» 1 •0 = 0фа1 • 1 Ф 1 -Офй121 О О = «1 (1 V 0) —г 3-1 = ОфО-1*3-1 Фа123 • 1 1 —’ 1 — 3 Ф G12J 1 = 1 Ф <*12, <*12 — о. Замечания и вопросы в конце параграфа 1. Мы перестали в этой главе использовать знак = («равносильно»), так как объектами нашего рассмотрения являются 0-1 функции, а формулы алгебры высказываний мы теперь рассматриваем квк один из способов задания этих функций. 2. Существенным «недостатком» канонического многочлена Жегалкина по сравнению с СДНФ и СКНФ является отсутствие простых алгоритмов восстановления по многочлену таблицы значений и по таблице значений многочлена. 3. Пусть f е Рз(п). 1 < i < п. Говорят, что функция не зависит от переменной .т, (т, — фиктивная переменная для /). если /(.Т1, Т2> • • Н, • • - ,т„) = - /(*1, - • •,т.-,,Т7, .т,hтпу Докажите, что г, — фиктивная переменная для / тогда и только тогда, когда канонический многочлен Жегалкина для функции f не содержит в своей сокращенной записи переменную .т>. S.2 Полнота и замкнутость. Классы Поста Ро и А Полнота и замкнутость Определение 5.4 Пусть ОТ С Р-2- Замыканием множества ОТ называется множество, обозначаемое [ОТ]. которое состоит из функций множества ОТ и функций, которые могут быть получены из функций множе ства ОТ путем отождествления переменных и суперпозиций (конечным их числом). 0 Пример 5.4. ОТ ~ (0,1} [ОТ] « {0;1} = ОТ. Пример 5.5. ОТ Р2, И} = Рл = ОТ. Пример 5.6. ОТ = {-»,V, А). [ОТ| = Р2 / ОТ. Определение 5.5 Множество ОТ называется замкнутым, если [ОТ] = ОТ. Определение 5.6 Множество ОТ называется полным, если [ОТ] ~ Р2. Очевидно, {0; 1} замкнуто и неполно, Р2 замкнуто и полно, {->,V, л) незамкнуто и полно. Теорема 5.5 Имеют место следующие свойства: 1. ОТ С [ОТ] VOT С Р3- 2. [[ОТ]] = [ОТ] VOT С Р2- 3. ОТ1 с М2 => [Отг] С [ОТ2] VOT1, ОТ2 С Р2. ► Справедливость теоремы следует из определения замыкания (определение 5.4). ч ТеО|>ема 5.6 Если OTL С ОТ2, то: I) если OTi полно, то ОТ2 полно; 2) если ОТ2 неполно, то OTi неполно. ► Очевидно, эта теорема следует из предыдущей и определения полноты (определение 5.6). ч Класс Ро и его свойства Определение 5.7 Пусть f € Р2(п). Говорят, что функция сохраняет ноль, если f(0,0,..., 0} = 0. Обозначим через Ро(п) множество функций от п переменных, сохраняющих ноль, а через Pg — множество всех функций, сохраняющих нош», т. 'е. Ро =-- U Pain). Н=0
Таблица 5 2: * — любой набор из 0 и I 0 Пример 5.7. О € Ро, 1 £ Ро; -Л Vj2 е Pu. xY • т2 е Ро, xv -> Т-2 $ Ро. Теорема 5.7 - |«»)| = 2- = = 1М. ► Любая функция алгебры логики может быть задана таблицей. Таблица функции из Ро характерна тем. что в столбце значений функции вверху (в строке, соответствующей нулевому набору значений переменных. см. табл. 5.2) стоит 0. Столбец значений функции, сохраняющей 0. можно понимать как 2’1-разрядное двоичное число, у которого в старшем разряде стоит 0. или как (2” - I)-разрядное двоичное число, а таких чисел 2(число разрядов) _ 22’1-! . Теорема 5.8 Класс Ро замкнут и неполон, т е. [РЪ] = Ро Р2- ► Так как тождественная функция сохраняет 0. а отождествление переменных — суперпозиция с тождественной функцией (подстановка тожде- -ственной функции на места отождествляемых переменных), то для доказательства замкнутости достаточно показать, что суперпозиция функций, сохраняющих ноль, сохраняет ноль. Пусть *(1/1, , Ут), /1 (ЯТ1, • • -, Т„), • • -, /ш(.Г1, 6 4 Джажем. что F(rt,... ,.r„) = (*lVt^/,) (*i. 6 Ро F(0,0,... ,0) = ,0),/г(0,.. .,0),..../„,(0,..., 0)) = л^Ф(0,0,...,0) *=Ро0- Теперь, когда замкнутость Ро доказана, неполнота Ро следует из существования функций, не сохраняющих 0 (см пример 5.7). ◄ Лемма 5.1 (о функции, не сохраняющей ноль) Если f $ Ро, то отождествлением всех ее переменных из нее получается константа I или •Mi > Пусть / £ Р0,т. е. /(0,0,.. .,0) - 1. Рассмотрим = f(x, х,... ,.т). Ясно, что <^>(0) - /(0,0,..., 0) = 1. Найдем <^>(1). Если </>(!) = 3, то ^>(i) = 1 — константа, если у?( L) = 0, то <р{х} — -хг. ◄ ДСласс Pi и его свойства Определение 5.8 Пусть f £ Рг(п). Говорят, что функция сохраняет единицу, если /(1,1,..., 1) = 1. Обозначим через Pt(n) множество функций от п переменных, сохра-мяющих единицу, а через Pi — множество всех функций, сохраняющих единицу, т. е. л-и g Пример 5.8. 1еРь 0(?Pi, херь -xr^Pi, xiv.t2€Pi, Х1 -Х2 € Pl, -»Х2 € Pl, Xi $-Pi- Очевидно, имеют место следующие теоремы и лемма. Теорема 5.9
Теорема 5.10 Класс Рх замкнут и неполон, т. е. [Л| = Pi 0 Pi. Лемма 5.2 (о функциях, нс сохраняющих едшшцу) Если f £ то отождествлением всех ее переменных из нее получается константа 0 или ~>х. Вопросы в конце параграфа И 1. Самостоятельно докажите теоремы 5.9, 5.10 и лемму о функции, Ы не сохраняющей единицу. 2. Чему равно |Р0(п}пР1(п)|, |Р0(п) и Pj(n)|? 3. Какие нзмножеста функций замкнуты: Р2(0). Р2(1),/’2(2) А (°) A(l), А(2), fb(O). P0(i), fb(2), 7’оПРь POUP>? 4. Какие из множеств функций полны: F2(0) ?’2(1) Р2(2) А(0) A(l), Pi(2), fb(O). Ро(1). Ро(2), /’оПЛ.Рои/’f? 5. Является ли объединение (пересечение) замкнутых множеств замкнутым множеством? 6. Является ли объединение (пересечение) полных множеств полным множеством? 7. Докажите, что [OTJ U [9Яг) с [9Л, и ДО2). 8. Приведите пример, когда [OTi ] и [ОТ2] является собственным подмножеством {OTti ийЯ2}. 5.3 Классы Поста L и S Класс L н его свойства Определение 5.9 Пусть /(х1(.т2,... ,хп) е 2^(н). Говорят, что функция f линейна, если ее канонический многочлен Жегалкина не содержит произведений переменных (т. е. коэффициенты при слагаемых, содержащих произведения переменных, равны нулю). Обозначим через Цп) множество линейных функций от п переменных, а через L — множество всех линейных функций, т. е i = U L<")' п=0 0 Пример 5.9. 1 е L, о е L, -<х = х ф 1 е L, • .т2 £ Е, ат V.t2 = Х1 -х2 фТ1 фт2 £ L, —> Х2 = УГ v Х-2 — (Xl ф 1) • Х2 ф (Xt ф 1) Ф Х2 — = Xi • х2 Ф-Т] Ф 1 L, Xi Фт2 € L. Теорема 5.11 > Линейный канонический многочлен Жегалкина от п переменных имеет вид ао Ф «1-Т1 фа2т2 ф •• • фа„хп. Он взаимно однозначно определяется набором своих коэффициентов' ooai...ап. Так как коэффициенты принимают значения во множестве Ег = {0; 1}. то набор коэффициентов можно рассматривать как (п + 1)-разрядное двоичное число, а их 2(число разрядов) _ 2«+1 Теорема 5.12 Класс L замкнут и неполон, т. е. (L] L 4 Р2. ► Так как тождественная ф икция линейна, то для доказательства замкнутости нужно доказать, что суперпозиция линейных функций — линейная функция. Пусть Ф(У1,У2.-..,Ут) := i>0 Ф^1У1 Ф &2У2 Ф ^Ьгпут, --,£») = аоФ01Х1 ® а2Т2 ф '"ффа, /2(х,,х2,... = Qq фа?.Т1 фа|х2ф •• Ффи, Х2, - - , -Тп) = «о* ® «1,;Г1 ® а2‘Х2 Ф • • • Ф «п Тп,
Образуем F(Ti...-Tn) (ф1р,—>*2.- •., J-n) = — bo ф bi(a$ фц'г1 ©ujlj®'"® unrn) ® Фб2(йо ф “fci ф 4^2 Ф - • Ф а^-Еп) ф ф'--ф Ф bm(a™ ®a™xt ©а^ Ф • • • Ф и(".гп) = Ср ФИГ] Ф С2Х2 Ф - Ф где со ~ Ьо Ф biaj ф Ьгац ф • • • ф Ь,пад', С) = diflj ф &2°1 Ф • • Ф Ьта™, <*2 ~ Ь1<32 Ф ^2(*2 ® ’ * ® bniQ™’ с„ - bia\ Ф Ь2а* ф • • - Ф Ь„,а™. Значит, Г(т1,х2,-..,1п) € £ и замкнутость L доказана. После того как замкнутость L доказана, неполнота L следует из существования нелинейных функций (см. пример 5.9). Лемма 5.3 (о нелинейной функции) Из произвольной нелинейной функции с помощью подстановки констант и отрицания можно получить конъюнкцию двух переменных. ► Пусть f(xt,x2,.. - ,i„) 0 L, значит, в ее каноническом многочлене Жегалкина присутствуют слагаемые, содержащие произведения каких-то переменных. Не нарушая общности, будем считать, что нелинейность проявилась за счет присутствия слагаемых, содержащих х । х2 (и, может быт ь, и другие переменные в качестве сомножнгелей в этих слагаемых). Представим тогда нашу функцию в виде: /(Т(, х2,..., хп) = ар Ф QiX| Ф а2х2 Ф - • • Ф апт,, Ф линейная часть каноническо! о многочлена &£г£2/}{х3,Х4,. . . ,1’п) Ф^1/2(-ГЗ,3'4,.. - ,2’п) Ф £2/:0х3,х4,... ,х„) ф/ч(а:з,^4,- • • ,-£»)• Слагаемое x}x2f\ (x3...получилось группировкой в нелинейной ча- сти всех слагаемых, содержащих 11^2, и вынесением iiZ2 за скобки, слагаемое x-if2{x3,... ,.тп) получилось группировкой в нелинейной час ж всех слагаемых, содержащих т, и не содержащих х2, и вынесением х} за скобки, аналогично получается х2/3(х3, х4,... ,r„), a f4(x3,x4,.. .,х„) остается от нелинейной части после выделения xix2j\, х,/2, x2f3. По нашему предположению, /[(х3,з;4,..., гп) / 0. Эго означает, что существует такой набор значений переменных х3...хп — а3, а4,..., ап, что /1(03,04, • • • ,«п) = 1- Подставляя константы а3,... из этого набора в функцию /, получаем ,х2) - f(x\,x2.a3>n4,... ,an) = а'о ©o'^i &а2х2 ф хjX2, (5.6) где °р — <ip ® «з<1з Фа-4 о 4 ф • • • ф апа„ ф f4(a3,a4,... , ап), «j =«1 ®ЛКз,й4........а„), ~а2 ©/з(йз>а’4,...,а„). Покажем, чго пользуясь средствами, разрешенными условиями леммы, можно избавиться в (5.6) от слагаемых первой степени. • Образуем функцию = SP(^j Ф &-х2 Ф 0), где а,0 6 {0; 1} (если а = 0, то xi Ф а = irj, если а - 1, то Xi ф а = если 0 - 0, то х2 ф 0 = х2, если 0 = 1, то х2 ф 0 = г2). = «о ФаП-Е) Фо) Ф 02(1'2 ®0) Ф(Т| Фсф2 ф 0) = (oq ®а'|Офа'20 фа/:/) ф (а, ф 0)xi + (а2 фа)тг ®х}х2- Полагая а — а2, 0 о,, получаем Ф(Х1,j?2) = (oq ®a'1a!2')®x1x2, если а(,фа'( -а2 ~ 0, то лемма доказана, а если = 1, то V’(a,i, х2) = XfX2 ф 1 -- rTxj. Рассмотрим функцию ______________ (^г, ^2) ~ ’/•’(^1,^2) =Х^Х2 = Х!Х2.
Класс S и его свойства Определение 5.10 Пусть € Р2. Говорят, что функция f самодвойственно, если /(art,.т2,...,л-„) = /*(х1,...,ж„) d-J -.,3^)- Обозначим через S(n) множество самодвойственных функций от п переменных, а через ,9 — множества всех самодвойственных функций, т. е. s= □»(>.). п-0 jQj Пример 5.10. О 0 S, 1 £ S, х е S, т е S, xi v.r2 g S, xt .т2 # S. Теорема 5.13 |S(»)| _ 22" ► Таблица самодвойственной функции характерна тем, что столбец ее значений переходит сам в себя при инвертировании (см. § 1.3). Тогда задание верхней половины столбца значений самодаойственной функции однозначно определяет нижнюю половину столбца функции разрядное двоичное число, а таких чисел 2(число разрядов) _ Q2n' Теорема 5.14 Класс самодвойственных функций замкнут и неполон, т. е. \S\ = S/P2. ► Так как тождественная функция самодвойственна, то для доказательства замкнутости нужно доказать, что суперпозиция самодвойственных функций является самодвойственной функцией. ПустьФ(у1,...,2/т),/](.т1,...,т„),...1/т(хь..,,хп) eS, Образуем F(xi,... ,хп) = (Фу.^/ЗСть... ,.т„). Найдем F*. По общему принципу двойственности (§ 1,3) имеем: ^‘(«ъ ®2, )(®1. Хп) *=* =/>=Л Самодвойственность F доказана. Теперь, когда замкнутость S доказана, неполнота S следует из существования несамодвойственкых функций (см. пример 5.10). < Лемма 5.4 (о несамодвонственнон функции) Излюбой несамодвойствен ной функции с помощью отрицания и отождествления переменных можно получить константы 0 « 1. ► Пусть f $ S. Это означает, что /(xt,... ,.тп) / значит, существует такой набор значений переменных (аь а2> • • •, ап), что /(й1,а2,... ,п„) /*(аь°2.-- -'ап)10111 /(cti,<T2,.. .,ап) / /(оГ,«2,...,о^). Значит. /(ai.a>.....а„) =/(ar,32,...,ft^). (5.7) Рассмотрим <р(х) - f(ra'>xa'1,...,ran). Тогда V>(0) = /(0“>, 0% ... ,0“») = /(«Г.аа,... ,?ч), <£(1) = /(!“*, 1&3, - - -, I0'”) = Учитывая (5.7), получаем, что ^(0) = ^>(1), т. е. <р(х) —константа, ¥>(ж) — вторая константа. •< 0 Пример 5.11. Продемонстрируем теперь «работу» этой леммы на примере функции яд v.r2. Набор (ai,a2), о котором идет речь в лемме, — (0,3), тогда у>(х) = TVi = 1.
Вопросы в конце параграфа 2. Рассмотрите «работу» леммы о нелинейных нкциях на примере функции .Tj -> х2, леммы о несамодсйственных функциях на при* Mepea-f-igVrs. 3. Докажите, что Р2(0) = ЦО), P2(l) = Ц1), РД2) -/ £(2). 5.4 Класс Поста М Определение 5.11 Введем на множестве Ё2 бинарное отношение следующим: (aj,a2, ...,an) « (01,02,. - -, 0«) <=> Vf (а, <Д). (5.8) JqJ Пример 5.12, (0,1) ^(1,1), (0,о,ОН (1,0,1), (0,1) (1,0), (1,0) (0,1), (1,1) «(1,1), Теорема 5.15 Бинарное отношение на множестве Ej является отношение» порядка, причем при п > 2 — частичный порядок ► Ч Определение 5.12 Пусть f € Ра(п). Говорят, что f монотонна, если для любых наборов значений «временных (ат,а2,.. .,ап) и Зг, 02,..., 0« таких, что (оц, а2,..., On) ч< (/31, /^2, • •, Дп), выполняется /(oi,a2,...,an) < /(./31,02,..-,3»)- Обозначим через М(п) множество монотонных функций от п переменных, а через М — множество всех монотонных функций, т. е. М= (J М(п). п^О В Пример 5.13. Рассмотрим множество Р2(2) и определим, какие функции ИЗ f*2('2) МОНОТОННЫ, /о =«0», fl =«Л», /3 =«11», /з —«*2», /т =--«v». /is - I € Л/; /2, fa, fa, fa, fa, fao- fi2, f\3, /14 £ M., Теорема 5.16 Класс M замкнут и неполон, т. е. (All -- М -/ Р2. ► Так как тождественная функция монотонна, то для доказательства замкнутости достаточно показать, что суперпозиция монотонных функций монотонна. Пусть Ф е Р2(т), А € Р2(п), г = 1,2,Докажем, что K(xi,x2,...,xn) •= (Ф|У(„Л)(Х1,. -,хп) € М. Возьмем (ai,ft2v,On) и (Д1,Д2,--.,Дп) —Два произвольных набора значений переменных таких, что (СХ1,<Х2, =$ (/31,Я.), . тогда 41 = /1(<к1,О2,...,ап) < /1(01,02,... ,0„) = 771, <2 = fafati, 02, • , Ou) < /2(Д, Вг, • - • > ifa) = %, £,>„ 02....On) < /,«(01,02,-• , Д.) = Чт- Тогда (£|,4г, •->(«) « (<?ьЧг,- • •, Пт), а так как Ф(У1,1/2, . • -,ут) 6 Л/, то Ф(41, Ь, • . -, (т) < Ф(т?1 Л2, • • •, Чт), НО Ф(41,42,-...4т) = £’(«1,“2....О„), Ф(71 Л2, • • •, Чт) = Г^,02, -Монотонность Р(т1,.г2> • --> .т„) доказана, а значит, доказана и замкнутость М После того как замкнутость М доказана, неполнота М спъдуел из существования немонотонных функций (см. пример 5.13). ч
142 э Булевы функции Лемма 5.5 (о немонотонной функции) Не проимопьноИ немонотонной функции с помощью подстановки констант и отождествления переменных можно получить отрицание. ► Пусть f(xi,X2,... ,хп) £ М. Это означает, что существуют такие наборы значений переменных (а!,а2,•••,<>«) и (01,02- ,0,0, что (abQ2,. ..,ап) < • А)- Последнее означает, что /(ai,«2,- •,»„) = 1, /(Д,#?,.. . ,ад = 0. Из того,чго/(а1,а2,-.-,ап) f(0i,02, • - •, 0п) следует, чго(аьа2,.. ,,ам; ф (/Зь/За, • • •,Выделим подпоследовательность индексов 1 < й < ii < ••• < ik < п такую- что ап = 0,.,^ = at|[ = 0^. 0t, i / й,*2,••<«’*:• Последнее в сочетании с тем, что (aj,a2,...,a„) <! ,0п) означает, что а, — 0, 0, = 1, i 0 402, • - • Л- Образуем функцию ^(х), подставив на места 402, ...0k ач, а,2,.... atk соответственно. а в остальные позиция — х. Тогда V?(0) = f(ai,a2,...,an) = 1, ^(1) = Л^,ад-о, т. е. ^(х) = 7.. ч 0 Пример 5.14. Рассмотрим «работу>> этой леммы на примере функции xi —» х2. В качестве набора («1.412) возьмем набор (0,0). а набора [01,02) — набор (1,0). тогда, следуя лемме, р(х) = х —> 0 = х\/ 0 = х. Мы рассмотрели пять классов функций — Pq. Pt, L, S, M. Они называются классами Поста в честь американского математика Эмиля Поста2 — крупнейшего специалиста в области дискретной математики. Ему принадлежит и следующая теорема — критерий полноты, которой мы посвятим следующий параграф. Заметим, что для каждого класса Поста мы доказали его замкнутость и неполноту (это потребуется нам при доказательстве необходимости в теореме Поста) и лемму о функциях, не -Пост Эмиль (1897-1954) — родился я Польше, работал в США. Основные труды Э. Поста относятся к математической логике (в том числе по т-зиачным жиикам) и основаниям математики.
принадлежащих классу (эти леммы будут работать при доказательстве достаточности). Замечания и вопросы в конце параграфа га ГЛ 1. Заметим, что монотонными мы назвали только монотонно I • I ! • ] возрастающие функции. Ясно, что можно определить и монотонно убывающие функции, однако если монотонными назвать и те, и другие, то для такого монотонного класса пропадет свойство замкнутости. 2. Докажите самостоятельно утверждение, сформулированное в замечании 1. 5.5 Критерий полноты (теорема Поста) Мы знаем, что множества функций {->,V,A}, {->,л}, {-, V}. (0,1,Л,ф) полны. Сейчас мы сформулируем и докажем общий критерий полноты. Теорема 5.17 (теорема Поста — критерий полноты) l-я формулировка. Для того, чтобы множество ЭД было полным, необходима и достаточно, чтобы оно не являлось подмножеством ни одного из классов Поста: Ро, Pi, L, S, М. 2-я формулировка. Для того, чтобы множество ЭД было полным, необходимо и достаточно, чтобы для каждого класса Поста L, S, М среди функций из УХ нашлась функция, ле принадлежащая этому классу Поста. Чтобы дать третью формулировку теоремы, определим, что такое таблица Поста для множества ЭД. Столбцы таблицы соответствуют классам Поста: Ро, Pi, L, S. М. Строки — функциям из УХ. В клетках таблицы проставляются «4 » или «—» в зависимости от того, принадлежит ли функция соответствующему классу или не принадлежит. 3-я формулировка. Для того, чтобы множество ЭД было полным, необходимо и достаточно, чтобы в каждом столбце таблицы Поста множества ЭД был хотя бы один миную.
► Необходимость ► Докажем ее от противною, т. е. предположим, чю cymeciayei такое полное множество ЯЛ', которое является подмпожес1вом хотя бы одного из классов Поста. Обозначим этот класс И. (огда ЯИ' G 11. Перейдем к замыканиям. Тогда (см. теорему 5.5) (5.9) Ио, по нашему предположению, |ЯН'] — Р2, а по свони»ам класса Поста [И] П / Р-2 и из (5.9) мы получаем, что Р-2 С П # Р2. Так как И С А, получаем Р> С Растрою Полученное противоречие и доказывает необходимость. Необходимость Достаточность ► Прежде чем провести доказательство достаточности, введем условные обозначения для доказанных лемм (см. рис. 5.1). Рис. 5.1.
Смысл обозначений становится ясным, если еще раз вспомнить соответствующие леммы: на входе указано, что необходимо иметь, чтобы можно было применить лемму; на выходе - то, что может быть получено в результате применения леммы. Обозначим через /о функцию из ЯЛ, которая не принадлежит Ро; через fa — функцию из ЯЛ, которая не принадлежит Р}; через Д — функцию из ЯП, которая не принадлежит L; через /$. — функцию из ЯП, которая не принадлежит S; через — функцию из W, которая не принадлежит М. Покажем, что используя леммы, из них можно будет построить •> и А, т. е. что в 1ЯЛ] D л}, что и будет означать полноту Ял (см. теорему 5.6). Построение задается следующей схемой (см. рис. 5.2). ч Достаточность Следствие 5.1 В любой полном множестве существует полное подмножество, состоящее не более чем из пяти функций. ► Очевидно, множество функций {/о;/:;/ь;}> с которым приходится работать при доказательстве достаточности, подходит для доказательства этого следствия. < Следствие 5.2 В любам полном множестве существует полное подмножество, состоящее не более чем из четырех функций.
► Покажем, что во множестве {/о; Л; Д;в случае, когда \{foifi',fLifs', /л/}| = 5, можно произвести «сокращение штатов». Рассмотрим функцию /о и вычислим ее значение на единичном наборе. Если /о(1,1,1) - °- то fo & Л, и набор образует полное подмножество. Если /(1,1,..., 1) = 1. то /о £ S и {А;Л; А;/л/} образует полное подмножество. Замечания н вопросы в конце параграфа @ГП 1. Основным критерием истинности в математике является Ш логическая безупречность доказательства. Однако автор этого курса смеет утверждать, что существуег еще одно необходимое условие истинности математического утверждения. Это условие эстетическое — «верным» в математике может быть только «красивый результат», а «справедливым» — только «красивое доказательство». Если доказательство некрасиво, то либо оно неверно, либо есть другое, «красивое», доказательство. Ярким примером этого является теорема Поста и ее доказательство. Эстетическому условию удовлетворяет даже приведенная на рисунке 5.2 схема доказательства достаточности. Наличие эстетического начала в содержании и в методах математики выделяют сс в ряду- других наук (как естественных, так и гуманитарных) и прядают ей особый характер. Красота и гармония математики (вплоть до самых се абстрактных разделов) вдохновляла и вдохновляет не только математиков, но н поэтов, композиторов, художников, скульпторов. Более того, в течение тысячелетий продолжаются попытки (к счастью, бесплодные) обратить утверждение о красоте математики, получив математические критерии эстетичности (теория золотого сечения, математические основы стихосложения и т. п.). Ясно, что сводимость эстетического к математическому не может быть доказана, однако отрицать наличие связей межзу ними не приходится и, значит, имеют право на жизнь математические живопись, музыка, поэзия, как и живописная, музыкальная, поэтичная математика. 2. Проверьте с помощью теоремы Поста на полноту следующие системы функций; m, {|}, {V.A.o}. 3. Базисом в Р2 называется полная система функций, у которых никакое собственное подмножество не является полной системой. Докажите, что любой базис в Р% содержит не более пяти функций; приведите примеры базисов, состоящих из одной, двух, трех, четырех, пяти функций. 5.6 Предполные классы и их свойства Вспомним, что изучая классы PQ, Ply L. S, М, мы получали утверждения одного типа для этих внешне различных классов. Оказывается (и об этом пойдет речь дальше), эти классы связаны между собой близким родством — все они охватываются одним общим определением, их порождающим, н других родственников такого типа у них нет Все результаты, о которых мы будем говорить сейчас, не имеют конкретных приложений, однако они завершают этот красивый раздел, придавая ему математически завершенный характер. Обращаем ваше внимание на необычную структуру изложения и получения результатов, которая характерна более для «чистой», нежели для прикладной математики: исходное определение порождает объект — предполные классы, и априори не ясно, существуют ли они. Затем, отправляясь от определения, мы изучвем свойства этих классов (оставляя открытым вопрос об их существовании). Полученные свойства позволяют понять, где их искать, Последней идет теорема о существовании этих классов, в которой доказывается, что эти объекты (предполные классы) существуют и их список исчерпывается классами ft,, Pi, L, S, М Определение 5.13 Р(С Р?) называется предполным классом, если I) Р неполон, ni- е. jFj Р2: 2) Vf(f g Р => [Р U {/}] = Рр}. т. е. добавление к предполному классу любой функции, ему не принадлежащей, приводит к образованию полного множества.
Таким образом, определение 5.13 дает описание неполного множества, максимально близкого не вложению к полному множеству. Свойства предночных классов 1. Предполный класс замкнут. ► Предположим противное, т. е. что существует Р — незамкнутый предполный класс. Значит, Р с 1Р1. строго ' Следовательно, существует функция f с >Р] и / 0 Р (расположенная в «зазоре» между Р и [Р]). '1огда, по п. 2 определения 5.13, Ри{/} — полное множество, т. е. jPU {/}| = р2. С другой стороны, так как / g jP), то [PU{/}] = [Р] / Pi (см. п. I определения 5.13). Полученное противоречие и доказывает требуемое. -я 2. Предполный класс не может быть строго вложен пи в один из классов Поста: Pq, Pi, L, S, М. ► Допустим противное, т- е. что существует такой предполный класс Q, для которого среди классов Поста Ру, Р\, L, S, М aaftiwccu такой, (обозначим его II, т. е. II £ (Pq, P{,L,S, М}), что Q 11. Выберем / из «зазора» между Q и 11, т. е. f € II и f £ Q, тогда К = W|u (/)! с [и| -п + Р2. >га цепочка и дает требуемое противоречие. Дяя записи самой цепочки мы воспользовались п. 2 определения S.13, а также замкнутостью и неполнотой любого класса П G (Ро,Л,Ь,.9,Л/). < 3. Любой предполный класс (если таковые существуют) совпадает с одним из классов Постя. ► Предположим противное, т. е. что существует предполный класс Р такой, что Р Ро, R Pi, R L, Р S, Р М. Объединяя это со свойством 2, получим: Р Р) и Р Ро', R Р\ и Р <£. Р)R L п R 1.; спрого строю cipi.ro П -J S и Р £ S; Р/М и И <? М. строго С1 рО1 о
Значит, R удовлетворяет условиям теоремы Поста (l-я формулировка), и значит, Р — полное множество, что противоречит п. 1 определения 5.13. «4 Тборема 5.18 Нредполными классами являются Pq Pj, S, М. Других предполчых классов нет. > Нам нужно дока ять, что классы Pq, Pt, L, S, М предполны. Эю можно сделать, используя таблицу Поста для функций 1, 0, -я, г, -Х2, ац Ф^г Ф гз,а?1Х2 ф X|Z3 ф я:2а-3. Ро Р L S М 0 •1 — +- 4- 1 - 4- + - 4- - - + + - X] - Х2 + 4- — - 4- Xi ф 1'2 ® Ез 4- + 4- 4- - Х\Х2 ® Х}£з® Х2Х-3 4- + - 4- 4- Покажем, как работает эта таблица при доказательстве предполноты Рп- Мы знаем, что Ро неполон, поэтому нам осталось доказать, что если / £ Ро, то Ро U {/} — полная система. Воспользуемся теоремой Поста. Покажем, что в таблице Поста для PqU(/} в каждом столбце есть хотя бы один минус. Функция f дает минус в столбце Ро, минусы для остальных столбцов будем искать с помощью выписанной таблицы в Ро. Действительно, О G Pq и дает минусы ио столбцам Pi и S, х2Х2 € Ро и дает минус по столбцу L, z, фд-2 фхз € Ро и дает минус по столбцу М. Аналогично доказывается с помощью выписанной таблицы предпол-иота р, L, S, М. < В конце параграфа еще раз отметим совершенство изложенной теории предцолных классов — все на своем месте и результаты таковы, что «ни убавить, ни прибавить».
150 Вопросы в конце параграфа га 1. Докажите самостоятельно предполноту Pi, L, S, М. — 2. Какими из свойств (замкнутость, полнота, предполнота) обладают множества: FouPi; /’ouS, poul, PouW, PiU.s; .... sum, PoHPj, Po n s, p0 n l, nft n M,... PiClS, ..., SnAf? Глава 6 Элементы теории алгоритмов 6.1 Что такое алгоритм? Вводные понятия Этот раздел курса не выглядит привычной математической теорией, которая выстроена в соответствии со своей внутренней логикой. Он рожден приложениями математики, связанными с решениями различных вычислительных задач. Что значит «вычислить»? Какими возможностями для этого мы располагаем? Всегда ли возможно решить задачу? Что такое задача? Что такое процесс ее решения? Здесь будет изложен подход к теории алгоритмов как к теории абстрактной вычислительной машины (абстрактной машины Тьюринга'). Существуют и другие равносильные подходы к теории алгоритмов (теория рекурсивных функций, теория нормальных алгорифмов), однако их мы касаться нс будем. Теория алгоритмов представляет собой теоретические основы всей прикладной математики, особенно ее компьютерной части, так как она дает
ответь! на вопросы, поставленные в самом начале параграфа (см 2-й абзац сверху). Абстрактная машина Тьюринга может рассмафиваться как простейшая и одновременно всеохватывающая модель любой реальной ЭВМ. Простота ее устройства и принцип работы не оставляет даже места для возникновения вопроса «Может ли машина мыслить?». 1. Понятие об алгоритме Алгоритм — первичное, неопределяемое понятие. Чтобы извлечь его из нашего подсознания, вспомним алгоритм нахождения наибольшего общего делителя двух натуральных чисел — а, b : 1) разложить п на простые множители; 2) повторить п. I для b и перейти к п. 3; 3) составить произведение общих простых множителей из разложении а и Ъ с показателями, равными наименьшим из показателей вхождения в разложения. Проанализировав этот пример, отметим важнейшие черты (свойства) алгоритма: 1. Массовость — применимость алгоритма не к одной задаче, а к классу задач. -2. Дискретность — четкая разбивка на отдельные этапы (шаги) алгоритма. 3. Детер»шнпрова1тосеь — такая организация этапов выполнения, при которой для перехода от одного этапа к другому не приходится прибегать к датчикам случайных чисел, гаданию на кофейной гуще н т. п. 4. Конечность — для получения результата при применении алгоритма к решению конкретной «дачи выполняется конечная последовательность шагов алгоритма. Вопросы «Что такое алгоритм?», «Что такое алгоритмически разрешимые и неразрешимые проблемы?» стали особенно актуальными в XX веке в связи с развитием ЭВМ и естественней по!ребностыо в анализе их возможностей. Теория алгоритмов была создана совместными (параллельными) усилиями, в основном американских, английских и советских математиков. Осмысление понятия алгоритм потребовало и пересмотра многих философских воззрений на мышление как творческий процесс. Всегда ли, когда человек работает «головой», он думает? Если часть «головной» работы переложена на машину, то следует ли считать, «по маши-
на думает? Решение этих философских проблем принадлежит одному из крупнейших математиков XX в., основоположнику кибернетики Н. Винеру и А. Тьюрингу 2. Алфавит, буквы, слова. Операции над словами, запись слова па бесконечной ленте Определение 6.1 Алфавит — непустое конечное (как правило) множество, элементы алфавита — буквы. Определение 6.2 Словом длины п (n ё N) над алфавитом А (в алфавите А) называется отображение и : [1;п]ц—>А. 0 Пример 6.1. Пусть А = {]; *}, п — 5. u(I) = |, u(2) = |, и(3) = *, и(4) = |, и(5) = *, и = | | * | ♦ . Определение 6.3 Пусть ии v — слова над алфавитом А длины щ и пг соответственно. Упорядоченной склейкой слов и и v называется слово uv длины щ + па, заданное следующим правилом: ' если 1 < г < щ, f(i — Hj), если щ < i < гц + пг. 0 Пример 6.2. А = {[;*}, и = | | * | г = * * тогда uv = | j * j * * * |, t>u = **|||*|*. Пусть А — алфавит и Л 0 А. Назовем Л пустым символом, а А и {л} — алфавитом с пустым символом. Определение 6.4 Бесконечной записью конечного слова над алфавитом А в алфавите с пустым символом называется отображение f : Z —» A U {Л}, удовлетворяющее следующим условиям: существуют гц < гц (’?!, П2 ё Z) такие, что }) /((—оо;пх)г) = /((n2;+oo)z) = {Л}. 2) f ([’ii;’22|z) С А. Длиной слова называется величина пг — nj + 1. /(nj) называется первой буквой слова, /(jii + 1) — второй буквой./(’Ц) — последней {(Пг - П1 + 1)-й) буквой.
Бесконечная запись конечного слова называется еще записью слова на бесконечной ленте. (Заметим, что запись слова привязана к конкретному участку ленты — [тц;T*a]z-) Определение 6.5 Пусть п е Z. Сдвигам тп называется отображение г» ; Z —г Z, заданное правилом: (т,у) (г) = i 4-я. Теорема 6.1 Множество сдвигов {тп, п 6 Z} относительно операции о — композиции образует коммутативную (абелеву) группу. к- Очевидно, т„отт = rn+„i, тогда отображение, сопоставляющее сдвигу гп целое число п, есть гомоморфизм множества сдвигов {тп, n € Z} с операцией о во множество Z с операцией +, а целые числа относительно сложения образуют абелеву группу. . ч Пусть А и {л} — алфавит с пустым символом. На множестве бесконечных записей конечных слов над А введем отношение ~ следующим: u~r <=> Эп(€ Z) (пот„ —v) — 1. Теорема 6.2 Отношение ~ является отношением эквивалентности. » Докажите самостоятельно. ч Обозначим через v(A) множество бесконечных записей конечных слов над алфавитом А. Рассмотрим v(A}/ ~ . Элементы этого множества и называются записями слов на бесконечной ленте. Вопросы в конце параграфа @1. Докажите, что склейка слов — коммутативная операция над словами тогда и только тогда, когда |Л| = 1. 2. Приведите пример унарной операции над словами.
^л. Машина Тьюринга. Описание. Примеры ма W шин ина Тьюринга имеет три алфавита: "Ь 1 Внешний алфавит с пустым символом — А и {Л}. Jg 2 Внутренний алфаяиг, или алфавит состояний Q = {д0, ^Состояние </о называется заключительным состоянием, qi — начальным ' состоянием. состояния qt, <?г, , Яп — рабочими состояниями. 3 Алфавит сдвигов S = {—1,0, 4-1}. В конструкции машины имеются: ' а) бесконечная лента (разбитая на ячейки), предназначенная для размещения бесконечных записей конечных слов над алфавитом А (по одной букве в ячейке); б) считывающе-записывающее устройство (СЗУ). СЗУ обладает способностью обозревать одну ячейку ленты, считывать букву, записанную в ячейке, заносить на место считываемой буквы любую другую из Аи {Л}, передвигаться вдоль ленты влево и вправо на одну ячейку; в) устройство управления (УУ), которое управляет с помощью программы машины ее работой; л г) программа машины, определяющая переходы, машины от одной конфигурации к другой. ‘ Под конфигурацией машины понимают пару: слово с отметкой и состояние машины. . ; Словом с отметкой называют слово, записанное на ленте с указанием обозреваемой СЗУ ячейки. • Программа машины — отображение П : A U {Л} х Q \ {ф} —» A U {А} х Q х S, т. е. правило, сопоставляющее любой паре (а, $) — буква-состояние тройку- (6, q, з) — буква-состояние-сдвиг. * Так как A, Q — конечны, то программу машины можно задать таблицей (см. табл. 6.1). Правила работы машины (правила обращения УУ с программой и СЗУ) Машина работает дискретно (пошагово). На каждом шаге происходит переход от одной конфигурации к-другой. Перед началом работы машина
Таблица 6.1: A U {А} Q \ {%} 91 Чз Ч» а> «2 а. {Ь\ ?; s) Пт А (d;g;3) -П((«ь^)). Пример 6.3. Построим машину Тьюринга, складывающую нату-F ШШЗ' ральные числа, записанные в унарной системе счисления. Напомним, что 5щ = |||||уиарнх Рассмотрим алфавит А и {А} = i мКьМ- I Необходимо построить машину Т, удовлетворяющую условию: [ ((ш)унарн. + (п)унарн.) = (гл +-п)унарн.- Ясно, что такая машина определяется следующей программой: 91 92 93 1 191+1 Л Оз -1 1® -i + I 91 + 1 А A Q2 - 1 А до + 1 находится в начальной конфигурации: СЗУ обозревает первую букву слова, а машина находится в начальном состоянии qt. СЗУ считывает букву, находящуюся в обозреваемой ячейке. УУ обращается к программе машины: находит клетку, соответствующую считанной букве и состоянию машины. Пусть в этой клетке находится тройка (а; о; я), тогда буква а заносится в обозреваемую ячейку, машина переводится в состояние д, а СЗУ совершает сдвиг на одну’ячейку влево, если s = -1, на одну ячейку вправо, если я = +1, и остается на месте, если з - 0. На этом завершена работа машины на первом шаге, и она готова к выполнению следующего аналогичного шага и т. д. Работа машины продолжается до тех пор, пока на каком-то из шагов машина не придет в состояние др. Устройство управления в этом случае останавливает машину. Возникшая конфигурация называется заключительной, а полученное слово — результатом применения машины к исходному слову. Если и — исходное слово, Т — машина, то через Г(ц) обозначают результат. Определение 6.6 Говорят, что машина Т не применима к слову и, если в процессе применения ее к слову она ни на каком изшагов не приходит в заключительное состояние. Выпишем последовательно возникающие при работе этой машины кон-фигурации на исходном слове 11 + 111. При записи конфигурации будем использовать следующее соглашение: состояние, в котором находится машина, записывается в круглых скобках справа за обозреваемой буквой. 0) 1) 2) 3) 4) 5) 6) 7) -•Alto)! Ч-Ц1 А... А| | (®) +||| Л... + (<?!) I Н Л ... - •-Л | | 11 to) | | А... • Л| 11!! to) I Л... • Л| | | I I I (?.) л... -•ЛЦ1111 л(„)... 8) •-AlHHIto) Л.. 9) - Л | 11 | (9з) | Л .. 10) •Л|||(®)|| А.. 11) ••л||(®)||| Л.. И) ••Л|(®)|||| Л.. 13) л(®)||||| Л.. 14) Л | (ф>) 1 11 I Л ... -лI IJI | | (<й)Л... 3 Замечание 6.1, Условимся составлять программы так, чтобы «останов» происходил на первой букве результата. Замечание 6.2. В программе могут быть пустые клетки. Можно считать, что при выходе на такие клетки происходит «останов» («•, что внутри таких клеток написаны тройки, содержащие заключительное состояние).
0 Пример 6.4. Построить машину Тьюринга, удваивающую натуральные числа, записанные в унарной системе счисления. ► Расширим исходный алфавит А== до А' = а). Искомую машину построим в алфавите А'и {Л}. Ясно, что программа такой машины может выглядеть так: 91 92 9з 1 aqi+l 1 92 - 1 | 9з 4-1 а 1 «7з +1 А А - 1 Л до + 1 | 92 - 1 Применим полученную машину к слову ] 3) •-•лаа(?2)л... б)"-Ла|(92))Л... 9) Л|Ш1 *- 15) • •• Л |(Ф)||[ Л... 1) • • • A a|(gi) А ... 4) • • • Л а| Л (g3)... 7)---Ла-(щ)||Л... 2)---ЛоаА(?1)... 5)---Ао|(?2)|Л... 8) Л |(дз)|| Л ... И)-АЫ||ЙЛ- Введение новой, буквы а и замена исходных на а позволяет различить исходные I и новые (приписанные) |. Состояние gj обеспечивает замену | на а, состояние qt обеспечивает поиск а, предназначенных для замены на и останов машины в случае, когда а не обнаружено, qs обеспечивает дописывание ] в случае, когда произошла замена а на [. Введем в рассмотрение стандартные машины: 1. Тождественная машина Е — применима к любому слову над алфавитом А и Е(и) = и. 2. Пусть А — алфавит н А € Л, я 6 N. Копирующей машиной А'п называется машина, применимая к любому слову и над А, причем A'n(u) = uA »А „. АО п раз
'’W'; * .. 3 Пусть А — алфавит и а, 0 (а 0) е А. Машиной, заменяющей а ‘да 0, называется машина За^р, применимая к любому слову и так. что 'Vt 6 Z : /о ( и(0, если u(i) / а; (3Q^u) (г) -- ( ( 0, если и(г) = а. 4 Пусть А — алфавит и £ А. Машиной-проектором Пц (П4э) называют машину, применимую к любому слову иАг>, где и, v — слова над алфавитом А, причем (Пц) (uav) = и; (П*г) = v. Теорема 6.3 Тождественная, копирующая, заменяющая машины и машины проекторы существуют. Вонросы в конце параграфа Pjl 1. Докажите самостоятельно последнюю теорему. !.♦ I 2. Приведите пример такого алфавита А и такой машины, которая ие применима ни к одному слову над алфавитом А. 6.3 Сочетания машин Тьюринга: композиция и объединение. Машины с полулеитамн, разветвление и итерация машии Перечисленные в заголовке типы сочетаний машин позволяют при конструировании машин использонать стандартные приемы, аналогами которых в реальном программировании являются подпрограммы, циклы, разветвления, модульное программирование. 1. Композиция машин Композиция машин — последовательное их применение. Определение 6.7 Пусть 7\ — машина с внешним алфавитом А[ и алфавитом состояний Q\. Т2 с алфавитами Ai и Qi соответственно, причем Qi C\Q2 —0. k
Композицией Т\,Т2 называется машина, обозначаемая Т2о1\, с внешним алфавитом Ai U А2, алфавитом состояний (Qi uQ2) \ {ую} («По — заключительное состояние Ti), и работающая по правилу: (T2oTi}(u} = T2(Tl(u)}. Теорема 6.4 Композиция машин существует. Пример 6.5. Пусть 1\ — машина, складывающая числа в унарной системе счисления (пример 6.2), Т2 — машина Тьюринга, удваи-вающая числа, записанные в унарной системе счисления (пример 6.2). Тогда Т2 о Ti — машина, проводящая вычисления по формуле « 2(а + Ь), в частности (ггот.)(Н +1II) = I IlliIIIII ► Пусть программы машин Tj и Т2 выглядят следующим образом: Блок Т( получен из блока Ti сле/^тощим образом: все клетки вида а</1ов программы Ti заменены на клетки вида (Mfas (что и обеспечивает включение в работу машины Т2 после окончания работы машины Т}). •< 2. Машины с полулентамн Прежде чем перейти к объединению, разветвлению, итерации машин, нам потребуется изучить класс машин Тьюринга с полулентами. Под машиной с правой (левой) полулентой понимают следующее: в одной из ячеек бесконечной ленты содержится символ А — неподвижный Ограничитель, СЗУ мятами с правой (левой) полулентой может находиться тшв,ко на правой (левой) полулекте. состоящей из ячейки, содпраасией неподвижный ограничитель, и ячеек, находящихся справа (слева) от нее. При.выходе СЗУ на ячейку с неподвижным ограничителем машина не имеет права менять ее содержимое. Так как теория машин с левой полу-- лентой — зеркальное отражение теории машин с правой полулентой, мы дальнейшем будем рассматривать подробно только машины с правыми подулентами. Теорема 6.5 Пусть кТ — машина с правой полуленпюй, тогда существует обычная машина, ей эквивалентная, т. е. для любого слова и над алфавитом А имеет место следующее: “ АТ(Аи) - v =«=> T(u) = v- Искомую машшгу построим в виде композиции трех машин: Т2оаТоГ1( где Ti (и) = Аи для любого слова и над А, 1 г(Аг') = v для любого слова Av. < Оказывается (!), что наряду с этой теоремой справедлива и обратная к ней
Теорема 6.6 Для любой машины Тыоринга с обычной лентой существует равносильная ей машина с правой (левой) полулентой (Тк}, т. е. для любого слова и над А справедливо следующее: T(u)^v => AT(Au) = Av. (ТЖ(чж)) = <и). ► Расширим исходный алфавит двумя символами: а — неподвижный ограничитель, А — подвижный ограничитель. Искомую машину аТ построим в виде композиции кТ = ТЛоТ'оТз. Опишем работу машин Тз и Тц. Машина 7з применима к любому слову Ап и Тз(ап) = апА. Ясно, что Тз существует. Т4 применима к любому слову w — А Л Л • • • Л vА и T<(w) = Av. Ясно, что и Т4 существует. Участок ленты между а и А назовем рабочей зоной. Машина Т' строится по машине Т следующим образом , внутри рабочей зоны она работает так же, как машина Т, в случае выхода СЗУ на А она перемещает подвижный ограничитель на одну ячейку вправо, помещая в освободившуюся ячейку л, и продолжает работу, возвращаясь на одну' ячейку влево в том же состоянии, в котором СЗУ вышло на А. Эта возможность расширения рабочей зоны обеспечивается введением для каждого рабочего состояния q машины Т состояния q машины Г'. «Хуже» обстоит дело в случае, когда СЗУ выходит на А, так как неподвижный ограничитель нельзя перемещать. В этот момент работа машины Т' как машины Т должна прерваться для того, чтобы побуквенио переместить слово на одну ячейку вправо, заполнив освободившуюся ячейку пустым символом Л; после чего машина Т* может вернуться к освободившейся ячейке и продолжить работу как машина Т. Сложность такой «модернизации» Т к Т' состоит в том, что машина Тьюринга не обладает внутренней памятью, а запоминать нужно рабочее состояние, в котором произошел выход СЗУ на неподвижный ограничитель и перекладываемые буквы (какую поместить в ячейку из предыдущей и какую запомнить, чтобы переложить в следующую). Такое расширение рабочей зоны обеспечивается введением для каждого рабочего состояния q машины Т целого шлейфа состояний машины Т' (длина шлейфа зависит от )Л)). Выпишем программу машины 'Г' в случае, когда .4 = {а: в} (табл 6.2)
Таблица 6.2: о 0 л A A Ag*4-1 aqo + 1 04a + 1 Ago + 1 aq' — 1 T Ag^4-1 aqp + l 043 4- 1 bq? + 1 04'~ 1 Лдл 4-1 agA + l 04л 4-1 Мл + 1 Др' - J лд'— 1 Ag- 1 Лдд 4-1 дд+1 Лдч-1 Адд 4- 1 адД4-1 /?7д + 1 Лдд 4- I Очевидно, построение программы Т' возможно в случае любого конечного алфавита А. •< Доказанные две теоремы означают, что класс машин с полулентами эквивалентен классу обычных машин Тьюринга. 3. Объединение машин Определение 6.8 Пусть Т\ uTi~ машины Тьюринга с общим или раз- личными внешними алфавитами Дь Д2 и пусть к & At U Л2- Объединением машин Т\, Тг называется машина, обозначаемая 7} и работающая по правилу Т\ U7’2(nAr) --- Ti(u)kT2(v)
Теорема 6.7 Объединение машин существует. ► Объединение построим в виде композиции четырех машин: Т+1 о *Т2 ° Ti*, где Т14 —аналог машины Tfна левой полуленте, *7’2 — аналог машины Ti на правой полуленте, машина Т*+, отправляясь от первой буквы слова wkz, останавливается на первой букве после символа а, оставляя на ленте слово ivaz. Машина 7^*, отправляясь от первой справа за а буквы слова u’Az, останавливается на первой букве слова w, оставляя на ленте слово wAz. Очевидно, машины ТА+ и Г+1 существуют. •< 4. Разветвление машин Пусть Ti и Тг — две машины Тьюринга с общим внешним алфавитом А и алфавитами состояний Qi в Q2 (Qi Л Q-t = 0) и пусть 0 и 1 не принадлежат А. Пусть Ф — машина-предикат, т. е. машина с внешним алфавитом А и {0; 1), применимая к любому слову-u над алфавитом А и Ф(и) € {0; 1}. Определение 6.9 Разветвлением машин Ti, Т2, управляемым предика-ю том Ф, называется машина, обозначаемая T’j Уф 7g, которая работает по правилу если Ф(и) = 1; Т2(и), если Ф(и) 0. Теорема 6.8 Разветвление машин существует. в- Построим разветвление в виде композиции трех машин Г, !°* Т2 = (п j £ ) о (Ф U В) о К,, где машина т' имеет программу, представленную в виде табл. 6.3: —• Тг Начальным состоянием машины П т> является состояние qx, а за- — Tj ключительными — заключительные состояния — машин Т\ н 7"т соответственно. * 7"i Уф 7г j (и) = Таблица 6.3: 5. Итерация машины Пусть Т -— машина Тьюринга с внешним алфавитом АиФ — машина-предикат (см. предыдущий пункт). , Определение 6.10 Итерацией машины Т по предикату Ф называется машина, обозначаемая Tit), работа которой описывается следующим: I. К слову и применяется предикат Ф, если Ф(ц) = 1, то переход к 2, если Ф(и) = 0, то переход к 3. ’ 2. и := Т(и), переход к I. 3. (7Й) («) := и, останов. Теорема 6.9 Итерация машины Т по предикату Ф существует. ю 10 ► Построим машину Т У* Е. Обозначим через (Т Уф Еу машину, ю программа которой получается из программы Т Уф Е следующей модернизацией: асе клетки, содержащие тройки a<fyrs, где дот — заключительное состояние машины Т, заменяются на клетки, содержащие тройки ю aq ; о в. где q 10 — начальное состояние всего агрегата Т Y ф Е. VTY*E iTY^E 10 Очевидно. 7$ * (Т Уф Е) •< ж
6. Машина Тьюринга, переводящая запись числа из унарной системы счисления в троичную В заключение приведем пример еще одной машины Тьюринга, переводящей унарную запись натурального числа в троичную систему счисления. Идея алгоритма, реализуемого машиной, состоит в последовательном уменьшении унарной записи переводимого числа на единицу и увеличении формируемой троичной записи на едиинпу до тех пор, пока на месте унарной записи переводимого числа ничего не останется. Программа такой машины задается таблицей-. 41 92 93 94 1 191 + 1 Л94-1 |94- * 0 091+1 O93O O93-I 191 + 1 1 191 +1 I93O 19з - 1 291+1 2 2gi + l 2930 293 - 1 094-1 Л ЛЧ2- 1 A9q + 1 191+1 9 Решим контрольный пример. Вычислим Т(|)||]) - (12)з- d) ••Л|(й)|||| Л... 25) ••.•Л2|||(®) А. i) •-Л||(,1)||| л... 26) "А2|| (,4) ЛЛ 2) •All 1 («0 11 а... 3) Allllfo)! л... 28) •Л(«4)2|| Л.. 4) -л|||||(?,)л... 29) -Л(<7*)0 | | Л.. 5) -AlllllAta) ... 30) Л 6) ••АНИК®) Л... ту- •••Л||||(<н) АЛ... 35) Л 10 |-| Л(?1) 8) ''' Л ) 11 (?4) | А Л ... 36) •AlOIK®) л 9) -Л||.(щ)|| АЛ,,.. 37) ; Л10||в) ЛЛ 10) ”• А| (54) 111 АА... 38) " Л10 (94> | ЛЛ И) •Afe)|||l АЛ... 39) •лик,,) лл 12) ...Л1(„)И11 лл,.. 40) ...Л11| л(„) л 41) ••Л1 1 1 (<в) л..
к. 16) Л1|||| л(„) л.. 42} г 17) -л1||||(®) лл.: 43) 18) ...л1|||(54) ллл.. 44) 45) 21) .•л1|(?4)|| ллл.. 46) 22) •л2 („) || | ллл. 47) >и 48) 24) ...Л2||| Л(й) ЛЛ. Л1 1 (<й) ЛД... Л12 Л(й) Л... л 1 2 (ft) ЛЛ... Л12(«з).лл... Л1 ^3)2ЛЛ... Л(®)12ЛЛ... Л1(ф>)2л... ИйтГросы в конце параграфа BRI 1. Чему равны Кт о Кп и Кп о Kmi я* > 2. Постройте машину К\ для алфавита А = {а;0}. £ 3. Сколько рабочих состояний у машины Т' в теореме 6.6, ес* L ли у машины Т четыре рабочих состояния, а внешний алфавит Г А={а;0и}? 4. Постройте машины Т+ ± и к последней теореме (теорема 6.7). Г* 5. При построении Тв о мы полагали, что Qi л Q? = 0. Почему Р}г это ограничение несушествеййЬ? F 6, Постройте машину', переводящую двоичную запись числа в тро-£** ИЧИУЮ s 7, Постройте соответствующую машину-предикат Ф и машину Т, I увеличивающую троичную запись числа на 1 так, чтобы перевод из । > у варной системы счисления в троичную осуществлялся с помощью 1 машины 7&>. t.'4 Тьюрингов подход к понятию «алгоритм». k ' Алгоритмически разрешимые и неразрешимые проблемы нг • - г Вернемся к тем вопросам, с которых мы начали изучение этого разделяй;- Главным из них был следующий: «Что такое алгоритм?» Тьюрингов f Жадход к ответу ка этот вопрос прост и естественен: «Алгоритм — это «шпина Тьюринга».
Определение 6.11 Говорят, что существует тыорингов алгоритм решения класса задач 2, если существует такая машина Тьюринга Т с внешним алфавитом А, что: I) для условия любой задачи ze 2 существует слово и, над А, кодирующее условие задачи z (•<=> дающее его запись на ленте машины); 2) машина Т применима к слову us; 3) vt = T(ut) является словом, кодирующим ответ задачи z. Сама работа маши нм Т над словом называется применением алгоритма, заданного машиной Т, к задан* г. Класс задач Z, для которого существует решающий его тьюрингов алгоритм, называется алгоритмически разрешимой по Тьюрингу проблемой 2. :' Проанализировав содержание предыдущих параграфов этой главы, мы молем сказать, что разрешимыми по Тьюрингу проблемами являются: 1. Проблема сложения натуральных чисел. 2. Проблема удвоения натурального числа. 3. Проблема перевода унарной заниси натурального числа в троичную заннсь. Возникает естественный вопрос: «Существуют ли алгоритмически неразрешимые но Тьюрингу проблемы?» Оказывается, есть (к нашему счастью, так как иначе математика была бы достаточно скучной наукой и сводилась бы К тьюрингову Программированию). «Плетя тггштм» тяги* проблем является и сама теория машин Тьюринга 1. Универсальный алфавит; универсальней кодировка Каждая машина Тьюринга имеет три алфавита: внешний А внутренний Q и алфавит сдвигов £ Все три алфавита — вонечные множества, и можно считать, что AHQ^AnS'^QnS=0. Тогда лобое слово над А и Q и S однозначно разбивается на слоги (подслова) (возможно, я однобуквенные) над алфавитами A, Q, S. В частности. любую клетку программы машины как отображения А и {а} х Q \ {%} -* A U {Л х Q х S можно закодировать как пятибуквенное слово над А и {л} и Q и S, задающее соответствие (a- gj -> (0-, а). Если условиться, что нрограмма выписывается последовательно по столбцам Таблица 6.4: Буква Код (слово) над {0; 1} Сдвиги —1 101 0 1001 +1 10001 Буквы А 100001 10000001 02 10000001 Состояния до 1000001 <h 100000001 92 10000000001 4f 10...01 2j+5 .Сверху вниз, то мы получим стандартную запись программы в виде «длинного» слова «ял алфавитом Л и {л} U Q и £ Поставим следующий вопрос: «Нельзя ли выбрать достаточно простой алфавит, с помощью слов которого можно будет кодировать все буквы, а значит, и слова над Xu{a}uQU$ (т с. внешние слова к программу машины)?» Оказывается, в качестве такого простого алфавита, называемого универсальным, можно взять двубу-Жвсиный алфавит {0; 1}. Опишем стандартную кодировку букв алфавита 4Q{a}UQuS словами над {0; 1} с номощью таблицы кодирования (см. табл 6.4). Кодировка с помощью этой таблицы называется стандартной. (Лево, что стандартная кодировка допускает однозначное декодирование для лю-A, Q, S. Поэтому можно считать, что всегда применяется кодировка рИВс помощью {0; 1} и что все машины работают со словами над {0; 1}.
Определение 6.12 Машина Тьюринга Т называется самоприменимой, если она применима к слову ит — стандартной записи на ленте своей программы. Это определение разбило все множество машин Тьюринга МТ на два класса: МТ, — класс самоприменкмых и МТП, — класс несамоприме-нимых машин. Сформулируем проблему распознавания самоприменимости: «Существует ли такая машина Тьюрннга S, которая умеет распознавать само-применимость, т. е. по слову ит, кодирующему программу машины Т, сообщать, является ли машина Т самоприменимой или нет?» Оказывается, имеет место следующая теорема. Теорема 6.10 Приблема распознавания самоприменимости является алгоритмически неразрешимой по Тьюрингу проблемой. ► Допустим противное, т. е. что существует машина S, решающая проблему самоприменимости, причем {1, если Т — самоприменима, О, если Т — несамоприменима. Если машина S существует, то ее можно перестроить в машину S, которая в случае, когда ит — кодировка программы несамопримеинмой машины, перерабатывает ит в слово «О» и останавливается, а в случае, когда ит — кодировка программы самоприменимой машины, «выпечатывает», уходя вправо, бесконечный хвост «1». Погажем, что существование машины §, а значит й S, ведет ^противоречиям. Для этого применим S к слову и§. Возможны два нсхОДа: а) после применения § к и$ машина напечатает 0 и остановится, но, с одной стороны, это означает (0) — несамоприменимостъ, а с другой (остановка машины) — самоприменимость; б) в результате применения S, к и§ идет без остановки печать бесконечного хвоста единиц. Хвост единиц означает теперь самоприменимость, а это противоречит тому, что машина не останавливается. Полученное противоречие и доказывает теорему. •<
Вопросы в конце параграфа @1. Предложите свою, более простую, чем стандартная, кодировку ирограммы (возможно не пятерками, а тройками со стандартным расположением). 2. Дрмжяп, что универсальный алфавит не может состоять из одной буквы. 3. Попробуйте найти оценку m(|A[,|Ql}<€(uT)<A/(|AHQ|), где £(«т) —длина слова вед алфавитом однозначно кодирующим (не обязательно стандартно) программу машины Т с алфавитами A, Q, S. 6.5 Универсальная машина Тьюринга В заключительном параграфе этого раздела эскизно опишем, что такое универсальная машина Тьюринга. В обычной манните Тьюринга программа «зашита» в устройство управления, а входная информация (условия задачи) записывается на бесконечной лейте, В универсальной машине в устройстве управления записана программа, реализующая алгоритм подражания, т. е. программную реализацию правил работы любой машины (см. § 6.2), вернее, правила обращения с ее программой. Тогда вдодаой информацией для универсальной машины является пара —г слово ит, стандартно кодирующее машину-алгоритм, решающий данный класс задач Z\ и слово vz, кодирующее условие задачи z € Z. Универсальная машина, используя ит, перерабатывает v, в. T(vz). Ясно, что для построения универсальной машины потребустся исноль-зование техники машин с полуиентами и универсального алфавита. Эта машина будет работать очень «вяло», теряя очень много времени ма переходы от обрабатываемого слова к ирограмме и обратно, одкако ясно, что справедлива следующая теорема. Теорема 6.11 Универсальная машина Тьюринга существует. Доказательство этой теоремы и более подробно об универсальной машине Тьюринга см. Б. А. Трахтенброт «Алгоритмы я вычислительные автоматы». М., Сов. радио, 1974.
А теперь еще раз обратимся к истории, а вернее, к биографии Алана Мзтиссона Тьюринга, члена Лондонского Королевского общества, руководителя работ но созданию первых английских ЭВМ и Национальной физической лаборатории в Теддинггоне. Свои замечательные результаты в области машин, носящие его имя, А. Тьюрннг получил в 1936-1937 гг., будучи 25-летним, молодым (по нынешним понятиям) человеком. Изумляет не только четкость и математическая строгость подходов Тьюринга, но и глубочайшее понимание необходимости такого рассмотрения для дальнейшего развития прикладной математики. Результаты Тьюринга (а также параллельно работавших с ним в этой области А. А. Маркова, Э. Поста, А. А. Ляпунова, К. Геделя) — вклад не только в математику, но и в современную философию, ее важнейшую отрасль—теорию познания. В результате изучения этого раздела нашего курса каждый слушатель стал владельцем персональной вычислительной машины (ПВМ) — машины Тьюринга, обладающей неограниченной памятно н широчайшими возможностями, быстродействие которой завесит от польэоватеия. Автор отмечает, что нрограммнрование для машин Тьюринга (после приобретения некоторых навыков) достаточно занимательное занятие, так как требует лиг® алгоритмических навыков, а не удержания в голове спндйршых конструктив, характерных для программирования на алго* языках высокого уровня. Здесь нет фактМскв программистских проблем, a-есть только алгоритьотеские проблемы. Решение задач по нрограмми-роваино для малаш Тьюринга позволяет выработать и развить приемы алгоритмизации (чему человек обучается значительно труднее, чем «голому» прогргвшироваипо). Какими бы вманоши материями или какими бы серьезньши приложениями математики вы в дальнейшем нн занимались, рано или поздно вы так или иначе придете к работе со школьниками (факужтатив, математический кружок, популярные Секции) и перед вами обязательно возникнет проблема выбора материала для вапях занятий. Наш опыт показывает — займитесь с ними машиной Тьюринга я вы ж ошибетесь. Это будет и интересно, в полезай,
Глава 7 Элементы теории графов 7.1 Введение, общее определение графа. Локальные характеристики Эта глава нашего курса посвящена графам — математическим объектам, интересным во всех отношениях. Приведем обширную цитату из введения к книге Ф. Харари «Теория графов» (И: Мир, 1973): «Существует несколько причин нарастания интереса к теории графов. Неоспорим тот факт, что теория графов применяется в таких областях, как физика, химия, теория связи, проектирование ЭВМ, электротехника, машиностроение, архитектура, исследование операций, генетика, психология, социология, экономика, антропология и ляягвистяха. Эта теория тесно связана также со многими разделами математики, среди которых—теория трупп, теория матриц, численньй анализ, теория вероятностей; топология и комбинаторный анализ. Графы действуют притягательно и обладают эстетической привлекательностью... Хотя в теории графов много результатов, элементарных по своей природе, в ней также громадное изобилие весьма тонких комбинаторных проблем, достойных внимания самых искушенных мэтеьитнюв». Теория графов — тот редкий раздал математики, о котором доподлинно известно, когда он родился к кто был его основоположником. Родилась она на берегах Невы, в Санкт-Петербурге, ее «отцом» (так же, как
и алгебраической топологии) является Леонард Эйлер1, опубликовавший в 1736 г. репкннс задачи о Кенигсбергских мостах (приведем название и координаты этой работы: Euler L. Solulxo problematis ad georoetrian sitis pertinents, Comment Academiae Sei I. Petropolitanue, 8, 1736, p. 128—140). Следующие шаги в развитии теории графов принадлежат Г. Кирхгофу, применявшему теорию графов в 1847 г. к теории этектрмчесуихлушпи' (законы Кирхгофа) и А. Келли, разработавшему в 1857 г. теорию деревьев и применившему ее к теорнн химических изомеров. Родившись при решении головоломок к занимательных задач, в XX веке теория графов стала мощным средством решения проблем многих наук, ширр|^^»жи*овгь сйжДмюлт^нымсгим^теё^к^Ь развития. Сам термин «граф» ровно на 200 лет моложе этой теории, он введен в употребление в 1936 г. выдающимся венгерским математиком Д. Кёнигом. Определение графа. Локальные характеристики Графы бывают двух типов — неориеитнрованнме к ориентированные. В налей курсе мы будем в основном заниматься ориентированными графа- ми (ояи чапк встречаются ® прилояйяиях). Определение 7.1 Ориентированным графам орграфам » графом) будем называть тройку G(X, U, f), где X (/ 0) —множество, называв- । мое множеством вершин графа. U — множество(возможно, и пустое), называемое множеством дуг. f — отображение, действующее из (J в, X х X, называемое отображением инцидентности. ;; - . 1 Эйлер Леошфй (1707-1^83) родился в Базме (Швейцария). В возрасте 13 лет цачалу^е-,, бу в университете Базеля на отделении теологии. Одновременно проходил мятематачеОкую подготовку у И. Бернулли. Падврз вшишим я происходят еггаод от теология к математвь. Магистерсия диссертация заицплена Л, Эйлером в возрасте 1{>лет. В 1737 ь в 20-дешем возрасте ЭСпер пркглп>ём И созЛШйукГ Петром I Санкт-Петербургскую академию ваук, в 1746 г. он переезжает в БврМшг'ТДе'де476б'г. рабйвст в Берлинской айдОиИи'ййу^'У’ затем вазарааемпеа в Санкт-Петербург, гм актино работает. Несмотря м noCTefeyw ста ‘В -последние 17 лет жизни слепоту. Л. Эйлер относите* ж ВейПаЙшам учейым, ‘грудами которых основаны 'целые научные направления и иауки. Им ваовсано «жало 7D0 наумтых работ г» геЪрЯт чиАел,*спема-тическому анализу, математической физике, камбяттащп*:, вдрвацяотшомуксикленихт и-многочисленным приложениям шгтематмчесюх методов.
Пример 7.1. Рассмотрим граф, изображенный на рис, 7.1 /(IV) = (S;2), 7(V) = (4;5); , /(Vl) = (4;5), /(УП) - (4; 2); ЛУШ) = (3; 4), /(Ей = (2;3); /W=(3;2). Р1 : X х X -* X и pg '• X х X следующим правилом.' . , Р1((х;у)) = *; р«((г;у)) - у- . ., Определение 7.2 Пусть G(X,U,f) — граф, и (€ U") — дуга. Назовем 'вершину (pi о /)(и) началом дуги и, вершину (р^о /)(и) —кривом д>я« 'tc ,, . г Дуги и (е U) u i> (ё называются параллельными (кратными), если Дуги и U} и •ш (€. U) называются пратывО1юлвжнъмп1, если - {(₽2 <?/) (“); Oh ° /}(?>))-' Дуги t (€ U) называется пвтяеИ в вершине х, еаяи Eaw f(u) — (х; у), то говоря/я. что дуга и инцидентна вершинам х и у. Вершина х (х € X) называется йздлйрдванябй, если Г1Ц.Х\{х\) х {г}) = /-‘(И Х(ЛГ\И)) =0.
Для графа на рис. 7.1 дуги V н VI параллельны, IX и X — противоположны, Ш — петля в вершине 2, вершина 6 — изолировангая вершина. Вершина 2 инцидентна дугам П, Ш, IV, X, XI и VII 0 Пример 7.2. П*аф шахматной игры. Множество вершин этого графа — множество позиций шахматной игры (позиция — диаграмма расположения фигур и указание, чей ход предстоит). Дуги графа шахматной игры — такие упорядоченные пары позиций, в которых вторая может быть получена из первой по правилам шахматной игры за одни ход. Отображение инцидентности — это отображение вложения множества дуг в декартово произведение вершин. Сама шахматная игра может рассматриваться как игра двух лнц на графе шахматной игры. «Белые» находятся в вершине, отвечающей началу игры (исходная расстановка, ход белых), к совершают ход, т. е. выбирают одну из дуг, выходящих из этой вершины. «Черные» получают ход в вершине, соответствующей конпу этой дуги, и т. д. Цель игрм — «загнать» противника в такую вершину х, что хХ)«0, т. е. в безвыходное положение. 3. Локальные характеристики графа Определение 7.3 Граф G(X, U, f) называют конечным, если | ZY( < оо, !^<ОО. В дальнейшем мы будем рассматривать только конечные графы (не оговаривая это дополнительно). Определение 7.4 Пусть х (б X) — вершина графа G(X, U, f), поставим ей в соответствие три числа: deg ±х, deg-х, deg х -. deg+x ~ [/'‘(Х х {х})[—число входящих в х дуг, deg-x = |/'*({г}хХ)|—число выходящих из хдуг, degx = deg±x + deg_x. deg +х называют полу&пепенью захода в вершину х, deg~х — полустепенью исхода из вершины х, deg х называют степенью вершины х. Очевидно, справедлива следующая теорема.
Теорема 7,1 Для любого графа G(X, U, f), у которого |С7] < оо, имеют место соотношения ^deg+x = s= |CZ|. - (7.1) o?cX £*gx = 2|£Z|. (7.2) г€Х ► M = |/-,(.Vx.V)| = = I \a€A" /I = I и ГЧ* X {x)) = 2 |Г'(X X {x})| = Lex I »€X = deg+x = аналогично == deg-ж. ®£X x€X (Соотношение (7.2) — это следствие соотношения (7.1).) •-|У| Замечание!. Множества f~1(X х {а:)) попарно не пересекаются. 'Теорема 7.2 (теорема Эйлер* о руконожягаях) В любом конечном гра-фе G{X, U, f) число вершин нечетной степени четно или равно нулю. -> Представим множество вершни X в ваде X - Xs U Хь отнеся к Xs такие вершины х, у которых deg х = 2 • к„ kx € Z+; а к Хг — такие вершины х, у которых deg х — 2 • kx + I, кх 6 Z+. Тогда, воспользовавшись соотношением (7.2) теоремы 7.1, получаем 2-PI = 53*8’ - У. 52 = = ж€Х zCXj ®CXi ; = г- у к, + г- у к.+ у 1-2.£*, + |х,| =► гёЛ'з хвХ] sexi rex f =^|Х,| » 2p|-2£fc, = 2(Р|-5>.|. £ х€Х V х€Х / |Нр®ая часть кратна двум или равна нулю, значит, |Xi| кратно двум или (равно нулю. <
Возможная интерпретация данной теоремы такова: на любом мероприятии (приеме, банкете и т. п.) чисво лиц, совершивших нечетное число рукопожатий, четно или таких лиц ист вовсе. Графы принято интерпретировать (изображать) рисунками, состоящими из точек, соответствующих вершинам, и линий со стрелками, изображающих дуги. Приведем в качестве заключительного в этом параграфе примера граф нашего курса (см. рис. 7.2). Вершины графа будут соответствовать разделам: алгебра высказываний (АВ), алгебра предикатов (АП), алгебра множеств и отношений (АМО), отображения и комбинаторика (ОК), отношения (О), булевы функции (БФ), элементы теории алгоритмов (А), введение в теорию графов ('п). Дуги графа — стрелки, ведущие от разделов, материал которых используется при изучении данного раздела, к вершине, соответствующей данному раздор: Рис. 7.2 Вопросы в конце параграфа р5] 1> Сравните условия теорем 7.1 и 7.2. Почему условия теоремы 7.1 Ш слабее? X Оцените сверху количество дуг графа с п вершинами, на' котором нет петель, противоположных и параллельных дуг.
7.2 Изоморфизм графов. Геометрические графы. Плоские и неплоские графы. Реализуемость в 7?з. Пути, цепи, контуры, циклы Изоморфизм графов Похожесть и непохожесть однотипных объектов в математике определяется понятием «изоморфизм». Определение 7Л Графы Gi(Xi, Uufa) и (?г№, Cfc, fa) называются изоморфными (пишут Gi с: (72), если существуют биективные отображения <p:Xi Х2 и ф: Ь\ -» Uz такие, что (P<o/2oiA)(u) - (^°Р»°Л)(«), Vue О’, 4 = 1,2. (Иначе pi о /2 ° Ф = Ч> ° Pi ° /1 и Р2 ° fz ° Ф = Ч> ° Р2 <? Л •) Пример 7.3. Рассмотрим графы Gi, G2, G3, (?4, изображенные на Ряс. 7.3
Очевидно, Gi a Gz, Gt & G3, Gt G4. Изоморфизм Gi а (?2 реализуют отображения <p и «р. заданные следующими соотношениями: «О) = 2, >(2)=4, «(3) = 1, Ч>(4)~3. «(I) = П, У'(П) = VI, V'(ni) = V, «(IV) = IV, «(V) = m «(vi) -1. Теорема 7Л Изоморфизм — отношение эквивалентности на множестве графов Q, т. в. оно рефлексивно, симметрично, транзитивно: l. VG^g) GzxG\ 2. VGj VG8 (Gt ~ G2 => G2 ~ GJ; 3. VGX VG2 VG3 ((Gi ~ G2)fc(G2 G3) => (G, a: G3)). ► Доказательство теоремы основано на том, что а) тождественное отображение биективно; б) биективные отображения обратимы и обратные к ним биективны; в) композиция биективных отображений биективна. •< Геометрические графы. Реализуемость графов Оп|Мделение 7.6 Геометрическим графом называется граф, у которого множество вершин — множество отмеченных точек в R2 или R3> множество дуг — множество параметризованных отрезков непрерывных кривых в R2 или в R3, концами которых являются соответствующие им вершины графа. Все графы, приведенные раньше на рисунках, можно считать геометрическими. Теорема 7.4 Для любого графа существует изоморфный ему геометрический граф (и в R2, и в Яз), называемый его геометрической реализацией. ► Вершинам графа поставим в соответствие помеченные точки плоскости или пространства, а дуги изобразим параметризованными отрезками прямых или дуг окружностей. •<
Определение 7.7 Геометрические граф называется правильно реализованным (или правильным), если его дуги не имеют общих точек, отличных от вершин графа. 0 Пример 7.4. Рассмотрим графы (?2 в (?2, изображенные на ряс. 7.4: Рис. 7.4 Граф Gt не является правильно, реализованным, граф Gt — давильный. (Заметим, htoGi — т. е. Сг — правильная реализация с..) Теорема 7.5 Для любого графа существует его правильная реализация в Ъ. ' ► Опишем конструкцию, позволяющую построить правильную реализацию. Возьмем в Яз произвольную прямую I. Вершинам графа G(X, U, f) поставим в соответствие отмеченные точки на этой прямой (точки будем обозначать теми же буквами, что и вершины графа (?). Каждой дуге графа G будет соответствовать .своя плоскость, проходящая через t. Если дуга и е U такова, что /(«) = (т;у), хфу,ю в соотяегсгеуюпкй плоскости построим на отрезке [ж; у| как на диаметре полуокружность; параметризованную от х к у, если w е U и /(w) = (г; г), то в соответствующей плоскости изобразим единичную окружность, касательную к I в точке z, параметркзованную произвольно (см. рис. 7.5). Очевидно, эта конструкция дает правильную реализацию. -а Определение 7.8 Граф называется плоским (о планарным), если у него существует правильная реализация в Rj-
Определеяве 1-9 Полным графам-Кп (n € N) называется граф с п вер-шинами без петель, кратных и противоположных дуг (ориентация безразлична), у которого любые две вершины соединены дугой (см. рис. 7.6). Определение 7.10 Полным двудольным графом Кп,т (»i тп) называется граф сп + т вершинами без петель, кратных ипротйвдположных дуг (ориентация безразлична}, у которого множество вершин разбито на два непересекаюи/ихся подмножества спит вершинами, так что
ifoo6bie две вершины различных подмножеств соединены дугой и никакие ^две вершины одного подмножества не соединены дугой (см. рис. 7.7). Л Kt,t Кэ.э Ряс. 7,7 Оказывается (и это доказали почти одновременно и независимо российский математик Л. С. Понтрягин и польский математик К. Куратов-ский), не являются плоскими графы К$ и Кз,з и графы, части которых устроены «подобно» Къ и Лз,з- (Подробно н точно о критерии планарности Поитрягина-Куратовского см. в книге Ф. Харари «Теория графов». М.: Мир, 1973.) Смысл и значение этого факта и теоремы 7.7 о правильной реализуемости графов в Из для микроэлектроники трудно переоценить. Фактически, из-за графов К$ и Кз,з прильюсь создавать технологию многослойных печатных плат или микросхем в виде сэндвичей. С графом Кз,з связана к головоломка о трех домах и трех колодцах (см/ Л. Кэролл, «Алиса в стране чудес»). Пути, цепи, контуры, циклы Определение 7.Ц Путем длины п (n € N) на графе G(X, U, f) называется отображение р:{1;п]ц —• U такое, что (P2°f = (pio/op)(i), i = 2,3,...,n. Вершина (picfop.)(l) называется Началом пути д, вершина (p2ofcp)(n) — концом пути д. Если {pi о f од)(1) = (Р2 о/од)(п), то путь называется контуром. Если отображение д инъективно, то путь (контур) называется простым. Определение 7.12 Цепыо длины п (п е N) на графе G(X, U, f) называется отображение —» U такое, что у любой дуги r?(i) (i -
?, 3,..., п — 1) одна инцидентная вершина общая с дугой г](г -1), а другая — общая с дугой r/(i + 1)- Першина дуги т?(1). не являющаяся общей с дугой ц(2), называется началом цепи, вершина дуги ц(п), не являющаяся общей с дугой ц(п - 1), называется концом цепи. Если начало цепи совпадает с ее концом, цепь называется циклам. Если отображение ц инъективно, то цепь (цикл) называется простым. В Пример 7.5. Рассмотрим граф, приведенный на рнс 7.8, и отображение д •. (1;9]я -» У, заданное -таблицей Т.\. Таблица 7.F. 1 2 3 4 5 6 1 8 9 40 VI VU1 Ш ГХ П IV V И I Ясно, что р — путь длины 9 из 2-й вершины в 7-ю вершину Рассмотрим отображение г/, заданное правилом 1,(1) =VU; т?(2) = Ш; i?(3) = IX; 1,(4) « V. Ясно, что 1) — цепь длины 4 из 2-Й в 8-ю вершину. Pi(l) = VI; pi(2) ~ У1Щ Дт(3) = VII—контур длины 3. 1,1(1) = VI; лт(2)=Х; гд.(3)~Ш; in(4) = VU — цикл ддиюл 4
7.1 (лемма о простом пути) Пусть G(X,U,f) — граф, х;у (е X) — такие вершины, что существуем путь длины 'с началом в не х и концом в вершине у, тогда существует простой путь р'ху п'ху с началом в вершине х и концом в вершине у, причем ’П-гу пху- I ► Возможны два случая: а) отображение уху инъективно, тогда р!^ = рху, п’ху=пхуи утвер-£ние леммы доказано (тривиально). 6) отображение рху не является инъективным, значит, существует такая дуга П е U, что |с;,ЧИ)| »2- дочим элементы множества рху ({**}) в порядке возрастания, т. е. ((«}) = (й; Ы • • •; ч} (I < й < £г < • • • < ifc < пзд). Образуем путь pias длины nixv = п1у - (й - й). соединяющий х с у, Положив .. (Л _ еслиЮ<й; Mlzyv) ( /-,/• \\ /• . ч [ Рту (t + (г* - и)), если 11 < t n,y - (:fc - ij). >и этом И'нед-!; »7i,((»}> с/£((»}) для любой дуги и, отличной от й. Тогда, если pily инъективно, налагаем u'y = ^rv' пху ~ ni«v> & если Pixv ие является инъективным ото-5ражением, то к нему применимы криведенные выше рассуждения. Мы юлучим путь р2ху длины П2ху < и т, д. За конечное число шагов ароцесс оборвется (т. к. длина пути — натуральное число) и требуемый зростой путь будет построен. 4 Йемма 7.2 (лемма о простой цепи) Пусть G{X, U, /) — граф, х, у (€ V) — такие вершины, что существует цепь rjxy длины пху, соединяющая е су. Тогда существует простая цепь Г)'Х{/ длины п’ху, соединяющая х с V, причем п'ху nw
► Возможны два случая: а) отображение 1^(15 —»U инъективно, тогда = г)ху, п'ху = пгу и утверждение жимы тривиально доказано. б) отображение ^:{1;па.11]к —»17 нс является инъективным, Значит, существует такая дуга й е U, что К «4)1 > г- Упорядочим элементы множества г/~у ({«}) в порядке возрастания, т. е. Ъу‘({й}) = {’ь’г;• • •;»*} (1 <»2 < ••• <4 Для трассы цепи возможны четыре случая (см. рис. 7.9): Рис. 7.9
Построим цепь г?! Еу, соединяющую х с у, в случаях 1 и 2 по правилу «лнКт'Сй; tfixylt) - < .. .. ... . .. + Ofc - и)),если л < t <п.а - {и - л), а в случаях 3 и 4 — по правилу ... __ /если 1 С г < л; ’hsiA1) — < ...... 1- , (»?х»0 + (*к -Ч) + 1).если 21 С» Сп«|,“(t* - »() - 1. При этом в случаях 1 и 2 |чГ.» (<«})! = !. чГ.„ ((“}) с (И) для любой дуги и, отличной от П, а в случаях 3 и 4 11Гi, ({п))[ = 0. ({о}) С Чвд* ({и}} для любой дуги и, отличной от и. Тогда, если гд 1у инъективно, полагаем V-ey = Ъ a*; «zv = ni а если 71 ху не является инъективным отображением, то к нему применимы приведенные выше рассуждения. Мы получим цепь т)2гу длины п-2^у < и т. д. Зн конечное число шагов процесс оборвется и искомая простая цепь 9 будет построена < Лемма 7.3 (лемма об инвертированы! цепи) Пусть G(X, U, f)—граф; х,у (€ X) — вершины такие, что существует цепь г)ху длины пхя, соединяющая х су, тогда существует цепь г?~у длины пгя, ведущая из у в х. ► Очевидно, отображение r)ry.‘[l;niy]N —»и, заданное равенством ЯгуСО — Я»» (П«У — 2 + I) । является искомой цепью из у в х. Говорят, что цепь i]~y пояучена инвертированием цепи ijxy. ч <
Замечания и вопросы в конце параграфа И ГП .1. Очевидно, что всякий путь является цепью и не всякая цепь I I LJ является путем, 2. Докажите, что если Gi(Xi- U\, Л) а G2(%2, U?, /2) и — пара биективных отображений, реализующих этот изоморфизм, то для любой вершины х € Xi справедливо: deg+ х = deg+ <^(х); deg_ 1 = deg_ y>(x); deg 1 = deg<p(x). (Характеристики deg deg -, deg в левой части равенств вычисляются для графа Gj, а в правой части — для графа G3,} 3. Проверьте, что в лемме 73 действительно является целью. 7.3 Части графа: подграф, частичный граф. Связность и сильная связность, компоненты Мосты графа Части графа В задачах теорвн графов иногда криходится изучать не весь граф в целом, а какие-то его части. Определение 7.1$ Пусть G[X,V,f) граф, V с U. Частичным графом графа G, гюраэюЗеннылг V, называется граф G U',/j (Здесь П — ограничение отображения }:U~>XxX на множество IV U1, т. е. /| . £/'—» X х X по правилу (п) = /(«) Vu е V
В Пример 7.6. Пусть G — схема дорог Ростовской сбаасти. Схема д орог Ростовской o6jbcth с асфальтовым локрытяем — частичный граф графа G. Определение 7.14 Пусть G(X, U. f) — граф, X' & 0) С X. Подграфом графа G, порожденным множеством Х\ называется граф a(x',Vx',f[ ), = г'(х'хх'). \ '°х</ 0 Пример 7.7. Схема дорог Багаевского района Ростовской области — подграф схемы дорог Ростовской области. Сам граф G по отношению к своим подграфам и частичным графам называется надграфом (суграфом или суперграфом). Компоненты связности и сильной связности Определение 7.15 Пусть т — вершина графа G(X, U, f). Свяжем с ней множество Сх, определенное следующим: у ^Сх «£=> (у = .г) V (существует цепь, ведущая из хе у). Теорема 7.6 (свойства множеств Сх) Множества Сх обладают следующими свойствами: 1. Vi (6 X) Сх Ф 0; 2. Vi Vy (Сх ПСУ ф 0 => Сх = Cv}\ - 3. (J Сх = X. з£Х ► Нетрудно проверить, что отношение а, заданное следующим: ray (у _ г) v (существует цепь, ведущая из х в у), является отношением эквивалентности на множестве X — вершин графа. Действительно, его рефлексивность очевидна, симметричность следует из
леммы об инвертировании цепи, а транзитивность следует из возможности склейки цепей, первая из которых заканчивается там, где начинается вторая. Пусть tjsj, — цепь длины пху, ведущая из х в у, г]уг — иепъ длины n„t, ведущая из у в z. Тогда отображение т?1г : (1; -♦ U, заданное правилом _ (*?««(*)• если 1 С i < пху- *Ъ:г\Ч — 1 /• > . , t (1 пху), если nxy < г пху + пуг — цепь, ведущая из х в z. Ясно, что Сх = (ж|а, тогда эта теорема — частный случай теоремы 4А о свойствах множеств [®]в. 4 Определение 7.16 Компонентой связности вершины х графа G(X, U, f} называется подграф, порожденный С*. Определение 7.17 Чисяум связности графа G(X, U, f) называется чн~ ело его различных компонент связности. Число связности обозначается С(О). fjql Пример 7.8. Для графа G, заданного рис. 7.10, с(б’) = 3. Обведены три различных компоненты связности графа G. Определение 7.18 Граф G называется связным, если c(G) 1. и несвязным. если c(G) > 1.
Определение 7.19 Пусть х — вершина графа G(X,U,J). Свяжем с ней множество sCx, определенное следующим: у£аСх <=> (у = х) V ((существует путь. ведущий из х в у) & существует путь, ведущий из у в х)). Теорема 7.7 (свойства множеств зСе) Множества sCx обладают следующими свойствами: 1. Vt(€X) sCx^0; 2. Ух Уу (sCx nsCv^0 => sCx = sCy) з. и всх = х. ► Нетрудно доказать, что бинарное отношение (3 на множестве вершин, определенное частью, стоящей за «<=>» в определении 7.19, является отношением эквивалентности, sCx — тогда эта теорема — частный случай теоремы 4.4. •« Ощюделенне 7.20 Компонентой сильной связности вершины х графа G(X,U,f) называется t подграф, порожденный множеством зСх — <?( sCs,C4ct,/| )• \ w.cJ Определение 7.21 Числом сильной связности графа G называется число его различных компонент сильной связности. Число сильной связности графа G обозначается sc(G). Пример 7.9. Для графа G, заданного рис. 7,11, ec(G) = 7. На рис. 7.11 обведены различные компоненты сильной связности графа G.
Теорема 7Л Для любой вершины х графа G(X, U, f) имеет место всх ссг. ► Справедливость этого утверждения следует из того, что всякий путь является цепью. « Следствие 7.1 Для любого конечного графа G(X, U, f) имеет место: 1 < c(G) ^sc(G) < {Xj. ► Крайние оценки очевидны, а внутренняя следует из теоремы 7.8. •< Мосты графа Определение 7.22 Дуга и графа G(X, U, f) называется мостом, если ДО} < g Пример 7.10. На рис. 7.12 обозначен надписью мост графа G. Рис. 7.12 Теорема 7.9 (теорема о мостах) Мы с тобой два берега у одной реки. Если чщ — мост графа G(X. U,f), то C(G) + 1 = »(<?„).
► Так юк каждая дуга графа находится внутри компоненты связности, то при удаданин моста «разваливается» только та компонента связности, которой он принадлежал. Значит, достаточно показать, что при удалении моста из компоненты, которой он принадлежал, получается ровно два «осколка», т, е. нужно доказать следующую теорему: •< Теорема 7.10 Если ио — мост графа G(X,U,f) и c(G) = 1, те о(си) = г- '► Предположим противное, т. е. что существует такой граф G и мост ио на нем, что . . х c(G) = 1, а С (С;.) > 3. Последнее означает, что в графе G*a существуют вершины х, у, z, лежащие в разных компонентах связности. Исходный граф был связен, значит, на нем суищствовала цепь ведущая из х в у, и цепь т)хг, ведущая из х в z. Можно считать (по лемме 7,2), что эти цепи ярветые. На графе G'Uo вершины х, у, z лежат в разных компонентах связности, значит, на нем нет цепей, соединяющих х с у и х с z, следовательно, цепи r/ху и т/1г «разорвались», а так как переход от G к (7^ осуществлен удалением дуги ио, то эти цепи проходили через дугу uq. Возможные комбинации трасс цепей таковы (см. рис. 7.13): х ‘ ‘ * г ил - — BJ i • • *• ‘ у ' .—А — X ' ’ ’ • ’ Z Pl «Куски» цепей, спрятанные за ..., не содержат дуги ио (так как цепи простые), и значит, не пострадают при удалении дуги Тогда из инвер- тированного фрагмента «| |» на цепи и фрагмента « »
на пеан в случаях аК б) склеивается цепь, соединяющая картину у с вершиной z. Это противоречит тому, что эта вершины лежит в разных компонентах связности графа G'Ua. В случаях в), г) из фрагментов « » и «| склеивается цель, соединяющая вершину х с вершиной у. Это противоречит тому, что эти вершины лежат в разных компонентах графа G’^. Полученные противоречия доказывают теорему 7.10 и 7.9. 4 Вопросы в конце параграфа 01. Почему ж оорздекншх 7.17 ч 1.21 слово «различных» подчеркнуто? 2. Докажите, что каждая дуп графа лежит внутри какой-то компоненты связности (т. е. ее тчальная и конечная вершины находятся в одной компоненте связности). 3. Постройте граф G(Jf, U, J) такой, что |Х| = 10, c(G) = 3, sc(G) = 5. 4. Докажите, что | se(C) = c(G) <=• W (е х) е, = ,с,. | 7.4 Эйлеровы графы, критерий эйлеровости | В этом параграфе мы возвращаемся к истокам теории графов и задачам, 1 которыми занимался великий Леонард Эйлер. Отправной точкам для него I послужила знаменитая задача о Кенигсбергских мостах, которая теперь | стада неотъемлемой кринадлежностъю любого учебника по теории гра- э фев. Семь мостов города Кенигсберг (нмпе Калининград) расположены на реке Прегепь так, как изображено на рис 7.14, соединяя его (города) части А, В, С, D. Задача состоит в следующем: «Найти такую точку го- $ рода, выйдя из которой можно пройти по всем мостам города по одному | разу и вернуться в нее обратно». Эйлер показал, что эта задача не имеет | решения. Каждый мост Эйлер заменил линией, соединяющей тении, со- £
ответствуюшне берегам. В результате получился граф, изображенный на рис. 7.15 (ориентация дуг не имеет значения). Ш Заметим. что ни одна из дуг графа на рис. 7.15 не является мостом в смысле определения 7.22. Рис. 7.14 Рис. 7.15 Определение 7.21 Связный граф называется эйлеровым, есяина мем существует простой цикл, проходящий через все дуги графа (простой, проходящий через все дуги, т. е. проходящий по одному разу через каждую дугу). Лемма 7.4 Если степень каждой вершины конечного графа четна, то на графе существует хотя бы один простой цикл. > Наличие хотя бы одной петли делает лемму тривиальной. Осталось рассмотреть графы без петель Возьмем произвольную вершину графа. Так как ее степень четна, то сзтдествует по крайней мере две дуги, для которых ова является граничной. Выйдем по одной из этих дуг из этой вершины (не обязательно по ее ориентации). Вершина, в которую мы придем. так же имеет четную степень, и значит, кроме дуги, по которой мы
пришли, есть еще хотя бы.одна, по которойможно из этой вершимы уйти, «Уничтожим» после прохождения через вершину дуги «нрихода» и «ухо* да». При этом степень пройденной вершины уменьшилась на 2, а значит, осталась четной. Таким образом, мы показали, что условие четности степеней вершин —- это условие «незастревания»’ в них, и оно наследуется при уничтожении пройденных дуг. Двигаясь таким образом по конечному графу, не застревая в его верившая, мы на можем все время оказываться в вершинах, в которых мы не побывали ранее (так как в конечном графе конечное число вершин). Тогда на каком-то из шагов такого «путешествия» мы окажемся в вершине графа, в которой уже были до этого. Отрезок простой цени, заключенный между первым и вторым прохождением через такую вершину, является простым циклом на исходном графе. < Теорема 7.11 (критерий эйлеровостн графа) Для того, чтобы конечный связный граф был эйлеровым, необходимо и достаточно, чтобы степени всех его вершин были четными числами. ► Необходимость ► Она очевидна, так как, дишаясь по эйлеровому циклу, войдя в вершину по одной дуге, мы выходим из нее по другой дуге, т. е. каждой «дуге входа» соответствует «дуга выхода». Каждая такая п|ра дут дает вклад, равный двум, в стеиень вершины, а поскольку эйлеров цикл содержит все дуги, то степень каждой вершины представлена суммой двоек, и значит, четна. •< Необходимость. Достаточность ► Достаточность будем доказывать по индукции, взяв в качестве параметра индукции число дуг графа. Шаг 1. |£7| = 1. Единственный граф, удовлетворяющий условиям теоремы, изображен на рис. 7.16. Очевидно, его единственная дуга в образует эйлеров цикл.
Индуктивный переход. Предположим, чп? утверждение теоремы (ее достаточной части) справедливо дня любого графа,.у(которого £ По-Докажем, что тогда оно справедливой для графа, у которого = «о+ 1. Так как степени всех его вершин четны, то по лемме 1А в» угон графе существует простой никл г?. Если этот цикл проходит через все дуги графа G, то он и есть искомый эйлеров цикл, и индуктивный переход доказан. В противном случае рассмотрим граф, полученный из G удалети^^т цикла т) — G'n. Каждая его компонента связности — конечный свдацый граф с четными степенями вершин и числом дуг, меньшим либо равным по • Тогда, по предположению индукции, на каждой компоненте связности существует эйлеров цикл. Обозначим эйлеровы циклы компонент^, jj2, ..., зд соответственно. Поскольку исходный граф связен, то цикл г? имеет хотя бы по одной общей вершине с компоиектами графа G'^. Выберем по едкой общей с циклом вершине на каждой компоненте —Xi, х?, ...,Xj.. Искомый эйлеров цикл на графе G построим следующим образом: отправившись по циклу г? из произвольной его вершины, движемся по нему до тех пор, пока не встретим вершину ij из множества х2;. •.; тогда от вершины ц пройдем по эйиерову циклу г?* на соответствующей компоненте графа G'^, после чего продолжим движение по циклу-т? до тех нор, пока не встретим вершину xj G {a?i;z2;...;xfc}, опять прервем даекеняе по г) ипройдем по эйлерову циклу тц соответствующей компоненты и т. д В результате движения по циклу t) мы побываем во всех вершинах множества {хг; ,т2;...; х*}, а значит, пройдем по всем циклам т;%; •••;(см. p«c-
(Процесс склейки эйлерова цикла из цикла ц и циклов гл, т/г, ,.., гц. похож на сборку ожерелья с подвесками.) Индуктивный переход, а имеете с ним и вся теорема, доказан. •< Достаточность. •< Определение 7.24 СвЛзный граф называется кёазиэйлеровым, если на нём существует простая цепь, проходящая через все дуги графа. Теорема 7.12 (критерий квазиэйлеровостн) Для того чтобы конечный связный граф был кеазиэйлеровым, необходимо и достаточно, чтобы степени всех его вершин были четными числами или степени всех его вершин, за исключением равпо двух, были четными числами, причем в первом случае эйлерова цепь является эйлеровым циклом, а во вторам случае эйлерова цепь начинается в одной из вершин нечетной степени, а заканчивается в другой вершине нечетной степени. > Ясно, что теорема 7.12 является следствием теоремы 7.11. Случай 2-х вершин нечетной степени и построение эйлеровой цели можно свести к эйлерову циклу на графе, полученном из G л/мавжнмем дуги, соедшию-щей две вершины нечетной степени. « Вопросы в конце параграфа @1. Можно ли нарисовать фигуру, называемую саблями Магомеда (см. рис. 7.18), не отрывая карандаш от бумаги и не проходя по отрезкам линий дважды (за исключением помеченных точек)?
7.4. Эйлеровы графы, критерий эйлеровости 2. Можно ли нарисовать, не отрывая карандаш от бумаги и не проходя ми по одному из отрезков дважды, домик с крышей вида а), б), в), г), д) (см. рис. 7.19)? АБВГДЕЖ ЗИКИГМПР РТУФХЦЧШ ЩЬЪЗШ
7,5 и Деревья и леса В этом параграфе мы изучим простой и очень важный своими приложениями класс графов—деревья. О широком применении этого класса говорят такие термины: «дерево поиска», «древовидные структуры», «ветвление» и др. Лемма 7.5 Для любого конечного графа G(X, U, f) справедливо |X|-c(G) С |И- (7-3) ► Проведем доказательство индукцией по параметру т = |L/|. 1 шаг. т = 0. Любой граф, у которого |С7| = 0 (•» U, = 0), имеет вид, изображетпшй на рис. 7.21. Рис. 7.21 Тогда с((?) = |Х|. Значит, И-о(С) = l-V|-|X| = О < О = |О|. Соотношение (7.3) выполнено. Индуктивным переход. Предположим, что соотношение (7.3) справедливо для любого графа, у которого ]С/| то. Докажем, что тогда оно справедливо И для графа, у которого |С/[ = mo + 1. Для такого графа возможны два случая: I) на нем нет мостов; 2) на нем есть хотя бы один мост. В первом случае удалим произвольную дугу и графа G, т. е. перейдем к графу G'u\ Для него соотношение (7.3) выполнено (по предположению), значит, Н1-е(с;; с |</\Ы1,
но c(G'u) = c(G), тогда |Х| -c(G) С < |tq. Соотношение (7.3) доказано. Во втором случае обЬзначнм через «о мост графа G и выпишем соотношение (7.3) для графа : 1*1-с(CU) < 1£/\(“«}1. по теореме 7.9 о мостах с (G^) = c(G) + 1, тогда [Х|-С(О-Л <|£/\{зд}| = |И-Л- Соотношение (7.3) выполнено н в этом случае. Индуктивный переход доказан. •< Лемма 7.6 Конечный граф G(X,U,f),y которого ]£/| С |Х[ —2, (7.4) не является связным. > Предположим противное, т. е. что существует конечный связный граф G0(X0, Go, /о), У которого [С/о| С 1-^Ы - 2. По предыдущей лемме для него выполнено . |Хо| - 1 С |(7о|. (7.5) Из (7.5) и (7.4) получим |Хо[-1 С |Хо|-2 или -1 С -2. Полученное противоречие и доказывает лемму. •< Определение 7.25 Деревом называется конечный связный граф без циклов.
лес И1 трех деревьев Рис. 7.22 Определение 7.26 Лесом из к деревьев называется граф G без циклов, у которого с(С) = к, к > 1. На рис. 7.22 справа изображен лес из 3-х деревьев. Теорема 7.13 (основная теорема о деревьях) Для конечного графа G(X. U,f) следующие 6 утверждений эквивалентны: 1. G — дерево, т. е. связный граф без циклов. 2. G не содержит циклов и |l/| = |Х| - 1. 3. G связен и |C/j = X — 1. 4. G связен и каждая его дуга является мостом. 5. Любые дее вершины можно соединить, и причем единственной простой цепью. 6. G — не содержит циклов, добавление к нему любой дуги приводит к к образованию единственного простого цикла. ► Докажем, что из 1) следует 4). Доказательство проведем от противного, т. е. предположим, что существует такое дерево G, на котором есть дуга «о, не являющаяся мостом. Обозначим через .то ее конец, через уо — ее начало. Образуем граф G'Uo. Так как он по нашему предиожйкейшб связен, то на нем существует простая цепь цХаУв, ведущая из .т0 в уб,
тогда т}хык U-{«o} — простой цикл на G, что противоречит Тому, что G — дерево. Докажем, что из I) следует 2), ио так как то, что из 1) следует 4), уже доказано, то можно доказывать, что яз 1) в 4) следует 2). На самом деле достаточно доказать, что из I) и 4) следует, что |l/| = |Х| - 1. Докажем это по индукции, взяв в качестве параметра индукции т = 1-41 шаг. т - 0. Единственное дерево имеет вид, приведенный на рис. 7.23. Ясно, что для него |Х| = 1, |С/| = 0, и значит, |£7| = |Х| - 1. Рис. 7.23 Индуктивный переход. Предположим, что соотношение |V| = ]Х| — 1 ' справедливо для любого дерева, у которого |17| $ то. Докажем, что тогда оно справедливо я для дерева, у которого [l/| = mo + I. Удалим произвольную дугу и дерева, т. е. перейдем к графу £?{,. Так как 4) для G ' выполнено, то и — мост и G„ состоит из 2-х компонент связности (теорема 7.10), каждая из которых — дерево с числом дуг, меньшим либо равным то. Тогда для каждой коыпонеиты связности выполнено пралпо-ложеняе индукции 1^11 = 1^1-1,. |У2| = |*2| - 1- - Складывая последние равенства. получаем i^l + |^| = |Xt| + iX2|-2; = |У|-1 =|Х| М-1 =И-2; Индуктивный переход доказан. Докажем теперь, что из 2) следует 3). На самом деле достаточно доказать, что из 2) следует «G — связен». Доказывать это будем от противного,
т. е. предположим, что существует граф G, который не содержит циклов и у которого |l/| = |Х| — 1, но G не является связным. Тогда он состоит по крайней мере из к (к > 2) компонент связности, каждая из которых не содержит циклов, и значит, является деревом. Переход I ==* 2 уже доказан, значит, для каждой компоненты }Ц|' = PG|-1,'“ t = 1,2,..., fc. Суммируя по i, получаем к к £141 = £(Ы-') «™ М = |Х|-*. t=l i=i Это противоречит тому, что |£7| = |Х| - 1. Докажем, что из 3) следует 4). Будем доказывать от противного^ т. е. предположим, что существует граф G, который связен и у которого |С/| = |Х| -1, но 4) для него не выполнено, т. е. не каждая дуга является мостом. Пусть uq g U не является мостом, тогда G'Ua — связный граф, у которого число дуг равно |Х| — 2, а это противоречит лемме 7.6. Докажем, что из 4) следует 5). Доказывать будем от противного, т. е> предположим, что существует такой связный граф, у которого каждая дута является мостом, но для которого 5) не выполнено. Так как на графе. G условие 5) не выполнено, то на нем есть такие две вершины, которые можно соединить двумя простыми цепями — Tft и %. Ясно, что и ^2 является либо простым циклом, либо содержи! простой цикл. А дуги простого цикла не являются мостами. Получено противоречие с 4). Докажем, что из 5) следует 6). Добавим к графу G дугу w, соединяющую у с х. На исходном графе по условию существует простая цепь соединяющая х с у, тогда и {ш} — простой цикл. Докажем един- ственность образовавшегося простого цикла. Доказывать единственность будем от противного. Предположим, что существуют такие вершины xQ и уо и добавленная дуга год, соединяющая од с х0, что на графе Си {год) существует два простых’цикла, проходящих через год: ’ll и Д2- Но тогда \ {?°о} и % \ {w} — две простые цепи, соединяющие я0 с од на G, а это противоречит 5). Докажем, что из 6) следует 1). Докажем отдельно, что: а) из 6) следует — «С связен»; ' '• ' 6) из 6) следует — «С без циклов».
Докажем а) от противного, т. е. предположим, что существует несвязный граф, для которого выполнено 6). Возьмем на этом графе две вершины xq и ро, лежащие в равных компонентах связности, и добавим к графу дугу 1Уо, их соединяющую. Ясно, чтр при этом не образуется простой цикл, а это противоречит 6). Докажем б) тоже от противного, т. е. предположим, что существует граф, содержащий цикл, для которого выполнено б) — добавление любой дуги приводит к образованию единственного простого цикла. Существование на графе цикла означает и существование на нем простого, проходящего через все свои вершины (кроме начала и конца) по одаоиу разу (е* элементарного) цикла. Зафиксируем на нем две вершины х0 и уо и добавны к графу дугу ш, их соединяющую. Ясно, что при этом образуется два простых цикла (см. рнс. 7.24). Ряс. 7.24 Получено противоречие с 6). Следствие 7.1 Если G(X, U, f) — лес из к деревьев, то |[/| = |Х|-». Определение 7.27 Вериита х графа G(X, И, f) называется висячей, если degrr — 1. Следствие 7.2 Если G(X, U, f) — дерево и |Х| > 2, то на нем есть по крайней мере дее висячие вершины. ► Допустим противное, т. е. что существует дерево G(X, U, /), у которого |Х| > 2 и ие более одной висячей вершины. Представим X в виде X — (Х\Хь)иХь, где Хь— множество висячих вершим. Обозначим 6 = |X»j С 1- По теореме Эйлера (теорема 7.1) имеем
2м - = 22 <1е8;т+ 22deg;r = *ёХ х€Х\Х\ хёХ» = 52 des® + 6 > J2; 2 + 6 = 2(|Х|-5) + 5 = 2(Л|-5. хбХ\Х* х€Х\Х6 Учтем. что |С7| = |Х| - 1, тогда 2(|Х|-I) > 2|Х|-6 или -2 ?-6. Последнее дает противоречие и при 6 = 0, и при 5 = 1. > ' м Вопросы в конце параграфа га 1. Докажите самостоятельно следствие 7.1 к теореме о деревьях. । • 1 2. Диаметром связного графа называется самая длинная простая цепь. Докажите, что любые два диаметра графа имеют общую вершину. 7.6 Помеченные графы. Перечисление помеченных деревьев. Матрицы графов Помеченные графы Определение 7.28 Гроф с п вершинами называется помеченным, если его множество вершин X — (1;п]и- Определение 7.29 Помеченные графы Gi и С2 с п вершинами называются изоморфными, если существует биективное отображение V-’ Ut -» U2 такое, что (pto/2оф)(и) ~ (р,о VueUi, j=l,2. Эго определение нохоже на определение иэоморфизмаграфов (см. определение 7.5), отличие состоит в том, что изоморфизм графой реализуется парой биективных отображений p:Xi -» Х2, а здесь р — тождественное отображение.
С2 Рис. 7.25 Рассмотрим графы Glt G$, приведенные на рис. 7.2$. Gi иэомпр-фен как помеченньй графу (?2 и не изоморфен как помеченный графу Сз. Ясно, что в обычном смыслеСт, Gi, Gs изоморфны. Перейдем теперь к решению одной комбинаторной задачи: «Сколько существует не изоморфных между собой неориентированных помеченных деревьев с п вершинами?» * Обозначим число неиэоморфных домеченных деревья» через Т(я). Ясно, что Т(1) = 1 Т(2) = 1 Т(3) = 3 7/4) = 16 Рис. 1.26
Теорема 7.14 (теорема Келли2) Т(п) = п" ► Обозначим через Т(плк) число неизоморфных помеченных деревьев с п вершинами, у которых deg 1 = к. Тогда ад) = Еад.м-к=1 Выведем формулу для нахождения Т(п, к). Для этого найдем соотношение, связывающее T(n, к) и Т(п, к+ 1). Возьмем щкнвваяьвм паиечен-ное ДфСво А такое, что degl s= С. Перестроим его в дерево В такое, у которого degf » k +1. Для этого удалим из А любую из п - 1 - к дуг, не инцидентных вершине «1». Обозначим граничные вершины этой дуги хну. При удалении дуги дерево А разваливается ид два куска: один из них содержит вершину «I» и одну из (х;у}; а второй — оставшуюся из {х; у} (см. рис. 7.27, левая часть). Рис. 7.27 2Келли А. (1821-1895) — аиглнВсжий мвгеыпнк. Его матемязмческне способности промялись уже в раннем возрасте. Окончил Тринити-Колледж (Кембридж) в возрасте 17 лет. Занимался n-мерной геометрией и многомерным ашлкзом. Основным ноочкиком суше-етеоваш А. Келлн пакт» с 1841 г. по 1863 г. юридическая практика. Однако Келли не оставлял занятия математикой и опубликовал за эти годы около 300 мвтемжячеасих работ. С 1863 г. Келли переходит не должность математика в Кембриджском университете, несмотря на заметную потерю в мпющк.
Переход от дерева А к дереву В показан на правой части рцс. 7.27, т. е. мы «пришиваем» отвалившуюся часть новой дугой, соединяющей «1» и «у». Пару полученных графов (А\ В) назовем связкой. Ясно, что одно дерево А порождает п-1 —к связок, тогда количество связок (А; В) ранио (n-l-fc)-T(n,fc). ' Возьмем теперь произвольное дерево В, у которого deg] = к + 1. Подсчитаем, сколько связок (А; В) порождает дерево В. Удаление любой дуги и, (t = 1,2,..., к + 1), инцидентной вершине «1», разваливает дерево В на две ости, одна из которых содержит вершину «1», а другая — вторую инцидентную удаленной дуге вершину (обозначим ее х«). «Отпавший лепесток» можно приклеить, соединив дугой вершину Xi с любой вершиной другого лепестка (см. рис. 7.28, правая часть). Рис. 7.28 Одна дуга ut дает нам п — 1 — п, возможностей (п, — число вершин на t-м лепестке). Тогда всего деревьев А, порождаемых В, будет к+1 . ' к 1-1 22(п-1-п,) = (п- 1)(к+1)- = <=1 »=1 = (п - 1)(к + 1) - (п - 1) = (п-1)к. Таким образом, одно дерево В порождает (п — 1)к связок (А; В). Тогда количество связок (А; В)ранио (n-l)-fc-T(n, fc+l). Приравнивая дважды вычисленное количество связок (А; В), получаем (n-l-fc)T(n,fc) = (n-l)fcT(n,fc+l). (7.6)
Выпишем теперь серию соотношений типа (7.6): (п—1 —k)T(n,k) = (п-1)кГ(«,к + 1) 1)Т(п,к+1)= (п — 1)(к + l)T(n,k + 2) 1-T(n,n —2) = (n — l)(n — 2)T(n, n —1) Перемножай их н сокращая на общие множители, получаем: T(„,k) (n-l-k)! = (п- !)<-»-»>. ^Л!.Г(П|„_ ]). = 1 Окончательно Т(пД) - CfcJln-l)»-1-». Тогда Ж = £cfci(n -= k=i t=a = (1 + (я- I)/1*-3’ = n("-3) -я Свои результаты по перечислению деревьев А. Келлн успешно применил в химии для определения количества химических изомеров углеводородов — CnHzn+2- Структурные формулы молекул таких соединений (вершины — атомы, дуги — валентные связи) представляют собой деревья. Структурные формулы двух таких изомеров—бутана и изобутена — приведены на рнс. 7.29. Методы теории графов в XX веке нашли широкое приложение в химии (см., например, «Химические приложения топологии и теории графов»: Пер. с англ. / Под ред. Р. Кинга. М.: Мир, 1987. 560 с., илл.).
Н *Н Н С С С н н с Рис. 7.29 Важным для приложений классом ориентированных деревьев- являются корневыё, или растущие деревья, г. е. такие, у котсфых существует вершина, называемая корнем, из которой существуют простые пути во все остальные вершины (в силу общих свойств деревьев путь из корня в каждую вершину — единственный). Вершины корневого дерева, отличные от кормя и висячих называют промежуто'шыми. Такие структуры принято использовать для организации систем хранения информации, в частности, таковыми являются компьютерные файловые системы. Корневое дерево файловой системы обычно называют деревом директорий, в котором корень — корневая директория, промежуточные вершины — поддиректории, а висячие вершины — отдельные файлы или пустые поддиректории. Матрицы графов Во многих задачах теории графов (особенно решаемых на ЭВМ) графы удобно описывать матрицами. Пусть С(Л, С/, /) — помеченный конечный граф с п вершинами и т дугами (дуги тоже занумерованы). Матрицей смежности графа G называется матрица A(G) размера пхп, определенная следующим: 1
(1, если существует дуга йз г-н вершины в j-кг, О, в противном случае. Матрицей инцидентности графа называется матрица B(G) размера п к т, определяемая следующим: !1, если j-я дуга заканчивается в г-й вершине; —1, если j-я дуга начинается в г-й вершине; О, в противном случае. В случае неориентированного графа матрица B(G) определяется следующим: {1, если j-я дута инцидентна г-й вершине; п О, в противном случае. Теорема 7.15 Двоичный ранг (т. е. вычисленный в арифметике по 0+0 = О, 0+1 — 1, 1 + 1 = Q) матрицы B(G) конечного неориентированного графа равен |Х| — c(G). ► Если выбрать покомпонентную нумерацию вершин и дуг, то матрица В (С) имеет блочную структуру — блоки соответствуют компонентам. Ранг такой матрицы равен сумме рангов блоков. Для доказательства теоремы осталось доказать, что в случае связного графа двоичный ранг равен [,Y| -1. Если к последней строке матрицы прибавить все остальные строки, мы получим нулевую строку (двоичная арифметика), значит, drangB(G) < |Х| - 1. (7.7) У любого связного графа существует частичный граф, являющийся деревом (попрывающее дерево). Тогда drangB(G) > drangB(noKp. дерева). (7.8) Покажем, что drangB(G) = [Х| - 1, (7.9) если G — дерево.
Последнее равенство будем доказывать по индукции, взяв. в. качестве параметра индукции m = |£/|. 1-й шаг. ni — 1 2 S(G) = (’j; drangfl(G) = 1 =2-1 = |Х|-1, т. к. рф= 2. - Индуктивный переход. Предположим, утверждение справедливо для любого дерева с ш дугами. Докажем, что оно справедливо и для дерева, у которого = m + 1. Мы знаем, что на таком дереве есть висячая вершина (следствие 2 теоремы 7.13). Будем считать, что онй ймевт последний номер г*ияцйдевтн£я ей дуга имеет последний номер. Тогда матрица 8(G) имеет следующую структуру: 0\ , ' 1 о , JKI 01/ Но тогда drang£(<?) = drangB + 1- Граф G'Un t — дерево с m дугами, подученное из дерева G удалением висячей вершины н инцидентной ей дуги. Для неговыполнено предположение индукции drangB (Сч7т+1) = (РП - 0 - 1. тогда drangB(G) = |XJ - I - И-1 = ]Х| - 1.
Индуктивный переход доказан. Из (7.7), (7.8) и (7.9) получаем, что если G — связный граф, то drangB(G') -- [Х| - 1, а это завершает доказательство всей теоремы. •< 7.7 Взвешенные графы. Задача о кратчайшем соединении. Кратчайшие пути Завершая эту главу к весь курс, рассмотрим взвешенные графы, т. е. такие, у которых дугам поставлены в соответствие вещественные (как правило неотрицательные) числа, называемые весами. В качестве весов могут выступать длины дут, пропускная способность, стоимость эксплуатации и т. п. Задача о кратчайшем соединении Известны точки, в которых будут расположены населенные пункты (города) и известны трассы дорог, которые можно построить, а также стоимость их строительства. Рис. 7.30-
На рис. 730 указаны населенные пункты Д, В, С, D, F; арабские цифры около проектируемых участков дорог — стоимость их строительства; римские цифры — номера дуг. Требуется определить, какие из дорог следует построить, чтобы полученная схема дорог позволяла попасть из любого города в любой и из всех возможных схем имела наименьшую стоимость строительства. Ясно, что сформулированная задача молят быть формализована с помощью теории графов. Определение 7.30 Взвешенным графам (графом с весами на дугах) будем назывсапь четверку G(X,U,f,p), где G{X,U,f) — граф, р U —» (0,+оо). Отображение р называется весовым ото6ражекием.Есхи и€(/,то р(и) называют весом дуги и. Если {uJJLj —путь или доь на графе G, то ее весом называют величину ?({«.&.)'У i=I Весом графа G(X, U, f, р) называют величину иеУ Аналогично определяется вес подграфа и частичного графа. Сформулируем задачу о соединении городов на языке теории графов. Дан конечный связный взвешенный граф G(X, Ц /, р). Требуется найти связный частичный граф минимального веса. Оиреягяеиие 7.31 Покрывающим деревом связного графа называется его частичный гроф, который является деревам. Если G не является связным графам, то говорят о покрывающем лесе, т. е. о деревьях, покрывающих его компоненты связности. Теорема 7.16 Решение задачи о соединении городов — покрывающее дерево.
► Предположим противное, т. е. что решение задачи — не являемся деревом. Тогда па‘нём по основной теореме о деревьях существует хотя бы одна дуга, которая не является мостам. Обозначим ее ц,.Рассмоцшм граф g(x,U'\{чо},!w(,. Очевидно, от связен и />( с(х,П'\{«о}./| ))= - \ \ 1с"\(М// -/>(«.) Последнее противоречит тому, чгобЦх, U', /|а,, является решением задачи о соединении городов. -я Теорема 7.17 (алгоритм Краскала3) Последовательность 1 дуг покрывающего дерева минимального веса может быть найдена с помощью следующего алгоритма: 1) uj — дуга минимального веса из множества U, не являющаяся петлей; 2) если уже определен начальный отрезок последовательности ui, иг, ..., Ut- i, то дуга иь выбирается измножества H\(ui,t*2. - - -так, что выполнено два условия: а) добавление1 дуги Uk к {«i, «2, ..., иь- г} не приводит к образованию циклов; б) из дуг, удовлетвореющих условию а), дуга ttj. обладает наименьшим весом. ► Ясно, что последовательность, построенная по алгоритму, определяет покрывающее дерево. Очевидно, что p(ut) < р(иг) < ••• < pfyxi-i)• Это дерево обозначим Тк . Покажем, что Тк, является решением задачи о -Краскал Джозеф Берпард (род 1928 г.). Родился в Нью-Йорке, oKcnrajt увяверлпет г. Чикаго, получил степень доктора философии в Принстонском университете в 1954 г. Преподавал в Принстоне и университетах платов рнсконснн и Мичиган. С 195^ г. — на^чныр сотрудник Bell Laboratories. Изложенный в этой книге алгоритм был предложен Краскалом еще нл 2-ы курсе университета.
соединении городов. Предположим противное, т. е. что существует другое покрывающее дерево Т — G(X,V,f\v,p\v), при этом р{Т)<р(Тк,). (7.10) , Упорядочим последовательность дуг дерева Т так, что V — 1 и р(«1) < p(v2) < < р(®|Xf-l) • Ясно, что / {Mtet’1- Обозначим через к такой индекс, что «1 = »>, «2 = ®2» • • •, Ufc-i — v*-i, «ь / V*- Тогда р(ик) < p(vk), так как vk по отношению к {и,}*”* удовлетворяет подпункту а) пункта 2) алгоритма Краеведа. Добашш к дерену Т дугу иь По основной теореме о деревьях это привело к образованию единственного простого цикла, содержащего.дугу ик. Очевидно, этот простой цикл содержит хотя бы одну дугу v3, j > к. Мы имеем P(«k) < p(ffc) S p{vy). Разорвем этот цикл, удалив дугу Vj. Полученное дерево обозначим Т\. Занумеруем его последовательность дуг {t>| так, чго.р(и{) < p(v2) — •'' — X^lxi-i)- Ясно, что р(Т1)<АП- (7-11) Возможны два случая: 1) {«t},*'-1 = 0’<Я=11- Т'огда 7} = Тцг и мы имеем р(Тк,)</>(Т)- (712) Последнее противоречит (7.10). 2) (ц<}<=1''1 / Обозначим через fcl такой индекс, для ко- торого «I - f 1, U2 = v2> «fcl-l = <&-!♦ «*1 Из построения Tj следует, что ki > к. Тогда, применяя рассуждения, приведенные для пары Тк„, Т, к паре Ткр, 7j, мы получим граф Т? (к2 > kl), для которого опять возможны два случая: I), 2). Но случай 1) приводит к противоречию, а случай 2) приведет’к графу 7з и кЗ > к2. Ясно, что мы можем лишь конечное число раз выходить на случай 2), так как к! <к2 <• < |Х| — 1, а выход на случай.!) приводит к тому, что р(ТКг)<р(П)<р(Т2)< а это противоречит (7.10).
0 Пример 7.13. Применим алгоритм Краскала к графу, приведенному на рис. 7.30, — схеме дорог. На первом шаге выбирается дуга ui = 111, затем ц2 = 1, u3 = V (далее отпадает возможность выбора дуги IV), ui ~ VIII (далее отпадает возможность выбора дуги VI), u5 = IX (далее отпадает возможность выбора дуг П, X, VII). Процесс выбора дуг автоматически оборвался. Покрывающее дерево минимального веса приведено на рис. 7.31. Рис. 7.31 Пунктиром обозначены дуги, не вошедшие в это дерево. /(Тл,) =Ю. Задача о кратчайших путях Пусть дан граф с неотрицательными весами на дугах. Нас будут интересовать две задачи: 1) Какова длина кратчайшего пути, ведшего из одной выделенной вершины к другой? Каков этот путь? 2) - Каковы длины кратчайших путей от выделенной вершин^ до всех остальных вершин графа? Каковы эти пути? Задачи 1) и 2) очень похожи, и решение задачи 1) получается в результате прерывания в нужном месте решения задачи 2).
Приведенный ниже алгоритм Дейкстры4 — один из первых известных динамических алгоритмов — основан на двух идеях: — присвоении вершинам графа меток и правиле пересчета меток, при этом окончательные метки — длины кратчайших путей; — экстремальном свойстве кратчайшего пути, состоящем в следующем: если кратчайший путь из вершины х в вершину у проходит через вершину г, то его отрезок от вершины х до вершины z — кратчайший путь от х до z, а его отрезок от г до у — кратчайший путь от г до у. Опишем шаги алгоритма Дейкстры нахождения длин кратчайших путей из вершины д до всех вершии графа. 0°. Начальная установка меток и массивов (метку вершины будем обозначать т(х) :) т(в) := 0, т(х) := со для всех х а; S : {s}, T:—X\S. 1°. Правило пересчета меток н изменения массивов. Пересчитываются ' только метки вершин t 6 Т, для которых существуют дуги, ведущие из множества S m(t) := iniii (m(t), т(у} + р , (7.13} yes где uyt — дуга из вершины у в вершину t. 2°. Из вершин, метки которых пересчитались, выбрать вершину t, имеющую наименьшую метку S':=Su{t), l'-.= X\S’. 3°. Правило выхода из алгоритма. Если S' = S, то переход из 4°, иначе S := S’, Т:-Т и переход на 1°. 4°. т(х) — длина кратчайшего пути из вершины в в вершину х, если т(х) = оо, то пути из вершины s в вершину х на графо не существует. 4Дейкстра Еусгер (1930) родился в Нидерландах. Программированием начал заниматься в 1950 г, когда учился на отделении теоретической физики Лейденского университета Лицензию программиста получил в 1957 г. Е. Дейкстра — один из основоположников про-1 раммиромния как учебной дисциплины, включающей алгоритмические языки, струюуриое программирование, алгоритмизацию. С 1984 г возглавляет отделение программирования в университете плата Техас.
Восстановление кратчайшего пути Кратчайший путь от вершины » к вершине t восстанавливается по известным меткам вершин, полученным с помощью алгоритма Дейкстры, пошагово от вершины t до возврата в вершину s. Восстановление основано на экстремальном свойстве кратчайшего цуги. Опишем один шаг возвращения. Для вершины t среди вершин у € /“‘(Л- х {t}) найти такую, ляя которой выполнено условие: m(i) = m(y) + р (uvt). (7.14) Условие (7.14) восстанавливает последнюю дугу кратчайшего пута: у I. После чего выполняется шаг возвращения от вершины у и т. д. 0 Пример 7.14. Дляграфа, приведенного на рисунке 7.32, найти длины кратчайших путей от вершины 24 ко всем остальным и восстановить кратчайший путь от xi к х-?. ► Решение задачи сведем в таблицу 1Л (окончательные метки обведены квадратом):
Проведем восстановление пути из xi в х7. Ясно, что т(х9) = m(xe) + Р (««,*»), m(xs) = тп(х9) + р(аХеЯв), П1(х9) = 7П(х2) + р (uIjW) , m(x2) = m(xi) + р (нХ135,) • Таким образом, кратчайший путь из х, в х7 имеет длину 4 и трассу: X) —* х2 —’ Х9 -U Хй —► х7. -4 Следует отметить высокую эффективность алгорятмй'Дейкстры и его широкую применимость в окружающем нас мире. Бортовке компьютеры современных автомобилей позволяют находить трассу кратчайшего пути, и дедают это они с помощью алгоритма Дейкстры. Маршрутизаторы, являющиеся важнейшими элементами глобальной компьютерной сети Интернет, определяя маршрут доставки сообщения с одного сервера на другой, используют алгоритм Дейкстры. Таким образом, графы и алгоритмы на графах все более и более (незаметно для нас самих) входят в нашу жизнь н становятся такими же привычными ее элементами, как электричество, радио и телевидение. Рис. 7.32
Замечания н вопросы в конце параграфа ГП IqI 1. Если граф не связен, то алгоритм Краскала дает минималь-I • I I • I ный покрывающий лес. 2. Если граф не взвешен, то, присваивая всем дугам веса, равные 1, мы можем применить алгоритм Краскала для нахождения покрывающего дерева (леса). 3. Доказанная теорема о двоичном ранге (т. е. в арифметике 0 + 0 = 0, 1+0 = 1, 1+1 =0) матрицы B(G) конечного неориентированного графа позволяет предложить матричный вариант реализации алгоритма Краскала. 4. Кратчайший путь из вершины х в вершину у на графе может быть не единственным. 5. Приведите пример графа и таких вершин х и у на нем, для которых существует несколько кратчайших путей из х в у. 6. Предложите модернизацию алгоритма Дейкстры, позволяющую находить все кратчайшие пути из одной вершины в другую. 7. Как модернизировать алгоритм Дейкстры, чтобы можно было находить все пути из одной вершины в другую в порядке убывания их длин?
Глава 8 Задачи и упражнения для самостоятельного решения 8.1 Алгебра высказываний Таблицы истинности Каждая формула алгебры высказываний обладает свойством превращаться в высказывание при фиксации в ней значений всех высказывательных переменных, т. е. если мы зафиксируем в формуле значения всех выска-ч мая тельных переменных, то, пользуясь Определениями логических операций, мы можем вычислить значение истинности формулы. Таблица истинности формулы алгебры высказываний содержит столько строк, сколько всевозможных наборов значений истинности переменных можно образовать. Так как каждая выскашвагелыия переменная может принимать только два значения (0 и 1), то в случае п переменных таблица истинности содержит 2П строк. При построении таблицы истинности наборы значений переменных располагают сверху вниз в лексикографическом порядке (каждый набор понимают как двоичную запись неотрицательного целено числа и располагают в порядке возрастания от (ООО ... 0) до (111 ... 1). Если у вас возникают трудности с использованием двоичной системы счисления, можно применить метод «последовательного половинного
деления столбцов» — столбец первой переменной делят пополам и заполняют верхнюю половину нулями, а нижнюю половину — единицами, затем каждую половину второго столбца деляг пополам и опять заполняют полученные половины нулями и единицами, и т. д. Последовательность такого заполнения приведена ниже: ЗЙе$&ЫкАй ОиШ Заполняют' столбцы значений подформул, из которых образуется формула Последней заполняется столбец значений истинности формулы. Пример 8.1. - Построить таблицу истинности формулы: ^1^2 -* (xi V.t2)TJ.
225 M| 8.V Алгебра высказываний < Яг ► 1. Определим порядок действий в формуле: 11 • —» (xj V х2) • I?. 2 1 в 3 14 Яг 2. Пользуясь определения*»* операций V и запояикм табли- в; цу8Л. Ш Замечание 1. По мере приобретения навыков можно опускать построение промежуточных столбцов. |к Составить таблицы истинности дм следующих формул: Ж 8.1) X V у; 8.2) X Л У; 83) X -* (у Vx); 8.4) х -* (х Л у)'; S 8Л)(хУу) 8.6)x-»((xVy)Vz); 8.7)х-»(у — zj; К 8.8) (x -+ у) -+ z; 8.9) x ~ (у ~ z); ' 8.10) (x ~ y) ~ z; К 8.11)(xV(yVz))-,(5AfaAz}}; К 8.12) (x —»(у A z)).—»(x —»(у Az)J; S 8.13) (x ~ &“v г)} ~ (r ~ to V z)): I» (« v й -• ((» л-г) -• (x v (9 ~ 2))); в «•lS)((T~9)~((2-P’V9))-J2))~(IV!/)i И’ KM> 1 ~ ~ ‘ ~ ** ~ ' je Пусть xt (i - 1,2,3) — символы булевых переменных (т. е. прянныа- гИб/ ющих два значения: 0, 1). Построить таблицы истинности: j К. 8.17) (Xj = т2) V (х2 = х3); 8.18) (xi > х2) -* (х2 = Хз); Д 8.19) (Xj / х2) V (х2 и Хз); 8.20) ((ii > х2) Л (х2 = хз)) fci > ®з). 1Я|. Применяя таблицы истинности, доказать тождественную истинность формул: Жк 8.21)а -^х: 8.22)xVx; 8.23) (хЛ844)5~х; 125) х -> (у -> х); 8.26) Ж -»(х -»у); 8.27) ((х -»у) Ах) у, ^>8.28) ((х -»у)Лу) -»5; 8.29) ((х V у) Ах) -»у, 8.30) ((х ~ у) Ах) — у; 8.31) (х -»у) ~ fa-+ х); 832) ((х —»у) Л (у —» z)) -+ (х -+ z); 8.33) (х -»(у -» z)) -»((х Л У) -г z); 8.34) ((X —» z) Л (у —» г)) -* ((г V у) —» г); |Щ 8.35) (х — (у — z)) — ((х -* у) — (х -* z)) •
Применяя таблицы истинности, доказать равносильность формул: 8.36) х V у в у V х; 8.37) х V (у V z) = (х V у) V г; 8.38) х Л (у V z) = (х Л у) Л г; 8.39) я- Л (у Л г) = (х Л у) Л г; 8.40)zV(yAz) = (zVy)A(zVz); 8.41)zA(yVz) = (zAy)V(zAz); 8.42) (zVy) = 5Ay| > — законы де Моргана: 8.43) (ягЛу) = rvyj 8.44) xVz = z) > — законы цдеьакпентноспс 8;45) х Л х = х J 8.46) zV0 = z; 8.47)zAl = it; 8.48)3? = ж; 8.49) х ~ у = у ~ х; 8.50) х ~ (у ~ z) = (а ~ у) ~ z; 8.51) х —*у = 5Vy; 8.52) х ~ у = (х —»у) Л (у —» х). Порядок действии и упрощенная запись формул При записи формул приняты соглашения об упрощении записи формул (см. § 1.2, замечание 2). Учитывая соглашения о порядке выполнения операций, опустить «лишние» скобки и знак «А» в формулах: 8ЛЗ) zA(yA(TVJ)); 8.54) (хЛу)V((y Az) V ((ЕЛу) V (гЛ?))); 8.55) ((xVy)Vz)->((xAy)Vz); 8.56) ((х Vy) A(zV(y Az))) -+ ((^Лу) —*?); 8.57) ((ж V у) V (ж V ((у Л (х V z)) Л (у -» г))) ~ г); 8.58) ((т V у) —»(х Л у)) V ((я?Л у) V (z V у)); 8.59) ((х Vу) Лг>-> (((х VP) V z) ~ (S Vу)); 8.60) (zA (у V z)) Л ((х —»(у —» z)) ~ (х Лу)). Восстановить скобки к знак «Л» в формулах: 8.61) хУу —и; 8.62) xVy—»ху; 8.63) жу Vxy(y V г); 8.64) xV y(xyV z); 8.65) ху Vxyz —Vyz\ : 8.66) (x — x Vyz) ~ (z Vy -» z); 8.67) (ж V y)z -+ (zy ~ уУ 3); 8.68) x V у -♦ x v y(x z) v .т(у ~ z); 8.69) xyz —»(z ~ yz) V ж V у (z —»(y ~ z)); 8.70) zy ~ z(y —+ г) (x ~ у) v zz v yz.
Равносильные преобразования н упрощение формул Ключом к решению примеров на равносильные преобразования и упрощение формул являются 19 основных равносильностей булевой алгебры высказываний (теорема 1.2), поэтому первым шагом при решения таких примеров является переход к булевым операциям с помощью формул: a —»b = К V b, a ~ b = (a —» b)(b —»a) = abVeb=(Svb)(aVb). Успешное решение примера зависит от умелого, эффективного применения основных равносильностей. Следует иметь в вицу, что буквы, использованные при записи основных равносильностей, могут означать как символы вьгсказьгвательных переменных, так я формулы алгебры высказываний, т. е. основная равносильность a Va = 1 означает, в частности, что TiVTTsI, ' . ivl=i, (Т, -».т2)Тз = 1. Полезными при решении примеров' на упрощение формул являются законы кодупоглощения; I)aV7» = aVb; I') arvad = jrv&; 2) a • (a V b) = ab; 2') a(a V b) = ab, которые мы сейчас докажем. a Va- b ДИС=3аГ" (в V в) (a Vb) = l(a Vb) = a V b. a (a V b) дас^заК- a a v a • b = О V ab = ab. В Пример 8.2. С помощью равносильных преобразований упростить формулу _
±i1z -* (57V55)5^ реход (ti v 12)23 э булев, операциям закон двойного отриц. = V Л~2 V5T • 5з V 22 закон поглощения = Tj Vx2 vi3 s al^VtaVir^eii -»(х2 vz5). 6)55V(^Vl2) SXg-tx, vx2). - в) i2 V 5f v 2s = T2 V 5157- r) xiv^a vx2 = VX2 - xixa —»ягд. д) 57 v a?2 v .та = • я3 • .т3 QJ Замечание 2. Любую запись а)-д) можно считать ответом. Следующий тип примеров — доказательство равносильности двух заданных формул с помощью равносильных преобразований. Существуют три основных схемы решения таких примеров. Каждая из них предполагает выполнение перехода к булевым операциям в исходных формулах. Далее, по перкой схеме предполагается, начиная с левой формулы, провести цепочку равносильных преобразований, завершив ее на правой формуле. Вторая схема — зеркальное отражение первой. Третья схема предполагает проведение параллельных цепочек равносильных преобразований левой я правой формул до тех ппр, пока в этих цепочках не обнаружится совпадение каких-то звеньев (одного звена верхней цепочки с одним звеном нижней). Пример 8.3. Доказать, что (ихз)(»223) а (.Т1 V т2) — 23.
► Перейдем к булевым операциям (37 V х3) (Эд V х3) = xi Vx2 V х8. 1-я схема. (Х? V Х3) (Х2 V Х3) V XjX2 V Х1Х3УХ3 закон поглощения закон поглощения _____ закон _____ = X1T2VX3 = X1VI2VX3. де Моргана 2-я схема. Xi Vx2 v закон '___ _ч, дистр. = xT-TJVss = де Моргана закон (xi Ухз)(тз Vz3). 3-я схема. _________ ____ дистр._______ (.Т1 Ухз) (х2 Ухз) Xi Х2 УХ2Т2 VXjT3 Vx3 S.T1 Т£У х3. . закон_______ ’ X! Vx2 vx3 = ^rx2vr3. де Моргана 0 Замечание 3. Следует иметь в виду, что среди примеров на доказательство равносильности формул есть примеры с отрицательным ответом. В этом случае ни одна из схем не привадят к получению ответа. Однако, яеудача-при использовании схем 1-3 может говорить и о недостаточно высокой технике равносильных преобразований. В случае неудачных попыток применения схем 1-3 следует для обеих <]юрмул постронть-таблицы истинности. Совпадение столбцов значений формул будет означать их равносильность, а несовпадение — неравносильность. Применяя равносильные преобразования, доказать следующие соотношения: 8.71) тУу = т-у, 8.72) xy-'iyy; 8.73) х—»у = х-у; 8.74) х —» у = у —» х; 8.75) ху У ту = х; 8.76) х V ту = х; 8.77) x(rVt/) = .T; 8.78) тУЗу^хУу, 8.79) x(SVy)=xy; 8.80) (г -»у) -+ у = х Уу, 8.81) (х Уу) (xVy) = т;
8.82) xVy=y--т; 8.83) x~y = ?~j^ 8.84) ху V ху V tSy = х -» у, 8.85) х — (у -» z) - (х V z)(y V z); 8.86) х —» (у —» z) = у —»(х —» z); 8.87) TV xyV xzVTyVxz = x —»у V z. Применяя равносильные преобразования, доказать тождественную истинность формул: 8.88) х —»XV у- 8.89) ху -+ х; '8.90) 5 -»(х —• у)-, 8.91) (х-*у)^(ЖУу)^ . 8.91Д) (xv?y)~(xvy); 8.92) (х -т у) -т (у -* х) • 8.93) (х -ч у) -* (у -» х); 8.94) (x-»y)V(y-*x); 8.95) (х -* у) V (х у); 8.96) х —(у—.ху); 8.97) (х-»у)х-» у; 8.98) (х -т у)У -т 5; 8.99) (х V у)Т у; 8.100) (х v Vy)x —» J; «VV» - альтернативная дизъюнкция: (х v Vу) = х^-у); 8.101) (х-ту)(у-тг)-» (х-тг); 8.102) (х -* (у -» *)) -* (ху -» г); 8.103) (х-ч z)(y-ч z) —+ (х V у —» z); 8.104) (х —» z) —»((у —» z) —’ (х Vy —» г)). Применяя равносияьнме преобразования, «упростить»: 8.105) 7yV(x-^y)x; 8.106) (SVy-»xVy) у; 8.107) (х-у)(у^?); «ДО») (*Vy)(x~y); 8.109) (г -т у) (у -т г) (г -т х); 8.110) xz V xz V yz V xyz; 8111) xy(x -» у); 8.112) xy(x~y); __________ 8.113) (r^y)(x~y); 8.114) (x^y)V(xVy). Следующие формулы преобразовать так, чтобы они содержали только «Л» и в-»: 8.115) xVy; 8Л16) х-ту; 8.117) х^у; 8.118) xVyVz; 8.119) х-т(у-тг); 8.120) xV(x~y); 8.121) x^TyV(x-ry); 8.122) xWy; 8.123) xy -»(y x); 8.124) x V у -т (x — z). Следующие формулы преобразовать так, чтобы они содержали только «V» и «-»: 8.125) ху; 8.126) xyz; 8.127) х ~ у, 8.128) х V Vy; 8.129) х(у ~ г); 8.130) х ~ у ~ z; 8.131) (х ~ у)(у ~ z); 8.132) ху ~ xz.
s Преобразовать следующие формулы так, чтобы знак отрицания был отнесен только к переменным высказываниям: 8.133) хУу; 8.134) хуУд; 8.135) xyV'z—'Xyz; 8.136) ,т-»(у-*г); 8J37) х -»у -* (5 — 3); 8.138) (x~y)(y~z). - Преобразовать формулы так, чтобы они содержали только операции «V», «л», «-»>: 8.139) х ~ у; 8.140) (г у) ~ (у г); 8.141) (j~y)-*(j-*z); 8.142) (х ~ у) -♦ (у ~ г); 8.143) (х~у)(у~г)^(.т~г); 8.144) (х ~ у) У (у ~ г) -»(х ~ у ~ z); <145) х ~ у ~ z ~ v; 8.146) (х —» у) ~ (г —»(х ~ z)). 8.2 Двойственность в алгебре высказываний Построение двойственных формул основано на общем и булевом принципах двойственности (теоремы 1.8. 1.9). Общий принцип двойственности состоит в следующем: если исходная формула представляет собой подстановку формул в формулу, то двойственная формула — аналогичная подстановка двойственных формул в двойственную формулу. |pj| Пример 8.4. Пусть F(xi;x2;x3) - (xi -> хгхз) v (®i ~ х3). Найти двойственную формулу F*. ► Очевидно. 1 Найдем двойственные формулы для подставляемых формул и формулу, в
которую осуществляется подстановка: (У1 Vjft)* =У1^У2 = У1 - w= V1 -Vz', (xi —»Тг^з)* = ’ а"2®з — 3TV.t2^3 = = Х| VX2X3 = ST • Х2’ХЗ = = xffxz V х3) = хТ(х2 -> Гз); (xi ~х3)’ = xT~SJ = 3T.TJV5T-?5 = = ^TxJVXiX3 2 SfW • -^1 Хз = = (Xj Vx3)(x7VX3) = х£хз V TxxJ = xt ~xj. Применим теперь общий принцип двойственности: f(*l,та,та)SVI •» „.«п.,.= та(та ->та)(та -та). « I Булев принцип двойственности состоит в следующем: двойственная к булевой формуле получается заменой v на л, л на V, 0 на 1. 1 на 0 и сохранением структуры формулы. ВПрпмер 8.5. Найти двойственную к формуле примера 8.2. пользуясь булевым принципом двойственности. ((Т1 -> Х2.Т3) V (Х| ~ Хз))* = ((х? V х3х3) V (ii®3 V Х| х3))' булев принцип двойственности Ei, • (Тг Vx3) ((□:, Vt3)(iTVq)) = хГ(®2 -+ ®з) (-Х1ХЗ VХ3тГ) = ТГ(.Т2 -+ .Тз) (xj ~ Хз). Найти двойственные формулы: 8.147) х(уУг); 8.148) xyVxz; 8.149) (х V у) (х V yz) ;• 8.150) (ху V yz v«')(sVjVz); 8.151) .т (у V г(х Vy)} ; 8.152) xyzVxyz Vxyz VZyz; 8.153) ((x V y)(z V z) V xyj V ((x V y)z V x) ; 8.154) xy(yzVxyz(xzVyz) VSy) (xVyVz). - Применить закон двойственности к следующим равносильностям: 8.155) хх = х; 8.156) xV0=x; 8.157) ху = ух; 8.158) х V (у Vz) = (х Vy) Vz; 8.159) xy = xVy; 8.160) x(xVy)=.x; 8.161) xVxy = xVy; .8.162) x Vxy Vyz Vxz = X V z. \ 8.3 Нормальные формы: ДНФ, КНФ, СДНФ, СКНФ Нормальные формы формул алгебры высказываний бывают двух типов: дизъюнктивные и конъюнктивные, в каждом из этих типов выделен класс совершенных форм. ' Алгоритм построения ДНФ: 1. Перейти к булевым операциям. 2. Перейти к формуле с тесными отрицаниями, т. е. к формуле, в которой отрицания находятся не выше, чем над переменными. 3. Раскрыть скобки. : 4. Повторяющиеся слагаемые взять по одному разу. 5. Применить законы поглощения и полупоглощения. Пример 8.6. Найти ДНФ формулы (xi х253) -» Ch ~ х3). i ► (.Т1 -+ Х2?з) -+ (х 1 ~ Хз) = (Т1 -+ х2хз) V (X1X3 VX]X3) = = Х1 (i?2 VX3) VX1X3 VX1X3 = XiX2 VX1X3 VX1X3 VliX3 = , = Xii?2 VXiX3 Va?iif3.
Конъюнктивная нормальная форма (КНФ) — двойственное для ДНФ понятие, поэтому ее легко построить по схеме: /=(/*)* = (ДНФ/Т = КНФ(Л- g Пример 8.7. Найти КНФ формулы примера 8.3. ► (ii -+ ~ = (((®i -+ -v = (((34 v vTi^3))’)’ = = (Х! • (х2 Vx3) v (Zj Vz3) • (Zi VT3))’ = = <^\Xi v xixi v z5Tj V 5iTs)’ S (&IX2 V Ж1ЖЗ V xix3)‘ m = (xi VZ2)(a?i V73)(^! Vz3). -4 Совершенную дизъюнктивную нормальную форму СДНФ можно строить. используя следующий алгоритм: 1. = 1. алгоритма ДНФ 2. = 2. алгоритма ДНФ 3. = 3. алгоритма ДНФ 4. = 4. алгоритма ДНФ 5. Опустить тождественно ложные слагаемые, т. е, слагаемые вида • • Z, • • • Z, • • •. 6. Пополнить оставшиеся слагаемые недостающими переменными (Пример на пополнение (переменные zi, х2, т3) ... V Х1Тз V.... з = ..-Vzi(z2v?2)^3V...= = ... v.Tiz2*3 v Х1Х2хз v...) 7. Повторить пункт 4.
Пример 8.8. Найти СДНФ формулы примера 83. ► (xi -» ,Т2Тз) -+ (21 ~ Х3) S = Хг -i X2Xj V (&1Х3 V Т!Х3) = = Xi (х2 Vl3) VX]X3 Vxi53 = = XjX2 V Х1Х3 V Х1Х3 V Т1Х3 s __ в = Xj Х2 V Х1Х3 V j?i^3 = = X1X-2X3 v Xj52X3 V X1X2-T3 V XiX2*3 v j?i12^3 V ?1®23& i = X1X2X3 v x\T2Tz v Т1Г2Х3 v Ax2x3 v 5^53. «< Для построения СКНФ можно пользоваться следующей схемой: f = try = «/•))• = <Л |pj Пример 8.9. Наити СКНФ для формулы примера 83. ► (Т1 — Т2Тз) — (г, ~хз) S = (((ii - »й) v (r.ij Vт,г3))' = = ((.Т1 • (?2 Vx3) VX1X3 VX1X3)’)’ = ((rj V х2.т3) • (xj V Хз) (51 v Хз))’ = = ((Xi VX1X2T3 V.T1X3ух2хз)(®1 Vx3))‘ S = (Х1Х2Х3 VXj^)‘ = (Т152Х3 VX1X2X3 VXiX^s)* = = (Xj V52 Vx3)(xi Vx3 7Тз)(х, V52 Vx3). <4 Известно (теоремы 1.11, 1.12), что СДНФ и СКНФ определены формулой однозначно н, значит, их можно строить по таблице истинности формулы. Схема построения С ДНФ и СКНФ по таблице истинности приведена ниже, для формулы ^! —* х2х3) —»(xi ~ хз):
X] Х2 хз (Х1 -4 г2Х3) -> (Xj ~х3) 0 0 0 1 * . Х1Х2ХЗ 0 0 1 0 —> X| Vx2 Vx3 0 1 0 1 » X1X2X3 0 1 1 0 » Xj VX2 V хз 1 0 0 1 —» Х1Х22з 1 0 1 1 —» XIX2X3 1 1 0 0 *• X!Vx2VX3 1 1 1 1 > Х1Х2Х3 znxjj.-sV V3-Tx2xJV VX[X2X3V VxixJxsV Vxix2x2 СДНФ; (21 VX2 Vxj) (z-j VxJVxJ) (xfVxJ Vx3) СКНФ. Привести к дизъюнктивной нормальной форме (ДНФ): 8.163) х —» (у —» z) 8.164) xj/V(x —> у) 8.165) (xVyVz)(x —> у) 8.166) (г Vy)(y V г) —» (х V z) 8.167) х ~,у 8.168) rVVj 8.169) Х'-у~г 8.170) (х -» у) ~ (х -»(у г)) 8.171) (х ~ у){у ~ г) -»(х ~ г) 8.172) (х ~ у)(у ~ z)(z ~ х) Привести к конъюнктивной нормальной форме (КНФ): 8.173) xVyz 8.174) xj/VyzVz 8.176) x—tyz 8.177) X —> yzv 8.179) ху ~xy 8.180) x~j/~z 8.182) xVV(</VVz) 8.175) xVjizVxyz 8.178) x'-yz 8.181) xMy ~ x — z Приведением к нормальной форме выяснить, какие из формул являются тождественно истинными, тождественно ложными, выполнимыми: 8.183) ху—>xVy 8.184) xVy —> ху 8.185) ху —► ху 8.186) (х—*у)х—* xV yV z 8.187) xVy-'xVz 8.188) (х^у)-*(у^х) 8.189) (х -» z)_-» ((у -» z) -> ((х V у) -> z)) 8.190) xyz V xyz V xyz Vxyz 8.191) xyVxy'-(xV y)(xVy) Для каждой из следующих формул найти дизъюнктивное и конъюнктивное разложение: 8.192) xV у 8.196) xV Vy 8.193) ху 8.194) х -> у 8.195) х~у 8.197) х -»(у -» х) 8.198) ху(х -» у)
8.199) т V у —» з 8.200) ху —» z Привести к совершенной ДНФ (СДНФ) форме следующие формулы: 8.201) xVy 8.202) (х —» у) —»х 8.203) х -> (у -* х) 8.204) x->(y-*z) 8.205) (х -»у)(у-+ z) -+ (х -+ z) 8.206) (х —» у)(у —» z)(z —» х) 8.207) (х Vy)(y V z)(z ~ х) 8.208) (х->у)(у— z)(z -*v) Привести к совершенной КНФ (СКНФ) следующие формулы: 8J09) (х —»у) —» х Vy 8.210) хх-8.211) х?(х-»у) 8J212) х —» yz 8.213) xyz 8.214) (xVy)(y —» z)(z ~ x) 8,215) x V у —»(x —» z) 8.216) ((x —»y) ~ (y —»x))z 8Д17) x Vy V z —» (,r Vy)z 8.218) xy—> zv Приведением к совершенным нормальным формам доказать неравносильность следующих формул: 8.219) xVyHi—»у 8.220) х—»уих~у 8.221) хУуихфу 8.222) х-* (у-» z) и (х-+у)-» z 8.223) ту V z и х(у V z) 8.224) (х—»y)VzHxVy—»z 8J25) (г — y)z и х —» yz 8.226) (х —» у) ~ z и (х ~ у) —» z 8.227) (х V у) z и (х ~у) Vz 8.228) ху ~ z и (х ~ y)z Следующие формулы разложить по переменным х, у, г: 8.229) ху 8.230) xVy 8.231) х 8.232) (xVy)(-FVy) 8.233) xyVxyVxy Определение 8.1 Формула F называется логическим следствием формул (посылок) fir... ,fn. если h-fi.fn -»F = 1. Выяснить, является ли'первая формула логическим следствием остальных: 8.234) 8.236) 8.239) 8.241) 8.243) 8.245) 8.247) У'< Т —» У,1 8.235) х; х —» у, у т; х —»у, у 8.237) у; х —» у, х 8.238) у; X V у, х у; х V Vy, х 8.240) х —»z;x—»у, у—»z х V у z\ х —» z, у —» z 8.242) z —» х; .т —» у, у z г Vy; х —» у, —»х, х Vy 8.244) д'; х ~ у, у V z, z ' z;x—»y,^Vz,x 8.246) у V^; x v z. у —» x-- z, x z ~^y; x -^y.x, z 8.248) z —»if; x —»y, xy, z —»у
8.249) т V Г. х —» у, у -* ”, ,т V z —» yt 8.250) xt; г z,yV z, z —• yV t, ; V t Найти все (с точностью до равносильности) логические следствия из посылок: 8.251) х, х —• у 8.252) х, х ~ у 8.253) х, у, х V у 8.254) х —» (у —» г), у —» z 8.255) х —»(у —» z), у —»~z 8.256) х —» у, у —» z 8,257) а? V у, yV z, zv х 8.258) х, х Vy, xVy Vz 8.259) х -+ (у -+ (z -»«)), х -+ (у -* г) 8.260) х -+ (у -+ z), у -+ (г -+1) Найти все (с точностью до равносильности) посылки, логическим следствием которых являются формулы: 8.261) х у 8.262) х ~ у 8.263) х V у 8.264) х -» у 8.265) xVy—*т-у 8.266) x^y-z’ 8.267) (rVy)-z 8.268) (х у) • г 8.269) х у • z 8.179) х -»(у -»t) Определение 8.2 Умозаключение вида Л А F называется правильным, если формула F является логическим следствием формул ,fn- Докажите правильность умозаключений: 8.271) а-* Ъ 8.272) а->Ъ 8.273) aVb 8.274) eVV!> а Ь а а . b a b Ь 8.275) aVVb . 8.276) а — b 8.277) aVb 8.278) а 4 b Л b —» с а —» b b —»с а —» с
8.279) а->Ь 8.280) aVVb 8.281) aVyb 8.282) b—> с a—>b b'vvc a b а с . b Выяснить, правильны ли следующие умозаключения: 8.283) а —»b b а 8.287) а->Ь aVb а 8.290) а—>(Ь—>с) (и —» Ь) —» с а —»с 8.285) a—»b 8.286) a-tb a —» b b —>.a a ~ b a ~ b a —»(b -» c) (a —» b) —• c b-+c 8,292) aVb-^c aVc—» b bVc—» a aVbvc a-b-c 8.284) а->Ь а b а —♦ b b —»а aVb а b 8.291) а—>Ьс b—t ас c—>ab avbvc a-b-c 8.4 Релейно-контактные схемы н схемы из функциональных элементов Задачи синтеза можно решать, используя связь совершенных нормальных форм с таблицами истинности. В Пример 8.10. Построить схему машины экзаменатора, в которой студенту предлагается вопрос и четыре варианта ответа на него, только один из которых правильный. В елучае, когда ответ правильный, должно зажигаться табло «ответ верен». ► Закодируем номера ответов двухразрядными двоичными числами 00. 01. 10, II. Студент и машина должны генертроявть двухразрздные улра-
Ясно, что схема а) предпочтительней схемы 6).
Анализ схем Пример 8.11. Найти функцию проводимости схемы ► При решении задач такого типа следует помнить, что последовательное соединение реле соответствует конъюнкции, а параллельное — дизъюнкции. Полезным является умение преобразовать топологию схемы так, чтобы явно были видны последовательные и параллельные участки схемы. Преобразуем топологию схемы (добеленные участки обозначены пунк- • тиром, удаляемые участки помечены «х»): Получаем схему: Ее функция проводимости задается формулой Xi Vx2 V(T] Vi2)T3 = Xj Vz2 VT1X3 Vx2l3 = a?! Vij Vl3.
Значит, более простая схема имеет вид: JI Замечание 4, Существуют схемы. в которых преобразование топо-• 1 логин не приводит к нужному результату (или такое преобразование трудно провести). Например, рассмотрим схему: Анализ всевозможных путей прохождения по этой схеме от тачки 1 до точки 2 показывает, что эквивалентная схема имеет следующий вид: Функция проводимости исходной схемы задается формулой: xzy V туг. Приведем теперь преобразование топологии схемы (здесь будут добавляться и удаляться не только проводники, но и реле)
Пересечение проводников, не отмеченное жирной точкой, означает их изоляцию друг от друга. Изобразим оставшееся на последней схеме. ——) г |—|~,х |— Составить схемы, реализующие следующие функции: й.299) Имеется одна лампа в лестничном пролете двухэтажного дома. Построить схему так, чтобы на каждом этаже своим выключателем можно было гасить и зажигать лампу независимо от положения другого выключателя. 8.300) По установленному сигналу каждый игрок замыкает или размыкает выключатель, находящийся под его управлением. Если оба делают одно и то же, то выигрывает А, в противном случае —В. Построить схему так, чтобы в случае выигрыша А зажигалась лампочка. BJ01) Комитет из 5 человек принимает решения большинством голосов. Председатель пользуется правом «вето». Построить схему так, чтобы голосование происходило нажатием кнопок н в случае принятия решения загоралась лампочка. 8.302) Построить схему, управляющую спуском лифта со вторего этажа на первый. Условия, определяющие работу лифта, следующие:
' дверь лнфта на первой этаже закрыта, дяеръ лифта на втором этаже закрыта, пассажир находится в кабине лифта, кнопка вызова на первом этаже нажата, кнопка спуска на первый этаж в кабине нажата. Найти функции проводимости следующих схем, если возможно, упростить схемы: 8.303) 8.305) 8.307) с:жи;ю- 8.308) 8Л09)
8.5 Предикаты и кванторы, множества, отображения При решении примеров на доказательство равносильности формул алгебры предикатов следует обращать внимание на следующее; 1. Области определения предикатов, стоящих слева и справа отзнака «=», должны совладать. 2. Связанная квантором переменная может обозначаться любом буквой, т. е. Ух Р(х) = Уу Р(у) = yt P(t) = ... 3. Основные равносильности, содержащие кванторы, тлеют место в более широком смысле, чем оия описаны в теореме 2.4. Например; УтУуЗгР(х,у, z) = VyVx32P(X,y, z); VotfyVz$(x, у, z) = УгУхУуР(х, у, z). Какие из следующих предложений являются предикатами? 8.310) .т делится на 3 (ж € N). 8.311) х делится на 5. 8312) у = х2-,хеН. 8.313) x3+x+l;x€R 8.314) х2+у2 = 0;х,у€й. 8.315) х2 + у2>0;х,у6«. 8316) .г2 + у2 - z\ х, у, z 6 R. 8.317) x<y;x,y&R. 8.318) Для всякого х е R найдется у € Я такой, что х — у + 1. 8.319) х2 + у2 < -2; х, у € R. 8320) Какие из предикатов в примерах 8.310-8.319 тождественно истинны, тождественно ложны, выполнимы? Выделить свободные переменные следующих предикатов: 8.321) Ух (т - у = х + (-у); х, у € Я); 8322) (х < у; .т,у 6 Л) —» Hz ((х Л z) Л (z < у); 2 6 Я); 8.323) Уу {{у 6 Л, у > 0) — 3z (х = yz- х, z € R))\ 8.324) Ух (Ну Р(х,у) <?(х,у,г)); 8325) HuVti Ф(и, и) —» 3t 4>(t,'u), 8326) Из предикатов примеров 8.310-8.319 образовал, с помощью кванторов высказывания, найти их значения истинности.
‘ Доказать следующие равносильности: 8.327) VxP(x,y) = ЭхР(.т,у); 8.328) Э.тР(.т,у) = VrP(x,y); 8.329) VxVyP(x,y, z) ^VyVxP(x,y, z); 8.330) ЗжЭуР(х,у,г) = ЭуЭтР(х,у,г); 8.331) V.t (Р(х, у) Л Q(x, у)) = Уж Р(®, у) Л Ух Q(x, у); 8J32) Зх (P(x,y)VQ(x,y)) = ЗхР(х,у) v3xQ(x,y); 8.333) Ух (Р(х, г) V Q(y, г)) ~ Ух Р(х, z) V Q(y, z); 8334) Эх (Р(х, г)'Л Q(y, г)) = Э® Р(х, г) Л Q(y, z); 8335) BxVy P(x,y,z) —»VyHx P(x,y, z) = I. Ввести необходимые предикаты и с помощью кванторов записать следующие определения, с помощью законов де Моргана получить их отрицания'. 8.336) определение предела числовой последовательности; 8.337) определение фундаментальной по Коши последовательности; 8.338) определение предела функции в точке*, 8.339) определение непрерывности функции в точке; 8.340) определение непрерывной на интервале функции; 8.341) определение равномерно непрерывной на интервале функции. 8J42) Почему из равномерной непрерывности на (а, Ъ) следует непрерывность функции на (а, Ь)? 8.343) Доказать, что существуют предикаты Ф, Q и Р такие, что а) Ух (Ф(х) V Q(x)) УхФ(х) vy.rQfr); . 6) Зх (Ф(х)Л(?(х)) ЭгФ(х)Л Эг(?(х); в) УуЗх Р(х) —» ЗхУуР(х) 1. 8.344) Какие из следующих формул тохщественно истинны? а) Ух (Ф(х) -♦ Р(х)) —»(Vx Ф(х) —»Ух Р(х)); б) Ух (Ф(х) —» Р(х)) —»(З.т Ф(х) —» Эх Р(х)); в) Зх (Ф(х) —» Р(х)) —»(Ух Ф(х) —»Ух Р(х)); г) Зх (Ф(х) —» Р(х)) —»(Эх Ф(х) —» Эх Р(х)); д) Ух (Ф(х) —» Р(х)) ~ (Эх Ф(х) —• Ух Р(х)).
Основным типом примеров следующего пункта является «Доказать равенство множеств, заданных формулами алгебры множеств». Решение та< кнх примеров следует начинать с построения диаграмм Виенна для левой и правой части. Если картинки ие совпали, то вы уже решили прйМер и доказали, что равенство не имеет места. В противном случав вам рекомендуется перейти к формулам алгебры предикатов, определяющим эти множества, и вычислить, равносильны ли они, или, оставаясь в формулах алгебры множеств, перейти к булевым формулам алгебры множеств и воспользоваться основными равенствами булевой алгебры множеств. Fjl Пример 8.12. Доказать, что А \ (В U С) = (Л \ В) П (Л \ С). правая часть Перейдем к булевым формулам алгебры множеств А \ (В U С) = А П(ВиС) = А П (5 П<7) = - (А Г) В) П (А Г)V) = (А \ В) П (А \ С).
Особое внимание следует уделить решению примеров §2.5. содержащих семейства множеств, так как операции над семействами множеств (см, §2.5) вводятся с помощью кванторов («картинку» в таких примерах не нарисуешь и многоточиями не обойдешься). га Пример 8.13. Доказать, что -^D(UB-> - и<ЛпВ‘>- «61 хе лп(и в,) = (хе А) а (хе U в,) = = (х е А) Л (Эг (х е Bi)) = Эг ((х € А) А (х € Bt)) s Зг(х€(АПВ£)) = х€ □(АПВ<). 8345) Доказать, что множество А всех четных чисел равно множеству В целых чтК^дфедставимых в виде суммы двух нечетных целых чисел. 8346) Дркамть, что множество А = х е Z, х делится на 6} равно множеству В = {.т)х € Z. (х делйтатна 2), (х делится на 3)). где Z — множество целых чисел. 8347) Доказать, что Z - {т| Bn? 3ti(C Z)x -- 3ni I- 5»), 8348) Привести пример таких множеств А, В, С. что А е В. В е С, но А & С. 8349) Привести пример множеств А, В таких, что А е В и Ас В. 8350) Доказать.,что если Aj С Аг С С-А,, С Aj, то Aj = А2 — • = А„. ' 8351) Дрказата^чго Д с В тогда и только тогда, когда А \ В = 0, 8.352) Доказав; что А = В тогда н только тогда, когда АДВ = 0, Доказать ра"енства: 8.353) А \ (В U С) = (А \ В) П (А \ 8.354) А\(ВПС) = (А\В)С1 (А\С): 8355) А\(А\В) = Ап В; 8356) (А \ В) \ С = (А \ С) \ (С \ С)\ 8.357) АДВ = ВДА; 8358) (АДВ) ДС = АД(ВДС); 8359) А Г) (ВАС) = (А П В)Д(А Г) С); 8.360) АД( АДВ) = В. 8.361) Выразить операции U, Г\, \ через Д П. 8.362) Выразить операции и, П, \ через Д, U.
8.363) Выразить операции и, л, \ через Л, \. 83М) Доказать, что нельзя выразить \ через и к п. 8.365) Доказать, что нельзя выразить и через п и \. 8 J66) Пусть А = {1,4,5}, В = {2,4,6}. Найти A U В, А Л 'В, А \ В, В\А, А&В. 8.367) Перечислить все надмножества множества {1,2,3}; все собственные подмножества. 8368) Доказать, что 2ЛпВ = 2Л л 2В, где 2Л — множество всех подмножеств множества А. 8.369) Пусть имеется последовательность множеств Ai э Аз Э • •• Э Аи С • •. Доказать, что Q Ап = П да любой неограниченной n€N nkgN подпоследовательности натуральных чисел Пусть nZ есть множество всех целых чисел, делящихся на п. Найти: -8.370) nZnmZ; 8.371) {^nZ; 8J72) Л 8.373) (J pZ, где Р — ткуйяестт простых чисел; р€Р 8374) (J [1/п; 1 - I/nj; 8.375) Л Н/«1 I + 1/п|. n€N nCN 8.З76) Пусть C((«;i>|) — множество всех непрерывных функций. определенных на сегменте С?(1чЧ)-{/еС([«;Ч)|/(х) = 3}. Найт» и сЖЧ); П с.3(1«;Ч). х€[а;Ь] г€,а;Ь) Доказать: 8377) ВП(1М,)= ЩЯЛЛ). 8378) B(J(П А) = П (ВU А). ,6J i€Z iel Uf Отображения При решении примеров этого раздела следует помнить, что отображение (функция) /, действующее из X в У, мы понимаем как тройку (X, У, /), где X, У — непустые множества, а / — правило, сопоставляющее каждому элементу х из множества X элемент f(x) из множества У. Равенство отображений это равенство троек
Наибольшую сложность вызывают, примеры на нахождение композиции отображений, заданных правилами, содержащими разветвления. Пример 8.14. Пусть/, : R R действует по правилам: еои|:1|><1; I —.г, если ]т| < 1. {х, если х > 8; 2-х, если |.т| < 8; 2 + х, если х < -8. Найти до f. ► Композиция — ЭТО последовательное применение отображений. В нашем примере первым действует отображение /, вторым — д. Поэтому нужно четко представить, что получится из области определения под действием отображения /, т. е. множество f(X). Полученное множество заданием д разбивается на части, но не только оно. а и область определения /. Перепишем еще раз задание /, убрав знак модуля: если х > 1; если - 1 < х < 1; если х < -1, 1) Если х € (1, со), то отображение / действует по правилу х3 и множество (1,оо) отображается во множество (1,со). На полученном множестве действие отображения д определяется как верхней, так и средней строкой, чтобы четко определить, когда какая строка действует. Исходное множество разобьем точкой х = 2 на два подмножества: (1; 2] и (2; со), тогда /((1;2]) = (1;8) и (1,8} целиком попадает в среднюю строку определения отображения д, а /((2; со)) - (8; со), что соответствует верхней строке определения д. Таким образом, мы получили, что х3, если х е (2, со); 2-гг3, если т €(1; 2}.
2) Если х € |-1; 1], то /([-1; 1]) = [-1; 1], а это множество целиком попадает в среднюю строку определения д. Значит, (gcf)(x) = 2- (-х) = 2 + х, - если! € 3) Если х е (-оо,-1), то /((-оо,-1}) - (-оо,-1). На этом множестве отображение д определяется как своей средней, так и нижней строкой. Разобьем множество (-со,-1) на две части: (-оо;~2) и [-2;-1). Рассмотрим каждую из этих тастей отдельно. а) Ясно, что /((—со; —2)) = (-со; —8). На этом множестве отображение д определяется своей нишей строкой, знаэтг, (д о /)(ж) = 2 + л3, если х € (-со, —2). б) /((-2;-!)) - |- 8; -1). На этом множестве-отображение 5 определяется своей средней строкой, значит, (д о /)(х) - 2 - z3, если х е [-2; -1). Окончательно, попутаем (5 0 /)(*) = х3, ©СЛИ X ё (2, со); 2 — ж3, если г € (—2;—1) U (1;2|; 24 х, если х € [—!;!]; 2 ч-г3. если х е (-со,-2). Пусть / ; X —» У — произвольное отображение. В, Вь В2 — произвольные подмножества множества У. Доказать, что: 8379) /-1(В»иВ2) = Г1(51)и/-,(Вг); 8.380) Г*(В1ПВ2) = /-‘(В1)П/-1(В2); 8381) /-*(У\в) = х\/-1(в); 8.382) Л1(В1\В2) = /-’(В1)\/-1(В2); 8383) В^сВг^ГЦВ^СГЧВг). 8384) Привести пример, показывающий, что импликация С /-1(В2) Вг с В2, вообще говоря, не имеет места.
8385) Доказать, что если f: X —» К иЛс Х,то /(А) = (у е У | Дх(е х) (х е А) л (у = /ф)}_ (Сравните с определением 2.15.) Пусть /: X —» Y — произвольное отображение, At, Аг — произвольные подмножества множества X. Доказать, что: 8.386) /(Л1ил2) = /(Л,)и/(Л2); . . 8.387) /(Л1ПЛ2)С/(Л,)П/(Л2). 8.388) Привести пример, показывающий, что включевяе ЛА)п/(л2)с/(Л!ПЛ2), вообще говор*, не имеет места. 8.389) Доказать,что/(Ai) \/(Аг) С/(Al \ А2). 8390) Привести пример, показывающий, что включение /(Л, \Л2) С/(Л,)\/(Л2), вообще говоря, не имеет места. 8391) (Xi С А2) => (/(А.) С /(Аг)). 8392) Привести пример, показывающий, что включение (/(Ai) С /(Аг)) => (А, С Аг), вообще говоря, не имеет места. Доказать, что для произвольного подмножества В области действия Y отображения f: X —»Y пшол&Кпся соотношения: 8.393) /<Г‘(В)) = ВП/(Х); 8.394) /‘(Я) = 0 <=» ВП/(Х) = 0, 8395) Доказать, что для произвольного подмножества А области опре- , деления X отображения / -. X —♦ Y имеет место соотношение л с/-‘(/и». Пусть / : X —» У, А С X. В с Y. Доказать, что:
8396) /(А)ПВ = /(АП/-1(В)); 8397) /(Л)ПВ = 0-5=>ЛП/-,(В) = 0; 8398) f(A) СВ^АС Пусть / : X —»Y, д : Y —» Z, А С X, С С Z. JipKieecn, что: S399) too/)-'(C)»/-(9-4C)); 8.400) (s°/)(4) = 9(/(Л)). 8.401) Доказать, что если А С X, В С X, гл : А X — отображение включения, то ^(В) = АПВ. 8.402) Пусть / : X К, А С X, В С У, д = /|д ;А -» Y сужение отображения / на А. Доказать, что д"1(В) = АП/-1(В). Доказать, что если / : X —» У — инъективное отображение, то для любых подмножеств A, Ai, А2 его области определения X имеют место соотношения: 8303) МпАа) =/(А^ПДАг); 8.4М) /(А,\А2) =/(А,)\/(А2); 8.405) Aj С А2 <=> /(АО с /(Аг): 8.406) /"‘(/(А)) = А. 8.407) Пусть для отображения f: X —» X и для некоторого натурального числа п fn — ех. Доказать, что отображение / биективно. 8.408) Доказать, что если отображение fog инъективно, то д также инъектннно. 8,409) Доказать, что если отображение fog сюръективно, то f также сюръективно. 8.410) Пусть заданы множества А, В, С, D иотображения f: А —» В, д : В — С, h : С —• D. Доказать, что если отображения до f и hog биективны, то и /. д, h — биективны. 8.411) Пусть заданы множества А, В, С и отображения f : А —» В, д : В —> С, h С А. Доказать, что если среди отображений hogo f, gofoh,fohog два являются инъективными (сюръективными), а третье — сюръективно (инъективно), то отображения /, g,h — биективны. Для следующих отображений f,g : R—> R найти композицию fog, gof-
8.412) {I + х, х > 0 . . f I + х, х > 1 5(х) = { l-х, х < О, [2х,х<1. 8.413) ... f х2, х > 1 z х f |xl, х < 2 [х,х <1, ^4 - х,х > 2. 8.414) Пусть отображение f: R-+ R действует по правилу /и = ('+1,1г° [ 1 - х, х < О, /([О; IJ) =?, /([-1; 21) =? Г‘(Ph И) =?- =? 8.415) Для отображения / : R —» Я, /(х) = sinx найти /((0; тг)) Ш. Т». Г‘((-1№1/2)), /-*(10;2)). 8.416) Является ли отображение инъективным, сюръективным, биективным? Пусть С(Д) — множество всех вещественных непрерывных функций. Проверить, является ли следующие отображения F: C(R) C(R) инъективными, сюръективными, биективными, и найти обратные к ним с соответствующей стороны. S.417) |f(/)](x) »/(«•); 8.418) И/)1(г) = 8.419) (F(/)I(X) - (х2-1) /(х); 8Л20) |F(/)1W - (,тг + 1) /(i); 8.421) |F(/)Kx)-/(2»~l); 8.422) 1Р(/)1(х) =/3(х); 8.423) |F(/)l(x) = /(4Г*/»). 8.424) Найти композицию отображений из задач 8.419, 8.420 н 8.422, 8.423.
8.6 Элементы комбинаторики. Отношения 11ри решении комбинаторных примеров следует помнить, что: I. успех в решении зависит от того, насколько верно понято условие; 2. почти не существует «чистых примеров», т. е. таких, в которых срабатывает «готовая» формула. 0 Пример 8.15. В купе с 8 сидячими местами (по 4 на каждом диване) вошло 6 пассажиров, один из которых (NI) согласен сидеть только у окна, двое (N2, N3) — только рядом, один (N4) — по ходу поезда, а двум (N5, N6) безразлично, где сидеть. Сколько способов рассадить пассажиров с учетом их пожеланий? в- Множество всех способов разобьем на даа неяересекающихся множества А и В, отнеся к А те способы, когда N1 сидит у окна по ходу поезда, а к В — остальные. Ясно, что ответ задачи — |А| + |В|. (8.1) Займемся множеством А. Разобьем его на непересекающиеся подмножества I, II, III, IV в зависимости от того, какие два места занимают N2 и N3. Ясно, что |А[ = |/| + |//| + |Л/| + |7У| + |У|. (8.2) Места N2 и N3 можно занять двумя способами. В случае I и 11N4 занимает единственное свободное место на этом диване, N5 занимает любое место из оставшихся 4-х, a N6 — любое из оставшихся 3-х мест. Тогда = |Н| = 2 • 4 • 3 = 24 (8.3) В случаях III, IV, V пассажир N4 занимает любое из 3-х свободных мест на диване, где сидит Nl, N5 — любое из оставшихся 4-х мест, N6 — любое из оставшихся 3-х свободных мест. Тогда = ]7У| = |У| = 2-3 • 4-3 = 72. (8.4) Из (82), (8.3), (8.4) получаем |А| = 24 + 24 + 72 + 72 + 72 = 264.
Аналогично для множества В IVZ] = I=IУЩ\ = 2 • 2 - 4 3 = 48, |/Х| = |Х| =2 • 4 • 4-3 = 96, |Я| = 3 • 48 + 2 • 96 = 192 + 144 = 336. Из (8.1) получаем ответ задачи: 264 + 336 = 600 (способов). ч 0 Пример 8.16. На собрании должны выступить ораторы А, В, С, В. Сколько способов составить список выступающих так, чтобы С выступал позже В, ко ие сразу после него? ► Количество списков выступающих, когда сняты все ограничения, равно количеству перестановок дливы 4, т. е. ~ 4! = 4 • 3 - 2 • 1 -24. Разобьем множество списков на тары так, что второй список получается из первого переменой мест ораторов В н С (например, АВ DC и АСВВ)- Количество пар равно = 12. В каждой такой паре один список, в котором В выступает раньше С, а другой — где С выступает раньше В. Значит, списков, в которых В выступает раньше С, столько же, сколько получилось пар, — 12. Если мы определим количество списков, в которых С выступает еразу за В (их количество обозначим |«ВС»Р, то ответ задачи: 12-|«ВС»|. (8.5) Подсчитаем |«ВС»|. Для этого склеим ВС в одного оратора и рассмотрим, сколько списков можно составить, имел трех ораторов: А, ВС н D. Ясно, что количество списков из трех ораторов равно Л} =3-2-1 =6. (8.6) Окончательно из (8.5) и (8.6) получаем ответзадачи: 12-6 = 6 (способов). Проверка. Выпишем все допустимые списки: BACD; BDCA-, BADC-, BDAC; ABDC; DBAC. ч 8.425) Найти А х В, если А = {1,2,3}, В - {а, &}. 8.426) Доказать,'что если А^0, В 0, то А*В = ВхА тогда и только тогда, когда А = В.
8.427) Равны ли множества (А х В) х С и А х (В х С)? 8428) Пусть А / 0, В / 0 и(Ах.В)и(В х А) = Сх D. Дргазатъ, что А =₽ В => С = D.- 8.429) Пусть А» = х fo;di], t = 1,2,... ,п ({о;Ь] — сегмент вепествениых чисел). Доказать, что ес« Aj П А, 0 для любых i. j = 1,2,... ,п,то ft А, / 0. Доказать равенства": ' 8ЛЭ0) (A\B)xG = (AxC)\(BxC); 8.«1) (U х ( U Bf) = U (А х Bj); i€l 8.432) ( П Ai.) x ( n Bj) = П (Ai x Bj). «el (»J)ezx/ , Задачу 8.433) Из города А в город В ведет 5 дорог, а из горста В в город С — 4 дороги. Сколько путей проходящих через В, ведет из А в С? 8.434) У Тани — 20 марок, у Наташи — 30. Сколькими способами можно осуществить обмен одной Твяниой марки на одну Наташину? Двух Таниных на три Наташиных? 8.435) На ферме 20 овец н 24 свиньи. Сколькими способами можно выбрать одну овцу? Одну свинью? Двух животных w- одну овцу и одну свинью? , 8.436) Из А в В ведет 5 дорог Сколькими способами можно съездить из А в В и обратно, если путешествие туда и обратно совершается по разным дорогам? г 8.437) В библиотеке 5 учебников геометрии, 7 — тригонометрии, 4 — алгебры. Сколько полных комплектов учебников ьютао составить? Сколько способов комплектования? (Все, экэештдяры считаются различными.) х - 8.438) Сколькими способами можно выбрать три различные краски из пяти? 8.439) Сколькими способами можно сосгавитьдрехцйетный трехпо-лосньш флаг, если имеется материя шли различных цветов? То же самое, если средняя полоса должна быть синей? .
8.440) Сколько различных флагов из трех полос можно составить, если имеется материал пяти цветов? (Сравните с предыдущей задачей.) 8.441) Надо послать б писем. Сколькими способами это можно cat-лать, если для доставки писем имеется 3 курьера? 8.442) ^Сколькими способами можно расставить 7 различных книг на книжной полке? 8.443} На еобравни должны выступить 5 человек — А, Б, В, Г, Д Сколькими способами можно составить список выступающих? То же самое при условии, что В выступает непосредственно перед Г? 8.444) В месткоме выбрано 9 человек, из них нужно выбрать УфеД-седателя, заместителя, секретаря и культорга. Сколькими способами это можно сделать? 8.445) В зрительном зале 120 мест. Сколькими способами могут занять места в нем 120 зрителей; 80 зрителей? 8.446) Сколькими способами можно наклеить 5 различных марок на 5 различных конвертов? 8.447) Сколькими способами на пять различных конвертов мЫкно наклеить по одной марке, если на почте имеется 7 различных видов марок? 8.448) Сколько снов можно получить, переставляя буквы слова «факел»; «математика»? 8.449) Сколькими способами можно выбрать открытки для поздравления пяти лиц, если имеется 7 различных открыток? 8.450) Сколькими способами можно купить 5 открыток, если в продаже имеются открытки 7 различных видов? ' 8.{51) В ннфг сели 8 человек. Сколькими способами они могут выйти на 4-х этажах, если на каждом этаже должен выйти хотя бы один человек? 8.452) Пять различных грузов нужно доставить на этажи Строящегося доиа. Сколькими способами это можно сделать, бели каждый груз можно доставить на любой из пяти этажей? 8.433) У мамы три одинаковых яблока и четыре одинаковых Груши. Каждый день, начиная с понедельника и заканчивая воскресеньем, ойа выдает ребенку по одному плоду в день. Сколькими способами это можно сделать? То же самое, но при условии, что ни в какие два соседних дня не выдается однотинный плод? 8454) Сколько способов разложить 10 одинаковых монет По двум карманам? 8.455) Сколько способов разложить 10 одинаковых монет по двум карманам так, чтобы оба кармана не были пусты?
8.456) Сколько способов разложить 10 различных монет по двум карманам? 8.457) Сколько способов разложить Ю'разпичных монет по двум карманам так, чтобы оба кармана не были непусты? 8.458) Сколько способов разложить 10 одинаковых монет по трем карманам? 8.459) Сколько способов разложить 10 одинаковое монет по трем карманам так, чтобы ни один из карманов не был нустым? - 8.460) Сколько способов разложить 10 различных монет по трем карманам? 8.461) Сколько способов разложить 10 различных монет по трем карманам, так чтобы ни один из карманов не был пустым? 8.462) На кару сели четыре одинаковых места дм пассажиров. Сколько способов рассадки 4-х пассажиров дал катания на карусели? 8.463) То же самое, что в задаче 8.462, если пассажир В дрлжен кататься, имея непосредственно перед собой пассажира А? 8.464) Найти все отношения на множестве {0; 1}. 8.465) Привести пример отношения симметричного, транзитивного, ио не рефлексивного. Выяснить, какими из основных свойств — рефлексивностью, симметричностью. антисимметричностью — обладают следующие отношения на множестве натуральных чисел: 8.466) S — {(m,n)|m и п взаимно просты}; 8.467) S = {(тп,п)|тп делится ня п}; 8.468) S = {(m,n)|m п2}; 8.469) S = {(тп,п)|тп < п}; 8.470) S = {(тп,п)|тп <п}; 8471) S = {(m,n)jm - п делится на 2}; 8.472) 5= ((m,'n)|r>i-n = 2}. г. 8.473) Пусть дано отображение f : X —* У. Доказать, что отношение S = {fax') € X х X)|/(i) = /(ж‘)} является отнопйянем эквивалентности. Доказать, что следующие отношения являются эквиваденпюстями, нейти фактор множества к установить взаимно однозначные жду ними я указанными множествами:
8.476) S = {(х,.у) I х, yeR,x-y&Z\, R/a, [0,. I); 8.477) S = {(х,у)|х,у € R, sinx = sin у}, R/a, == 8.478) Sn = {(x, y)|z,y € Z, x - у делится на n, n £ Д'},. Z/a,M {0; 1;2;... ;n—1}; 8.479) S = {(x,y)\x,y e C, x-y e R}, C/a, ~ Я, где С — множество комплексных чисел; 8.480) S =: {(x,y)|x,y £ C, |x| = |y|}, C/a, =:/?+ = (0;qo); 8.481) S = {(x, y)|x,y € C\{0}, argx = «rgy}, C\{0}/a, = {0?2тг); 8.482) S = {(x,y)[x,y € N, (x = у) V (x > 10) • (y > 10)}. N/a, ~ {1;2-,3;...;IO}; 8.483) S = ((x,y)\x,y e N,s- \ 10s, у = ]Py. • 10’ A,y, € {0;l;„. ;9}, x0= yo}, N/at ~ {0,1,‘.. ,9}; 8.484) S = {(x, y}| x, у e C, Rex = Rey}, C/a, st R; 8.485) S = {(Л,В)|Л,В e Mixa, 1гЛ = trB}. M^t/a, ~ Я, где Af2x? — множество вещественных матриц размера 2 х 2, tr Л — след матрицы Л, tr Л = (Л)ц + (Л)аа. На множестве всех бесконечных последовательностей вещественных чисел заданы следующие отношения. Выяснить, какие кз них являются эквивалентностями и какие — частичным порядком. 8.486) {({an},{i>n)|Vn(an < &n)s I}; 8.487) S = {({<»n}, {M9nV* ((* > n) -♦ (a* = &*)) s 1}; 8.488) S « {({«„}, {M3nV* ((* > n) -t (ak < bk)) s 1}; 8.489) S = {({en}, (Ml = J™,*»)» 8.490) S = {({an},{&n)| < Jim^bn}. 8.491) На множестве N2 \ {(I; 1} j введено отношение S = {((m,n), (p, g))| (m < p)(n < q)}. Доказать, что ал — частичный порядок, и найти все минимальные элементы. 8.492) На множестве N \ {1} введено отношение S = {{т, n)j п делится на ш}. Доказать, что а, — отношение частичного порядка, но не линейного порядка. . ,
8.493) На множестве М = {0, {!},{!,2}, {2,3}, {1,2,3}} введено отношение 8 - {(-¥, У)| X, У е М, X с У}. Показать, что а, — отношение частичного, но не линейного порядка- 8.4$4) На множестве В,пяп булевых матриц (т. е. матриц с элементами кз множества {0,1}) размера т х п введено отношение s = | (Л, В)| Зад-Лад ^(((, ад) =» (ад = Щ) & & (fX*2* ‘ - f>.*2‘‘‘) ) V(X = B)l. Доказать, что а, — отношение линейного порядка, я найти наибольший и наименьший элементы. 8.7 Функции, алгебры логики Напомним, что булевы операции Л, V образуют полную систему функций. Это означает, что' любая функция алгебры логики булева функция) может быть задана формулой над л, V. В частности, г|р = ТЛ7, г { у = z Vy, хфу sz^v^y. Еще одной полной системой функций является {0,1.Ф.&}. Формулы над {0,1^ф,&} называют миогочлетми Жегалкина.' Каноническим многочленом Жегашаяа нашвяотмногочлен Жегалкина, в котором раскрыты скобки и приведены подобные. Переменная т, функции f(xi,..хп) называется фиктивной, если /(г1,...,х<_1,0,х«+-1..xn) = f(xi,...,xi-i,l,xi+i,...,xn). Можно доказать, что переменная!* вфункдии /(zj,... ,zn) фиктивна тогда и только тогда, когд а канонический многочлен Жегалкина функции У не содержит переменной z*. 8.496) Найти канонические многочлены Жегалкина следующих булевых функций: а) вссх.булевых функций кз Р2(1), Ра(2); б) (хг —» х2) ~ (х2 ~ z3); в) (Xi -»®з)-(г2®^з); г) zi-z3Vz2-54); $ (ц ~ z*)-» zs;
е) (10101100) — столбец значений функции f в ее таблице; е’) (11000100); ж) (Ti|x2) Т -тз. 8.497) Найти все фиктивные переменные следующих булевых функций: а) XjX2 VX}X2; fyxiX2\JX2, г) (Xj (х2 -* Хз)) -> ((XI X?) -» (Х1 -» Хз)); Д) (ц -- Х2)((Т2 -» и) -» (Xj -» Хз)); е) (xi -* х2) —* (х2 —»х3); ж) (х5 -».т2) -»zt. 8.498) Сколько функций содержится во множестве*. a) Po(n)nPi(n}; б) Po(n)UPi(n); в) Po(n)\Pi(n); г) P0(n)nS(n); Д) Р0(п) U S(n); е) P0(n)\S(n); ж) $(л)\Н,(п). 8.499) Из функций примеров 8.496 н 8.497 выделить ясе функции, входящие в Ро; в Рг. 8.500) Какие из следующих функций самодвойственны: a) (xi -».т2) -*Xix3; б) (Зу Vx2 V5j)x4 Vzi.t2x3; в) zix2 фХ1Т3 фх2х3; г) (0001001001100111); fl)/(xi,x2,...,x2m+i) = zI фт2ф---Ф±2т+1Фб,бе {Ch 1}; е) (пч vz2)(zi Vzs)(x2 v.r3); ж) (xi|^i) T x2. 8.501) Из несамодвойственной функции f с помощью отождествления переменных и -> получить константу: а) (00111001); б) (xi|x2) —• (xj фх3); в) (xt УЭъ'Ухз)® 54x2X3: Г) Х!Х2 V XjXs V Z2X4 V ХзХ4. 8.502) Какие из функций примероя-8.496, ,8.497. 8.500 монотонны? 8.508) Из немонотонных функций примеров 8500 и 8.501 с помощью подстановки констант нолу'оггь -че. 8504) Какие из следующих функций монотонны; a) Ji -♦ (х2 х3); б) (00110111); в) х^з • (х! ®х3): г).Г1Х2Фх1хз®Х2*з®£1; Д) (0И00Ш). 8505) Какие из функций примеров 8.496,8.497,8.500,8.504 ливейиы? 8.506) Из нелинейных'функций примера 8.505 с помощью 0, 1 ц -> получить л. . 8507) Выразить с помощью суперпозиций; а) д и —» черезV; б) v ичерез тс А; в) А и v через тс -»; г) через 0, -г; д) -• через 1, ф; е) V через ж) V, А, ~ через Т; з) тс V, А,® через й) { чфез‘|; к) | через!-
8Л08) Доказать полноту следующих систем функций сведением к заведомо полным системам: a) {.Ti г z2}; б) -(.Т1 |т2}; в) {.ti -> хг; ii ф.т3 ®-тз}; г) {(1011); (1100001100111100)}. 8.509) С помощью теоремы-Поста проверить на полноту следующие системы функций: a) zjz2; Xi v z2; б) ii 12; ii —* 1213; в) zii2; ®i ~ ^з^з; r) 0: 1;ti(z2~Z3)Vzi(z2®z3); Д)-ее; (0610); (OlOlllOOlllOOOll); e) 1; zi ®z2; (»i -»z2) f (z2 ~ z3); (*з|(®1 • 12)) -* x3‘, ж) zi —» z2; 3Fj; 3) Tji2; ii Vx2; zj —kz2; h) zi ~ r2; a\; xi —»T2; „ к) ®i —»хг> 0; xi ~ x2'» л) ®i Ф ^i', м) X1X2 V.T1X3 Vz2i3; 0; 1; и) X\X? Чх^х^ Vigig; 3?>; Tj —n3. 8.510) Из полных систем примера 8.509 выделить все возможные базисы, т. е. такие полные подсистемы, у которых ни одна собственная подсистема не является полной. 8.511) Доказать, что если система функций {/j, /2, • • •, fm] полна, то я система {/<, /2Г- • •, /тУ т®0*® полна. 8312) Какие из указанных систем функций являются замкнутыми: а) Р2(1); б) Р2(2); в)Р2; г) Ро n ft; д)РоиР1; e)fb\^- 8.513) Доказать, что пересечение функционально замкнутых классов является функционально замкнутым классом. 8.514) Докатать, что если множество М функционально замкнутый класс, то М' — множество, состоящее из функций, двойственных к функциям из .М, также является функционально замкнутым классом. 8.515) Доказать, что если М 0 я М Р^ я [Atj - М, то P2\At незамкнуто. 8.516) Обозначим М ~ — множество монотонно убывающих булевых функции. Доказать, что М~ и М и М~ незамкнуты. . • -. 8.517) Доказать, что для-монотонности функции, отличной от константы, необходимо и достаточно, чтобы она представлялась в виде суперпозиции конъюнкций я дизъюнкций ( <=> f ё (V, А]). 8318) Доказать, что /€ Л/ <=> €‘М, , ъ., 8.519) Нэйти МП(Р2\Р0), МП(Л\Р1). 8.520) К какому наименьшему числу племенных мож^ ©иста немонотонную функцию с сохранением немояотонносгн, <т#деС™вЯ *е переменные? _ ... 8.521) Найти Р2(2)\(Ро UPi ULU-SUAf). —- -
8.522) Найти все функции, которые можно получить, отождествляя переменные, из следующих функций: а) (10010110); б) (11111101); в) Xi®2 Vx2x3 Vtix3; Г) Т1.Т2Хз ф х2®з ф ®3Ti фж2 Ф1. 8.8 Машина Тьюринга В этом небольшом разделе содержатся’задачи двух главных типов: — по заданной машине Тьюринга найти результат ее применения к заданному слову и, т, е. Т(и); ‘ — построение машины, решающей данный класс задач. Естественные трудности возникают при решении задач второго типа. Мы рекомендуем до составления программы машины, т. е. до заполнения таблицы, задающей программу, тщательно продумать алгоритм, который должен быть реализован программой. В конце решения, т. е. когда программа составлена, не забудьте применить ее к тестовому примеру. По заданной машине Т.с внешним алфавитом А = (|, Л} и слову и
8.526) «8 9» 1 |gi + l 191-1 19Л4-1 A А (Ц 4-1 Afc + l. A,9oO «1 = 11 Л Г «2 = 1 Л ИЦ 8.527) Построить машину К2 над алфавитом {|}. 8328) Построить машину Kt над алфавитом {а; 0}. 8329) Какую функцию натурального аргумента вычисляет машина, заданная программой. 91 92 1 l»+l 192 4-1 A f goQ l9oO Упростите эту машину. 8338) Постройте машину, распознающую челюсть натурального чи- сла. г,.’ 8.531) Постройте машину вычисляющую остаток от деления на- x+1, еслях = 2п“ 2x, если x = 2n + 1. турального числа на тп. ? , 8332) Постройте мяппрш Тьюринга, вычисшиощие следующие функции, заданные на IV х JV: н)т + р; б)х4-2# в) г-у, r):r*4-3£. 8333) Постройте малины Тьюринга, вычвслякшяв следующие функции.. определенные на JV: а) Зх; б) ж2; в) /(х) = 8334) Постройте машину над алфавитам {]}, применимую к любому слову четной длины и не применимую «головам нечетной длины. Постройте в алфавнте-{0;1} машину Т. работающую по правилу*. 8335) Т(1п) = 1*01», п G N, о” d= 8336 T(0"ln) = (01)”, п G N’ 8337 T(ln) = lB012n0l’", n€N; 8338 Т(1ЛШт) = Im01n, n,m€ N;' {l2n, если n > m\ (01)", если n = m* 0™, если n < m.
8. 540) Какую функцию натурального аргумента вычисляет машина Т? 71 78 78 74 75 1 171+ 1 Оъ+1 0^ + 1. |д5--1 >95-1 Л Л92 + 1 Aft - 1 А«—1 Л?4-1 Ago 4-1 91 41 9а 44 9s 9в 9» 9* 9» 1 л« + 1 + 1 (93 - 1 |* + 1 19« +1 1</в + 1 л9а - 1 lea - 1 19» + 1 л л?» -t- 1 л99 + 1 19оО Лд84-1 A<js - 1 Л^т - 1 Л«» - 1 Л91 4 1 8. 541) Какие одноместные функции натурального аргумента в алфавите {|, Л} могут вычислять машины, программы которых содержат только команды к и qi? По словесному описанию машин Тз, Т4,.., построить их протравы. Внешний алфавит (О; I; Л}. 8542) Тз — начиная с последней единицы массива из ещшиц, «сдвигает» его на одну ячейку влево и останавливается на первой единице; 8.543 ) ТА — при заданном I > 1 СЗУ машины, начав с произвольной ячейки, заполненной единицей, движется вправо, не меняя содержимого ячеек, до тех пор пока не пройдет массив из I + 1 доля; СЗУ останавливается на следующей ячейке, поместив туда единицу; 8544) Т5 — ори заданном I > 1 СЗУ, начав с произвольной ячейки и двигаясь вправо, проставляет подряд I единиц и останавливается на последней из них: 8545) Те — машина начинает работу с крайней слева непустой ячейки произвольного слова, при защвшом I > 1 отыскивает в слове первый слева массна из I + 1 ноля, останавливается яа последнем из них (содержимое ячеек не меняется): 8546) Т-, — начав работу с самой левой непустой ячейки, машина отыскивает единицу, примыкающую слева к первому слева массиву из трех нолей, «окаймленному» единицами, СЗУ останавливается на найденной единице (содержимое ячеек не меняется); 8.547 ) Те — в исходной ячейке Печатает ноль, СЗУ сдвигается на одну ячейку влево и машина останавливается. 8548) Тд — СЗУ машины сдвигается на две ячейки вправо от начальной, машина останавливается в состоянии оо, если эта ячейка содержит ноль, в состоянии <7о, если эта ячейка содержит еджницу.
8.549) Т10 — СЗУ передвигается на одну ячейку влево и машина останавливается; 8.550) Tij — отправляясь от начальной ячейкй, находит первую единицу и останавливается на следующей за ней ячейке. 8.551) Найдите композиции машин: Г< о Г3, Ге ° Г7, Tii о Гщ о Тц. (Машины Тз.Т*,... см. в примерах 8.542-8.550.) 8.9 Графы и их матрицы Задачи, приведенные в этом разделе, разнообразны и трудно классифицируются как по тинам, так И по степени сложности. Наряду с тривиальными встречаются и задачи, содержание которых — известные теоремы теории графов. Эти задачи помечены «•». 8.552) Для графов, приведенных на рисунках, найти матрицу смежности A(G) и матрицу инцидентности B(G): 8.553) Изобразить графы, заданные матрицами A(G) или B(G): 'lO 1 ю' 00101 ' О О 1-1 0-1-1 o' -1 0 0 0-1 1 0-1 a).4(G) = 10010 б) B(G) = 1-1 0 0 0 0 1 0 11010 чооо 1 оу о -1-1 О О 0 о 1 ч 0 0 0 1 1 0 0 0/
в) A(G) = /оюооооо\ 00010000 00000000 10000000 01000010 00000001 00000101 JOlOOOOOy ' 0 0 0 0 0 0 1 -i\ 0 0 0 1 0 0 0 1 0 0 0 0 -1 0 0 0 д) S(G) = 0 0 0 0 1 -1 0 0 0 -1 1 -1 0 0 0 0 -1 1 0 0 0 0 0 0 1 0- -1 0 0 1 -1 8.554) Дана матрица A(G) или B(G). Найти матрицу B(G) или а)Л(С) = /юн' 0101 1101 <0010, б)Я(С) = (-1 1 0 0 0 0 1-1 0т1 0 0s 1 0 0-1 1 -1 0 0 0 0 1 0 -1 0 0 М \ 0 0 'оооо^ ООО! 0001 J010, / 1 0 0 0 -1 0 -1 в)Л(С) = г) B{G) = 0 0 1 0 -1 0- 1 -1 0 0 0 <7 8.555) Найти комвонситы связности и сильной связности графов, изображенных яа рисунках, и их чиста связности и сильной связности — c(G) и sc(G). Рис, 8.13 Рис. 8.14 Рис. 8 15
Рис. 8.16Z 8456) Найти компоненты связности и сильной связности графов, заданных матрицами A{G) или jB(G), и их числа связности и сильной связности — c(G) и 8c(G): a) A(G) = 'оно? 00111 10010 10000 ^ооооо/ /001—1 0-1-1 о\ -1 0 0 0-1 1 0-1 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0, в) A{G) = /01000000\ 00010000 00000000 00001000 10000000 01000010 00000001 ^00000010/ Г) В(<7) = О 0 0 0 0 1-1\ 0 0 0 0 0 0 1 О 0 0-1 000 0-1 1 1-1-1 о -1100100 1 0-1 .0 0 0 0/
д)А(<7) = /ооопооХ 0001100 ООООО1О ооооюо 0000000 0000010 ^0010000, 8.557) Для графов примеров 8.555, 8.556 найти матрицы достижимости и сильной достижимости вершин и компоненты связности и сильной связности. Матрицей достижимости графа G(X,U,f) X = {zi,x2,...,xn) называется матрица D(G) = размера п х п (n - |.Y|), определенная следующим {1, если х, и х, находятся в одной компоненте связности; О, в противном случае. Матрицей сильной достижимости называется матрица sD(G) = (sd,j) размера п х п. определяемая следующим {1, если Xi я х} находятся в одной компоненте сильной связности; О, в противном случае. 8.558) Для графов примеров 8.553, 8.554, 8.556 найти deg+x, deg..x, degx’, х €Х. ‘ 8.559) Для графов примеров 8.555, 8.556 найти конденсацию, т. е. граф, вершины которого — компоненты сильной связности исходного графа, а дуги >— дуги исходного графа, ведущие из одной его сильной компоненты в другую. • 8.560) Найти мосты, блоки и точки сочленения графов примеров 8.553, 8.555, 8.556. 8.561) Пользуясь алгоритмом Краскала, найдите легчайшее покрывающее дерево графов, заданных рисунками (цифры около дуг — веса дуг):
8.562* ) Доказать, что любые два диаметра (простая цепь максимальной длины) связного графа имеют хотя бы одну общую вершину. 8.563* ) Каково максимальное количество висячих вершин дерева с п вершинами? &564) Нарисуйте все неизоморфные между собой неориентированные деревья с 3-мя. 4-мя вершинами. 8.565) Нарисуйте все неяэоморфные между собой приеятированные деровья с 3-мя вершинами. 8566) Нарисуйте все неизоморфные между' собой помеченные неориентированные деревья с з-мя вершинами. 8.567) Нарисуйте все неизоморфные между собой помеченные ориентированные деревья с 3-мя вершинами. 8.568* ) Докажите, что если Bi, Вг — блоки графа G, то Bj Л Вг = 0 V ((г) j х € X и х — точка сочленения <7). 8.569) Для графов, ориведеиных на рисунках а), б), в) найти длины кратчайших путей от вершины xi до всех остальных (около дуги в кружке — ее вес).

8570) Для графов задачи 8.569 восстановить кратчайшие пущ из Xi в же; из .Т1 в х?. 8.571 *) Докажите, что конденсация любого графа (определение конденсации см. задачу 8.559) — граф, не содеряанош циклов. Раскраской неориентированного графа без петель в кцветов называется отображение г, действующее из множества вершин графа в |l,kjw, удовлетворяющее условию «х,у —смежные вершины» => г(х) г(у). Хроматическим числом графа G называется наименьшее к, при котором существует хотя бы одна раскраска. Хроматическое число обозначают »(<?) Хроматической функцией графа называют отображение Jg-.N—*Z+, определенное следующим /с(х) = «число способов раскраски графа G в х цветов». 8.572 *) Докажите, что x(G) < |Х|. X — множество вершин графа G. 8.573 *) Докажите, что /к.(х) = т(х - 1 )(х - 2) - - (х - п + 1). (8.7) 8574*) Докажите, что если у, г — несмежные вершины графа G, то ,М’; = .4 (8.8) Ga. i — граф, полученный из G добавлением дуги, соединяющей у и 8575*) Докажите с помощью утверждений задач 8.573 и 8.574, что хроматическая функция графа с я вершинами — многочлен n-ой степени с целыми коэффициентами.
8.576*) Докажите, что в разложении хроматического многочлена гра-4»а /о-(х) по степеням т старший коэффициент равен 1, а свободный член — 0. 8.577*) Докажите, что если -граф G содержит А',„ в качестве подграфа, то хроматический многочлен /g(z) делится на /кт(®).
Рекомендуемая литература 1. Яблонскяй'С. В. Введение в дискретную математику. М.: Наука, 1986.. 2. Дискретная математика и математические вопросы кибернетики. Т.1 под ред. С. В. Яблонского и О. Б. Лупанова. М.: Наука, 1974. 3. Карпов В. Г., Мошенский В. А. Математическая логика и дискретная математика. Минск: Вышейшая школа, 1977. 4. Горбатов В. А. Основы дискретной математики. М.: ВШ, 1986. 5. Кузнецов О. П., Адельсон-Вельский Г. М. Дискретная математика для инженера. М.: Энергоатомиздат, 1988. 6, Биркгоф Г., Барти Т. Современна* прикладная алгебра М.: Мир, 1976. 7. Кук Д, Бейз Г. Компьютерная математика. М.: Наука, 1990. 8. Фудзисава Т., Касами Т. Математика для радиоинженеров. Теория дискретных структур. М.: Рацио и связь, 1984. 9. Ершов Ю. Л., Палютин Е. А. Математическая логика. М.: Наука, 197,9. 10. Трахтенорот Б. А. Алгоритмы и вычислительные машины. М.: Советское радио, 1974. 11. Нефедов В. Н., Осипова В. А. Курс дискретной математики. М.: Изд-во МАИ, 1992. 264 с.
12. Виленкин Н. Я. Комбинаторика. М,: Наука, 1969. 13. Вивенкин Н. Я. Популярная комбинаторика. М.: Наука, 1975. 14. Ежов И. И., Скороход А. В., Ядренко М. И. Элементы комбинаторики. М.: Наука, 1977. 1$. Сачков В. Н. Комбинаторике методы дискретной математики. М.: Наука, 1977. 16. Хейфиц А. И. Элементы комбинаторики. Ростов-на-Дону, ИРУ, 1984. 17. Холл М. Комбинаторика. М.: Мир, 1970. 18. Берж К. Теория графов и ее применения. М.: ИЛ, 1962. 19. Зыков А- А. Основы теории графов. М.: Наука, 1987. 20. Свами М., Тхуласираман К. Графы, сети, алгоритмы. М.: Мир, 1984. 21. Татт У. Теория графов. М.: Мпр, 1988. 22. Уиясои Р. Введение в теорию графов. М.: Мир, 1977. 23. Харари Ф. Теория графов. М.: Мпр. 1973. 24. Емеличев В. А., Мельников О. И., Сарванов В. А., Тышкевич Р, И. Лекинн по теории графов. М.: Наука. 1990. 25. Гавряяов Г. П., Сапоженко А. А. Сборник задач по дискретной математике. М.: Наука, 1977. 26. Гивдикин С. Г. Алгебра логики в задачах. М.: Наука, 1972. 27. Лавров И. А., Максимова Л. Л. Задачи по теории множеств, математической логике и теории алгоритмов. М.: Наука, 1975. 28. Сборник задач по математической логике и теории множеств. Саратов: Изд. СГУ, 1969.
ОГЛАВЛЕНИЕ Введение 3 1. Алгебра высказываний ' ; - 7 1.1 Высказывания. Операции нац высказываниями . . 7 1.2 Формулы алгебры высказываний . . ........... 17 1.3 Двойственность в алгебре въютазываниЙ.Прннннп двойственности. Закон двойственности................ . 21 1.4 Нпрмальные формы. СДНФ. СКНФ. Понятие о показателе степени. " ! Показательные уравнения...................... 24 1.5 Основные проблемы алгебры высказываний. Критерии тождественной истинности и тождественной ложности.......... 31 1.6 Релейно-контактные схемы и схемы из функциональных элементов.............. 34 2 Алгебры предикатов и множеств. Отображения 41 2.1 Предикаты. Логические операций над предикатами. Кванторы . -.........;• V-,.. . .,. ........ 41 2.2 Кванторы, их свойства и применение . . ;... 45 2.3 Алгебра множеств >.......: . . . . 51 2.4 Отображения. Образ и прообраз множества при отображении. Свойства образов и прообразов............... 58 2.5 Тины отображений. Обратимость я синостороняя обратимость ................................ •......... 62 2.6 Семейства множеств и операции над семействами. 67
3 Элементы комбинаторики 73 3.1 Что такое комбинаторика? Число элементов во множестве. Правило суммы........................................... 73 3.2 Декартово произведение множеств; множество степень... 80 3.3 Множества ннъектавных и ЗДйодеях сясфражвиий. Раз- , мещения, перестановки................................... 86 3.4 Бином Ньютона Сочетания. Сочетания с повторениями . . 93 3.5 Число сюръективных отображений......................ЮЗ 4 Отношения 107 4.1 п-ыестные отношения. Булевы алгебры отношений и матриц 107 4.2 Бинарные отношения на множестве. Свойства бинарных отношений ................................................114 4.3 Отношение порядка и доминирование..................117 4.4 Отношение эквивалентности..........................120 5 Булевы функции 123 5.1 функции алгебры логики. Многочлены Жегалкина.......123 5.2 Полнота и замкнутость. Классы Поста Ро и ..........130 5.3 Клаасы Поста L и S.................................134 5.4 Класс Поста 3/.....................................140 5.5 Критерий полноты (теорема Поста)...................143- 5.6 Предполные классы и их свойства ...................14? 6 Элементы теории алгоритмов 151 6.1 Что такое алгоритм? Вводные понятия................151 6.2 Машина Тьюринга. Описание. Примеры машин...........155 6.3 Сочетания машин Тьюринга: композиция и объединение. Машины с полулсмтамм, разветвление н итерация машин.......................159 6.4 Тьюрингов подход к понхгкю «алгоритм». Алгоритмически разрешимые и неразрешимые проблемы..................... 167 6.5 Универсальная машина Тьюринга................... 171 7 Элементы теории графов 173 7.1 Введение, общее определение графа. Локальные характеристики................................173
7.2 Изоморфизм графов. Геометрические графы. Плоские и неплоские графы. Реализуемость в Яз- Пути, цепи, контуры, циклы................................................. 179 7.3 Части графа: подграф, частичный граф. Связность и сильная связность, компоненты. Мосты графа 188 7.4 Эйлеровы графы, хрккрнй эйлеровост.................194 7.5 Деревья и леса.....................................200 7.6 Помеченные графы. Перечисление помеченных деревьев. Матрицы графов.......................*.................206 7.7 Взвешенные графы. Задача о кратчайшем соединении. Кратчайшие пути............................................214 8 Задачи и уиражнениа для самостоятельного решения 223 8.1 Алгебра высказываний...............................223 8.2 Двойственность в алгебре высказываний..............231 8.3 Нормальные формы: ДНФ, КНФ, СДНФ, СКНФ.............233 8.4 Релейно-контактные схемы и схемы из функциональных элементов............................239 8.5 Предикаты и кванторы, множества, отображения.......245 8.6 Элементы комбинаторики. Отношения..................255 8.7 Функции алгебры логики.............................261 8.8 Машина Тьюринга ...................................264 8.9 Графы н их матрицы.................................267 Рекомендуемая литература - 275
ЕРУСАЛЙМСКМЙ ЯКОВ МИХАЙЛОВИЧ - -; ДИСКРЕТНАЯ МАТЕМАТИКА: Теория, задачи, приложения Компьютерная верстка в системе LAT£Х — 2, Ю.А. Жданова Корректор М.А. Вторникова Лицензия на издательскую деятельность ЯП № 071370 от 30.12.1$9б г. Подписано в печать 25.08.2000 Печать офсетная. Формат 60 к 84 1/16. Печл.17,5. Тираж 1000. Издательство «Вузовская книга» 125871, Москва, Волоколамское шоссе, д. 4 Т/ф 158-02-35 E-mail: vbook @ mai. ru