Научная статья на тему 'Сложность алгоритмов для разреженных полиномиальных матриц'

Сложность алгоритмов для разреженных полиномиальных матриц Текст научной статьи по специальности «Математика»

CC BY
110
27
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Зуев М. С.

Работа выполнена при частичной поддержке гранта РФФИ 04-07-90268.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Сложность алгоритмов для разреженных полиномиальных матриц»

Сложность алгоритмов для разреженных полиномиальных матриц

©М. С.Зуев

Пусть УУ - коммутативная область, каждый элемент которой может быть записан в одном машинном слове.

Определение 1. Полином ^2™=! е

^У[ж], у которого коэффициент Су отличен от нуля с вероятностью ссу назовем полиномом типа (т,ау). Если ау = а для всех V, то будем обозначать тип (т, а). Число а назовем плотностью полинома.

Определение 2. Назовем матрицей типа (п, р, 771, а к) случайную п х п матрицу, каждый элемент которой отличен от нуля с вероятностью р, а каждый ненулевой элемент - это полином типа (т,а*). Число р назовем плотностью матрицы.

Будем обозначать ВАк ЕМ. математическое ожидание числа операций сложения и умножения в алгоритме, а также ф(а: Ь) = а + Ь ~ аЬ.

Вычислим сложность мв-тринных алгоритмов сложения и умножения с учетом плотно-сти матриц. Будем считать, что для сложения и стандартного умножения полиномов справедливо

(т,а*) + (т,А) =

(т, а) х (т, (3) = (2т - 1,7г™(а, /3)) ЕА{{т, а) + {т, (3)) = тар] £М((т,а) х (т,/?)) = т2а/3] £А((т,а) х (т,/3)) = т2а{3,

где

¿т _ Г ® ПРИ 1 < ? < 7П

1 1 2т — г при гп < i < 2т — 1,

Для алгоритма сложения полиномиальных матриц справедливо

(п, р, т, ау) + (п, а, т, (Зь) -

= (п, Ф(р, и),га, ф(рау,о(3„)) (2)

Математическое ожидание числа сложений при этом равно

ТП

ЕА ~ п2ра ^2 (3)

Для стандартного алгоритма умножения матриц справедливо

(п, р, т, а) х (п, а, т, 0) =

= («»1 - (1 - ро-)п,2гп - 1,^), (4)

где

в = М1-(1-аГ)(1-(1-^Г),

17и = 1-(1-9<(а,/?)Г Математическое ожидание количества операций при этом равно

ЕМ. — п3дМ, (5)

ЕА = п3дА+

2тп—1

+п2 £ ((1_9<Т(а,/3)Г-1 + ™7<*(а,/3)). (6) «=1

Будем называть целое число числом типа (и»), если оно хранится в ад машинных словах. Примем модель

(ад) + (у) = (тах(ги,ь)), ЕА((ш) + (ад)) = ад, (ад) х (и) = (ад + у), £М((^) х (и)) — ьи), (7) £А((гп) х (?;)) = ыи, для стандартного алгоритма умножения чисел. Определение 3. Полином £2^1 СуХь~1 6 (1) Щ%\, У которого коэффициент су отличен от ну-

ля с вероятностью и все ненулевые коэффициенты - это числа типа (ш) назовем полиномом типа (т,а^,ад).

Определение 4. Назовем матрицей типа (п, р, т, а^ад) случайную пхп матрицу, каждый элемент которой отличен от нуля с вероятностью р, а каждый ненулевой элемент - это полином типа (т, а^ад).

Для стандартных алгоритмов умножения полиномов и матриц оценки сложности получаются непосредственно из формул (1). (3), (5), (6).

Данный подход можно использовать для оценки сложности других матричных алгоритмов.

БЛАГОДАРНОСТИ: Работа выполнена при частичной поддержке гранта РФФИ 04-07-90268.

Поступила в редакцию 10 октября 2006 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.