§1 循环矩阵的定义及多项式表示
设 K 为数域. 任取 K 中 n 个数 a1,a2,⋯,an,下列矩阵称为 K 上的 n 阶循环矩阵:
A=⎛⎜
⎜
⎜
⎜
⎜
⎜
⎜⎝a1a2a3⋯anana1a2⋯an−1an−1ana1⋯an−2⋮⋮⋮⋮a2a3a4⋯a1⎞⎟
⎟
⎟
⎟
⎟
⎟
⎟⎠.(1)
取 a2=1, a1=a3=⋯=an=0, 则可得到如下基础循环矩阵:
J=⎛⎜
⎜
⎜
⎜
⎜
⎜
⎜⎝010⋯0001⋯0⋮⋮⋮⋮000⋯1100⋯0⎞⎟
⎟
⎟
⎟
⎟
⎟
⎟⎠.(2)
由复旦高代白皮书的例 2.1 可知, Jk=(0In−kIk0)(1≤k≤n), 从而 A=a1In+a2J+a3J2+⋯+anJn−1.(3) 令 g(x)=a1+a2x+a3x2+⋯+anxn−1, 则 g(x) 是 K 上次数不超过 n−1 的多项式, 使得 A=g(J), 这就是循环矩阵关于基础循环矩阵的多项式表示.
记 Cn(K) 为 K 上所有 n 阶循环矩阵构成的集合, 容易验证: 在矩阵的加法和数乘下, Cn(K) 是一个 n 维线性空间, 它的一组基为 {In,J,⋯,Jn−1}. 再任取循环矩阵 B=h(J), 其中 h(x) 是 K 上次数不超过 n−1 的多项式, 则利用多项式乘法和 Jn=In 可知 AB=g(J)h(J) 仍然是一个循环矩阵 (参考高代白皮书的例 2.12). 因此, Cn(K) 是 K 上的 n 维交换代数, 同构于 K[x]/(xn−1).
§2 循环矩阵的性质
下面将依次研究循环矩阵的特征值、特征向量和可对角化等性质, 由此可得循环矩阵的行列式、秩和非异性等信息. 这些内容包含在高代白皮书的例 2.52, 例 6.9, 例 6.32 和例 6.39 的推论中.
容易计算出基础循环矩阵 J 的特征多项式 |λIn−J|=λn−1, 从而 J 在复数域中有 n 个不同的特征值, 即 n 次单位根 ωk=cos2kπn+isin2kπn(0≤k≤n−1), 因此 J 在复数域上可对角化. 经计算可知, 特征值 ωk 的特征向量是 αk=(1,ωk,ω2k,⋯,ωn−1k)′. 将这些特征向量按列分块拼成一个矩阵: P=⎛⎜
⎜
⎜
⎜
⎜
⎜
⎜
⎜⎝111⋯11ω1ω2⋯ωn−11ω21ω22⋯ω2n−1⋮⋮⋮⋮1ωn−11ωn−12⋯ωn−1n−1⎞⎟
⎟
⎟
⎟
⎟
⎟
⎟
⎟⎠,(4) 则由 Vandermonde 行列式或特征值特征向量的性质可知, P 是非异阵, 并且满足 P−1JP=diag{1,ω1,ω2,⋯,ωn−1},(5) 从而 P−1AP=P−1g(J)P=g(P−1JP)=diag{g(1),g(ω1),g(ω2),⋯,g(ωn−1)}.(6) 由 (6) 式可知循环矩阵 A=g(J) 具有如下基本性质:
(P1) A 的特征值为 g(1),g(ω1),g(ω2),⋯,g(ωn−1), 对应的特征向量是 α0,α1,α2,⋯,αn−1;
(P2) |A|=g(1)g(ω1)g(ω2)⋯g(ωn−1);
(P3) 循环矩阵 A 可对角化;
(P4) r(A)=♯{0≤k≤n−1∣g(ωk)≠0};
(P5) A 非异当且仅当 g(ωk)≠0(0≤k≤n−1), 也即当且仅当 (λn−1,g(λ))=1.
定理 1 n 阶复循环矩阵全体 Cn(C) 与 n 阶复对角矩阵全体 Dn(C) 之间存在一个自然的代数同构 ξ.
证明 n 阶复对角矩阵全体在矩阵的加法、数乘和乘法下成为复数域上的代数. 我们通过 (6) 式来定义映射 ξ, 即 ξ:Cn(C)→Dn(C) 定义为 ξ(A)=P−1AP=diag{g(1),g(ω1),g(ω2),⋯,g(ωn−1)}. 容易验证 ξ 保持矩阵的加法、数乘和乘法, 从而是一个代数同态. 对任一 Λ=diag{λ0,λ1,⋯,λn−1}, 利用 Lagrange 插值公式可知, 存在次数不超过 n−1 的复系数多项式 h(λ), 使得 h(ωk)=λk (0≤k≤n−1). 令 B=h(J), 则 ξ(B)=Λ, 即 ξ 是满射. 又 dimCn(C)=dimDn(C)=n, 从而 ξ 是一个线性同构, 从而是代数同构. □
推论 2 n 阶复矩阵 B 可对角化的充要条件是 B 相似于某个循环矩阵.
证明 由定理 1 中的代数同构 ξ 是通过相似变换实现的即得结论. □
推论 3 设 A∈Cn(K), 则 A∗ 也是循环矩阵.
证法 1 由 (6) 式可知 P∗A∗(P∗)−1=(P−1AP)∗=diag{g(1),g(ω1),g(ω2),⋯,g(ωn−1)}∗ 仍为对角阵. 注意到 P∗=|P|P−1, 故上述等式可化为 P−1A∗P=(P−1AP)∗=diag{g(1),g(ω1),g(ω2),⋯,g(ωn−1)}∗. 因此由定理 1 可知, A∗=ξ−1(ξ(A)∗) 也是循环矩阵.
证法 2 由高代白皮书的例 6.62 可知, 存在多项式 h(λ)∈K[λ], 使得 A∗=h(A). 设 A=g(J), 则 A∗=h(A)=h(g(J)) 仍为 J 的多项式, 从而是循环矩阵.
证法 3 设 A=(aij) 的代数余子式为 Aij(1≤i,j≤n), 要证 A∗ 是循环矩阵, 根据定义只要证明: 对任意的 1≤i,j≤n, Aij=Ai+1,j+1 成立即可, 其中若 i+1>n 或 j+1>n, 则需要把 i+1 或 j+1 换成 i+1−n 或 j+1−n. 证明 Aij=Ai+1,j+1 只需要简单的行列式计算即可. 比如先把 Aij 的最后一列经过 n−2 次相邻对换换至第一列, 再把得到行列式的最后一行经过 n−2 次相邻对换换至第一行, 最后就能得到 Ai+1,j+1. 我们把验证的细节留给读者完成. □
推论 4 若 A∈Cn(K) 是非异阵, 则 A−1 也是循环矩阵.
证法 1 由定理 1 可知, A−1=ξ−1(ξ(A)−1) 也是循环矩阵.
证法 2 由 Cayley-Hamilton 定理可知, 存在多项式 h(λ)∈K[λ], 使得 A−1=h(A) (参考高代白皮书的例 6.61). 设 A=g(J), 则 A−1=h(A)=h(g(J)) 仍为 J 的多项式, 从而是循环矩阵.
证法 3 设 A=g(J), 则由 A 非异可知 (λn−1,g(λ))=1. 由互素多项式的性质可知, 存在 u(λ),v(λ)∈K[λ], 使得 (λn−1)u(λ)+g(λ)v(λ)=1. 令 λ=J, 代入上式可得 g(J)v(J)=In, 从而 A−1=v(J) 也是循环矩阵.
证法 4 由 A−1=1|A|A∗ 以及推论 3 即得结论. □
推论 5 K 上的 n 阶非异循环矩阵全体 GCn(K) 在矩阵乘法下成为一个 Abel 群.
推论 6 设 A 为 n 阶复循环矩阵, f(z) 是收敛半径等于 +∞ 的复幂级数, 则 f(A) 也是循环矩阵.
证法 1 注意到 f(P−1AP)=P−1f(A)P, 从而 f(A)=ξ−1(f(ξ(A))) 也是循环矩阵.
证法 2 由 15 级高代 II 每周一题第 15 题可知, 存在多项式 h(z), 使得 f(A)=h(A) 也是循环矩阵.
证法 3 设 f(z)=∞∑i=0aizi, fp(z)=p∑i=0aizi 为 f(z) 的部分和多项式. 设 A=a1In+a2J+a3J2+⋯+anJn−1, 则 fp(A)=b(p)1In+b(p)2J+b(p)3J2+⋯+b(p)nJn−1. 由于矩阵序列 limp→∞fp(A) 收敛到 f(A), 故每个数列 limp→∞b(p)i 都收敛. 若设 limp→∞b(p)i=bi(1≤i≤n), 则 f(A)=limp→∞fp(A)=b1In+b2J+b3J2+⋯+bnJn−1 仍为循环矩阵. □
§3 循环矩阵的应用
下面我们给出循环矩阵的一个应用.
命题 7 设有 K 中 n2(n≥2) 个不同的数, 则存在一个全排列, 记为 a1,⋯,an2, 使得 ∣∣
∣
∣
∣
∣∣a1a2⋯anan+1an+2⋯a2n⋮⋮⋮an2−n+1an2−n+2⋯an2∣∣
∣
∣
∣
∣∣≠0.
证明 对 n 进行归纳. n=2 时, 先取到 a1,a2, 使得 a1+a2≠0, 从而 ∣∣∣a1a2a2a1∣∣∣=(a1−a2)(a1+a2)≠0, 于是 B={(a1,a2),(a2,a1)} 是 K2 的一组基. 注意到 (a3,a4)≠0, 故由基扩张定理, 必可从基 B 中选取一个基向量, 不妨设为 (a1,a2), 使得 {(a1,a2),(a3,a4)} 成为 K2 的一组新基, 因此 ∣∣∣a1a2a3a4∣∣∣≠0. 设 n−1 时结论成立, 现证 n 的情形.
证法 1 先取到 a1,a2,⋯,an, 使得 a1+a2ωk+⋯+anωn−1k≠0 对 0≤k≤n−1 都成立. 这一定能做到, 比如先选定 a2,⋯,an, 则不满足上述条件的 a1 最多只有 n 个, 从而可取到满足上述条件的 a1. 由循环矩阵的性质可知, (1) 式中的循环矩阵 A 是非异阵, 特别地, A 的 n 个行向量 {β1,β2,⋯,βn} 是 Kn 的一组基. 由归纳假设, 可从剩下 n2−n 个数中选出 (n−1)2 个数的全排列, 使得 ∣∣
∣
∣∣an+2⋯a2n⋮⋮an2−n+2⋯an2∣∣
∣
∣∣≠0, 后面随便选取 an+1,⋯,an2−n+1, 均可使 n−1 个行向量 (an+1,an+2,⋯,a2n), ⋯, (an2−n+1,an2−n+2,⋯,an2) 线性无关 (参考复旦高代教材的习题 3.4.9). 因此由基扩张定理, 必可从基 {β1,β2,⋯,βn} 中选出一个基向量, 不妨设为 β1, 使得 {(a1,a2,⋯,an), (an+1,an+2,⋯,a2n), ⋯, (an2−n+1,an2−n+2,⋯,an2)} 构成 Kn 的一组新基, 从而结论得证.
证法 2 用反证法, 设对 n2 个数的所有全排列, 对应的行列式都等于零, 我们来推出矛盾. 先取到 a1,a2,⋯,an, 使得 a1+a2+⋯+an≠0, 再由归纳假设, 不妨设取到的行列式中, a1 的代数余子式 A1≠0. 设其余元素 ai 的代数余子式为 Ai(2≤i≤n), 因此 a1A1+a2A2+⋯+anAn=0. 在取到的行列式中, 对换第一行的 a1 与 ai(2≤i≤n), 其余 n2−2 个元素保持不变, 则有 aiA1+⋯+a1Ai+⋯+anAn=0. 由此可得 (a1−ai)(A1−Ai)=0, 但 a1≠ai, 从而 A1=Ai(2≤i≤n). 最后, 0=a1A1+a2A2+⋯+anAn=(a1+a2+⋯+an)A1≠0, 矛盾. □
注 1 命题 7 的证法 1 是构造性的, 利用这一证法可以给出满足条件的全排列的总个数的一个粗略估计. 命题 7 的证法 2 由复旦数学学院 16 级本科生朱民哲提供.
注 2 本文的主要结论还可以推广到特征零的域或者特征 p>0 的域 (要求 p∤n) 及其分裂域或代数闭包上. 另外, 高代白皮书第二章的解答题 13 还给出了 b-循环矩阵的推广. 有兴趣的读者可以自行学习和验证这些结论.
参考文献
[1] 高代教材: 姚慕生, 吴泉水, 谢启鸿 编著, 高等代数学 (第三版), 复旦大学出版社, 2014.
[2] 高代白皮书: 姚慕生, 谢启鸿 编著, 学习方法指导书: 高等代数 (第三版), 复旦大学出版社, 2015.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决