Главная » Просмотр файлов » 1626435697-9d9ede204f9baad60159c2d6531787c7

1626435697-9d9ede204f9baad60159c2d6531787c7 (844297), страница 52

Файл №844297 1626435697-9d9ede204f9baad60159c2d6531787c7 (Хопкрофт, Ульман 1979 - Построение и анализ вычислительных алгоритмов) 52 страница1626435697-9d9ede204f9baad60159c2d6531787c7 (844297) страница 522021-07-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Это увеличит порядок матриц не более чем вдвое и, значит, постоянную увеличит не более чем в 7 раз. Таким образом, Т(п) есть 0(п"е') для всех иЪ1, П В теореме 6.1 нас интересовал только порядок роста функции Т(и). Но для того, чтобы выяснить, для каких значений п алгоритм Штрассена работает быстрее обычного алгоритма, надо найти соответствующую мультипликативную постоянную. Однако если п не является степенью числа 2, то простое вложение каждой исходной матрицы в матрицу, порядок которой равен степени числа 2, ближайшей к п сверху, даст слишком большую постоянную. Вместо этого можно вложить каждую матрицу в матрицу порядка 2гг для некоторого небольшого числа г и р раэ применить лемму 6.4, умножая (гхг)-матрицы обычным 0(г')-методом.

Или, действуя иначе, можно было бы написать более общий рекурсивный алгоритм, который при четном п расщеплял бы каждую матрицу на четыре подматрицы, как и раньше, а при нечетном и сначала увеличивал бы порядок матриц на 1. Гл. а умножения мАтРиц Следует подчеркнуть, что„вычислив мультипликативную постоянную, мы найдем границу только на число арифметических операций.

Чтобы сравнить метод Штрассена с обычным методом умножения матриц, надо также учесть дополнительную сложность процедур, связанных с поиском элементов матриц. 6.3. ОБРАЩЕНИЕ МАТРИЦ В данном разделе мы покажем, что задачу обращения матриц из определенного класса можно свести к задаче умножения матриц. Этот класс включает все обратимые треугольные матрицы, но не все обратимые матрицы вообще. В дальнейшем мы обобщим полученный результат на произвольные обратимые матрицы. В данном разделе и в равд. 6А и 6.5 рассматриваются матрицы с элементами из некоторого поля. Лемма 6.6.

Пусть матрица А разбита пюкг 11 13 Предположим, чгпо существует А,,', Обозначим А„— А„А;,' А„ через Ь и допустим, что Ь-' существует. Тогда А,,'+А,,'А„Ь 'А„А,,' — А,,'А„Ь ' 1 й $1 11 Д о к а з а т е л ь с т'в о. С помощью очевидных алгебраических преобразований можно показать, что откуда О(ВЬ' — АА,,' А,,'+А,,'А„Ь 'А„А,,' — А,,'А„Ь '1 В В 5 Лемму 6.5 нельзя применять ко всем невырожденным матрицам. Например, (ихп)-матрица перестановки А, у которой А [1, ))=1, если 1=п — 1+1, и А 11, 1)=0 в противном случае, невырожденна, но де1(А11)=0 для любой главной подматрипы А„.

Тем ие менее лемма 6.5 применима ко всем невырожденным нижним и верхним треугольным матрицам. Ень ИВП-РАЗЛОЖЕИИЕ МАТРИцы Лемма 6.6. Если А — невырожденная верхняя (нижнял) треугольная матрица, то матрицы А„и Ь из леммы 6.5 обратимы и являются верхними (нижними) треугольными. Д о к а э а т е л ь с т в о. Допустим, что А — верхняя треугольная матрица. Для случая нижней треугольной матрицы доказательство аналогично. Очевидно, что А „— невырожденная верхняя треугольная матрица и, значит, А,,' существует. Далее заметим, что А„=О. Поэтому Ь=Азз — Аю А„' А„=А„— невырожденная верхняя треугольная матрица. П Теорема 6.2.

1!усть М(п) — время, требуемое для умножения двух (пхп)-матриц. Если 8М(т))М(2т))4М(т) для всех т, то найдется такая постоянная с, что обращение любой невырожденной верхней (нижней) треугольной (пхп)матрицы А можно вычислить за время сМ (и). Д ока з а тел ь с та о. Докажем теорему для случая, когда п — степень числа 2. Очевидно, что в противном случае можно вложить А в матрицу вида [. ~.1 где т+п(я 2п) является степенью числа 2.

Тем самым, увеличив постоянную с не более чем в 8 раз, мы установим наш результат для произвольного и '). Если и — степень числа 2, можно разбить А на четыре ((п/2)гс х(п/2))-подматрипы и рекурсивно применить формулу (6.3). Заметим, что Ам=О, так что А=А„. Следовательно, для обращения треугольных матриц А„и Л требуется 2Т(п/2) времени, для двух нетривиальных умножений еще 2М (и/2) времени и, для того чтобы поставить минус в правом верхнем углу, еще пз/4 операций. Из условия теоремы и неравенства М(1))1 выводим, что пз/4(М(п/2). Таким образом, Т (1) = 1, Т(п)~(2Т ( — )+ ЗМ Я для и) 2. (6А) Легко доказать, что из (6.4) следует Т(п)(ЗМ (и)/2. П 6.4.

НВП-РАЗЛОЖЕНИЕ МАТРИЦЫ Один из эффективных методов решения системы линейных урав. ненни состоит в применении так называемого НВП-разложения. ') И опять более тщательный анализ дает для произвольного л постоянную с, несильно отличающуюся от наилучшей известной постоянной для случая, когда л — степень числа 2. Гл. е. умножв ниц млтпиц Определение.

НВ-разложениелс ') (тхи)-матрицы А, т(п, называется представление ее в виде А =Т,У, где  — нормированная нижняя треугольная (тхт)-матрица, а У вЂ” верхняя треугольная (т Х п)-матрица. Уравнение Ах=Ь, где А — это (и)сп)-матрица, х — п-мерный вектор-столбец неизвестных, а Ь вЂ” п-мерный вектор-столбец, можно решить, сначала НВ-разложив А в произведение Ш в предположении, что это возможно.

Затем представим Ах=Ь в виде Т,Ух= Ь. Чтобы получить решение х, решим сначала (.у Ь относительно у, а затем Ух=у относительно х. Трудность применения этого метода заключается в том, что у матрицы А может не быть НВ-разложения, даже если она невырожденна. Например, матрица [1 о1 невырожденна, но у нее нет НВ-разложения. Однако если матрица А невырожденна, то найдется такая матрица перестановки Р, что АР-' имеет НВ-разложение. Изложим алгоритм, который по любой невырожденной матрице А находит такие матрицы Ь, У и Р, что А =1,УР.Матрицы Т„У и Р образуют НВП-разложение *) матрицыА. Алгоритм 6.1. НВП-разложение Вход. Невырожденная (пхп)-матрица М, п — степень числа 2.

Выход. Матрицы 1„У и Р, для которых М=1 УР, причем Т.— нормированная нижняя треугольная матрица, У вЂ” верхняя треугольная и Р— матрица перестановки. Метод. Вызываем процедуру МНОЖИТЕЛЬ(М, и, п), где МНОЖИТЕЛЬ вЂ” рекурсивная процедура, показанная на рис. 6.4. При описании втой процедуры используются диаграммы на рис. 6.!в 6.3, где затемненная область матрицы представляет ту ее часть, о которой известно, что она состоит из одних нулей. Каждый рекурсивный вызов процедуры МНОЖИТЕЛЬ происходит на (тхр)-подматрице А (пуси)-матрицы М.

При каждом вызоне т есть степень числа 2 и т(р(п. Выходом этой процедуры являются три матрицы Т., У и Р, показанные на рис. 6.1. П Пример 6.3. Найдем НВП-разложение матрицы О О О 1 О О 2 О О 3 О О 4 О О О ') По первым буквам слов «нижняя» и «верхняя».— Прим. иерее. ') По первым буквам слов «нижняя», «верхняя» и «перестановка».— Прим. я«р«е. 2Ь4 е.а ннп-Рхзложенне ИАтРнцзи и щ А т ° т Г/ л Рис. 6,1.

Выход процедуры МНОЖИТЕЛЬ. т/2 2 т/2 р-и/2 р т/2 т/2 е Рис. 6.2. Шаги процедуры МНОЖИТЕЛЬ: а — начальное разбиение матрицы А; б — разложение матрицы А после первого вызова процедуры; в — разбиение матриц (/т и 0; г — обнуление нижнего левого угла матрицы О. (Отметим, что .'можно рассматривать как нормированную нижнюю(или верхнюю) треугольную матрицу.) Н т/2 Г т/2 ГГ' ~/ и/2 б т/2 С и/2 1 днтакаги, Е т/2 р ! Осшаатшд ГЛ. Е.

ММИОЖЕНИЕ МАТРИЦ т/2 р-т/2 т/2 р- /г т/2 р-т/2 Р т/2 т/2 Р т/2 т/2 И т/2 / т/г И , /г С т/2 С и. р- /г Рис. 6.3. Завершение процедуры МНОЖИТЕЛЬ: а — построение матрицы РМ б — разложение матриц г/, и й; в — разложение матрицы Л. Начнем с вызова процедуры МНОЖИТЕЛЬ (М, 4, 4), которая сразу же вызывает МНОЖИТЕЛЬ О 2, 4 . Взяв в качестве матрицы А первый аргумент этого вызова, вызываем МНОЖИТЕЛЬ ([О О О 1], 1, 4). В результате получаем О О О 1 Ь,= Щ и, =~1 О О О), О ! О О 1 О О О последняя матрица переставляет столбцы 1 и 4. вл. ивп.влзложянив млтгнцы 1.

2. 10. 11. 12. 13. ргосебиге МНОЖИТЕЛЬ(А, я, Р): И и=1 1Ьеп Ьей!п пусть г,=!1] (т. е. Ь вЂ” нормированная (1х1)-матрица; найти, если можно, столбец с матрицы А с ненулевым элементом, и пусть Р будет (рхр)-матрицей, переставляющей столбцы 1 и с; сопппеп1 Заметьте, что Р=Р ', пусть У =АР; ге(цгп (1., У, Р) епд е1зе Ьей(п разбить А на ((т~2)ХР)-матрицы В и С, как показано на рис. 6.2,а; вызвать МНОЖИТЕЛЬ(В,т/2, р), чтобы получить Тч, Уо Р;, вычислить 0=СР,', сопппеп1 В данный момент А можно записать как произведение трех матриц, показанных иа рис. 6.2,6; пусть Е и Р†перв т/2 столбцов соответственно матриц У, и 0 (рис.

6.2,г); вычислить 0=0 — ГЕ 'У;, сопппеп1 Заметьте, что первые т(2 столбцов матрицы 6 состоят из одних нулей. Матрицу А можно записать в виде произведения матриц, показанных на рис. 6.2,г; пусть С' — самые правые р — лп2 столбцов матрицы б; вызвать МНОЖИТЕЛЬ(6', т~2, р — ги/2) и получить ь„ У,ир,; пусть Р, будет(рхр)-матрицей перестановки, у которой в левом верхнем углу стоит 1 по а в правомнижнем Р, (рис. 6.3,а) ь Н=О,Р,", сопппеп1 В зто время матрицу, составленную из и, и о, можно записать так, как показано на рис. 6.3,б. Если в рис.

6.2,г подставить правую часть равен. ства иа рис. 6.3,6, то получится представление Гл. е. умиожвиив ИАтРИц матрицы А в виде произведения пяти матриц. Первые две из них — нормированные нижние треугольные, третья — верхняя треугольная, а последние две — матрицы перестановок. Умножим первые дае и последние две, чтобы получить искомое разложение матрицы А; пусть Іэ (пэхт)-матрица, состоящая из 7.„ О ~„ РЕ-' и 1,э (рис. 6.3,в); пусть У вЂ” зто (лтх р)-матрица, у которой в верхней части стоит Н, а в нижней 0 м и У, (рис. 6.3,а); пусть Р— произведение Р,Р;, ге1цгп (Ь, У, Р) епб 16.

17, рис. ели Процедура МНОЖИТЕЛЬ. В строке 7 вычисляем ') 0001 Р02ЧОО О=Я 0100 1000 В строке 8 имеем Е= [11 и Р= [0), так что после выполнения строки 9 6=0 = [0 О 2 0). Строка 10 дает 6'= [О 2 0]; следовательно, после строки 11 будет 6,=[Ц, У,=[2 О 01, В строке 12 1000 0010 0100 0001 а в строке 13 1 0 и =У,Р-, =[! О О 01 0 0 0 0 0 0 = ~! 0 0 0~.

1 0 0 ! т! В втом примере все матрицы перестаиовок окавывакмси равиыми своим обратиым. ае нвп.РАзложенне мАтРицы Таким образом, МНОЖИТЕЛЬ ! ! О 0 О~, 2, 4) выдает ~ГО О 011 ООО! 01'0200'''0100 1ООО Теперь возвращаемся к вызову МНОЖИТЕЛЬ ГМ, 4, 4) в строке Б, причем роль Г.ц У, и Р, играютсоответственноГ.,У и Р.

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

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

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

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