Об одном алгоритме треугольной декомпозиции в коммутативном кольце

УДК 512.7

ОБ ОДНОМ АЛГОРИТМЕ ТРЕУГОЛЬНОЙ ДЕКОМПОЗИЦИИ В КОММУТАТИВНОМ КОЛЬЦЕ

© Г.И. Малашонок, Л.С. Щербинин

Ключевые слова: треугольное разложение; область целостности; матричное разложение. Приводится описание одного блочно-рекурсивного алгоритма треугольного разложения матриц со сложностью матричного умножения. Алгоритм иллюстрируется вычислительным примером для целочисленной матрицы. Алгоритм эффективен для вычислительных систем с распределенной памятью.

1. Введение

Один из центральных разделов компьютерной алгебры составляют алгоритмы матричных вычислений в коммутативных областях (см. [1-4]). Так же как и в линейной алгебре над полем, решение задачи вычисления треугольного разложения матрицы лежит в основе многих эффективных матричных алгоритмов для колец.

Матричное равенство A = PLUQ называется LU-разложением матрицы A, если L и U — это нижняя и верхняя треугольные матрицы, а P и Q — это матрицы перестановок.

Матричное равенство A = VwU называется разложением Брюа матрицы A, если V и U — невырожденные верхние треугольные матрицы и w — матрица перестановок (см. [5-8]).

Пусть S — матрица перестановок с единицами на побочной диагонали. Пусть LU — разложение матрицы SA , с единичными матрицами перестановок. То, исходя из него, можно получить разложение Брюа матрицы A в виде A = VwU , где V = (SLS) — это верхняя треугольная матрица и w = S — матрица перестановок.

Мы рассматриваем более общий вид треугольных разложений, который называется LDU, а в общем виде — PLDUQ с матрицами перестановок P и Q. Это разложение отличается тем, что исходя из него всегда можно получить как PLUQ-разложение, так и разложение Брюа. Это новый тип треугольных разложений. В статье [7] были описаны частные случаи для такого разложения, когда все главные угловые миноры не нулевые, а общий вид рассматривается в работе [8].

В настоящей работе мы приводим общий алгоритм и поясняем его на примере.

2. Декомпозиция матрицы в коммутативном кольце

Пусть R — коммутативная область, A = (aj) € Rnxm матрица размера n х m , минор матрицы A размера k х k , который расположен на пересечении строк 1,2,... ,k — 1, i и столбцов 1, 2,..., k — 1, j . Обозначим а0 = 1 и ak = k и öj — символ Кронекера.

Пусть k и s целые числа в интервале 0 ^ k < s ^ n, Aksp = (akjматрицы миноров размера (s — k) х (p — k) с элементами акj1, i = k + 1,..., s — 1, s , j = k + 1,... ,p — 1,p и АП = (ajj) = A. Обозначим A'k,s = Aks .

Будем использовать следующее детерминантное тождество Сильвестра (см. [4, 5]):

det(Ak) = as(ak )s-k-1,

где k и s — целые числа в интервале 0 ^ k<s ^ n .А также мы используем теорему о LDU-разложении матрицы миноров, которая была доказана в [7].

Теорема 1. Пусть А = (а^-) € Лпхт матрица ранга г, аг = 0 для г = к, , г , тогда матрицу миноров , к < 8 ^ п , к < р ^ ш мож,но представить в

виде произведения трех матриц:

= X ^Цк =

Х = (а| ^), г = к + 1... 8, j = к + 1... г — нижняя треугольная матрица размера (8 — к) х (г — к), Цр = (а* ^), г = к + 1... г , j = к + 1.. .р — верхняя треугольная матрица размера (г — к) х (р — к) и = (¿у ак (а*-1а* )-1), г = к + 1 ...г, j = к + + 1... г — диагональная матрица размера (г — к) х (г — к) .

Отметим, что исходя из разложения (1) можно получить разложение с невырожденными квадратными треугольными матрицами. Для этого мы можем добавить единичные блоки к матрицам и Цр , получив при этом невырожденные квадратные матрицы размера (8 — к) и (р — к) соответственно, а добавив нулевые элементы к матрице ^ р, получим диагональную матрицу размера (8 — к) х (р — к) .В результате получим разложение = = ^крЦр с обратимыми квадратными матрицами и Цр .

Следствие1 (ЬБИ-разложение матрицы А или разложение Гаусса).

Пусть А = (а^-) € матрица 'ранга г , а* = 0 при г = 1, 2,...,г , тогда матрица

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

A = LXm um = (j К-V)-1)^.).

Следствие2 (Разложение Брюа). Пусть для матрицы А размером пхп и рангом г найдено ЬБи-разложение А = Х^Ц , 5 матрица с единичными элементами на побочной диагонали, тогда V = 5X5 и Ц верхние треугольные матрицы и А = Vявляется разложением Брюа для матрицы А . Следствие3 (Наличие нулевых блоков).

Пусть Д^р = ^ С ^^ , = ^ 0 0) , А = и = ^рЦр разложение (1) матрицы р . Тогда разложение обладает следующими свойствами:

Если C = 0, тогда Lk = diag(Lk, ). Если B = 0, тогда Up = diag(Urk, Up).

(rr nr ur 0 \

^0' ' 0 )S2.

Введем следующие обозначения: для любой матрицы A (или Ap) обозначим как Ajj (или Apjl'j ) блок, который стоит на пересечении строк ¿1 + 1,..., ¿2 и столбцов ji+1,..., j2 данной матрицы. Обозначим как A^ диагональный блок A^'^ .

2.1. Алгоритм LDU-разложения матриц с ненулевыми диагональными минорами

Input: (An, ak ), 0 ^ k < n .

Output: {ГП, {ak+1,ak+2,...,ara}, Up, Mp, Wp}, где Mp = ak (L^D* )-1, Wp = = ak(ППUp)-1, ПП = akdiag{akak+1,..., an-1an}-1.

1. Если k = n — 1, то АП-1 = (an) является матрицей первого порядка, тогда получим

К, К}, ага, а""-1, а""-1}, D^-1 = (an)-1.

оП-1 в

2. Если к = п — 2 , то АП-2 = ( ^ 6 ' _ матрица второго порядка, тогда получим

аП-1 И г П-1 пл ( аП-1 в аП-2 0 аП-2 —в

7 аП ) 'М 0 ап ] Ч —7 аП-1 ) , I 0 аП-1

где ап =

2 -1

Дп-2 = ап-2^{ап-2ап-1,ап-1ап}-1

ап-1 в

7 6

3. Если порядок матрицы АП больше двух (0 ^ к < п — 2), тогда выберем целое в в интервале (к < в < п) и разобьем матрицу на блоки

Дк = ( В

Ап = » С Б

3.1. Рекурсивный шаг

{¿к, {аК+1, ак+2,..., а5}, Цк, Мвк, ^} = ЪБи

3.2. Вычислим

и = (ак)-1мКВ, I = (ак)-1 С^к, АП = (ак)-1а5(Б — Ц).

3.3. Рекурсивный шаг

3.4 Результат.

{¿П, К+1, а5+2,..., аП}, ЦП, МП, = ЬБИ

{¿П, {аК+1, ак+2,..., аП}, Цк, Мк, },

г к = ( ¿к 0 N = / Цк Ц

П VI ¿П Г V 0

М К = ( „Мк 0 Г _ к = ( —Дк и ^/ак

П V —-Мп¿Дк Мк/ак М^ У ' П V 0 ^

Доказательство алгоритма приведено в работе [7]. 3. Треугольное матричное разложение

Теперь мы будем рассматривать общий случай разложения для произвольной матрицы. Будем искать разложение матрицы А в виде

Ак = ркдк цк

при этом мы наложим дополнительное условие.

Свойство1 ( треугольного разложения). Если матрица АП,™ имеет ранг г — к , то (а) треугольные матрицы ¿П и Цт должны иметь следующий вид

¿п = ( ¿1 0 \ , Цк = ( Ц Ц

П \ ¿2 ^п-г / ' ™ \ 0 ^т—

(в) матрицы Р^¿П(Рга)Т и (^т)т и™остаются треугольными после замены в матрицах ¿П и ит единичного блока /т-г произвольным треугольным блоком, соответственно, нижним или верхним.

П р и м е р 1 (на свойство в).

Мы заменяем нижний правый единичный блок /2 произвольным треугольным блоком Рз :

РП № )т = ( /2 'о' )( £ Ь°3 )( 0 Ь-р" £2 = 0.

П р и м е р 2 (на свойство в )•

г>кткгг>к\Т ( P 0\( Ll 0 \ / PT 0 \ or от

P; L„(P„) = I q / / V L L /I 0 i / пРичем PL^ нижний треугольный блок.

Определение! (Треугольное разложение в области). Матричное разложение (2) называется треугольным разложением если оно удовлетворяет свойству 1.

Заметим, что свойство 1 тривиально если k = n — 1. Свойство (в ) тривиально, если r ^ ^ n — 1. Это позволяет алгоритм, описанный ниже, доказать по индукции. Доказательство приведено в [8].

4. Алгоритм LDU-разложения с матрицами перестановок 4.1. Левый верхний блок A не нулевой

Input: (ak ), 0 ^ k<n , 0 ^ k<n, An,m = 0 ;

Output: (РП, Ln, {ak+1, ak+2,..., ar}, Mf, Wf) , где r—k ранг матрицы A^ , D =

= akdiag(akak+1,..., ar-1ar)-1, = diag(Dk, 0), Mk = ak(LkDk)-1,' Wk =

ak(nkUk)-1 = Pk Uk Qk

ct. vг r / ' n n n *

1. Если k = min(n, m) — 1, то матрица An m представляет собой либо строку либо столбец, тогда

|/„,Ln, |afc+1},Um,/m, (ak+1), (ak+1)} = LDU«m,ak).

Если = (flfc+1,.., anHfc+1)T столбец, тогда m = k + 1, U^, = (ak+1) и Ln =

k+ 0

/ afc+1 0 \ k

( r ) . Если = (afc+1,..,afc+1 m) строка, тогда n = k + 1, U,

V An,k+1 in-k / / afc+1 /(fc \

/ a Ak+1,m \ j k _ /„k+b

I 0 im-k ) и Ln = (a ) .

0 'т—к

2. Если матрица АП т имеет больше чем одну строку и столбец, тогда мы выбираем целое число в в интервале (к < в < п) и делим матрицу на блоки.

Л? = ( в

Ага,т 1 СО

2.1. Рекурсивный шаг. Пусть матрица а?: имеет ранг г — к , г < в , тогда получим

{Рк, ¿к, {ак+1, ак+2,..., аг}, и?, О?, М, ^} = ЬБи^к, ак)

= ( ,)  = ( ? £)  = ( * 0)  м =""^)—1

= ак(^к)—1, = акdiag{аkак+',..., аг—'аг}—1, А? = Р?рЯ*и?О . Отметим, что а^- и ак это миноры матрицы (diag(/fc, Рр)тA(diag(/fc)т).

2.2. Разобьем матрицу АПт на блоки другим способом

Ak B

diagT(Pk,/„-s)Ak diagT(Qk,/„-,) = '

U = (ak)-1MrkB, L = (ak)-1CWrk, Anm = (ak)-1ar(D — LD^U).

2.3. Рекурсивный шаг.

Если А^т — 0 , тогда {Рп, Тп, {аТ+1, аТ+2,..., аТ~}, Ит, дт, МТГ, Щ} — ЬБи

АТ — РГ ТТ ПГ иг Ог Ап,т РпТпПп,тИтдт .

В другом случае (АП т = 0) мы ничего не вычисляем. 2.4 Результат.

{Рк, тп, {«к+1, ак+2,..., оа ит, дт, м*, },

При Ап,т = 0 , то Рк = diag(Psfc, /n-s)diag(ií.-k, Р£), дт = diag(ií.-k, дm)diag(дk, 1п-з),

Тк = ( 0 ^ цк = ( Цк 11Япт п \РТптТ тп у' т V 0 и;

Мк = ( М* 0 ^ щ? = ( Щк —ЩПидттЩТ/ак

Т V -МТТР,тТПкМТк/ак МТ Т \ 0 ЩГ

Иначе (Ап,т = 0), Ркп — diag(P.k;,/п-?), дт = diag(Qk, /п-?), Мгк = ак(Т?)-1, Щ = = ак(П?ИТк)-1, = акdiag{akак+1,..., аТ-1аТ}-1, / — г ,

Тк 0 \ „к / ик и

¿п — ( - т ь ит — ( ,

т ^п—т / V 0 ^т—Т

4.2. Матрица Л имеет полный ранг, матрицы С и (или) В нулевые

2.1. Этот шаг остается без изменений.

2.2. Вычислим И , Т . Одна из этих матриц или обе нулевые. Так для матрицы Ап получим: Ап = (ак)-1а?Б .

2.3. Рекурсивный шаг. Возьмем матрицу Б вместо Ап .

{Рп, ТТп, К+1, а?+2,..., ап}, И? дп, ММ?, Щ?} = ЬБИ

Отметим, что мы можем одновременно производить эти вычисления вместе с первым шагом (2.1).

Значение Л = а?/ак коэффициент в равенстве Ап — (ак) 1а?Б . Легко доказать что ЛТп — тп , Лй?+1 — а?+1, Ла?+2 — а?+2,...,Лап — ап , Л-1П? — , ЛИ/,? — И? ЛММ? — — М?, ЛТ/? — Щ? . Таким образом мы можем найти разложение

{Рп?, Тп, К+1, а?+2,..., ап}, ИД, дп, М? Щ?} — ЬБИ

2.4. Результат не изменился. Но если С — 0 , тогда Тп — diag(Lk, Тп) , и если В — 0 , тогда

ит—^(цк ,ц?).

4.3. Матрица Л имеет не полный ранг, матрицы С и (или) В нулевые

На некотором этапе алгоритма 4.1 мы получили матрицу

Ак — ( А В

Ап ,т \ 0 Б

Здесь А — А? и Б блоки размера (п — 8) х (т — 8).

Можем использовать алгоритм, описанный в 4.1. Но в этом случае разложения блоков А — А? и Б может быть вычислено одновременно и независимо. 2.1. Рекурсивный шаг.

{Р?к, Тк, {ак+1, ак+2,..., аТ}, И?к, д?МТк, ЩТк, } — ЪБИ

{Pn, Ln, {as+1, as+2,..., ar}, Um, Qm, Mf, W/} = LDU

A = pk l k nk UkQk D = Ps U s D Us Qs л 1 s ^s^s us ^¿s i 1 m1JniJn,m^m^om-

Предположим ранг матрицы A равен r — k , k < r < s , а матрицы D равен r — s s < r ^ min(n, m) . Тогда

Lk = ( M / / • nk = (d1 0 / ,U* = (U0 /o

\ Mo ls-r / \ 0 0 / V 0 is-r

2.2. Разобьем на блоки матрицу An,m другим способом

diagT(Psk, i„-s)An,mdiagT(Qk,In-s)= ' "r

Ак В

и = (ак)—1'МгкВ, Р = (ак)—1'СЖгк, АП>т = (ак)—V(Р — РР?и).

Отметим, что Л = аг/ак, С = ^ С' ^ , Р = ^ , АП,т = Л ^ р2

2.3. Рекурсивный шаг.

{РП, РП, {аг+', аг+2,..., а'}, ит, От, М, ^Т} = ЬЮИ^, аг). Разложение блока АПт можно получить с помощью разложения (3).

2.4. Результат.

{РП, РП, {ак+',..., аг, аг+',..., аг~}, ^, От М, ^}ЪБи(ЛП,т, ак), Аналогично описанному в пункте 4.1.

5. Матрица А нулевая

5.1. Матрица А нулевая, С и (или) В не нулевые матрицы

На некотором этапе алгоритма 4.1 мы получили матрицу

дк /0 В ) „ = ( 0 /

c d у' v i о )'

Пусть C = 0 . Тогда для матрицы SAn,m найдем треугольное разложение, как написано в пункте 4: ( C B ) = LDU. Получим -<m = SLDU. В э™м случае маТрЩа L

имеет вид L = diag(L1,L2), согласно следствию 3 теоремы 1. В итоге получим следующее разложение An,m = diag(L2, L1)(SD)U .

Пусть B = 0 . Тогда для матрицы An)m£ найдем треугольное разложение, как написано

в пункте

4: ( B C ) = LDU . Then A^ = LDUS . В этом случае матрица U имеет вид

U = diag(U1, U2) согласно следствию 3 теоремы 1. В итоге получим следующее разложение Ak = L(DS)diag(U2, U1).

атрицы Ak

0 0 \ / I 0\/0 0\ / I о

Пусть B = C = A = 0 и D = 0, D = LDU. Тогда для матрицы An m получим

следующее разложение^ 0 о ) V 0 Р У V 0 Р У \ 0 и

5.2. Случаи, когда половина матрицы состоит из нулевых элементов

Теорема 2. Пусть АП,т = ( С В

Если С — Б — 0 и (А, В) — РТ(П, 0)Ид, тогда является треугольным разложением для матрицы Ап Если А — В — 0 и (С, Б) — РТ(П, 0)Ид, тогда

Р0

0 I

0 I Р0

является треугольным разложением для матрицы Ап,т .

Если В — Б — 0 и (А, С)т — РТ(П, 0)тИд , тогда РТ

является треугольным разложением для матрицы Ап,т .

Если А — С — 0 и (В, Б)т — РТ(П, 0)тИд , тогда РТ

является треугольным разложением для матрицы Ап,т . Доказательство приведено в работе [8].

6. Пример вычисления треугольного разложения в Z

Пусть дана матрица:

где А2 —

4 2 6 3

, в

А—

4243 6363 6 3 6 5

V 1 2 1 2 )

43 63

С9

Д4

63 12

А2 20

в20 ¿2

¿4

65 12

Т 0 0 I

Т0 0 I

П 0 00

П 0 00

6.1. Рекурсивный шаг первого уровня. Разложение блока А2

П 0 00

П 0 00

Ид

Ид

И0

0 I

И0

0 I

д0

0 I

0 I

д0

/ 42 «2 \

Разделим на блоки: А2 — ( ¿0 Г А? — ( 4 ) , #2 — ( 2 ) , С? — ( 6 ) , ¿2 — ( 3

6.1.1. Разложение блока Л1

ЪБи

6.1.2. Вычисления для следующего рекурсивного шага

И12 12

(а2)-1с2д°Щ12 — (1)-1(6)(1)(1) — (6), (а2)-1М12Р12В2 — (1)—1 (1)(1) (2) — (2),

а1

-2п2гг2^ 4

(¿2 — Т2П2И12) — -((3) — (6)^)(2)) — (0).

а2

6.1.3. Разложение блока 12

0 не требуется

6.1.4. Результат разложения матрицы А22

ЪБИ(А2, «2) — {Р22, Т, {«1, «2}, И22, д2, М22, Щ2}

Р 0 Р2

и20 =

Р1° 0 1 0

0 /з; = = 1

и1° и3° % = = (0 (4 2

0 /1 0 1

Р0 Р2

О2 =

р? 0 р? /'

О3 0 0 /?

М20 = МО = Ж2° = Ж? = ( 1 ) , а? = 4 .

4 0 6 1 10 01

Р2

0

1

4

00

6.2. Рекурсивный шаг первого уровня

Матрица А имеет не полный ранг. Переразбиваем матрицу А4 на блоки. Размер верх-

него левого блока равен рангу матрицы А

Р2 А4°2

А? С°

г°

А° = ( 4 ) , В° = ( 2 4 3 ) , С° =

Пересчитаем новые блоки

г°

Р°

С/° =

14 =

(а°)—1С°Ж2° = (1)—'( 6,6,1 )Т( 1 ) (а°)—1М°В° = (1)—1 ( 1 ) ( 2 4 3

(г°2 — Р0D0U0) = а° 1 1 2 1

т

= 6, 6, 1 = ( 2 4 3

4 1

363 3 6 5 212

6

6 ^ 4 )( 2 4 3

0 0 —6 0 0 2 6 0 5

Разобьем на блоки матрицу: А4 =

13 31

31

В?

6

с3

: гз 1 ,гдеаз=(0V 2

= ( 6 0 ), г? = ( 5 ) . Так как матрица А? нулевая, меняем блоки местами и найдем разложения блоков С3 и В? одновременно (см.6.2.1 и 6.2.2).

0 /' /2 0

Л3

0 /' /2 0

0 В? С? £>?

С1

г?

3

0 в3

6.2.1. Разложение блока С?

ЪБи(С31,а1) = {Р2?,Р2, {а2},и21,О2,М21,Ж^} ,

где Р21 = ( 1 ) , Р? = ( 6 ) , и? = ( и° V. ) = ( 6 0 ) , О2 = ( Ж23 = ( 4 ) , а2 = 6.

10 01

М21

=4

6.2.2. Разложение блока В-

где Р32 = Ж32 = ( 4 ) , аз = 6.

1 0 ) Р 2 = 0 1 Ь Р 3 =

ЬБи(В3, а?) = {Р32, Р2, {аз}, Щ, О3, М|, Ж2} ,

( —6), О2 = (1), М2 = ( 4

Р1 М'

—6 2

, и2 =

6.2.3. Результат разложения блока А14

Т

V!

щЬс

«2 / 2 _ 6 / —6

— Т а1

4

—9 3

Т1 М1

Из2 — - Из2 — 6 ( —6 ) — ( —9 3 «1 3 4 у ' к

«2 /2 _ 6

Мз2 — — М/з2 — — ( 4 6

«1

*3

4

щ2 — Щ2 — 6 ( 4 ) — 3 «1 3 4У '

— («1)-1М21П1 — (4)-1 ( ) ,МЬс — —(«1)-1 М320(—)М1 — 0

«2

— —Ы^ЩЧ-ЖЩ2 — — (4)-1(4) ( 6 ) ( 5 ) ( 6 ) — ( —5 ) ,«3 —

«2

ЬБи(А4, «1) — {Р41,Т4, {«2,«3, },И41,д4,М31,Щ31} .

0:20:3 «1

— 9.

Р41

д14 —

Т14

Щ1 —

0

I1 0 0

Т12 0 0

I1 0

0 0 I1

Р1 Р2

0 л 0

00 Т1 0 М1 /1

ЩЬс \

Щ2 )

Р32

д12 0

001 100 010

М31 —

д2

600 0 —9 0 0 3 1

—5 6

1 0 0 001 010

И41 —

М21 0

МЬс М2

«2 — 6, «3 — —9.

И2 V У2

0 И32 0

0 0 Il

_2_ "27

00

0 0 0

40 06

650

0 —9 0

001

6.3. Результат разложения для матрицы А

ЬБи(А, «2) — {Р42, Т4, {«1, «2«3}, И42, д4}

А — А2 — (Р42Т4Р42т )(Р42П2д4 )(д4т И42д2) — ¿¿и

Т2 Т4

И42

Т21 0 Р41 тТ21 Т14

И12 И12д4т

0 И41

4 0 0 0 4 0 0 0

1 6 0 0 , С — 6 —9 0 0

6 0 —9 0 6 3 1 0

V6 0 3 1 V 1 0 0

/ 4 2 3 4 / 4 2 4 6\ 3\

0 6 5 0 , и — 0 6 0 5

0 0 —9 0 0 0 1 0

0 0 0 1 0 0 0 —9

Р2 Р4

д24

Р12 0

0 !3

Il 0 0 д14

Il 0

0 Р41

д21 0

0 Iз

1000 0001 0100 0010

1000 0100 0 0 0 1 0010

2?

/4 0

0 0

/I 0

0 0

0

X 24 0

0 0

54

00

00 0 0 — 00

24 0

\

0 0

0) \

1 54 0

0

2

3

6

0

0

0

0

0

0

ЛИТЕРАТУРА

1. Malaschonok G.I. Effective matrix methods in commutative domains. In: D. Krob, A.A. Mikhalev, A.V. Mikhalev (eds.) Formal Power Series and Algebraic Combinatorics, Springer, Berlin, 2000. P. 506-517.

2. Malaschonok G.I. A fast algorithm for adjoint matrix computation // Tambov University Reports. 2000. V. 5. № 1. P. 142-146.

3. Malaschonok G.I. Matrix Computational Methods in Commutative Rings. Tambov: Tambov University Publishing House, 2002.

4. Malaschonok G.I. Fast matrix decomposition in parallel computer algebra // Tambov University Reports. 2010. V. 15. № 4. P. 1372-1385.

5. Malaschonok G.I. Fast generalized Bruhat decomposition. In: Ganzha, V.M., Mayr, E.W., Vorozhtsov, E.V. (eds.) 12th International Workshop on Computer Algebra in Scientific Computing. LNCS 6244. Springer, Berlin, Heidelberg, 2010. P. 194-202.

6. Malaschonok G.I. On the fast generalized Bruhat decomposition in domains // Tambov University Reports. 2012. V. 17. № 2. P. 544-550.

7. Malaschonok G.I. Fast generalized Bruhat decomposition. In: 15th International Workshop on Computer Algebra in Scientific Computing. LNCS 6244. Springer, Berlin, Heidelberg, 2013. P. 194-202.

8. Malaschonok G.I., Scherbinin A.S. Triangular Decomposition of Matrices in a Domain. In: 17th International Workshop on Computer Algebra in Scientific Computing. Springer, Berlin, Heidelberg, 2015. (in print).

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

Поступила в редакцию 11 июня 2015 г.

Malaschonok G.I., Scherbinin A.S. ABOUT ALGORITHM FOR THE TRIANGULAR DECOMPOSITION IN A COMMUTATIVE RING

We give a description of a block-recursive algorithm for the triangular matrix decomposition which has a complexity of matrix multiplication. The algorithm is illustrated by numerical examples in which we find the decomposition of an integer matrix. The algorithm is effective for computer systems with distributed memory.

Key words: triangular decomposition; integral domain; matrix decomposition.

Малашонок Геннадий Иванович, Тамбовский государственный университет им. Г.Р. Державина, г. Тамбов, Российская Федерация, доктор физико-математических наук, профессор кафедры математического анализа, e-mail: malaschonok@gmail.com

Malaschonok Gennadi Ivanovich, Tambov State University named after G.R. Derzhavin, Tambov, the Russian Federation, Doctor of Physics and Mathematics, Professor of the Mathematical Analysis Department, e-mail: malaschonok@gmail.com.

Щербинин Антон Сергеевич, Тамбовский государственный университет им. Г.Р. Державина, г. Тамбов, Российская Федерация, аспирант кафедры математического анализа, e-mail: ridkeim@gmail.com

Scherbinin Anton Sergeevich, Tambov State University named after G.R. Derzhavin, Tambov, the Russian Federation, Post-graduate Student of the Mathematical Analysis Department, e-mail: ridkeim@gmail.com