2014-06-16 29 views
1

我有一個大小爲128x128的矩陣。每個條目是一個二進制字段元素(在我的使用情況下,只有0和1)。我嘗試在matlab中反轉這個矩陣。我在matlab中找到了一些有限域矩陣求逆的函數,這裏有http://www.mathworks.com/help/comm/galois-field-computations.html創建並反轉大型伽羅瓦域矩陣

但是,這些內置函數僅支持高達16x16的矩陣大小。任何其他方法可以克服這個限制?我開放給其他工具,如Python或C/C++。

如果你想試試你的方法,這裏是測試矩陣及其逆。

矩陣A [0,0,0,1,0,0,1,0; 1,1,1,0,1,0,1,1; 1,1,1,0,1, 1,0,1; 0,1,0,0,0,0,1,0; 0,1,1,1,1,1,1,0; 1,0,1,1,0,0, 1,0; 0,0,1,0,0,0,1,0; 0,0,0,0,0,1,0,0]

Matrix A^-1 [1,1 ,1,0,0,1,1,1; 0,1,1,1,0,0,0,1; 0,1,1,0,0,0,1,1; 1,1,1- ,0,0,0,0,1; 1,0,0,1,1,0,1,1; 0,0,0,0,0,0,0,1; 0,1,1,0 ,0,0,0,1; 0,1,0,0,1,1,1,1]

回答

1

看一看SAGE www.sagemath.org

+0

你可以更具體一點嗎? – drdot

+0

Sage支持素數字段和擴展字段:http://www.sagemath.org/doc/reference/rings_standard/sage/rings/finite_rings/constructor.html 這兩個類都可以用作矩陣元素,因此矩陣反演(在有限的領域)可以這樣進行。 – Jonas