Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
abramov_s_a_lekcii_o_slozhnosti_algoritmov.doc
Скачиваний:
136
Добавлен:
11.05.2015
Размер:
2.74 Mб
Скачать

§ 28. Линейная сводимость

187

Пример 28.2. Из формулы (23.2) нельзя сделать вывода, что зада­ча построения транзитивно-рефлексивного замыкания графа с п вер­шинами (или, в другой терминологии, транзитивно-рефлексивного замыкания булевой матрицы порядка п) линейно сводится к зада­че умножения двух булевых матриц порядка п, так как само число умножений матриц в этой формуле существенно зависит от п. Но мы покажем, что соответствующая линейная сводимость имеет ме­сто, если принять, что для любого из рассматриваемых алгоритмов умножения булевых матриц порядка п его сложность В(п) (примем это упрощенное обозначение) удовлетворяет, хотя бы для всех доста­точно больших п, условиям

                  1. В(1) = 1,

                  1. В(п) не убывает при возрастании п,

                  1. 4B(n)^B(2n)^8B(n).

Комментарий к условию 3. Неравенство В(2п) s= 8В(п) отсекает те алгоритмы умножения булевых матриц, сложность которых рас­тет быстрее чем п3. Алгоритм должен построить п2 элементов матри­цы-произведения, поэтому его сложность не может расти медленнее чем п2, и в соответствии с этим в ограничения включается неравен­ство 4В(п)^В(2п).

Для булевой матрицы X порядка п будем, как и прежде, обозна­чать ее транзитивно-рефлексивное замыкание через X*.

Пусть G ориентированный граф с п вершинами и С —его мат­рица смежности. Предположим вначале, что п—четное число: п = 21. Разобьем множество вершин V = {v1, v2,..., v2l} графа G на два под­множества У1 = {v1, v2,..., V;} и V2 = {v;+1, vl+2, ...,v2l}, а множество ре­бер графа G на четыре подмножества Е11,Е12,Е21,Е22: начало каж­дого из ребер из множества Epq принадлежит Vp, а конец — Vq, где p,qe{1, 2}. Если исходная матрица С представлена в блочном виде

(11 с12л

с21 C 22 ,

где каждый блок—это матрица порядка I, то матрица Cpq несет пол­ную информацию о ребрах из множества Epq. Рассмотрим пути в гра­фе G, соединяющие вершины из множества У1. Назовем ходом путь из вершины в вершину этого множества, представляющий собой

                  1. либо продвижение по ребру, принадлежащему Е11,

                  1. либо продвижение по ребру, принадлежащему Е12, за которым сле­дует некоторый путь по ребрам из Е22 и затем продвижение по ребру, принадлежащему Е21.

                  1. 188

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]