线性变换不满足交换律么?为什么?

用户68738747


线性变换满足结合律,但不满足交换律,这是有关线性变换运算的两条最基本的结论。下面来详细阐述一下这一问题,需要分成以下几个方面。

1.什么是变换?

线性变换(linear transformation)是线性代数(linear algebra)的基本概念,它是一类满足某些特殊性质的变换(transformation)。那么什么是变换呢?

变换从本质上讲就是函数的意思。函数是一个我们非常熟悉的概念了,它的意思就是把一个集合中元素对应到另外一个集合中元素的对应法则。

不过,我们在高中学习的函数一般都是从数集到数集的对应。把这个概念再放宽一些,变成从向量集合到向量集合的对应,那这时就把这个函数特意地称为“变换”。

在线性代数里面,由所有n维向量组成一个集合,这些向量之间可以进行加减法运算和数乘运算。把可以进行这两种运算的集合通常成为一个线性空间(linear space),它其中的一组基(basis)所包含的向量的个数,称为线性空间的维度(dimension)。可以看出,所有n维向量组成的集合就是一个n维线性空间,通常记为R^n。所以总结为一句话:变换的本质,就是从一个线性空间到另一个线性空间的函数。

2.什么是线性变换?

任何一个从线性空间到线性空间的对应法则,都可以称为一个变换。那这样的变换太多了,杂乱无章,研究起来没有什么意义,我们从里面挑出一些满足一定性质的、有意义的变换,于是就有了线性变换这个概念。

线性变换(linear transformation)指的是满足下列性质的变换:

这两条性质其实也被称为运算的线性性,线性变换这个名字也因此而来。

线性其实是广泛存在于自然界中与我们日常生活当中的一种现象,它描述的是一种不同数量可以“简单叠加”的性质。举个例子,买同一种商品所花的钱就是一个关于商品数量的线性函数,比如我买3+4个,即7个面包所花的钱,就等于买3个面包的钱,加上买4个面包的钱。

线性变换中最常见的一类就是所谓的矩阵变换(事实上,下文我们将会看到,线性变换的本质就是矩阵变换)。矩阵变换(matrix transformation)指的是这样一种把向量变成向量的对应法则:先给定一个矩阵m×n阶矩阵A,然后对于一个n维向量x,给它左边乘上A,变成Ax,根据乘法行与列的运算法则,这样得到的就是个m维向量。所以它把一个n维向量变成一个m维向量,这样的变换我们称为由矩阵A诱导出的线性变换,简称为矩阵变换。这种变换一定是线性的,因为很容易验证,对于任何矩阵A,都有:

矩阵变换在电脑做图中非常有用,在电脑中对一张图片进行拉伸,旋转,翻转等操作,本质就是矩阵变换。因为一张图片是由很多像素点组成的,每一个像素可以看成是一个2维向量。对图片进行操作,就相当于把每个向量都变换一下。比如我想把一张图片等比例拉伸三倍,就相当于把每一个向量都拉伸三倍,方法就是让每一个向量都乘以一个3倍单位矩阵:

于是就会产生以下的效果:

3.几种基础的矩阵变换

除了上面讲的拉伸变换,其他常见的矩阵变换还有如下几种

  • 翻转变换

前面分别乘以如下两个矩阵:

实现的效果就是把图片关于x轴翻转,以及关于y轴翻转:

  • 旋转变换

想把一个图形逆时针方向旋转角度φ,可以在前面乘上如下矩阵:

于是就可以得到如下效果

  • 剪切变换

剪切变换就是把一张图片斜着拉伸,比如下面这个效果

实现方法就是前面乘以如下的矩阵:

当然还可以对图像进行多次变换,那就是不停地在前边乘以矩阵,于是就是下面这个效果

上面的图片就是在矩阵研究中做出巨大贡献的德国数学家雅可比(Jacobi,1804-1851)

4.线性变换的矩阵

前面我们已经介绍到,给我一个矩阵就可以导出一个矩阵变换而,每一个矩阵变换都是一个线性变换。那么反过来,给我一个线性变换,它跟矩阵有没有关系呢?下面来探讨一下这个问题。

首先面临的第一个问题就是,一个线性变换是把线性空间中的每一个向量都对应到另一个线性空间中的向量。但是一个线性空间里边包含无数多个向量,你需要知道每一个向量对应过去是啥才算是知道了这个线性变换的全部信息。那无数多个向量我怎么可能列的完呢?好在线性空间不是孤立的集合,它的元素与元素之间有运算关系,所以整个空间就具有某种结构,我们在线性代数里面学过一个线性空间,都至少有一组基。这一组基是由若干个向量组成的,它们之间线性无关,并且使得线性空间中的每一个向量都可以被这一组基中的向量所线性表示。

又根据线性变换本身具有线性性,所以我们只需要知道这个线性变换把这组基中的每个向量变成啥,就相当于知道了这个线性变换的全部信息。利用这一点,我们只需要研究所有基的象即可。

下面我们只讨论R^n到R^n,即自身到自身的线性变换T。即每一个向量变过去之后,仍然还是本集合的向量。n维线性空间一组基中有n个向量,我们把它们记为:

只需要研究线性变换把上面这n个向量变成啥就可以了,而每一个向量变过去之后的向量还属于该集合,因此它也能被这一组基所表示。我们不妨假设

我们把前面的系数提取出来,按列组成一个n×n阶的矩阵:

这个矩阵就称为线性变换T在这一组基下所诱导出的矩阵。

于是可以看出,给我一个矩阵就可以导出一个线性变换;反过来,给我一个线性变换就可以导出一个矩阵。因此,线性变换和矩阵就是一一对应的,所以我们得出一个自然的结论,就用一个矩阵来代表一个线性变换。于是就可以把线性变换的关系转化为矩阵的关系。

5.线性变换的运算与矩阵的运算

我们知道,矩阵可以进行运算,比如加减法,数乘,以及最复杂的矩阵乘法。那么,不同的线性运算之间可以做运算么?如果可以的话,线性表换的运算和矩阵的运算有什么关系呢?本节就来讨论这个问题。

我们知道,线性变换的本质就是函数,而我们讲函数时学过它的五种运算:加减乘除,以及复合。所以线性变换也可以进行这五种运算,其中与本文有关系的是最后一种——复合运算(composite):

可以看出来,它也是R^n到R^n的线性变换。两个线性变换的复合变换仍然是线性变换,可以如下简单的证明:

先看第一条:

再看第二条:

所以两个线性变换的复合变换仍然是线性变换,那么根据上文,它就对应一个矩阵。

那这个矩阵与前两个线性变换的矩阵有什么关系呢,我们有如下结论

这个结论的证明比较简单,我们暂时略去。但是这个结论所具有的意义却是非常重要的,它表明,线性变换的复合运算就完全等同于矩阵的乘法运算。

这个结论的重要意义就在于,我们要想研究线性变换之间的关系,那么直接转化成研究矩阵之间的关系就可以了。而矩阵之间的运算我们是研究得很清楚的。

6.结论

我们知道矩阵的乘法满足结合律,即对任意的三个矩阵A,B,C,(假设乘法可以进行),一定满足

因此线性变换的复合运算也是满足结合律的。

但是矩阵的运算是不满足交换律的,我们可以随便举一个例子来,比如给出下面两个矩阵:

可以计算一下:

很明显二者是不相等的。只要举出一个例子来,就可以说明矩阵的乘法不满足交换律的,因此对应过来,线性变换的复合运算也不满足交换律。

我们举一个具体的例子好了,就拿上面的两个矩阵导出的线性变换:

我们就让它们复合,然后作用在单位向量〈0,1〉上,比较一下两个结果:

明显是不一样的。只要有一个向量作用过去不一样,那这就是两个不同的线性变换,这就说明了两个线性变换的复合运算是不满足交换律的。

6.结束语

本文我们使用了一种在数学里边非常常用的手法,当我们面对一种难以处理的数学对象时,可以把它转化成另外一种数学对象,并且这两种数学对象之间具有相同的结构。于是我们只需要把新的数学对象的性质研究清楚了,就可以返回去得到旧的数学对象的性质,这就是“同构”(isomorphism)的思想。在本文中我们就建立起了所有线性变换与所有矩阵之间的同构,于是通过研究矩阵的性质得到线性变换的性质。

“同构”(isomorphism),是数学中的核心概念之一,它研究的就是两种不同的结合所具有的相同的性质,通常指的是相同的运算性质。因此但凡含有运算的集合,都有同构这个概念,比如线性空间的同构,群的同构,环的同构等等。同构的集合,我们在研究性质时可以看成相同的结合,因此这一概念就在不同的数学对象之间寻找到了某种统一性,用它就可以来解决很多复杂的数学问题。


参考文献[1] Linear Algebra and Its Applications,David C. Lay,Pearson.[2] Precalculus, Tenth Edition, Michael Sullivan, Pearson.[3] 《高等代数》,第三版,北京大学数学系代数与几何教研室前代数小组,北京,高等教育出版社[4] 《工程数学线性代数》,第五版,同济大学数学系,北京,高等教育出版社

数学救火队长马丁


线性代数中的线性变换是包括矩阵的加减法和数乘运算,那么我们就从矩阵出发先来看一下为什么不满足交换律。

1.从矩阵乘法规则来看-矩阵相乘是前一个矩阵中的行向量组 乘以 后一矩阵的列向量组,交换顺序之后,所有的向量组都被打乱重组了,所以乘积也就和以前不同。

2. 从更广义的角度来看,线性变换也可以称为线性映射。任意映射包括 一一映射,多对一映射,或一对多映射。所以,映射当然存在多对一的现象如果是多对一映射,则交换律就无法满足。

3.如果学过更多的数学之后,可以理解到线性代数是依托线性空间以及其中的线性变换,而线性空间是由一个二元集合上所定义的,要数域P和向量集合V,其中定义了数乘和加法,加以八条性质得到一个线性空间。这也是抽象代数的一个特例。抽象代数中大多不满足交换律如下图。



分享到:


相關文章: