复数的问题: 虚数单位i到底是怎么来的?为什么i*i=-1?
很多人和我一样,学习和很长时间的复数,可是并没有搞懂为什么要提出i*i=-1这么一个奇怪的东东。
这个问题要学习过抽象代数(近世代数)以后才能解答。简单的说,我们要"构造"一个二维的数域,符合一些基本的运算性质。注意,i的定义是构造出来的,不是分析出来的。
i*i=-1到底是怎么来的?
(1) 从抽象代数(近世代数)的角度说,数域是需要定义和构造的。例如自然数域,上面可以定义加法和乘法,加法和乘法同时有交换律/结合律等性质。同时,加法有0元,乘法有幺元。
x+0=x
x*1=x
加法和乘法都有逆运算,也就是x+y=0,x*z=1,那么z就是x的逆元。任何非0元素相乘不能=0,否则就会出现定义上的问题。
(2)复数域定义:
定义 复数是个有序的实数对(a,b),"有序的意思是,如果a!=b,那么(a,b)和(b,a)就认为是不同的。 设x=(a,b),y=(c,d)是两个复数,当且仅当a=c并且b=d时,我们认为x=y(注意,这个定义并不是废话,想想如果(a,b)表示有理数a/b),我们定义:
x+y=(a+c,b+d)
x*y=(ac-bd,ad+bc) (同一个维度的变量做运算并累加)
注意,为什么这里的ac-bd是减法? 为什么不是加法(a,b)(c,d)=(ac+bd)(bc+ad)----问题(1)
为什么不能第二个运算是减法(a,b)(c,d)=(ac+bd)(bc-ad)
因为一个良好的"数域"定义,需要符合一些性质,就像自然数的结合律,交换律等等,也就是运算的不变性。为了说明问题(1),我们定义(a,b)*(c,d)=(ac+xbd, ad+ybc),其中x,y是未知的系数,那么要符合交换律就必须有:
(a,b)(c,d)(e,f)=(ac+xbd,ad+ybc)(e,f)=((ac+xbd)e+x(ad+ybc)f,(ac+xbd)f+y(ad+ybc)e)=
(ace+xadf+xbde+xybcf,acf+xbdf +yade+yybce) -----结果(1)
(a,b)(c,d)(e,f)=(a,b)(ce+xdf,cf+yde)=(a(ce+xdf)+xb(cf+yde),a(cf+yde)+yb(ce+xdf))=
(ace+xadf+xbde+xbcf ,acf+xybdf+yade+ybce ) -----结果(2)
以上两个结果对比,我们得到: y=1,这很明显。那么x=?
如果x>0,就如我们问题(1)所示的式子,令x=1,那么会得到(1,1)*(1,-1)=0。两个非零元素相乘竟然=0。
因此必须有x<0.为了计算方便,定义x=-1,因此复数域的乘法运算就定义为x*y=(ac-bd,ad+bc)
问题: 能否定义成x*y=(ad-bc,ac+bd)之类的? 注意,这样的话乘法交换律等基本定律就不能符合了,此类定义不能得到一个可运算的数域。
(3) 有了复数域的乘法运算定义,我们再次定义符号i=(0,1)。那么根据定义可以计算出i*i=(-1,0)。注意,先有了复数域乘法的定义,然后才有i的定义。不能先用i的定义来反推复数域乘法定义。逻辑顺序不能颠倒。
(4) 直角坐标系和复数坐标系到底有什么区别? ---- 直角坐标系上的元素只定义了加法,如果将直角坐标系的y定义为i轴,加上向量运算法则(复数乘法),就得到复数平面坐标系。
总结: 先有了复数域的构造: 2维向量的加法和乘法运算,并且运算要满足一些基本的运算性质。然后才有令i=(0,1),于是根据乘法运算的构造,有了i*i=-1。
补充:综合编程 , 其他综合 ,