月度归档:2018年01月

同伴矩阵的方幂

最近在研究一个矩阵的方幂,这个矩阵如下

事实上这个矩阵和下面这个多项式存在一一对应的关系,

使用Mathematica计算$A^k$, 代码如下:
<< FiniteFields` Assuming[Element[p, Primes] && Element[n, Integers] && n > 0,
F = GF[p, n];
A = {{0, 0, -a[0]}, {1, 0, -a[1]}, {0, 1, -a[2]}};
Print[MatrixForm[
Simplify[MatrixPower[A, k],
Element[a[0], F] && Element[a[1], F] && Element[a[2], F] &&
Element[k, Integers] && k > 1]]];
];

计算结果为:

显然在化简方面,Mathematica并没有充分利用$a_0$,$a_1$,$a_2$是有限域上的元素的特点,所以这个表达式还是挺复杂的,需要自己进一步做化简. 最终的目标是为了计算$det(A^k-I)$.

突然灵机一动, 改动了一下Mathematica的代码如下:
<< FiniteFields` Assuming[Element[p, Primes] && Element[n, Integers] && n > 0,
F = GF[p, n];
A = {{0, 0, -a[0]}, {1, 0, -a[1]}, {0, 1, -a[2]}};
Print[MatrixForm[
Simplify[Det[MatrixPower[A, k] - IdentityMatrix[3]],
Element[a[0], F] && Element[a[1], F] && Element[a[2], F] &&
Element[k, Integers] && k > 1]]];
];

结果为:

其中$x_1$,$x_2$,$x_3$是方程$f(x)$的三个根.