15、【数学】【基础】欧拉公式是怎么来的:从级数、微分方程到旋转
【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除
标题
15、【数学】【基础】欧拉公式是怎么来的:从级数、微分方程到旋转
背景
这条公式第一次出现,是在
【数学】【基础】复数是什么:从解方程到旋转
里。当时它被直接摆了出来:
e
i
θ
=
cos
θ
+
i
sin
θ
e^{i\theta}=\cos\theta+i\sin\theta
eiθ=cosθ+isinθ
并用它把复数写成
r
e
i
θ
re^{i\theta}
reiθ、把乘法解释成"模相乘、角相加"。之后
【数学】【基础】自然常数 e:为什么是 2.718…
在讲
e
e
e 时也留了一句"复数域里还有著名的欧拉公式
e
i
π
+
1
=
0
e^{i\pi}+1=0
eiπ+1=0,留到以后单独展开"。
问题在于:一个实数的指数,凭什么等于"余弦加正弦"? 本篇把这条欠账补上,并且给出三条都能走通的推导——级数、微分方程、极限。它们算的是同一个东西,但各自揭示了公式的一面。
第一步:先把 e i θ e^{i\theta} eiθ 定义清楚
要说"推导",得先回答一个更基础的问题: e i θ e^{i\theta} eiθ 到底是什么意思?
实数里的 e x e^{x} ex 有一堆直观解释——复利、连乘——但它们都依赖"乘很多次"。而 i θ i\theta iθ 是个虚数,没法"把 e e e 连乘 i θ i\theta iθ 次"。所以必须换一种定义:用第 11 篇给过的级数,把 e e e 从实数推广到复数:
e z = ∑ k = 0 ∞ z k k ! = 1 + z + z 2 2 ! + z 3 3 ! + ⋯ e^{z}=\sum_{k=0}^{\infty}\frac{z^{k}}{k!}=1+z+\frac{z^{2}}{2!}+\frac{z^{3}}{3!}+\cdots ez=k=0∑∞k!zk=1+z+2!z2+3!z3+⋯
这个级数对任意复数 z z z 都收敛,所以它能拿来做定义——把 z = i θ z=i\theta z=iθ 代进去, e i θ e^{i\theta} eiθ 就有了确切含义。
这一点很关键:欧拉公式不是"两个恰好相等的量",而是"用级数定义 e i θ e^{i\theta} eiθ 之后,算出来必然等于 cos θ + i sin θ \cos\theta+i\sin\theta cosθ+isinθ"。所以下面的推导,本质上是在"展开一个定义"。
推导一:级数展开(主线)
把 z = i θ z=i\theta z=iθ 代入级数:
e i θ = ∑ k = 0 ∞ ( i θ ) k k ! = 1 + i θ + ( i θ ) 2 2 ! + ( i θ ) 3 3 ! + ⋯ e^{i\theta}=\sum_{k=0}^{\infty}\frac{(i\theta)^{k}}{k!}=1+i\theta+\frac{(i\theta)^{2}}{2!}+\frac{(i\theta)^{3}}{3!}+\cdots eiθ=k=0∑∞k!(iθ)k=1+iθ+2!(iθ)2+3!(iθ)3+⋯
关键在 i i i 的幂——它每乘一次 i i i 就"逆时针转 90 ∘ 90^\circ 90∘",四个一循环:
i 0 = 1 , i 1 = i , i 2 = − 1 , i 3 = − i , i 4 = 1 , … i^{0}=1,\quad i^{1}=i,\quad i^{2}=-1,\quad i^{3}=-i,\quad i^{4}=1,\ \dots i0=1,i1=i,i2=−1,i3=−i,i4=1, …

图 1 就是这个循环。把级数里偶次项和奇次项分开:偶次项的 i 2 m = ( − 1 ) m i^{2m}=(-1)^{m} i2m=(−1)m 全是实数,奇次项的 i 2 m + 1 = i ( − 1 ) m i^{2m+1}=i(-1)^{m} i2m+1=i(−1)m 全是纯虚数:
e i θ = ( 1 − θ 2 2 ! + θ 4 4 ! − ⋯ ) ⏟ 偶次项:实部 + i ( θ − θ 3 3 ! + θ 5 5 ! − ⋯ ) ⏟ 奇次项:虚部 e^{i\theta}=\underbrace{\left(1-\frac{\theta^{2}}{2!}+\frac{\theta^{4}}{4!}-\cdots\right)}_{\text{偶次项:实部}}+i\underbrace{\left(\theta-\frac{\theta^{3}}{3!}+\frac{\theta^{5}}{5!}-\cdots\right)}_{\text{奇次项:虚部}} eiθ=偶次项:实部 (1−2!θ2+4!θ4−⋯)+i奇次项:虚部 (θ−3!θ3+5!θ5−⋯)
而这两坨括号,正是 cos θ \cos\theta cosθ 与 sin θ \sin\theta sinθ 的泰勒级数:
cos θ = 1 − θ 2 2 ! + θ 4 4 ! − ⋯ , sin θ = θ − θ 3 3 ! + θ 5 5 ! − ⋯ \cos\theta=1-\frac{\theta^{2}}{2!}+\frac{\theta^{4}}{4!}-\cdots,\qquad \sin\theta=\theta-\frac{\theta^{3}}{3!}+\frac{\theta^{5}}{5!}-\cdots cosθ=1−2!θ2+4!θ4−⋯,sinθ=θ−3!θ3+5!θ5−⋯

图 2 显示:项数越多,这两串部分和越贴近真正的 cos \cos cos 与 sin \sin sin。于是直接得到
e i θ = cos θ + i sin θ e^{i\theta}=\cos\theta+i\sin\theta eiθ=cosθ+isinθ
所以它不是巧合—— i i i 的幂在奇偶位上恰好给出 cos / sin \cos/\sin cos/sin 级数该有的正负交替,是这条公式的真正来源。
顺带得到:模恒为 1
由这个结果还能立刻看出一个漂亮的事实: e i θ e^{i\theta} eiθ 永远落在单位圆上。
用级数的乘法性质(把 e a e b = e a + b e^{a}e^{b}=e^{a+b} eaeb=ea+b 推广到复数)或是共轭,都有
∣ e i θ ∣ 2 = e i θ ⋅ e − i θ = e 0 = 1 \left|e^{i\theta}\right|^{2}=e^{i\theta}\cdot e^{-i\theta}=e^{0}=1 eiθ 2=eiθ⋅e−iθ=e0=1
(等价地, cos 2 θ + sin 2 θ = 1 \cos^{2}\theta+\sin^{2}\theta=1 cos2θ+sin2θ=1。)所以 ∣ e i θ ∣ = 1 |e^{i\theta}|=1 ∣eiθ∣=1:

图 3 里, θ \theta θ 取 0 , π 2 , π , 3 π 2 0,\frac{\pi}{2},\pi,\frac{3\pi}{2} 0,2π,π,23π 时分别落在 1 , i , − 1 , − i 1,i,-1,-i 1,i,−1,−i,始终在单位圆上。模为 1,意味着"乘 e i θ e^{i\theta} eiθ"只旋转、不缩放——这正是第 7 篇"乘单位复数 = 纯旋转"的根据。
推导二:微分方程(唯一性)
换一条完全不同的路。令
f ( θ ) = cos θ + i sin θ f(\theta)=\cos\theta+i\sin\theta f(θ)=cosθ+isinθ
对它求导,用 ( cos θ ) ′ = − sin θ (\cos\theta)'=-\sin\theta (cosθ)′=−sinθ、 ( sin θ ) ′ = cos θ (\sin\theta)'=\cos\theta (sinθ)′=cosθ:
f ′ ( θ ) = − sin θ + i cos θ = i ( cos θ + i sin θ ) = i f ( θ ) f'(\theta)=-\sin\theta+i\cos\theta=i\,(\cos\theta+i\sin\theta)=i\,f(\theta) f′(θ)=−sinθ+icosθ=i(cosθ+isinθ)=if(θ)
同时 f ( 0 ) = cos 0 + i sin 0 = 1 f(0)=\cos0+i\sin0=1 f(0)=cos0+isin0=1。也就是说, f f f 满足
f ′ = i f , f ( 0 ) = 1 f'=if,\qquad f(0)=1 f′=if,f(0)=1
而 e i θ e^{i\theta} eiθ(由级数定义)同样满足它——因为 ( e i θ ) ′ = i e i θ (e^{i\theta})'=i\,e^{i\theta} (eiθ)′=ieiθ、且 e 0 = 1 e^{0}=1 e0=1。一阶线性微分方程在给定初值下解唯一(若有两个解,其差 h h h 满足 h ′ = i h , h ( 0 ) = 0 h'=ih,\ h(0)=0 h′=ih, h(0)=0,只能恒为 0 0 0),所以二者只能是同一个函数:
e i θ = f ( θ ) = cos θ + i sin θ e^{i\theta}=f(\theta)=\cos\theta+i\sin\theta eiθ=f(θ)=cosθ+isinθ

图 4 给的是几何画面:位置 f f f 沿单位圆跑,速度 f ′ f' f′ 恰好是位置逆时针转 90 ∘ 90^\circ 90∘,所以运动是匀速圆周——“速度与自身垂直、长度不变”,这就是 f ′ = i f f'=if f′=if 的含义。
这条推导还接上了第 11、12 篇的一句话: e x e^{x} ex 是求导的本征函数(求导后还是自己)。在复数域,这句话就变成了 e i θ e^{i\theta} eiθ 正是"速度等于位置乘 i i i"的那个函数。
推导三:极限与几何(直觉)
最后给一条最"看得见"的路。把复利极限里的 1 + 1 n 1+\frac1n 1+n1 换成复数:
e i θ = lim n → ∞ ( 1 + i θ n ) n e^{i\theta}=\lim_{n\to\infty}\left(1+\frac{i\theta}{n}\right)^{n} eiθ=n→∞lim(1+niθ)n
对每个因子做一阶近似, 1 + i θ n 1+\frac{i\theta}{n} 1+niθ 就是"在单位圆上转一小角 θ n \frac{\theta}{n} nθ、再缩一丁点"的数。把它连乘 n n n 次,相当于把 n n n 个小角首尾相接:总转角累加成 θ \theta θ,而那一丁点缩放被 n n n 次连乘后趋近于 1 1 1:

图 5 里, n = 1 , 2 , 4 , 8 , … n=1,2,4,8,\dots n=1,2,4,8,… 的点一步步逼近单位圆上角度为 θ \theta θ 的位置。这解释了一个直觉问题:为什么指数会等于"转圈"?因为在极限下,“以极小步长连续地乘"就是在圆上走弧——旋转本来就是一种"连续的乘法”。
特例与美感
三个推导给出同一个式子,现在代几个特殊角看看。取 θ = π \theta=\pi θ=π:
e i π = cos π + i sin π = − 1 e^{i\pi}=\cos\pi+i\sin\pi=-1 eiπ=cosπ+isinπ=−1
移项就是著名的欧拉恒等式:
e i π + 1 = 0 e^{i\pi}+1=0 eiπ+1=0
把 e e e、 i i i、 π \pi π、 1 1 1、 0 0 0 五个来自不同领域的常数串成一行。另一个自然的结论是周期性: cos \cos cos、 sin \sin sin 都以 2 π 2\pi 2π 为周期,所以 e i θ e^{i\theta} eiθ 也以 2 π 2\pi 2π 为周期, e i θ = e i ( θ + 2 π ) e^{i\theta}=e^{i(\theta+2\pi)} eiθ=ei(θ+2π)——这与第 9 篇的角频率 θ = ω t \theta=\omega t θ=ωt 是同一件事。
回到 RoPE 与复数乘法
第 6、8 篇里,RoPE 给 q q q、 k k k 乘 e i θ e^{i\theta} eiθ、并把 64 64 64 维拆成 32 32 32 对做二维旋转。现在这条公式有了来处,那一步就不再是"凭空的技巧":乘 e i θ e^{i\theta} eiθ 之所以是旋转,是因为它模为 1、幅角为 θ \theta θ;而两个旋转向量做点积时角度相减,绝对位置被消掉、只剩相对距离——这也正是第 6 篇那条"点积只依赖 n − m n-m n−m"的根据。
小结
欧拉公式 e i θ = cos θ + i sin θ e^{i\theta}=\cos\theta+i\sin\theta eiθ=cosθ+isinθ 的推导,可以有三种讲法,它们殊途同归:
- 级数法:把 e i θ e^{i\theta} eiθ 按级数展开, i i i 的幂四个一循环,偶次项凑成 cos θ \cos\theta cosθ、奇次项凑成 sin θ \sin\theta sinθ;
- 微分方程法: cos θ + i sin θ \cos\theta+i\sin\theta cosθ+isinθ 与 e i θ e^{i\theta} eiθ 都满足 f ′ = i f , f ( 0 ) = 1 f'=if,\ f(0)=1 f′=if, f(0)=1,而一阶线性方程初值问题解唯一,故二者相等;
- 极限法: e i θ = lim ( 1 + i θ n ) n e^{i\theta}=\lim(1+\frac{i\theta}{n})^{n} eiθ=lim(1+niθ)n, n n n 个小旋转首尾相接,累加成转角 θ \theta θ。
三者共同说明:它不是巧合,而是"用级数定义复指数"之后的必然结果。由它还能立刻得到 ∣ e i θ ∣ = 1 |e^{i\theta}|=1 ∣eiθ∣=1(所以是纯旋转)、欧拉恒等式 e i π + 1 = 0 e^{i\pi}+1=0 eiπ+1=0,以及 RoPE 里"乘 e i θ e^{i\theta} eiθ 就是旋转"的全部根据。
OK,本篇先到这里,如有疑问,欢迎评论区留言讨论,祝各位功力大涨,技术更上一层楼!!!
【数学】【基础】无穷级数是什么:从“无限相加“到收敛
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)