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

19

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

Это означает именно то, что вы думаете, что он делает: мы будем говорить, что множество матриц обладает тем свойством, что все его произведения в конечном итоге равны нулю, если не существует бесконечной последовательности i 1 , i 2 , i 3 , все в { 1 , , k } , так что A i 1 A i 2A i l0 для всех l .{A1,,Ak}i1,i2,i3{1,,k}

Ai1Ai2Ail0
l

Была ли ранее решена проблема определения того, равен ли каждый продукт нулю? Это разрешимо?

Похоже, это может быть связано с матричной смертностью, которая неразрешима, но я не вижу четкой связи.

Robinson
источник
Вам нужно какое-то свойство сходимости на множестве матриц, чтобы гарантировать, что бесконечное произведение определено.
Андрас Саламон
Вы работаете в конечном поле или целых числах с неограниченным ростом? = 1 случай интересен в его собственном праве. Используя целые числа от -100 до 100 в матрице 5x5, какую максимальную мощность вы можете получить, прежде чем она обнулится? k
Чад Brewbaker
2
@YuvalFilmus - я считаю, что это отличается от смертности. Пусть размеры матриц равны , так что у нас просто есть числа, и предположим, что A 0 = 01 . Смертельный? Да, потому что A 0 = 0 . Каждый продукт равен нулю? Нет: не продукт 1 1 1 . С другой стороны, если A 0 = 0 , A 1 = 0, то у вас есть последовательность, которая является смертельной, и каждый продукт равен нулю. A0=0,A1=1A0=0111A0=0,A1=0
Робинсон
1
@ChadBrewbaker - я думал, что элементы матрицы - просто целые числа. Я полагаю интересно с точки зрения: сколько операций вам нужно, чтобы проверить, что матрица нильпотентна? Обратите внимание, что если A нильпотентен, то легко увидеть, что A n = 0, где n - размерность A, так что, вероятно, вы могли бы решить ее, возведя в квадрат матрицы log n раз. Я понятия не имею, если это лучшее, что вы можете сделать. k=1AAn=0nAlogn
Робинсон
1
Интересно, что это только в: arxiv.org/abs/1306.0729 . Вместо того чтобы спрашивать, все ли продукты в конечном итоге равны нулю, они спрашивают, является ли какой-то продукт положительным Они показывают, что проблема NP-сложна (или, по крайней мере, это то, что я собираю из резюме).
Джошуа Грохов

Ответы:

17

Ваш вопрос эквивалентен ли порождает, A k нильпотентную алгебру, что, в свою очередь, эквивалентно тому, что каждый из A i является нильпотентным. Следовательно, оно не только разрешимо, но и за время ~ O ( n 2 ω ), где ω - показатель умножения матриц.A1,,AkAiO~(n2ω)ω

Позволять - ассоциативная алгебра, порожденная A i : то есть, взять все линейные комбинации A i и все их конечные произведения. A называетсянильпотентным,если существует некоторое N такое, что каждое произведение N элементов из A равно нулю.AAiAiANNA

Во-первых, давайте посмотрим, почему ваше условие подразумевает, что нильпотентен. Это следует из леммы Кёнига (компактности): каждая строка длины n над алфавитом { 1 , , k } очевидным образом соответствует произведению A 1 , , A k длины n . Рассмотрим бесконечное k -ное корневое дерево, узлы которого естественно биективно соответствуют строкам над { 1 , , k } . Рассмотрим поддерево TAn{1,,k}A1,,Aknk{1,,k}Tсостоящий из тех узлов, где соответствующее произведение отлично от нуля. Лемма Кенига гласит, что если T бесконечен, то он имеет бесконечный путь (точно нарушающий ваше свойство), следовательно, T конечен. Затем мы можем принять N быть максимальная длина любой строки в T . Таким образом, ваша собственность подразумевает, что A нильпотентен.AiTTNTA

Обратное также верно, поскольку каждый элемент является линейной комбинацией произведений A i .AAi

Далее отметим, что является подалгеброй из n × n матриц и, следовательно, конечномерна.An×n

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

Таким образом, чтобы решить вашу проблему, найдите базис для ассоциативной алгебры, порожденной (по версии линейной алгебры поиска в ширину), и проверьте, что каждая матрица в базисе нильпотентна. Верхняя граница ~ O ( п 2 ω ) происходит от решения системы линейных уравнений в пAiO~(n2ω) переменных в поискширину. Поскольку dim An 2, BFS не может длиться очень долго, и поскольку это n × n- матрицы, чтобы проверить, является ли матрица A нильпотентной, нужно только проверить, что A n =n2dimAn2n×nA .An=0

Джошуа Грохов
источник
2
Как вы думаете, есть способ показать это без использования каких-либо принципов выбора (даже такого слабого, как лемма Кенига, которая эквивалентна )? ACω
Андрас Саламон
2
@ Андрас: Я бы сказал, что это вопрос к Крису Конидису. Он изучал подобные вопросы в (вычислимой) обратной математике. Я спрошу его и укажу его здесь.
Джошуа Грохов
1
@robinson: 1) Да, проблема разрешима, фактически за время где ω - показатель умножения матриц. Это происходит из решения систем линейных уравнений над Q при выполнении поиска в линейной алгебре в ширину. 2) Да, обычное понятие базиса при просмотре матриц как векторов в Q n 2 (или над R или C ). O(n2ω)ωQQn2RC
Джошуа Грохов
1
Вы начинаете с базисом из A . Теперь вы пытаетесь найти матрицы и B B такое , что B или B не в пролете B . Если вам это удастся, добавьте продукт в B и продолжайте. В противном случае, умножение любой матрицы в диапазоне B на любое конечное произведение матриц в ABAAABBABBABBBA всегда заканчивается в промежутке . Поскольку размерность алгебры ограничена, то процесс заканчивается ( не более чем в п 2 шагов). Bn2
Юваль Фильмус
1
@robinson: Нет. Если алгебра нильпотентна, то каждый элемент алгебры нильпотентен. Поэтому, если вы найдете какой-либо ненильпотентный элемент, то алгебра не нильпотентна (и тогда в ваших матрицах есть бесконечные произведения, которые никогда не равны нулю).
Джошуа Грохов
6

В 1995 году я получил многочастичный алгоритм для этой (довольно тривиальной задачи) задачи, т. Е. Для проверки того, равен ли объединенный спектральный радиус (JSR) нулю, в 1995 году: http://en.wikipedia.org/wiki/Joint_spectral_radius

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

Леонид Гурвиц
источник
5

Задаваемый вами вопрос в точности эквивалентен решению, является ли объединенный спектральный радиус (JSR) набора матриц строго меньше единицы. Разрешимость этого вопроса остается открытой уже довольно давно. (В теории управления это эквивалентно разрешимости устойчивости коммутируемых линейных систем при произвольном переключении.)

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

Неразрешимость вышеупомянутого остается в силе, даже если у вас есть только 2 матрицы размером 47x47: см. Здесь .

На языке JSR вопрос тестирования "является ли JSR ?" неразрешима (см. ссылки выше), но разрешимость тестирования "равна JSR < 11<1 ?" открыт. Последний вопрос связан с так называемой «гипотезой рациональной конечности»: если гипотеза рациональной конечности верна, то вопрос, который вы задаете, разрешим.

Наконец, если P = NP, JSR не является аппроксимируемым за полиномиальное время (в точном смысле, определенном в этой статье ).

В результате один из ответов выше, который утверждает, что эффективный алгоритм должен быть ложным.

С положительной стороны, есть несколько алгоритмов (например, основанных на полуопределенном программировании) для аппроксимации JSR. Различные алгоритмы поставляются с разными гарантиями производительности. См., Например, следующее (бессовестно мной и моими коллегами - но см. Также ссылки там ).

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

Наконец, отличная книга на эту тему заключается в следующем .

Амир Али Ахмади
источник
Пожалуйста, ознакомьтесь с формальным изложением вопроса, который я задал - это не эквивалентно решению, является ли JSR строго меньше единицы. Вы, возможно, введены в заблуждение названием вопроса. Короче говоря, я спрашиваю о каждом произведении, равном нулю за конечное время , а не в асимптотическом смысле.
Робинсон
2
Тогда вопрос, который вы задаете, гораздо проще. Следующие условия эквивалентны: (i) определяемое вами условие (ii) все конечные произведения нильпотентны (iii) JSR = 0 (iv) все произведения длины n равны нулю (n - это размерность, это не зависит от числа матрицы к). Последнее условие, очевидно, подразумевает разрешимость, и если это так, вы можете проверить условие за полиномиальное время. См. Раздел 2.3.1 книги Юнгерса, ссылка на которую есть в конце моего поста. Мои извинения за то, что вы имели в виду асимптотическую версию. (Я был введен в заблуждение фразой «все продукты в конечном итоге равны нулю».)
Амир Али Ахмади
В каком случае @AmirAliAhmadi не охватывает ответ Джошуа Грохова?
Суреш Венкат
2
Мне кажется, что это так, с алгоритмом, отличным от того, что я имею в виду. (Опять же, мои извинения за то, что я подумал, что вопрос «все ли продукты сходятся к нулю» (т. Е. JSR <1?), Чья разрешимость открыта.) Однако есть несколько различий с ответом Джошуа. (1) В эквивалентности (i) - (iv) в моем предыдущем комментарии я не думаю, что нужно использовать лемму Кенига. (2) Я не понимаю, почему он принимает линейные комбинации матриц. (3) Ниже я копирую простой альтернативный алгоритм из Раздела 2.3.1 книги Юнгерса, приписываемый там Леониду Гурвицу.
Амир Али Ахмади
4
[продолжение сверху ...] Все, что нам нужно проверить, это то, что все произведения длины равны нулю, но есть k n таких матриц. Чтобы избежать этого, определим следующие матрицы итеративно: Х 0 = Я , Х J = Σ K я = 1 Т я Х J - 1 я . Затем, один имеет Й п = Σ 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 верхняя треугольная с нулями на диагонали. (Исходный вывод восстанавливается, если нам также разрешено умножать на степени транспонирования N. )An×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 ). Как и раньше, мы заключаем, чтоа=е
AN1=(0ab0de0gh)=(0ab0de00h).
AN1d=h=0
AN0=(abc0ef00i).
, и поэтому A является верхним треугольником с нулями на диагонали.a=e=i=0A

Если мы теперь рассмотрим вместо этого, то мы заключим, что A является нижней треугольной с нулями на диагонали. На самом деле, мы не получаем ничего нового от рассмотрения N т A . Следовательно, А = 0 . N2A,N1A,N0AANtAA=0

A1,,Aki1,[k]Ai1Aim=0mAiA1A2A2A1A1V1VtViA1A2A2A1dimVi>10ViA1=NA20t0A2A1tA1tA2

Резюмируя, свойство P имеет место тогда и только тогда, когда все матрицы нильпотентны и все они коммутируют.

Юваль Фильмус
источник
4
N2Ag=0N1Ad=h=0N0Aa=e=i=0AA
Действительно, этот ответ не верен. Если этого не сделает никто другой, я опубликую контрпример к лемме и последнему утверждению, когда вернусь сегодня домой.
Робинсон
5
Как обычно, когда что-то утверждается, но не доказано, доказательство не проходит. Ну что ж ...
Юваль Фильмус
1
Вот пример, который я имел в виду:
A0знак равно(010001000),A1знак равно(011000000)
Можно проверить, что каждое произведение достаточной длины этих двух матриц равно нулю, но они не коммутируют, а второе не равно нулю.
Робинсон