Главная » Просмотр файлов » Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013)

Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (1162189), страница 249

Файл №1162189 Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (Т. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013)) 249 страницаТ. Кормен, Ч. Лейсерзон, Р. Риверст, К. Штайн - Алгоритмы. Построение и анализ (2013) (1162189) страница 2492019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Илл функции привед соотношение к Рве. 34Л. Доказательство леммы 34.3. Алгоритм Р предсташаст собой алгоритм приведения, ютарый вычислает функцию приведения 1 из Ьг в Х,з за полиномиальное время, а Аз — алгоритм с полиномиальным временем работы, разрешающий язык Ьз. Алгоритм Аз выясняет справедливость к б бз, используя Р для преобразования любого входа х в 1(к), а затем применяет Аз, чтОбы Вьиснить справедливость 1 (а) б ьз. образом, функция приведения отображает любой экземпляр х задачи принятия решения, представленной языком г,г, на экземпляр 3(л) задачи, представленной языком Ьз. Ответ на вопрос о том, принадлежит ли эюемпляр у(х) языку Ьз, непосредственно позволяет ответить на вопрос о том, принадлежит ли эюемплар х языку 1.1.

Приведение за полиномиальное время служит мощным инструментом доказательства того, что различные языки принадлежат классу Р. Лемма 34.3 Если Ьг, Ьз с 10, 1)' являются языками, такими, что Ьз <р г.з, то из Ьз е Р следует (г е Р. Доказательство. Пусть Аз — алгоритм с полиномиальным временем работы, который распознает язык 1 3, а Р— алгоритм приведения с полиномиальным временем работы, вычисляющий функцию приведения 1.

Построим алгоритм А1 с полиномиальным временем работы, который распознает язык Ьг. На рис. 34.5 проиллюстрирован процесс построения алгоритма Аз. Для заданного набора входных данных х е 10, 1)' в алгоритме Аз с помогцью алгоритма Р входные данные л преобразуются в 1(х), после чего с помощью алгоритма Аз проверяется, выполняется ли 1(л) б Ьз. Результат работы алгоритма Аз выводится алгоритмом Аг в качестве ответа. !!!в Часть р!!.

Избранные тамы Корректность алгоритма А! следует из условия (34.1). Алгоритм выполняется за полиномиальное время, поскольку н алгоритм Г, и алгоритм Аз завершают свою работу за полиномиальное время (см. упр. 34.1.5). ХР-полнота Приведения за полиномиальное время служат формальным средством, позволяющим показать, что одна задача по сложности такая же, как и другая, по крайней мере с точностью до полиномиально-временного множителя. То есть, если Ь! <р Ьз, сложность языка Б! превышает сложность языка Ьз не более чем на полиномиальный множитель. Вот почему отношение "меньше или равно" для приведения является мнемоническим. Теперь можно определить множество ХР- полных языков, являющихся самыми сложными задачами класса ХР.

Язык Ь С (О, 1)* является )ь!Р-полным (ХР-сошр!е1е), если 1. ЬеХР; 2. Т' < р з', для каждого Х,' е ХР. Если язык !. удовлетворяет свойству 2, но не обязательно удовлетворяет свойству 1, говорят, что Б — ХР-слонсный (ХР-Ьап)). Определим также класс ХРС как класс ХР-полных языков.

Как показано в приведенной далее теореме, ХР-полнота — ключевая проблема в разрешении вопроса о том, равны ли на самом деле классы Р и ХР. Теорема 34.4 Если некоторая ХР-полная задача разрешима за полиномиальное время, то Р = ХР. Это эквивалентно утверждению о том, что если какая-нибудь задача из класса ХР не решается за полиномиапьное время, то ни одна из ХР-полных задач не решается за полиномнальное время. Доказазпечьспзео.

Предположим, что Ь е Р и что Т, е ХРС. Для любого языка Т.' Е ХР согласно свойству 2 определения ХР-полногы справедливо Т,' <р Ь. Таким образом, в соответствии с леммой 34.3 мы также имеем 2,' е Р, что и доказывает первое утверждение теоремы. Чтобы доказать второе утверждение, заметим, что оно является противоположностью первого. Вот почему при исследовании вопроса Р ф ХР внимание акцентируется на ХР-полных задачах.

Большинство специалистов по теории вычислительных систем полагают, что Р зб ХР, так что отношения между классами Р, ХР и ХРС являются такими, как показано на рис. 34.6. Но если кто-нибудь додумается до алгоритма с полиномиальным временем работы, способного решить ХР-полную задачу, тем самым будет доказано, что Р = ХР. Однако поскольку до сих пор такой алгоритм не обнаружен ни для одной ХР-полной задачи, доказательство ХР- полноты задачи является веским свидетельством того, что ее трудно решить. 1П9 Глава ЗК ИР-вылова Рнс. 34.6. Представление большинства специалистов в области информатики об отношении между каассвын Р, МР и 1ЧРС: классы Р и ИРС полностью содервитсв в классе 1ЧР, и Р С 1ЧРС = 9.

Выполнимость схем Хотя определение ЫР-полноты нами уже сформулировано, до сих пор не была доказана г(Р-полнота ни одной задачи. Как только это будет сделано хотя бы для одной задачи„с помощью приводимости в течение полиномиального времени можно будет доказать ХР-полноту других задач. Таким образом, сосредоточим внимание на том, чтобы продемонстрировать гтР-полноту задачи о выполнимости схем. К сожалению, для формального доказательства того, что задача о выполнимости схем является ЫР-полной, требуются технические детали, выходящие за рамки настоящей книги. Вместо этого дадим неформальное описание доказательства, основанного на базовом понимании булевых комбинационных схем. Булевы комбинационнь|е схемы составляются из булевых комбинационных элементов, соединенных между собой проводами.

Булав комбинационный элемент (Ьоо!сап согпЬ(пайопа1 е!ещепг), или комбинационный логический клемент, — это любой элемент сети, обладающий фиксированным количеством булевых входов и выходов, юторый выполняет вполне определенную функцию. Булевы значения выбираются из множества (О, 1), где О представляет значение рдьзб, а 1 — значение ткпб.

Комбинационные логические элементы, используемые в задаче о выполнимости схем, вычисляют простую булеву функцию и известны как логические элементы (1ой(с кагеа). На рис. 34.7 показаны три основных логических элемента, использующихся в задаче о выполнимости схем: логический элемент НЕ (НОТ йаГе), или инвертор ((птег1ег), логический элемент И (А1чьт йа1е) и логический элемент ИЛИ (ОК ваге). На элемент НЕ поступает одна бинарная входная величина (щрщ) х, значение которой равно О или 1; элемент выдает бинарную выходную величину (оцтрц1) г, значение которой противоположно значению входной величины. На каждый из двух других элементов поступают две бинарные входные величины, х и у, а в результате получается одна бинарная выходная величина, г.

Работу каждого логического и каждого комбинационного элемента можно описать таблицей истинности (1ппЬ сзЫе), представленной под каждым элементом на рис. 34.7. В таблице истинности для всех возможных наборов входных величин перечисляются выходные значения данного комбинационного элемента. Например, в таблице истинности элемента ИЛИ показано, что если его входные значения х = О и у = 1, то выходное значение равно г = 1. Для обозначения Часть ) П. Нэвраниые темы л2о х — 1т ',))вЭ- — г Т.

(в) (6) (в) Рнс. 34.7. Три основных логических элемента с бинарными ахспами и аыходами. Дла каждого элемента приведена таблица истинности, опнсыаыоп(аа его рабату. (а) Элемент ИЕ. (6) Элемент И. (н) Элемент ИДИ. функции НЕ используется символ, для обозначения функции И вЂ” символ д, а для обозначения функции ИЛИ вЂ” символ Ч. Например, 0 Ч 1 = 1. Элементы И и ИЛИ можно обобщить на случай, когда входных значений больше двух.

Выходное значение элемента И равно 1, если все его входные значения равны 1; в противном случае его выходное значение равно О. Выходное значение элемента ИЛИ равно 1, если хотя бы одно из его входных значений равно 1; в противном случае его выходное значение равно О. Булева комбинационная схема (Ьоо1еап соп)Ь)пабопа1 спсш() состоит из одного или нескольких комбинационньп( логических элементов, соединенных нроводами (ту(гез). Провод может соединять выход одного элемента со входом другого, подавая таким образом выходное значение первого элемента на вход второго. На рис.

34.8 изображены две похожие одна на другую булевы комбинационные схемы„отличающиеся лишь одним элементом. В части (а) рисунка также приводятся значения, которые передаются по каждому проводу для входа (х) = 1, хз = 1, хз = 0). Хотя к одному и тому же проводу нельзя подключить более одного вывода комбинационного элемента, сигнал с него может поступать одновременно на входы нескольких элементов. Количество элементов, для которых данный провод предоставляет входные данные, называется его коэгуфициентом ветвления ((алош). Если к проводу не подсоединены выходы никаких элементов, он называется входом схемы (сЫсш(!прп(), получающим входные данные из внешних источников.

Если к проводу не подсоединен вход ни одного элемента, он называется выходом схемы (спсш( ошрп(), по которому выдаются результаты работы схемы. (Ответвление внутреннего провода также может выступать в роли выхода.) Чтобы определить задачу о выполнимости схемы, следует ограничиться рассмотрением схем с одним выходом, хотя на практике при разработке аппаратного оборудования встречаются логические комбинационные схемы с несколькими выводами. Логическая комбинационная схема не содержит циклов. Поясним это нагляднее. Предположим, что схеме сопоставляется ориентированный граф С = (К Е) с вершинами в каждом комбинационном элементе и )с ориентированными ребрами для каждого провода, коэффициент рк)ветвления которых равен lс.

Ориентированное ребро (и, о) в этом графе существует, если провод соединяет выход Нг) Глава ЗК КР-лолнота х«- «« л «Ц «л,,« — 1,'::' «1 "«.-, ~ 1 т'.::,»', «л) Рис. Зв.а. Два экземпляра задачи о выполнимости схем. (а) Входные значения (хз = 1, кз = 1, хз = О) приводят к псивлению на выходе 1. Таким образом, эта схема выполнима. (б) Никакие входные значения нс приводят к появлению 1 на выходе данной схемы.

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

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

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