Дискретная математика. Часть 1. Основы теории множеств и комбинаторика. Учебное пособие
.pdf
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ
Ф.К. К л а ш а н о в
ДИСКРЕТНАЯ МАТЕМАТИКА
Ч а с т ь 1
ОСНОВЫ ТЕОРИИ МНОЖЕСТВ И КОМБИНАТОРИКА
Учебное пособие
М о с к в а 2010
УДК 519.1
Клашанов Ф.К. Дискретная математика. Часть 1. Основы теории множеств и комбинаторика: Учебное пособие. М.: МГСУ, 2010. – 112 с.
Вучебном пособии по дискретной математике представлены материалы в помощь студентам, изучающим дискретную математику в Московском государственном строительном университете на факультете ИСТАС и рассчитана на студентов, обучающихся по специальности 220200 «Автоматизированные системы обработки информации и управления» (код по ОКСО 230102) по направлению 654600 «Информатика и вычислительная техника» (код по ОКСО 230100).
Учебное пособие представляет собой единый методически взаимоувязанный материал, состоит из взаимосвязанных разделов: элементы теории множеств; элементы комбинаторики; сведения из алгебраических структур и булевой алгебры; основы теории графов, теория алгоритмов и машины Тьюринга. В конце каждой лекции приведены задачи
иупражнения, которые целесообразно разобрать на практических и лабораторных занятиях.
Впервой части представлен материал по основам теории множеств и элементам комбинаторики.
Учебное пособие рассчитано на изучающих курс «Дискретная математика», оно будет также полезно для программистов.
© Клашанов Ф.К., 2010 © МГСУ, 2010
2
В России исторически сложилось так, что представление об образовании включает в себя органичное единство школы как системы приобретения знаний, фундаментальной науки как показателя уровня подготовки специалистов и гуманитарной культуры как основы духовного богатства человека.
Садовничий В.А. академик РАН, из предисловия С.В. Яблонский Введение в дискретную математику. М.: Высшая школа, 2003
ВВЕДЕНИЕ В ПРЕДМЕТ
Цель и задачи предмета
Данное учебное пособие представляет собой единый методически взаимоувязанный материал, который будет полезен студентам, изучающим дискретную математику в Московском государственном строительном университете на факультете ИСТАС и рассчитан на студентов, обучающихся по специальности 220200 «Автоматизированные системы обработки информации и управления» (код по ОКСО 230102) по направлению 654600 «Информатика и вычислительная техника» (код по ОКСО 230100), а также по специальности 220100 – Вычислительные машины, комплексы, сети системы. Тематикой данного пособия являются языки, модели и методы решения задач теории множеств, математической логики и теории графов, интерпретированные на дискретные объекты. Исследование, особенно с количественной оценкой, предусматривает разработку адекватных информационных систем, включающих в себя моделирование, анализ и синтез. Скоростная и качественная технология обработки информации отображающей реальный мир во всех его проявлениях не мыслима без компьютеров, как персональных, так и суперЭВМ. Для этого необходимо построить модель реальных объектов и процессов их преобразования в виде дискретных конструкций, поскольку именно цифровые ЭВМ получили наиболее сильное развитие. Благодаря потребностям компьютерных технологий динамично стала развиваться дискретная математика.
В истории развития цивилизации человечества выделяют три периода: аграрный, индустриальный и информационный. Аграр-
ный период, закончившийся в XVII в., являлся основоположни-
3
ком элементарной математики (арифметики) количественно описывающей материальное представление мира и удовлетворявшейся числом. Индустриальный период, с XVII по XX века, потребовал развития другого уровня математики, описывающей процессы и их развитие, как в пространстве, так и во времени и потребовал развития высшей математики – анализа, введения функции. Информационный период начался с XX века, базируется на обработке информации, и потребовал развития дискретной математики, основанной на алгебре и использующей понятия радикала.
Схематично это можно изобразить в виде схемы, развития цивилизации, как по горизонтали, так и по вертикали. По горизонтали получаем динамику развития и накопления информации о мире, удовлетворяющие потребности человека, а по вертикали представлена динамика абстрактного представления мира и инструментарий ее оценки и исследования.
Таким образом, математику как науку можно разделить на дискретную и непрерывную (континуальную). В континуальной математике явно или неявно содержится идея теории пределов и непрерывности, применявшаяся при решении задач сплошных сред. С развитием физики стал развиваться квантовый подход к описанию вещества. Все остальное, что не относится к континуальной математике – это дискретная математика, куда в частности входят арифметика, алгебра, теория множеств и общая теория отображений, математическая логика, комбинаторный анализ, теория алгоритмов и др. Дискретная математика особенно активно стала развиваться в XX веке, как основная ветвь математики. Это объясняется следующими причинами:
•язык дискретной математики является метаязыком всей современной математики;
•дискретная математика – это теоретическая основа компьютерной математики;
•модели и методы дискретной математики являются хорошим средством и языком для построения и анализа моделей в различных науках, включая и вопросы, связанные со строительством;
4
• проблемы абстрагирования конкретной проблемы и перевода ее на язык доступный ЭВМ наиболее просто и объемно решаются методами дискретной математики.
Цель читаемого курса – помочь студентам овладеть математическим аппаратом синтеза и анализа дискретных структур (систем с сосредоточенными параметрами; процессов, протекающих в дискретные моменты времени), а его содержанием - являются теория множеств, математическая логика и теория графов. Студент должен самостоятельно изучить соответствующий теоретический материал и ознакомиться с решением типовых примеров, приведенных в настоящем учебном пособии.
Задачи по дискретной математике не требуют предварительных дополнительных знаний и любой здравомыслящий человек, претендующий на получение высшего технического образования, должен суметь выполнить эти задачи. Важность изучения дискретной математики проявляется в том, что, современная жизнь абсолютно немыслима без компьютеров, а в основе любого вычислительного устройства лежат знания именно дискретной математики (которая является наукой XXI века, и без ее развития немыслимы успехи технического прогресса). Поэтому освоение элементарных знаний в области дискретной математики расширит кругозор студента, повысит его математическую культуру и позволит ему в какой-то степени понимать работу вычислительных устройств и лучше ориентироваться в современном мире.
Дискретная математика является основой для таких спецкурсов, как базы данных и базы знаний, системы искусственного интеллекта, теория информации, теории алгоритмов, компьютерной алгебры, геометрии, текстовых и графических редакторов и т.п. В классический курс дискретной математики входят также такие разделы, как кодирование (необходимое для безошибочной передачи информации на расстояние, именно с помощью кодирования работают Интернет и электронная почта), теория графов и алгоритмов. Тема теории графов важна тем, что она помогает проанализировать ряд прикладных задач, в том числе и сети (сетевой граф).
В течение учебного года по дискретной математике будет рассматриваться следующая тематика: основы теории множества, алгебра высказываний, алгебра предикатов, булевы функции,
5
элементы теории и практики кодирования, теория графов, элементы теории конечных автоматов, машина Тьюринга и соответственно учебное пособие курса лекций состоит из взаимосвязанных разделов, раскрывающих вышеуказанную тематику. В конце каждой раздела приведены задачи и упражнения, которые целесообразно разобрать на практических и лабораторных занятиях.
Пособие будет полезно так же для программистов, желающих расширить область своих знаний в области применения дискретной математики применительно к строительству, а также пополнить свои практические навыки теоретическими знаниями.
Предмет дискретной математики
Предмет дискретная (финитная, конечная) математика – на-
правление математики, изучающее свойства дискретных структур, в то время как классическая (непрерывная) математика изучает свойства объектов непрерывного характера; в частности она является инструментарием представления и обработки информации в компьютерах, а также алгебраических методов решения задач.
В курсе математического анализа изучаются функции, определённые на числовой прямой или на отрезке числовой прямой или на (гипер-) плоскости и т.п. Так или иначе, область определения – непрерывное множество. В курсе дискретной математики изучаются функции, область определения которых – дискретное множество. Простейшим (но нетривиальным) таким множеством является множество, состоящее из двух элементов, на котором строится алгебра логики. Здесь же вводится понятие булевой функции. Такие понятия, как «множество», «событие», которые часто используются в бытовой лексике, не имеют точного определения в дискретной математике и соответственно в теории вероятности, но такие определения и не требуются. Они себя раскрывают и наполняют содержанием по мере их применения.
Основные разделы дискретной математики
Логика возникла тогда, когда человечество сделало актуальным вопрос, как надо рассуждать, чтобы получить правильные выводы. Активный интерес к логике среди математиков и философов приходится на период расцвета греческой культуры в VIIV вв. до н.э. Первое большое сочинение, посвященное специально логике – это "Аналитики " Аристотеля (384 - 322 гг. до н.э. ).
6
Параллельно и независимо возникла буддистская логика. В Европе развитие логики начинается от изучения Аристотеля. В "обычную" логику начинают проникать математические и логические знаки с целью замены слов обычного живого языка. Появилась идея о том, что, записав все исходные допущения на языке специальных знаков, похожих на математические, можно заменять рассуждения вычислением. Впоследствии правила логических вычислений были переведены на язык вычислительной машины, которая выдает следствия из введенных в нее исходных допущений. Такую "логическую машину" сконструировал еще в средние века Раймунд Луллий (1235-1315). Далее Лейбниц (1646-1716) внес свой вклад в универсальное логическое исчисление в надежде, что в будущем философы вместо того, чтобы бесплодно спорить, будут брать бумагу и вычислять, кто из них прав.
Начало созданию аппарата современной математической логики (логики высказываний) заложил Джордж Буль (1815-1864). Логико-математические языки и теория их смысла были затем значительно развиты в работах Фрече (1848-1925). Применение математической логики в некоторых разделах математики произвел Пеано (1858-1932). В XX в. – это работы Рассела и Уайтхеда, изданные в 1910 - 1913 гг. и программа обоснования математики на базе математической логики, предложенная крупнейшим математиком Гильбертом (1862-1943). В принципе с программы Гильберта и начинается современное развитие математической логики. В этот период происходит применением точных математических методов при изучении формальных аксиоматических теорий /7/. Символический язык математической логики оказался очень важным подспорьем в изучении логических основ математики, поскольку он позволял избегать всякой неточности мысли, которая может иметь место при использовании слов обычного языка. Смысл слов живого языка даётся не точным определением, а созданием привычки к принятому словоупотреблению.
Особенно широкий интерес к математической логике стал проявляться не только среди математиков, но и среди техников, когда обнаружилось, что в рамках математической логики уже создан аппарат для расчёта действия самых различных вычислительных и управляющих дискретных устройств.
7
В математической логике предметом исследования оказываются математический анализ, алгебра, элементарная геометрия, арифметика и др. В логике математические теории изучаются в целом - и это одна из особенностей математической логики по сравнению с другими математическими дисциплинами. Математическую теорию описывают на базе логико-математического языка, этот этап называется формализацией теории. После формализации полученную формальную аксиоматическую теорию подвергают точному математическому изучению с точной постановкой проблемы и получением математических результатов. Такими проблемами могут быть: непротиворечивость теории, т.е. не выводится ли в данной теории некоторое утверждение и его отрицание. Так, с помощью метода интерпретаций Кэли и Клейн показали, что геометрия Лобачевского непротиворечива, если непротиворечива, обычная евклидова геометрия. К настоящему времени непротиворечивость таких теорий, как элементарная геометрия, арифметика, анализ, хорошо изучена и достаточно надёжно обоснована.
Следующая проблема – это полнота теории. Во многих математических теориях возникают конкретные проблемы, которые не удаётся ни доказать, ни опровергнуть. Иногда это бывает в силу технической сложности самой проблемы, и спустя определённое время, проблему всё же удаётся разрешить. Но возможна и такая ситуация: проблему невозможно ни доказать, ни опровергнуть в рамках исследуемой теории. Математик Гедель доказал теорему о неполноте, которая утверждает, что всякая доста-
точно богатая теория необходимо содержит утверждения, которые нельзя ни доказать, ни опровергнуть в рамках теории. Но такие теории, как элементарная геометрия, теория векторных пространств оказываются полными. Татарский в 1948 г. построил конкретный алгоритм, позволяющий по всякому утверждению элементарной геометрии выяснить, является ли это утверждение истинным или ложным.
Методами логика можно доказать, что многие теории, например арифметика, анализ, теория множеств, неразрешимы, т.е. не существует алгоритма, позволяющего по всякому суждению теории узнавать, истинно оно или ложно. Вопрос о существовании тех или иных алгоритмов занимает важное место в исследовани-
8
ях логикой. Большое внимание уделяется изучению сложности алгоритмов. Так, например, недавно было показано, что арифметика (сложение натуральных чисел), являющаяся разрешимой теорией, может иметь только очень сложные разрешающие алгоритмы.
Вопросы построения оптимальных по сложности и по времени работы вычислительных устройств занимают важное место в теоретической кибернетике - науке, тесно связанной с математической логикой.
Если коснуться истории, то математический аппарат, пригодный для описания систем событий, возник первоначально в качестве аппарата символической логики. Создание «алгебры высказываний» связано с именем Дж. Буля (1815— 1864), хотя и у него были предшественники, к которым в первую очередь относятся Лейбниц и братья Бернулли. Появившаяся в 1847 г. работа Буля положила начало исследованиям, результатом которых был расцвет математической логики, составляющий одну из характернейших черт математики двадцатого века. В своей монографии «Исследование законов мышления, на которых основаны математические теории логики и вероятностей» отчетливо указал на связь построенного им исчисления так же с основаниями теории вероятностей. Эта связь основывается на аналогии между «событиями» и «высказываниями», позволяющей обслуживать логику и теорию вероятностей одним формальным аппаратом. Так как «событие» — это то, что может произойти или не произойти; «высказывание» же — это то, что может быть истинно или ложно. Среди событий есть достоверные и невозможные; высказывания могут оказаться тождественно истинными или тождественно ложными. Между событиями возможна причинно-следственная связь: одно событие бывает иногда следствием другого. Точно так же между высказываниями возможна логическая связь; они могут вытекать одно из другого. Каждому событию может быть сопоставлено некоторое высказывание, утверждающее, что это событие произошло. С другой стороны, всегда можно истолковать высказывание как утверждение об осуществлении некоторого события. Сказанное сейчас убеждает в возможности построения единого «исчисления», которое могло бы, смотря по обстоя-
9
тельствам, служить то «исчислением высказываний», то «исчислением событий». Такое исчисление и было создано Дж. Булем.
В течение полувека оно развивалось в чисто «логическом» русле. Мерное значительное исследование по аксиоматике теории вероятностей появилось лишь в 1917 г.; его автором был С.Н. Бернштейн. Последующие исследования в этой области, связанные в первую очередь с работами А. Н. Колмогорова, окончательно поставили теорию вероятностей на твердую почву и оказали большое влияние на смежные разделы математики, в особенности - на теорию меры.
В ХХ и в начале ХХI вв. в связи с развитием компьютерных технологий алгебраические методы все более активно применяются во всех областях человеческой деятельности, в том числе и технологии строительства и производства строительных машин и материалов. Но применение вычислительной техники в различных сферах человеческой деятельности базируются на вычисления на дискретных структурах. Разработка комплексных интегрированных автоматизированных систем обработки информации и их компонент требует знаний дискретной математики, в которой отсутствует предельный переход и непрерывность, что уже знакомо студенту при изучении классического анализа.
Дискретная математика является одним из основных для дальнейшего изучения и практического решения задач, встречающихся при производстве строительства. Логика применения дискретной математики в данном случае сводится к следующему. Требуется четко и лаконично описать реальную ситуацию, имеющую место при производстве строительства, на обычном языке. Затем сделать перевод понятий обычного языка на язык символики дискретной математики. Для анализа задач строительства нужно после получения решения алгебраической задачи провести обратный перевод – с алгебраического на технический язык.
Для производства решения разрабатываются алгоритмы, учитывающие аппаратурные возможности (емкость памяти) и временной фактор при условии, что сходимость и устойчивость задачи обеспечена. Емкостные и временные проблемы связаны с размерностью задачи и выбором эффективного алгоритма. Решение таких задач возможно на основе теории алгоритмов. Вычисления на ЭВМ производятся на дискретных структурах, где необ-
10
