和角公式证明
从上一篇文章 https://www.luogu.com.cn/article/a0rd1bxx 的线性代数大学习中,我们知道旋转可以视为乘以一个矩阵。
那么,记
设旋转
显然有旋转
用结合律,就有
既然对任意向量两个矩阵的变换结果相同,那么它们肯定是相同的。有
这样,由于我们知道
计算过程如下:
根据矩阵乘法法则(第一行乘以第一列,第一行乘以第二列……):
整理一下:
因为
-
\cos(\alpha+\beta) = \cos\alpha\cos\beta - \sin\alpha\sin\beta -
\sin(\alpha+\beta) = \sin\alpha\cos\beta + \cos\alpha\sin\beta
发现了吗?这样得到的结果与和角公式是相同的,于是我们就证明了和角公式。
笑点解析:本文使用了循环论证的手法。
当然,本文也可以不仅仅是循环论证。我们考虑用比和角公式更基本的方法找出旋转矩阵,这样我们的证明就是成立的了。
这是最纯粹的几何方法。我们不预设任何三角函数知识,而是从旋转这个变换本身的性质出发。
-
定义旋转:我们定义一个逆时针旋转
\theta 角的变换R_\theta 是一个线性变换,它必须满足以下几个几何性质:- 保长度:旋转一个向量,其长度不变。
||R_\theta \mathbf{v}|| = ||\mathbf{v}|| . - 保定向:旋转不会把平面“翻转”过来(比如变成镜像)。在线性代数里,这意味着变换矩阵的行列式为 +1。
- 变换基向量:我们来看看它如何作用于基向量
\mathbf{i} = (1, 0) 和\mathbf{j} = (0, 1) 。- 将
\mathbf{i}=(1,0) 旋转\theta 角,根据单位圆的定义,得到的新向量就是(\cos\theta, \sin\theta) 。注意:这里的\cos\theta 和\sin\theta 仅仅是单位圆上一个点的坐标的记号,我们暂时不知道它们的任何性质(比如和角公式)。 - 将
\mathbf{j}=(0,1) 旋转\theta 角,得到的新向量是(-\sin\theta, \cos\theta) 。
- 将
- 保长度:旋转一个向量,其长度不变。
-
构造矩阵:线性变换的矩阵,其第一列就是变换后的
\mathbf{i} ,第二列就是变换后的\mathbf{j} 。所以,我们直接得到了旋转矩阵:R_\theta = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} 这个矩阵的推导过程完全没有使用和角公式。它仅仅是基于“旋转”这个变换作用在基向量上的几何结果。
这说明了,旋转的几何性质和代数性质是相同的。我们可以选择几何方法或者代数方法定义它,然后推导出它的全部性质,不会有什么差别。
然而,你可以发现,我们的文章仍然存在诸多漏洞。
我们假设了旋转是一种线性变换。这是一个先验知识,其实问题不大,毕竟我们总是需要一些公理。
然而,在使用了这个先验知识之后,我们又诉诸了几何直觉:两个基向量旋转的结果,与“单位圆上与原点连线和 x 轴成一定夹角的点的坐标”有关,这本质上已经诉诸了几何直觉,这就要求我们证明几何直觉和“线性变换”之间是自洽的。
更严重的是,我们假设“旋转 a+b,等价于旋转 a 再旋转 b”,对于一般的线性变换,这是不成立的(“旋转 a+b”对于一般的线性变换根本不知道你在说什么)。而这一条里面很可能已经蕴含了和角公式。
能不能救呢?可以的。
疑虑一:几何直觉与“线性变换”公理的自洽性
线性变换的定义是:
T(\mathbf{u} + \mathbf{v}) = T(\mathbf{u}) + T(\mathbf{v}) (可加性)- 几何直觉:向量加法
\mathbf{u} + \mathbf{v} 遵循平行四边形法则。\mathbf{u} 和\mathbf{v} 是平行四边形的两条边,\mathbf{u} + \mathbf{v} 是对角线。 - 旋转操作:旋转是一种刚体变换。它会移动和旋转图形,但不会改变图形的形状和大小。
- 自洽性证明:当我们旋转整个平行四边形时,它仍然是一个平行四边形。原来的边
\mathbf{u} 和\mathbf{v} 变成了旋转后的R(\mathbf{u}) 和R(\mathbf{v}) 。原来的对角线\mathbf{u}+\mathbf{v} 变成了旋转后的R(\mathbf{u}+\mathbf{v}) 。由于旋转后的图形依然是平行四边形,所以它的对角线必然等于两条边的和,即R(\mathbf{u}+\mathbf{v}) = R(\mathbf{u}) + R(\mathbf{v}) 。 - 结论:可加性成立。
- 几何直觉:向量加法
这本质上是三角形全等。
T(c\mathbf{u}) = cT(\mathbf{u}) (齐次性)- 几何直觉:向量
c\mathbf{u} 是将向量\mathbf{u} 的长度缩放c 倍(方向可能相反)。 - 旋转操作:旋转保持长度不变。
- 自洽性证明:旋转
c\mathbf{u} 时,它的方向会改变,但长度仍然是\mathbf{u} 的c 倍。这与先旋转\mathbf{u} 得到R(\mathbf{u}) ,再将其长度缩放c 倍得到的结果cR(\mathbf{u}) 是完全一样的。 - 结论:齐次性成立。
- 几何直觉:向量
这和相似则是类似的。
通过这个论证,我们证明了我们脑海中那个直观的、刚性的“旋转”概念,内生地满足线性变换的代数定义。所以,将“旋转是线性变换”作为起点是合理且自洽的。
疑虑二:“旋转
这是更致命、也更深刻的一个问题。
这个性质
那么,这个性质本身是否依赖于和角公式呢?
答案是:不依赖,如果我们小心地定义我们的术语。
这里的关键在于我们如何定义“角度”和“角度的加法”。
- 操作主义定义:让我们把旋转操作本身视为最基本的东西。
- 有一个操作叫“旋转”,它由一个参数(我们称之为“角度”)来标识,记作
R_\theta 。 - 我们观察到,连续进行两次旋转操作
R_\beta 和R_\alpha (即复合函数R_\alpha \circ R_\beta ),其结果也是一个旋转操作。 - 我们定义“角度的加法”为:如果
R_\alpha \circ R_\beta 的结果是R_\gamma ,那么我们就定义\gamma = \alpha + \beta 。
- 有一个操作叫“旋转”,它由一个参数(我们称之为“角度”)来标识,记作
看到这里的精妙之处了吗?我们不是先有了角度的加法,然后去证明旋转复合满足这个关系。我们是反过来,用旋转的复合操作来定义角度应该如何相加。
在这种视角下,等式
所以,我们的证明可以被拯救,并变得更加严谨:
严谨化后的证明逻辑链
- 公理1(几何):我们接受一个几何实体叫“旋转”,它是一种刚体运动,保持原点不动。
- 定理1(线性):从公理1,我们证明了旋转是一种线性变换(如上文所述)。
- 推论1(矩阵):因为旋转是线性变换,所以它可以表示为一个矩阵。通过考察基向量的变换,我们得到
R_\theta = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} 。在这里,\cos\theta 和\sin\theta 仅仅是单位圆上点的坐标的记号,我们对它们的函数性质一无所知。 - 公理2(群结构):旋转的集合在函数复合下构成一个群。任意两个旋转的复合仍然是一个旋转。
- 定义1(角度加法):我们定义角度的加法
\alpha+\beta 是这样一个角度\gamma ,它使得R_\gamma = R_\alpha \circ R_\beta 。因此,关系式R_{\alpha+\beta} = R_\alpha R_\beta 成为我们体系内的真理(根据定义)。 - 最终推导:现在,我们将来自推论1的矩阵形式代入到来自定义1的关系式中:
\begin{pmatrix} \cos(\alpha+\beta) & \dots \\ \sin(\alpha+\beta) & \dots \end{pmatrix} = \begin{pmatrix} \cos\alpha & \dots \\ \sin\alpha & \dots \end{pmatrix} \begin{pmatrix} \cos\beta & \dots \\ \sin\beta & \dots \end{pmatrix} - 结论:通过计算右侧的矩阵乘积,我们就发现了
\cos(\alpha+\beta) 和\sin(\alpha+\beta) 必须满足的代数恒等式。这些恒等式就是我们所说的“和角公式”。
致谢 && 声明:感谢 Gemini 对本文做出的贡献。Gemini 提供了避免循环论证的思路。