Kiểm tra xem tất cả các sản phẩm của một tập hợp ma trận có bằng không


19

Tôi quan tâm đến vấn đề sau: các ma trận nguyên đã cho A1,A2,,Ak quyết định xem mọi sản phẩm vô hạn của các ma trận này cuối cùng có bằng ma trận không.

Điều này có nghĩa chính xác như những gì bạn nghĩ: chúng ta sẽ nói tập hợp các ma trận {A1,,Ak} có đặc tính là tất cả các sản phẩm của nó cuối cùng bằng 0 nếu không tồn tại một chuỗi vô hạn i1,i2,i3 , tất cả trong {1,,k} , sao cho

Ai1Ai2Ail0
cho tất cả các l .

Có vấn đề quyết định liệu mọi sản phẩm cuối cùng bằng không được nghiên cứu trước đây không? Là nó quyết định?

Có vẻ như nó có thể liên quan đến tỷ lệ tử vong ma trận, điều này là không thể giải quyết được, nhưng tôi không thấy một kết nối rõ ràng.


Bạn cần một số loại thuộc tính hội tụ trên tập hợp các ma trận để đảm bảo rằng sản phẩm vô hạn được xác định.
András Salamon

Bạn đang hoạt động trong một lĩnh vực hữu hạn hoặc số nguyên với sự tăng trưởng không giới hạn? Trường hợp = 1 là thú vị theo đúng nghĩa của nó. Sử dụng các số nguyên từ -100 đến 100 trong ma trận 5x5, công suất cao nhất bạn có thể đạt được trước khi nó biến mất là bao nhiêu? k
Chad Brewbaker

2
@YuvalFilmus - Tôi tin rằng nó khác với tỷ lệ tử vong. Đặt kích thước của ma trận là , sao cho chúng ta chỉ có số và giả sử A 0 = 0 , A 1 = 1 . Người trần thế? Có vì A 0 = 0 . Mọi sản phẩm đều bằng không? Không: không phải là sản phẩm 1 1 1 . Mặt khác, nếu A 0 = 0 , A 1 = 0 thì bạn có một chuỗi là cả hai và mọi sản phẩm đều bằng không. 1A0=0,A1=1A0=0111A0=0,A1=0
robinson

1
@ChadBrewbaker - Tôi đã nghĩ rằng các mục của ma trận chỉ là số nguyên. Tôi cho rằng là thú vị theo quan điểm: bạn cần bao nhiêu thao tác để kiểm tra ma trận đó là nilpotent? Lưu ý rằng nếu A là nilpotent, thì dễ dàng thấy rằng A n = 0 trong đó n là thứ nguyên của A nên có lẽ bạn có thể giải quyết nó bằng cách bình phương ma trận log n lần. Tôi không biết nếu đây là điều tốt nhất bạn có thể làm. k=1AAn=0nAlogn
robinson

1
Thật thú vị, điều này chỉ trong: arxiv.org/abs/1306.0729 . Thay vì hỏi liệu tất cả các sản phẩm cuối cùng có bằng không, họ hỏi liệu một số sản phẩm cuối cùng có tích cực hay không. Họ chỉ ra rằng vấn đề là NP-hard (hoặc ít nhất đó là những gì tôi thu thập được từ bản tóm tắt).
Joshua Grochow

Câu trả lời:


17

Câu hỏi của bạn là tương đương với việc tạo ra một đại số lũy linh , mà lần lượt tương đương với mỗi A i là lũy linh . Do đó không chỉ là nó decidable, nhưng trong ~ O ( n 2 ω ) thời gian nơi ω là số mũ của nhân ma trận.A1,,AkAiO~(n2ω)ω

Đặt là đại số kết hợp được tạo bởi A i : nghĩa là lấy tất cả các kết hợp tuyến tính của A i và tất cả các sản phẩm hữu hạn của chúng. A được gọi là nilpotent nếu có một số N sao cho mọi sản phẩm của N phần tử của A bằng không.AAiAiANNA

Trước tiên, hãy xem lý do tại sao điều kiện của bạn ngụ ý rằng là không có giá trị. Điều này sau từ Konig của Bổ đề (chặt): mỗi chuỗi có độ dài n qua bảng chữ cái { 1 , ... , k } tương ứng với một sản phẩm của A 1 , ... , A k có độ dài n một cách rõ ràng. Hãy xem xét vô hạn k -ary cây bén rễ, có các nút là một cách tự nhiên trong thư song ánh với chuỗi trên { 1 , ... , k } . Hãy xem xét cây con TAn{1,,k}A1,,Aknk{1,,k}Tbao gồm các nút trong đó sản phẩm tương ứng của là khác không. Bổ đề của Konig nói rằng nếu T là vô hạn, thì nó có một đường dẫn vô hạn (vi phạm chính xác tài sản của bạn), do đó T là hữu hạn. Sau đó chúng tôi có thể mất N là chiều dài tối đa của bất kỳ chuỗi trong T . Vì vậy, tài sản của bạn ngụ ý rằng A là nilpotent.AiTTNTA

Điều ngược lại cũng đúng, vì mọi yếu tố của là sự kết hợp tuyến tính của các sản phẩm của A i .AAi

Tiếp theo, lưu ý rằng là một subalgebra của n × n ma trận, và do đó là hữu hạn chiều.An×n

Cuối cùng: một đại số liên kết chiều hữu hạn trong số 0 đặc trưng có cơ sở của các phần tử nilpotent (đi lại hay không - đây là phần mâu thuẫn với câu trả lời của Yuval) nếu nó là nilpotent (xem, ví dụ, ở đây ).

Do đó, để giải quyết vấn đề của bạn, hãy tìm một cơ sở cho đại số kết hợp được tạo bởi (theo phiên bản đại số tuyến tính của tìm kiếm đầu tiên) và kiểm tra xem mọi ma trận trong cơ sở có phải là không. Giới hạn trên ˜ O ( n 2 ω ) xuất phát từ việc giải hệ phương trình tuyến tính theo n 2 biến trong tìm kiếm đầu tiên. Như dim Mộtn 2 BFS không thể cuối cùng rất dài, và vì đây là những n × n ma trận để kiểm tra xem một ma trận A là nhu cầu một lũy linh chỉ kiểm tra xem Một n =AiO~(n2ω)n2dimAn2n×nA .An=0


2
Bạn có nghĩ rằng đó là một cách để thể hiện điều này mà không sử dụng bất kỳ nguyên tắc lựa chọn (dù chỉ một yếu như Bổ đề König, mà là tương đương với )? ACω
András Salamon

2
@Andras: Tôi muốn nói rằng đó là một câu hỏi cho Chris Conidis. Anh ấy đã nghiên cứu những câu hỏi như thế trong toán học ngược (tính toán). Tôi sẽ hỏi anh ấy và chỉ anh ấy ở đây.
Joshua Grochow

1
@robinson: 1) Vâng, vấn đề là decidable, trên thực tế trong thời gian nơi ω là số mũ của nhân ma trận. Điều này xuất phát từ việc giải các hệ phương trình tuyến tính trên Q khi thực hiện tìm kiếm đầu tiên theo đại số tuyến tính. 2) Có, khái niệm thông thường về cơ sở khi xem ma trận dưới dạng vectơ trong Q n 2 (hoặc trên R hoặc C ). O(n2ω)ωQQn2RC
Joshua Grochow

1
Bạn bắt đầu với một cơ sở của Một . Bây giờ bạn cố gắng tìm ma trận A AB BA B hoặc B Một không nằm trong khoảng thời gian B . Nếu bạn thành công, thêm sản phẩm vào B và tiếp tục. Nếu không, nhân bất kỳ ma trận trong khoảng thời gian B bằng bất kỳ sản phẩm hữu hạn của ma trận trong Một luôn luôn kết thúc trong khoảng thời gian B . Vì kích thước của đại số bị giới hạn, quá trình kết thúc (trong tối đa n 2 bước). BAAABBABBABBBABn2
Yuval Filmus

1
@robinson: Không. Nếu đại số là nilpotent, thì mọi yếu tố của đại số là nilpotent. Vì vậy, nếu bạn tìm thấy bất kỳ phần tử không có giá trị nào thì đại số không phải là số không (và sau đó có các sản phẩm vô hạn của ma trận của bạn không bao giờ bằng 0).
Joshua Grochow

6

Tôi đã nhận được một thuật toán đa thời gian cho vấn đề này (vấn đề khá nhỏ), tức là để kiểm tra xem bán kính quang phổ chung (JSR) có bằng 0 hay không, vào năm 1995: http://en.wikipedia.org/wiki/Joint_spectral_radius

Câu chuyện đằng sau thuật toán đại khái như sau: Blondel và Tsitsiklis đã tuyên bố sai rằng đối với các ma trận boolean kiểm tra xem JSR <1 có phải là NP-HARD hay không. Đối với bất kỳ tập hợp ma trận nguyên nào, JSR là ether 0 hoặc lớn hơn hoặc bằng 1. Vì vậy, ví dụ đối với câu lệnh của họ là thuật toán của tôi (xem phần sai của bài báo của họ). Đạo đức chính: tham khảo Wikipedia trước!


5

Câu hỏi bạn đang hỏi hoàn toàn tương đương với việc quyết định xem bán kính quang phổ chung (JSR) của tập hợp ma trận có hoàn toàn nhỏ hơn một không. Sự quyết định của câu hỏi này vẫn còn mở cho đến nay. (Trong lý thuyết điều khiển, điều này tương đương với tính ổn định của tính ổn định của các hệ thống tuyến tính được chuyển đổi theo chuyển đổi tùy ý.)

Biến thể sau đây của câu hỏi của bạn được biết là không thể giải quyết được: Đưa ra một tập hợp các ma trận vuông hữu hạn, quyết định xem tất cả các sản phẩm có còn giới hạn hay không; xem tại đây .

Tính không ổn định của các điều trên vẫn có hiệu lực ngay cả khi bạn chỉ có 2 ma trận có kích thước 47x47: xem tại đây .

Trong ngôn ngữ JSR, câu hỏi kiểm tra "là JSR ?" là không thể giải quyết được (xem các tài liệu tham khảo ở trên), nhưng tính quyết định của thử nghiệm "là JSR < 1 ?" đang mở Câu hỏi thứ hai liên quan đến cái gọi là "phỏng đoán tính hữu hạn hợp lý": Nếu phỏng đoán về tính hữu hạn hợp lý là đúng, thì câu hỏi bạn đang hỏi là có thể quyết định được.1<1

Cuối cùng, trừ khi P = NP, JSR không thể tính gần đúng theo thời gian đa thức (theo nghĩa chính xác được xác định trong bài viết này ).

Kết quả là, một trong những câu trả lời ở trên tuyên bố thuật toán hiệu quả phải sai.

Về mặt tích cực, có một số thuật toán (ví dụ dựa trên lập trình semidefinite) để xấp xỉ JSR. Các thuật toán khác nhau đi kèm với đảm bảo hiệu suất khác nhau. Xem ví dụ như sau (không biết xấu hổ bởi bản thân tôi và các đồng nghiệp của tôi - nhưng cũng xem các tài liệu tham khảo trong đó ).

Trong một số trường hợp đặc biệt, câu hỏi bạn đang hỏi là thời gian đa thức có thể quyết định. Ví dụ, khi các ma trận đối xứng, hoặc xếp hạng một hoặc nếu chúng đi lại.

Cuối cùng, một cuốn sách tuyệt vời về chủ đề này là như sau .


Vui lòng đọc tuyên bố chính thức của câu hỏi tôi đã hỏi - nó không tương đương với việc quyết định liệu JSR có hoàn toàn ít hơn một không. Bạn, có lẽ, bị đánh lừa bởi tiêu đề của câu hỏi. Nói tóm lại, tôi đang hỏi về mọi sản phẩm bằng 0 trong thời gian hữu hạn , thay vì theo nghĩa không có triệu chứng.
robinson

2
Sau đó, câu hỏi bạn đang hỏi đơn giản hơn nhiều. Các giá trị sau là tương đương: (i) Điều kiện bạn xác định (ii) Tất cả các sản phẩm hữu hạn là nilpotent (iii) JSR = 0 (iv) Tất cả các sản phẩm có độ dài n đều bằng 0 (n là kích thước, điều này không phụ thuộc vào số lượng ma trận k). Điều kiện cuối cùng rõ ràng ngụ ý tính quyết định, và nếu thực tế bạn có thể kiểm tra điều kiện trong thời gian đa thức. Xem Phần 2.3.1 của cuốn sách của Jungers được liên kết ở cuối bài viết của tôi. Tôi xin lỗi vì nghĩ rằng bạn có nghĩa là phiên bản tiệm cận. (Tôi đã bị nhầm lẫn bởi cụm từ "tất cả các sản phẩm cuối cùng bằng không".)
Amir Ali Ahmadi

Trong trường hợp nào, @AmirAliAhmadi không trả lời câu trả lời của Joshua Grochow?
Suresh Venkat

2
Dường như với tôi điều đó, với một thuật toán khác với những gì tôi nghĩ. (Một lần nữa, tôi xin lỗi vì nghĩ rằng câu hỏi là "tất cả các sản phẩm đều hội tụ về không" (nghĩa là, JSR <1?) Có khả năng quyết định được mở.) Có một vài điểm khác biệt với câu trả lời của Joshua. (1) Tương đương với (i) - (iv) trong nhận xét trước đây của tôi, tôi không nghĩ Bổ đề của Konig cần được sử dụng. (2) Tôi không hiểu tại sao anh ta lại sử dụng kết hợp tuyến tính của ma trận. (3) Tôi sao chép bên dưới một thuật toán thay thế đơn giản từ Phần 2.3.1 của cuốn sách của Jungers, được quy cho Leonid Gurvits.
Amir Ali Ahmadi

4
[tiếp tục từ phía trên ...] Tất cả những gì chúng ta cần kiểm tra là liệu tất cả các sản phẩm có độ dài có bằng không, nhưng có k n ma trận như vậy không. Để tránh điều này, hãy xác định các ma trận sau lặp lại: X 0 = I , X j = k i = 1 Ankn. Sau đó, người ta cóXn=ΣMột sản phẩm có độ dài nMộtTMột. Ma trận này có thể được tính bởiknX0=I, Xj=i=1kAiTXj1AiXn=A product of length nATAknphép nhân ma trận và bằng 0 khi và chỉ khi tất cả các sản phẩm có độ dài bằng không. n
Amir Ali Ahmadi

0

Chỉnh sửa: Câu trả lời này không may là không chính xác. Các lỗi được đánh dấu dưới đây. Đối số không hoạt động nếu chúng ta được phép hoán vị các ma trận.

Chúng tôi bắt đầu bằng cách chứng minh một bổ đề.

Bổ đề. Hãy là một n × n ma trận và để cho Nn × n ma trận với những người trên đường chéo thứ yếu. Nếu A N tN t A là nilpotent cho tất cả t 0 thì A = 0 . Kết luận đúng: A là tam giác trên có các số 0 trên đường chéo. (Kết luận ban đầu được phục hồi nếu chúng ta cũng được phép nhân với quyền hạn chuyển vị của N. )An×nNn×nANtNtAt0A=0AN

Bằng chứng. Giả sử ví dụ và viết A = ( a b c d e f g h i ) ,n=3 Chúng ta bắt đầu bằng cách tính A N 2 : A N 2 = ( 0 0 a 0 0 d 0 0 g ) . Ma trận này ở dạng tam giác, và vì vậy nếu A N 2 là nilpotent thì g = 0 . Tiếp tục với A N 1 : A N 1 = ( 0

A=(abcdefghi),N=(010001000).
AN2
AN2=(00a00d00g).
AN2g=0AN1
AN1=(0ab0de0gh)=(0ab0de00h).
Một lần nữa, ma trận ở dạng tam giác, và vì vậy nếu là nilpotent thì d = h = 0 . Tiếp tục, A N 0 =AN1d=h=0 Như trước đây, chúng tôi kết luận rằnga=e
AN0=(abc0ef00i).
a=e=i=0A

Nếu bây giờ chúng ta xem xét N2A,N1A,N0AANtAA=0

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

Tóm tắt, tài sản P giữ iff tất cả các ma trận là nilpotent và tất cả chúng đều đi lại.


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

Thật vậy, câu trả lời này là không chính xác. Nếu không có ai làm, tôi sẽ đăng một ví dụ phản biện cho cả bổ đề và khẳng định cuối cùng khi tôi về nhà vào ngày hôm nay.
robinson

5
Như thường lệ, đó là khi một cái gì đó được tuyên bố nhưng không chứng minh rằng bằng chứng thất bại. Ôi
chà

1
Vì vậy, ví dụ tôi có trong đầu là:
A0=(010001000),A1=(011000000)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.