Главная » Просмотр файлов » Алгоритмы - построение и анализ

Алгоритмы - построение и анализ (1021735), страница 233

Файл №1021735 Алгоритмы - построение и анализ (Алгоритмы - построение и анализ) 233 страницаАлгоритмы - построение и анализ (1021735) страница 2332017-07-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 233)

Каждая строка такой таблицы соответствует одному из вариантов набора, и содержит сам вариант и результат вычисления исследуемого выражения. С помощью элементов таблицы истинности, которые приводят к нулевому результату в формуле, можно составить формулу, эквивалентную выражению — ф';, в дизъюнктиеной нормальной форме (!31з)ппсцче Хоппе! Ропп, 0ХР), которая является дизъюнкцией конъюнкций. Затем эта формула с помощью законов де Моргана (1)еМогяав) Глава 34. ХР-полнота 1125 (уравнение (Б.2)) преобразуется в СХР-формулу 4>1 путем замены всех литералов их дополнениями и замены операций дизъюнкций и конъюнкций друг на друга. В качестве примера преобразуем выражение 4~ —— (уз + (уз Л ~хз)) в СХР.

Таблица истинности для этой формулы представлена в табл. 34.1. ПХР-формула, эквивалентная выражению — ф', имеет вид (уз л уз л хз) ч (уз л уз л хз) ч (у~ л уз л . хз) ч (- уз л уз л . хз). Применяя законы де Моргана„получим СХР-формулу ф~ = ( 'У1 Ч Уз Ч - хз) Л (-'уз Ч Уз Ч вЂ” хг) Л ( 'уз Ч Уз Ч хз) Л (у~ Ч вЂ” Уз Ч хз), которая эквивалентна исходной формуле ф',. Таблица 34.1.

Таблица истинности для выражения (у~ ~ (уя Л хз)) После того как каждое подвыражение ф',, содержащееся в формуле ф', оказывается преобразовано в СХР-формулу ф,", так что ф эквивалентно СХР-формуле ф", состоящей из конъюнкции выражений ф'. Кроме того, каждое подвыражение формулы фл содержит не более трех литералов. На третьем и последнем этапе приведения формула преобразуется таким образом, чтобы в каждых скобках содержалось точно 3 различных литерала. Полученная в результате 3-СХР формула ф'л составлена из подвыражений, входящих в СХР-формулу ф". В ней также используются две вспомогательные переменные, которые будут обозначаться как р и д.

Для каждого подвыражения С; из формулы 4)" в формулу ф"' включаются следующие подвыражения. ° Если С; содержит 3 различных литерала, то это подвыражение включается в формулу ф"' в неизменном виде. ° Если выражение С; содержит 2 различных литерала, т.е. если С; = (1~ Ч 1з), где 1з и 1з — литералы, то в качестве подвыражения в формулу ф"' включается выражение (1~ Ч 1з Ч р) Л (1~ Ч 1я Ч. р). Литералы р и -р служат лишь Часть ЧП. Избранные темы 1126 для того, чтобы удовлетворялось требование о наличии в каждом подвыражении в скобках ровно трех разных литералов: выражение (11 Ч 1з Ч р) Л (11 Ч 1з Ч р) эквивалентно выражению (11 Ч 1з) и при р = О, и при р = 1. ° Если выражение С; содержит ровно 1 литерал 1, то вместо него в качестве подвыражения в формулу ф"' включается выражение (1 Ч р Ч д) Л (1ЧрЧ-9) Л (1 Ч рЧд) Л (1Ч- рЧ- д).

При любых значениях переменных р и д приведенная конъюнкция четырех подвыражений в скобках эквивалентна 1. Проверив каждый из описанных выше трех этапов, можно убедиться, что 3-СХР формула ф"' выполнима тогда и только тогда, когда выполнима формула ф. Как и в случае приведения задачи Сшсшт Блт к задаче Ялт, составление на первом этапе формулы ф' по формуле я) не повлияет на выполнимость.

На втором этапе конструируется СХР-формула ф", алгебраически эквивалентная формуле ф'. На третьем этапе конструируется 3-СХГ формула ф"'; результат которой эквивалентен формуле ф", поскольку присваивание любых значений переменным р и д приводит к формуле, алгебраически эквивалентной формуле ф".

Необходимо также показать, что приведение можно выполнить в течение полиномиального времени. В ходе конструирования формулы ф'по формуле ф приходится добавлять не более одной переменной и одной пары скобок на каждый соединительный элемент формулы ф. В процессе построения формулы фл по формуле 4' в формулу фл добавится не более восьми подвыражений в скобках на каждое подвыражение в скобках из формулы 4', поскольку каждое подвыражение в этой формуле содержит не более трех переменных и таблица его истинности состоит не более чем из 2з = 8 строк. В ходе конструирования формулы ф"' по формуле ф" в формулу фл' добавляется не более четырех подвыражений на каждое подвыражение формулы ф".

Таким образом, размер полученной в результате формулы фл' выражается полиномиальной функцией от длины исходной формулы. Следовательно, каждый этап можно легко выполнить в течение полиномиального времени. й Упражнения 34.4-1. Рассмотрите приведение "в лоб" (время работы которого не выражается полиномиальной функцией) из теоремы 34.9. Опишите схему размера а, размер которой после преобразования этим методом превратится в формулу размер которой выражается показательной функцией от и. 34.4-2.

Приведите 3-СХР формулу, которая получится в результате применения метода, описанного в теореме 34.10, к формуле (34.3). 34.4-3. Профессор предложил показать, что Злт <г 3-СХГ Блт, лишь с помощью метода с использованием таблицы истинности, описанного в до- Глава 34. ХР-полнота 1127 казательстве теоремы 34.10, исключая при этом другие этапы. Другими словами, профессор предложил взять булеву формулу ф, составить таблицу истинности для ее переменных, получить из нее формулу в 3-13ХР, эквивалентную ~ф, после чего составить логическое отрицание полученной формулы и с помощью законов де Моргана получить 3-СХР формулу, эквивалентную формуле ф.

Покажите, что в результате применения такой стратегии не удается выполнить приведение формулы в течение полиномиального времени. 34.4-4. Покажите, что задача определения того, является ли тавтологией данная формула, является полной в классе со-ХР. (Указание: см. упражнение 34.3-7). 34.4-5. Покажите, что задача по определению выполнимости булевых формул в дизъюнктивной нормальной форме разрешима в течение полиномиального времени.

34.4-6. Предположим, кто-то разработал алгоритм с полиномиальным временем выполнения, позволяющий решить задачу о выполнимости формул. Опишите, как с помощью этого алгоритма в течение полиномиального времени находить выполняющие наборы. 34.4-7. Пусть 2-СХР БАт — множество выполнимых булевых формул в СХР, у которых каждое подвыражение в скобках содержит ровно по два литерала. Покажите, что 2-СХЕ Блт е Р.

Постарайтесь, чтобы ваш алгоритм был как можно более эффективен. (Указание: воспользуйтесь тем, что выражение х ~/ у эквивалентно выражению -х -+ у. Приведите задачу 2-СХР Блт к задаче на ориентированном графе, имеющей эффективное решение.) 34.5 ХР-полные задачи ХР-полные задачи возникают в различных областях: в булевой логике, в теории графов, в арифметике, при разработке сетей, в теории множеств и разбиений, при хранении и поиске информации, при планировании вычислительных процессов, в математическом программировании, в алгебре и теории чисел, при создании игр и головоломок, в теории автоматов и языков, при оптимизации программ, в биологии, в химии, физике и т.п. В настоящем разделе с помощью методики приведения будет доказана ХР-полнота различных задач, возникающих в теории графов и при разбиении множеств.

На рис. 34.12 приводится схема доказательства ХР-полноты, которая используется в этом разделе и в разделе 34.4. Для каждого из представленных на рисунке языков ХР-полнота доказывается путем приведения его к языку, на который Часть Ч1!. Избранные темы 1128 г сйсбп'-5Ат~з Сз-Снг-зАт "1 улках-сочвя ( НАЯ4"~Ш. .-(- ~ ТБР ) Рнс. 34.12. Схема доказательств 1чР-полноты для задач, рассматриваемых в разделах 34.4 и 34.5; все доказательства в конечном итоге сводятся к приведению 1чР-полной задачи Свплт ЯАт к рассматриваемой указывает идущая от этого языка стрелка.

В качестве корневого выступает язык Сасщт ЯАт, ХР-полнота которого доказывается в теореме 34.7. 34.5.1 Задача о клике Ялика (с!и)пе) неориентированного графа С = Я Е) — это подмножество У' С У вершин, каждая пара в котором связана ребром из множества Е. Другими словами, клика — это полный подграф графа С. Размер (з(хе) клики — это количество содержащихся в нем вершин. Задача о клике (с11с)пе ргоЫеш) — это задача оптимизации, в которой требуется найти клику максимального размера, содержащуюся в заданном графе.

В соответствующей задаче принятия решения спрашивается, содержится ли в графе клика заданного размера lс. Формальное определение клики имеет вид С~Оин = ((С, к): С вЂ” граф с кликой размера Ц . Простейший алгоритм определения того, содержит ли граф С = (К Е) с ~Ц вершинами клику размера й, заключается в том, чтобы перечислить все )с-элементные подмножества множества У, и проверить, образует ли каждое из них клику. Время работы этого алгоритма равно й (йз (~, ~) ) и является полиномиальным, если )с — константа. Однако в общем случае величина к может достигать значения, близкого к Щ/2, и в этом случае время работы алгоритма превышает Глава 34.

ХР-полнота 1129 полиномиальное. Есть основания предполагать, что эффективного алгоритма для задачи о клике не существует. Теорема 34.11. Задача о клике является ХР-полной. Доказаюельсиыо. Чтобы показать, что СыопвеХР для заданного графа С = = (1/, Е), воспользуемся множеством 1/' С 1/ вершин клики в качестве сертификата для данного графа. Проверить, является ли множество вершин 1/' кликой, можно в течение полиномиального времени, проверяя для каждой пары вершин и, о Е 1/', принадлежит ли соединяющее их ребро 1и, о) множеству Е. Теперь докажем, что 3-СХР Блт <р Си01/н, откуда следует, что задача о клике является ХР-сложной. То, что этот результат удается доказать, может показаться удивительным, потому что на первый взгляд логические формулы мало напоминают графы.

Построение алгоритма приведения начинается с экземпляра задачи 3-СХР ЯАт. Пусть ф = С2 Л С2 Л Л Сь — булева формула из класса 3-СХР с й подвыражениями в скобках. Каждое подвыражение С, при г = 1, 2,..., й содержит ровно три различных литерала 1» 12, и 12. Сконструируем такой граф С, чтобы формула ф была выполнима тогда и только тогда, когда граф С содержит клику размера 1с. Это делается так. Для каждого подвыражения С, = Я ~/ 12 Ч 12) в формуле ф в множество 1/ добавляется тройка вершин о~, и2 и изг. Вершины иг н о' соединяются ребром, если справедливы оба сформулированных ниже утверждения: ° вершины ог и о' принадлежат разным тройкам, т.е.

Характеристики

Тип файла
DJVU-файл
Размер
18,3 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6517
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее