在数学中,乘方或幂法是重复连乘的运算,幂是乘方的结果;由此,若 n 為正整數,n 个相同的数 b 连续相乘(即 b 自乘 n 次),就可将 b^n 看作乘方的结果 ——“幂”。
:b^n = \underbrace{b \times \cdots \times b}_n
在精确的定义上,乘方与幂不同,例如:“幂的乘方”是指几个相同的幂相乘,(b^m)^n 即“幂 b^m 再做 n 次乘方”。此外,在汉语命名上,乘方与开方相对,两者互为逆运算。乘方在古代原本指正整数次的自身连乘,当 n 不为正整数时,“乘方”则有了衍伸的定义,即“乘幂”:将某个量或符号提升到任意指定次幂或对它施加一个指定指数的行为或过程。
乘幂或幂運算,又稱指數運算、取冪,如上述,与乘方一样是數學運算,表達式為 b^n,讀作「b 的 n 次方」或「b 的 n 次幂」。其中,b 稱為底數,而 n 稱為指數,通常指數寫成上標,放在底數的右邊。
此外,次幂与幂次的语义区别如下:次幂侧重“运算结果”,是一个数自乘若干次后所得到的乘方结果。幂次侧重“指数的值”,是特指位于右上角的指数本身,即自乘了多少次。例如:在 2^3=8 中,8 是 2 的三“次幂”,而 3 是 2 的“冪次”。
當乘幂的指數 n 為 1 時,通常不寫出來,因為運算出的值和底數的數值一樣;指數為 2 時,另可讀作“b 的平方”;指數為 3 時,另可讀作“b 的立方”。乘冪在純文字格式等不能用上標的情況,例如在編程語言或電子郵件中,b^n 通常寫成 b^n 或 bn;也可視為超運算,記為 b[3]n;亦可以用高德納箭號表示法,寫成 b↑n**。
幂概念的指数范围拓展与数学定义
由於在十进制中,十的冪很容易計算,只需在後面加零即可,所以科学记数法借此簡化記錄的數字;二的幂則在計算機科學中相當重要。
在代数学中,为了使幂运算在逻辑上保持自洽,任何数 b 的 n 次幂,都可视为或等同于: 1 乘以“n 个底数 b 的连乘积”(此处 1 为乘法单位元)。基于这一核心逻辑,指数可以自然地推广至零和负数的情况。
- 当指数 n 为正整数时,b^n=1 \cdot b^n 很容易理解。
- 然而,当指数 n 为 0,造成“0 个 b 自乘”,也不会导致“没有数自乘”却得到结果是 1,而不是 0 的疑惑。因为既然一个 b 都没有,那幂运算根本没有发生,结果自然保持原状,也就是 1。此 b^0=1,是幂运算的第一原理。
- 当“负 n 个 b 自乘”时,正负指数就变成了方向相反的一对算子,指数 -n 等价于:1 乘以“n 个底数的乘法逆元(倒数)的连乘积”。即:1 重複除以底數 n 次。
: b^{0} = 1 \qquad (b \ne 0)
:b^{-n} = {1 \over \underbrace{b\times\cdots\times b}_n} = \frac{1}{b^n} = \left(\frac{1}{b}\right)^{n} \qquad (b \ne 0)。
若以分數為指數的冪,則定義:
b^{\frac{n}{m}} = \sqrt[m]{b^{n}},
即 b 的 n 次方再开 m 次方根。
0的0次方(0^0)目前沒有數學家給予正式的定義;在部分數學領域中,如組合數學,常用的慣例是定義為 1 。
此外,當 n 是複數,且 b 是正實數時,
b^n = \exp(n \ln(b))
exp 是指數函數,而 ln 是自然對數。
重要的恆等式
运算法则
- 同底数幂相乘,底数不变,指数相加:
::a^m \times a^n = a^{m + n}
- 同底数幂相除,底数不变,指数相减:
::a^m \div a^n = a^{m - n}
- 同指数幂相除,指数不变,底数相除(b不為0):
::\frac{a^n}{b^n} = \left(\frac{a}{b}\right)^n
其他等式
- x^\frac{m}{n} = \sqrt[n]{x^m}
- x^{-m} = \frac{1}{x^m} \qquad (x \ne 0)
- x^0 = 1 \qquad (x \ne 0)
- x^1 = x\,\!
- x^{-1} = \frac{1}{x} \qquad (x \ne 0)
运算律
加法和乘法存在交换律,比如:2+3=5=3+2,2 \times 3 =6 =3 \times 2,但是幂的运算不存在交换律,2^3 = 8 ,但是3^2 = 9 。
同样,加法和乘法存在结合律,比如:(2+3)+4=9=2+(3+4),(2 \times 3) \times 4=24=2 \times (3 \times 4)。不過,冪運算沒有結合律:(2^3)^4 = 8^4 = 4096 ,而2^{(3^4)} = 2^{81} = 2,417,851,639,229,258,349,412,352 ,所以(2^3)^4\neq 2^{(3^4)} 。
但是冪運算仍然有其運算律,稱為指數律:
- a^m \cdot a^n = a^{m+n}
- \frac{a^m}{a^n} = a^{m-n}
- (a^m)^n = a^{mn}
- \sqrt[n]{a^m} = a^{\frac{m}{n}}
- a^n \cdot b^n = (a \cdot b)^n
- \frac{a^n}{b^n} = \left(\frac{a}{b}\right)^n
整数指数幂
整数指数幂的运算只需要初等代数的知识。
正整数指数幂
表达式a^2 = a\cdot a被称作a的平方,因为边长为a的正方形面积是a^2。
表达式a^3 = a\cdot a\cdot a被称作a的立方,因为邊长为a的正方体体积是a^3。
所以3^2读作「3的平方」,2^3读作「2的立方」。
指数表示的是底数反复相乘多少次。比如3^5 = 3\times 3\times 3\times 3\times 3 = 243,指数是5,底数是3,表示3反复相乘5次。
或者,整数指数幂可以递归地定义成:
:a^n=
\begin{cases}
1 & (n= 0) \\
a \cdot a^{n-1} & (n> 0) \\
\left(\frac{1}{a}\right)^{-n} & (n
指数是1或者0
注意3^1表示仅仅1个3的乘积,就等于3。
注意3^5 = 3\times 3^4,3^4 = 3\times 3^3,3^3 = 3\times 3^2,3^2=3\times 3^1,
继续,得到3^1 = 3\times 3^0 = 3,所以3^0 = 1
另一个得到此结论的方法是:通过运算法则 \frac{x^n}{x^m} = x^{n - m}
当m=n时, 1 = \frac{x^n}{x^n} = x^{n - n} = x^0
- 任何数的1次方是它本身。
零的零次方
0^0 其实还并未被数学家完整的定义,但部分看法是 0^0 = 1 ,在程式语言中(python) 0**0 = 1
在这里给出这一种极限的看法
\lim _{x \to 0^+} x ^ x= 0^0
于是,可以求出 x 取值从 1 到 0.0000001 计算得到的值,如图
负数指数
我们定义任何不为 0 的数 a 的 -1 次方等于它的倒数。
:a^{-1} = \frac{1}{a}
对于非零a定义
:a^{-n} = \frac{1}{a^n},
而a=0时分母為 0 没有意义。
证法一:
根据定义a^m\cdot a^n = a^{m+n},当m=-n时
:a^{-n} \, a^{n} = a^{-n\,+\,n} = a^0 = 1,
得 a^{-n} \, a^{n} = 1 , 所以a^{-n} = \frac{1}{a^{n}}。
证法二:
通过运算法则 \frac{a^m}{a^n} = a^{m - n}
当m=0时,可得a^{-n} = a^{0-n} = \frac{a^0}{a^n} = \frac{1}{a^{n}}
负数指数a^{-n}还可以表示成1连续除以n个a。比如:
:3^{-4} = \frac{\frac{\frac{\frac{1}{3}}{3}}{3}}{3} = \frac{1}{81} = \frac{1}{3^{4}}.
特殊数的幂
10的幂
在十进制的计数系统中,10的幂写成1后面跟着很多个0。例如:10^3 = 1000,\ 10^{-3} = 0.001
因此10的幂用来表示非常大或者非常小的数字。如:299,792,458(真空中光速,单位是米每秒),可以写成 2.99792458\times 10^8,近似值 2.998\times 10^8 或 3\times 10^8
国际单位制词头也使用10的幂来描述特别大或者特别小的数字,比如:词头“千”就是 10^3,词头“毫”就是 10^{-3}
2的幂
1的幂
1的任何次幂都为1。
0的幂
0的正数幂都等于0。
0的负数幂没有定义。
任何非0之数的0次方都是1;而0的0次方是懸而未決的,某些領域下常用的慣例是約定為1。但某些教科書表示0的0次方為無意義。也有人主張定義為1。
负1的幂
-1的奇数幂等于-1
-1的偶数幂等于1
指数非常大时的幂
一个大于1的数的幂趋于无穷大,一个小于-1的数的幂趋于负无穷大
:当a > 1, n \to \infty, a^n \to \infty
:当a , n \to \infty, a^n \to -\infty 或 \infty , (視乎n 是奇數或偶數)
一个绝对值小于1的数的幂趋于0
:当|a| , n \to \infty, a^n \to 0
1的幂永远都是1
:当a = 1, n \to \infty, a^n \to 1
如果数a趋于1而它的幂趋于无穷,那么极限并不一定是上面几个。一个很重要的例子是:
:当 n \to \infty, \left(1+\frac{1}{n}\right)^n \to e
参见e的幂
其他指数的极限参见幂的极限
正实数的实数幂
一个正实数的实数幂可以通过两种方法实现。
- 有理数幂可以通过N次方根定义,任何非0实数次幂都可以这样定义
- 自然对数可以被用来通过指数函数定义实数幂
N次方根
一个数a的n次方根是x,x使x^n=a。
如果a是一个正实数,n是正整数,那么方程x^n=a只有一个正实数根。
这个根被称为a的n次方根,记作:\sqrt[n]{a},其中\sqrt{\ }叫做根号。或者,a的n次方根也可以写成a^{\frac{1}{n}}.
例如4^{\frac{1}{2}} = 2,\ 8^{\frac{1}{3}} = 2
当指数是\frac{1}{2}时根号上的2可以省略,如:\sqrt{4}=4^{\frac{1}{2}}= \sqrt[2]{4} = 2
有理数幂
有理数指数幂定义为
:a^{\frac{m}{n}} = (a^m)^{\frac{1}{n}} = \sqrt[n]{a^m}
e的幂
这个重要的数学常数e,有时叫做欧拉数,近似2.718,是自然对数的底。它提供了定义非整数指数幂的一个方法。
它是从以下极限定义的:
:e =\lim_{n \to \infty} \left(1+\frac{1}{n} \right)^n
指数函数的定义是:
:e^x =\lim_{n \to \infty} \left(1+\frac{x}{n} \right)^n
可以很简单地证明e的正整数k次方e^k是:
:e^k = \left[\lim_{n \to \infty} \left(1+\frac{1}{n} \right) ^n\right]^k
:= \lim_{n \to \infty} \left(1+\frac k {n\cdot k} \right)^{n \cdot k}
:= \lim_{n \cdot k \to \infty} \left(1+\frac k {n\cdot k} \right)^{n \cdot k}
:= \lim_{m \to \infty} \left(1+\frac k m \right)^m
实数指数幂
因为所有实数可以近似地表示为有理数,任意实数指数x可以定义成:
: b^x = \lim_{r \to x} b^r,
例如:
:x \approx 1.732
于是
:5^x \approx 5^{1.732} =5^{\frac{433}{250}}=\sqrt[250]{5^{433}} \approx 16.241
实数指数幂通常使用对数来定义,而不是近似有理数。
自然对数\ln{x} 是指数函数e^x的反函数。
它的定义是:对于任意b>0,满足
:b = e^{\ln b}
根据对数和指数运算的规则:
:b^x = (e^{\ln b})^x = e^{x \cdot\ln b}
这就是实数指数幂的定义:
:b^x = e^{x\cdot\ln b}\,
实数指数幂b^x的这个定义和上面使用有理数指数和连续性的定义相吻合。对于复数,这种定义更加常用。
负实数的实数幂
如果a是负数且n是偶数,那么x = a^n是正數。如果a是负数且n是奇数,那么x = a^n是负数。
使用对数和有理数指数都不能将a^k(其中a是负实数,k实数)定义成实数。在一些特殊情况下,给出一个定义是可行的:负指数的整数指数幂是实数,有理数指数幂对于a^\frac{m}{n}(n是奇数)可以使用n次方根来计算,但是因为没有实数x使x^2 = -1,对于a^\frac{m}{n}(n是偶数)时必须使用虚数单位i。
使用对数的方法不能定义a\leq 0时的a^k为实数。实际上,e^x对于任何实数x都是正的,所以\ln(a)对于负数没有意义。
使用有理数指数幂来逼近的方法也不能用于负数a因为它依赖于连续性。函数f(r) = a^r对于任何正的有理数a是连续的,但是对于负数a,函数f在有些有理数r上甚至不是连续的。
例如:当a=-1,它的奇数次根等于-1。所以如果n是正奇数整数,-1^{\frac m n}=-1当m是奇数,-1^{\frac m n}=1当m是偶数。虽然有理数q使-1^q=1的集合是稠密集,但是有理数q使-1^q=-1的集合也是。所以函数-1^q在有理数域不是连续的。
因此,如果要求负实数的任意实数幂,必须将底数和指数看成複數,按复数的正实数幂或复数的复数幂方法计算。
正实数的复数幂
e的虚数次幂
ez可以通过当N趋于无穷大时的极限来定义,那么eiπ就是的极限。在这个动画中n从1取到100。的值通过N重复增加在复数平面上展示,最终结果就是的准确值。可以看出,随着N的增大,逐渐逼近极限-1。这就是欧拉公式。]]
複數运算的几何意义和e的幂可以帮助我们理解e^{ix}(x是实数),即純虛數指數函數。想象一个直角三角形(0,1,1+\frac{ix}{n})(括号内是复数平面内三角形的三个顶点),对于足够大的n,这个三角形可以看作一个扇形,这个扇形的中心角就等于\frac{x}{n}弧度。对于所有k,三角形(0,(1+\frac{ix}{n})^k, (1+\frac{ix}{n})^{k+1})互为相似三角形。所以当n足够大时(1+\frac{ix}{n})^n的极限是复数平面上的单位圆上x弧度的点。这个点的极坐标是(r,\theta)=(1,x),直角坐标是(\cos x,\sin x)。所以e^{ix} = \cos x + i \sin x,而這個函數可以稱為純虛數指數函數。这就是欧拉公式,它通过複數的意义将代数学和三角学联系起来了。
等式e^z = 1的解是一个整数乘以2i\pi:
:\{ z : e^z = 1 \} = \{ 2k\pi i : k \in \mathbb{Z} \}.
更一般地,如果e^b = a,那么e^z = a的每一个解都可以通过将2i\pi的整数倍加上b得到:
:\{ z : e^z = a \} = \{ b + 2k\pi i : k \in \mathbb{Z} \}.
这个复指数函数是一个有周期2i\pi的周期函数。
更简单的:e^{i\pi} = -1;\ e^{x + iy}= e^x(\cos y + i \sin y )。
三角函数
根据欧拉公式,三角函数余弦和正弦是:
:\cos z = \frac{ e^{i\cdot z} + e^{-i\cdot z}} {2} \qquad \sin z = \frac{e^{i\cdot z} - e^{-i\cdot z}}{2\cdot i}
历史上,在复数发明之前,余弦和正弦是用几何的方法定义的。上面的公式将复杂的三角函数的求和公式转换成了简单的指数方程
:e^{i\cdot (x+y)}=e^{i\cdot x}\cdot e^{i\cdot y}.\,
使用了复数指数幂之后,很多三角学问题都能够使用代数方法解决。
e的复数指数幂
e^{x+iy}可以分解成e^x\cdot e^{iy}。其中e^x是e^{x+iy}的模,e^{iy}决定了e^{x+iy}的方向
正实数的复数幂
如果a是一个正实数,z是任何复数,a^z定义成e^{z\cdot \ln(a)},其中x=\ln (a)是方程e^x = a的唯一解。所以处理实数的方法同样可以用来处理复数。
例如:
:2^i = e^{i\cdot \ln(2)} = \cos{\ln 2}+i\cdot \sin{\ln 2 } = 0.7692+0.63896i
:
:
:(e^{2\pi})^i = 535.49^i = 1
复数的复数幂
複數的虚数幂
让我们从一个简单的例子开始:计算 \left( 1+i \right)^i 。
\begin{align}
\left( 1+i \right)^i & = \left[\sqrt{2}\left(\frac{\sqrt{2}}{2}+\frac{\sqrt{2}}{2} i\right)\right]^i \\
& = \left(\sqrt{2}e^{\tfrac{\pi}{4}i}\right)^i \\
& = e^{-\tfrac{\pi}{4}}\sqrt{2}^i \\
& = e^{-\tfrac{\pi}{4}}\cos\frac{\ln 2}{2} + ie^{-\tfrac{\pi}{4}}\sin\frac{\ln 2}{2} \\
\end{align}
其中 \sqrt{2}^i 的得法参见上文正实数的复数幂
复数的复数幂
类似地,在计算复数的复数幂时,我们可以将指数的实部与虚部分开以进行幂计算。例如计算 \left( 1+i \right)^{2+i} :
\begin{align}
\left( 1+i \right)^{2+i} & = \left( 1+i \right)^2 \left( 1+i \right)^i \\
& = 2ie^{-\tfrac{\pi}{4}}\left(\cos\frac{\ln 2}{2} + i\sin\frac{\ln 2}{2}\right) \\
& = -2e^{-\tfrac{\pi}{4}}\sin\frac{\ln 2}{2} + 2ie^{-\tfrac{\pi}{4}}\cos\frac{\ln 2}{2} \\
\end{align}
一般情况
复数的复数幂必须首先化为底数为e的形式:
w^z = e^{z \ln w}
又,由复数的极坐标表示法:
w = r e^{i\theta}
故
w^z = e^{z \ln(w)} = e^{z(\ln(r) + i\theta)}。
然后,使用欧拉公式处理即可。
由于复数的极坐标表示法中,辐角\theta的取值是具有周期性的,因此复数的复数幂在大多数情况下是多值函数。不过实际应用中,为了简便起见,辐角都只取主值,从而使幂值唯一。
在函數中
當函數名後有上標的數(即函數的指數),一般指要重複它的運算。例如f^3 (x )即f ( f ( f ( x ) ) )。特別地,f^{-1} (x )指f (x )的反函數。
但三角函数的情況有所不同,一個正指數應用於函數的名字時,指答案要進行乘方運算,而指數為-1時则表示其反函數。例如:(\sin x)^{-1}表示\csc x。因此在三角函數時,使用\sin^{-1} x來表示\sin x的反函數\arcsin x。
计算自然数(正整数)n的a^n的算法
最快的方式计算a^n,当n是正整数的时候。它利用了测试一个数是奇数在计算机上是非常容易的,和通过简单的移所有位向右来除以2的事实。
在C/C++语言中,你可以写如下算法:
double power(double a, unsigned int n)
{
double y = 1;
double f = a;
while (n > 0) {
if (n % 2 == 1) y *= f;
n >>= 1;
f *= f;
}
return y;
}
此算法的時間複雜度為\Omicron(\log n)\!,比普通算法快(a自乘100次,時間複雜度為\Omicron(n)\!),在n較大的時候更為顯著。
例如計算a^{100},普通算法需要算100次,上述算法則只需要算7次。若要計算a^{n} (n 可先以上述算法計算a^,再作倒數。
另見
- 迭代冪次
註釋
外部連結
评论 (0)