Перевірка, чи всі продукти набору матриць зрештою дорівнюють нулю


19

Мене цікавить наступна проблема: задані цілі матриці вирішують, чи зрештою кожен нескінченний добуток цих матриць дорівнює нульовій матриці.A1,A2,,Ak

Це означає саме те, що ви думаєте, що це робить: ми скажемо, що набір матриць має властивість, що всі її продукти зрештою дорівнюють нулю, якщо не існує нескінченної послідовності , все в , так що A_ {i_1} A_ {i_2} \ cdots A_ {i_l} \ neq 0 для всіх l .{A1,,Ak}{ 1 , , k } A i 1 A i 2A i l0 li1,i2,i3{1,,k}

Ai1Ai2Ail0
l

Чи була вивчена проблема вирішення питання про те, чи дорівнює кожен продукт рівним нулю? Це рішуче?

Здається, це може бути пов'язано з матричною смертністю, що не можна визначити, але я не бачу чіткого зв'язку.


Вам потрібна якась властивість конвергенції на множині матриць, щоб забезпечити визначення нескінченного добутку.
Андраш Саламон

Ви працюєте в кінцевому полі чи цілими числами з необмеженим зростанням? k = 1 випадок цікавий в його власному праві. Використовуючи цілі числа від -100 до 100 в матриці 5x5, яка найвища потужність, яку ви можете отримати до того, як нулі вийдуть?
Чад Брюбекер

2
@YuvalFilmus - Я вважаю, що це відрізняється від смертності. Нехай розміри матриць дорівнюють 1 , так що у нас просто числа, і припустимо, A0=0,A1=1 . Смертний? Так, тому що A0=0 . Кожен продукт дорівнює нулю? Ні: не продукт 111 . З іншого боку, якщо A0=0,A1=0 то у вас є послідовність, яка є і смертною, і кожен продукт дорівнює нулю.
Робінсон

1
@ChadBrewbaker - Я думав, що записи матриць - це лише цілі числа. Я припускаю, що k=1 цікавий з точки зору: скільки саме операцій потрібно, щоб перевірити, що матриця є нікчемною? Зауважте, що якщо A є нільпотентним, то легко побачити, що An=0 де н - це розмірність А так що, мабуть, ви могли би вирішити його, зібравши матрицю logн разів. Я не маю уявлення, чи це найкраще, що ти можеш зробити.
Робінсон

1
Цікаво, що це якраз у: arxiv.org/abs/1306.0729 . Замість того, щоб запитувати, чи всі продукти зрештою дорівнюють нулю, вони запитують, чи є якийсь продукт у підсумку позитивний. Вони показують, що проблема непроста (або, принаймні, це те, що я збираю з реферату).
Джошуа Грохов

Відповіді:


17

Ваше запитання еквівалентно тому, чи генерують нільпотентну алгебру , що в свою чергу еквівалентно кожному з є нільпотентним . Звідси не тільки воно рішуче, але й у час, коли є показником множення матриці.A i ˜ OA1,,AkAiωO~(n2ω)ω

Нехай - асоціативна алгебра, породжена : тобто беремо всі лінійні комбінації та всі їх кінцеві добутки. називається нільпотентним, якщо є якийсь такий, що кожен добуток із елементів елемента дорівнює нулю.AA i AAiAiAN ANNA

Спочатку давайте розберемося, чому ваш стан означає, що є нільпотентним. Це випливає з леми Коніга (компактність): кожен рядок довжиною над алфавітом відповідає довжиною явно. Розглянемо нескінченне -ary вкорінене дерево, вузли якого, природно, перебувають у біективної відповідності з рядками над . Розглянемо під-дерево що складається з тих вузлів, де відповідний добуток є ненульовим. Лемма Коніга говорить, що якщо n { 1 , , k } A 1 , , A k n k { 1 , , k } T A i TAn{1,,k}A1,,Aknk{1,,k}TAiTнескінченна, то вона має нескінченний шлях (точно порушує вашу власність), отже, є кінцевим. Потім ми можемо прийняти бути максимальна довжина будь-якого рядка в . Отже, ваша властивість означає, що є нільпотентним.Н Т АTNTA

Зворотне також справедливо, оскільки кожен елемент є лінійною комбінацією продуктів .А яAAi

Далі зауважимо, що є подалгеброю матриць, а значить, є кінцевим розміром. n × nAn×n

Нарешті: кінцевовимірна асоціативна алгебра в характерному нулі має основу нільпотентних елементів (замінюючи чи ні - це частина, яка суперечить відповіді Юваля), якщо вона є нільпотентною (див., Наприклад, тут ).

Таким чином, щоб вирішити вашу проблему, знайдіть основу для асоціативної алгебри, породженої (за лінійно-алгебранною версією пошуку в ширину) і перевірте, що кожна матриця в основі є нільпотентною. Верхня межа походить від розв’язання системи лінійних рівнянь у змінних у процесі пошуку вширше. Оскільки BFS не може тривати дуже довго, і тому, що це матриць, щоб перевірити, чи є матриця nilpotent, потрібно лише перевірити, що .˜ O ( n 2 ω ) n 2 dim An 2 n × n A A n = 0AiO~(n2ω)n2dimAn2n×nAAn=0


2
Як ви вважаєте, чи є спосіб показати це без використання принципів вибору (навіть такого слабкого, як лема Кеніга, який еквівалентний )? ACω
Андраш Саламон

2
@Andras: Я б сказав, що це питання до Кріса Конідіса. Він вивчав подібні питання в (обчислюваній) зворотній математиці. Я запитаю його і вкажу його сюди.
Джошуа Грохов

1
@robinson: 1) Так, проблема вирішується, насправді в час, коли є показником множення матриці. Це відбувається від розв'язання систем лінійних рівнянь над при пошуку лінійної алгебри вперше. 2) Так, звичайне поняття базису при перегляді матриць як векторів у (або над або ). O(n2ω)ωQQn2RC
Джошуа Грохов

1
Ви починаєте з бази з . Тепер ви намагаєтеся знайти матриці і , такі , що або не в прольоті B . Якщо вам це вдасться, додайте продукт до B і продовжуйте. В іншому випадку множення будь-якої матриці в проміжку B на будь-який кінцевий добуток матриць в A завжди закінчується в проміжку . Оскільки розмірність алгебри обмежена, процес припиняється (щонайбільше кроків). A A A B B A BBAAABBAB B n 2BABBBABn2
Yuval Filmus

1
@robinson: Ні. Якщо алгебра нільпотентна, то кожен елемент алгебри є нільпотентним. Отже, якщо ви знайдете який-небудь ненільпотентний елемент, то алгебра не є нільпотентною (і тоді є нескінченні добутки ваших матриць, які ніколи не дорівнюють нулю).
Джошуа Грохов

6

У мене з'явився алгоритм багаторазового вирішення цієї (досить тривіальної проблеми) проблеми, тобто для перевірки того, чи є спільний спектральний радіус (JSR) нульовим чи ні, у 1995 році: http://en.wikipedia.org/wiki/Joint_spectral_radius

Історія, що стоїть за алгоритмом, приблизно така: Блондель і Цицикліс помилково заявляли, що для булевих матриць перевіряють, чи JSR <1 є NP-HARD. Для будь-якого набору цілочисельних матриць JSR є ефіром нульовим або більшим або рівним 1. Тож зустрічним прикладом до їх твердження був мій алгоритм (див. Еррата до їх статті). Основна мораль: спочатку зверніться до Вікіпедії!


5

Питання, яке ви задаєте, абсолютно рівнозначне вирішенню, чи сумарний спектральний радіус (JSR) набору матриць суворо менший. Вирішення цього питання залишається відкритим досить довгий час. (У теорії управління це рівнозначно рішучості стійкості комутованих лінійних систем при довільному комутації.)

Наступний варіант вашого питання, як відомо, не можна визначити: З огляду на обмежений набір квадратних матриць, вирішіть, чи всі продукти залишаються обмеженими; дивіться тут .

Невизначеність вищезазначеного залишається дійсною, навіть якщо у вас є лише 2 матриці розміром 47x47: дивіться тут .

Мовою JSR питання тестування "є JSR ?" не визначимо (див. посилання вище), але рішучість тестування "є JSR < 1 ?" відкрито. Останнє питання пов'язане з так званою "раціональною гіпотезою".1<1 Якщо раціональна гіпотеза про кінцевість відповідає дійсності, то питання, яке ви задаєте, вирішується.

Нарешті, якщо P = NP, JSR не є приблизним за полиномним часом (у точному значенні, визначеному в цій роботі ).

Як результат, одна з відповідей, над якою стверджує ефективний алгоритм, має бути помилковою.

З позитивного боку, існує кілька алгоритмів (наприклад, заснованих на напіввизначеному програмуванні) для наближення до JSR. Різні алгоритми мають різні гарантії продуктивності. Дивіться, наприклад, наступне (безсоромно я та мої колеги, - але дивіться також посилання на них ).

У кількох особливих випадках питання, яке ви задаєте, вирішується в поліноміальний час. Наприклад, коли матриці є симетричними, або ранговими, або якщо вони комутуються.

Нарешті, чудовою книгою на цю тему є наступне .


Прочитайте, будь ласка, офіційне твердження запитання, яке я задав - це не рівнозначно, чи вирішувати, чи є СПР суворо меншою. Вас, мабуть, вводять в оману заголовок питання. Коротше кажучи, я запитую про кожен продукт, що дорівнює нулю в обмежений час , а не в асимптотичному сенсі.
robinson

2
Тоді питання, яке ви задаєте, набагато простіше. Наступні еквівалентні: (i) Умова, яку ви визначаєте (ii) Усі кінцеві продукти є нільпотентними (iii) JSR = 0 (iv) Усі продукти довжини n дорівнюють нулю (n - розмірність, це не залежить від кількості матриці k). Остання умова, очевидно, передбачає рішучість, і якщо факт, ви можете перевірити умову в поліноміальний час. Дивіться розділ 2.3.1 книги Юнгерса, пов’язану в кінці моєї публікації. Мої вибачення за те, що ви мали на увазі асимптотичну версію. (Мене ввели в оману фразою "всі продукти врешті дорівнюють нулю".)
Амір Алі Ахмаді

У такому випадку @AmirAliAhmadi не пояснює відповідь Джошуа Грохова?
Суреш Венкат

2
Мені здається, що це робиться з іншим алгоритмом, ніж те, що я маю на увазі. (Знову ж вибачте за те, що питання: "чи всі продукти конвертуються до нуля" (тобто, JSR <1?), Чия рішучість є відкритою.) Є кілька відмінностей, хоч у відповіді Джошуа. (1) У еквівалентності (i) - (iv) у попередньому коментарі я не думаю, що леміту Коніга потрібно використовувати. (2) Я не розумію, чому він бере лінійні комбінації матриць. (3) Я копіюю нижче простий альтернативний алгоритм із розділу 2.3.1 книги Юнгерса, приписаного там Леоніду Гурвіту.
Амір Алі Ахмаді

4
[продовження зверху ...] Все, що нам потрібно перевірити, - чи всі добутки дорівнюють нулю, але є k n таких матриць. Щоб цього уникнути, ітераційно визначте такі матриці: X 0 = I , X j = k i = 1 A T i X j - 1 A i . Потім, один має Й п = Σ A  твір довжини п А Т А . Цю матрицю можна обчислити за k nnknX0=I, Xj=i=1kAiTXj1AiXn=A product of length nATAknмноження матриці, і дорівнює нулю, якщо і тільки тоді, коли всі добутки довжиною дорівнюють нулю. n
Амір Алі Ахмаді

0

Редагувати: Ця відповідь, на жаль, невірна. Помилка виділена нижче. Аргумент спрацьовує, якщо нам дозволено перенести матриці.

Почнемо з доведення леми.

Лема Нехай - матриця n × n, а N - матриця n × n з одиницями на вторинній діагоналі. Якщо A N t і N t A є нільпотентними для всіх t 0, тоді A = 0 . Правильний висновок: A - це верхній трикутний з нулями по діагоналі. (Оригінальний висновок відновлюється, якщо нам також дозволено помножити на сили транспонування NAn×nNn×nANtNtAt0A=0AN ).

Доказ. Припустимо, наприклад, що , і запишемо A = ( a b c d e f g h i ) ,n=3 Почнемо з обчислення A N 2 : A N 2 = ( 0 0 a 0 0 d 0 0 g ) . Ця матриця має трикутну форму, і тому, якщо A N 2 є нільпотентним, то g = 0 . Продовжуйте з A N 1 : A N 1 = ( 0

A=(abcdefghi),N=(010001000).
AN2
AN2=(00a00d00g).
AN2g=0AN1 Знову матриця має трикутну форму, і тому, якщоAN1є нільпотентним, тоd=h=0. Продовжуючи, AN0=( a b c 0 e f 0 0 i ). Як і раніше, робимо висновок, щоa==i
AN1=(0ab0de0gh)=(0ab0de00h).
AN1d=h=0
AN0=(abc0ef00i).
, і так Aa=e=i=0A - верхній трикутний з нулями по діагоналі.

Якщо тепер розглянемо замість , то робимо висновок, що A нижній трикутний з нулями на діагоналі. Насправді, ми не отримуємо нічого нового від розгляду N т A . Тому A = 0 . N2A,N1A,N0AАNтАA=0

A1,,Aki1,[k]Ai1Aim=0мAiA1A2А2А1А1V1VтViA1A2A2A1dimVi>10ViA1=NA20t0A2A1tA1tA2

Підводячи підсумок, властивість P утримує, якщо всі матриці є нільпотентними, і всі вони комутуються.


4
N2Ag=0N1Ad=h=0N0Aa=e=i=0AA

Дійсно, ця відповідь є невірною. Якщо більше ніхто цього не зробить, я накладу зустрічний приклад і до леми, і до остаточного твердження, коли сьогодні повернусь додому.
Робінсон

5
Як завжди, це коли колись вимагається, але не доведено, що доказ не вдається. Ну добре ...
Ювал Фільм

1
A0=(010001000),A1=(011000000)
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.