冪乗
バイナリ法では、次の性質を利用する。
( a x ) 2 = a 2 x {\displaystyle (a^{x})^{2}=a^{2x}}
例えば (a) = a である。したがって、a(すなわち a)から始めて2乗を繰り返すと次行のとおりになる。
a 1 → a 2 → a 4 → a 8 → a 16 → a 32 → ⋯ {\displaystyle a^{1}\to a^{2}\to a^{4}\to a^{8}\to a^{16}\to a^{32}\to \cdots }
これらの数のうち、適切なものを選んで掛け合わせれば、任意の累乗を速く(すなわち少ない乗算回数で)計算することができる。例えば a は、指数法則によって、
a 43 = a 32 + 8 + 2 + 1 = a 32 × a 8 × a 2 × a 1 {\displaystyle a^{43}=a^{32+8+2+1}=a^{32}\times a^{8}\times a^{2}\times a^{1}}
デカルト閉圏において、任意の対象に対して別の任意の対象を冪指数とする冪演算を冪対象によって与えることができる。集合の圏における冪対象は配置集合であるから、これはその一般化になっている。考えている圏に始対象 0 が存在するならば、冪対象 0 は任意の終対象 1 に同型である。
冪演算の底を集合とするとき、何も断りがなければ冪演算はデカルト積である。複数の集合のデカルト積は n-組を与え、n-組は適当な濃度を持つ集合上で定義された写像として表すことができるのだから、この場合冪 S は単に N から S への写像全体の成す集合
S N ≡ { f : N → S } {\displaystyle S^{N}\equiv \{f\colon N\to S\}}
である。この定義は |S| = |S| が満たされるという意味で基数の冪と整合する。ただし |X| は X の濃度を表す。"2" を集合 {0, 1} として定義すれば |2| = 2 が得られる。ここに 2 は X の冪集合であり、普通は P(X) などで表される。
自然数冪が乗法の反復として考えられたことと同様に、冪演算を繰り返す演算というものを定義することもできる。それをまた反復すれば別の演算が定義され、同様に繰り返してハイパー演算の概念を得る。このようにして得られるハイパー演算の列において、次の演算は前の演算に対して急速に増大する。
a 10 = a 5 ⋅ 2 = ( a 5 ) 2 {\displaystyle a^{10}=a^{5\cdot 2}=(a^{5})^{2}}
以下同様に、こうなる。
a 5 = a 2 ⋅ 2 + 1 = ( a 2 ) 2 ⋅ a {\displaystyle a^{5}=a^{2\cdot 2+1}=(a^{2})^{2}\cdot a}
a 2 = a 1 ⋅ 2 = ( a 1 ) 2 {\displaystyle a^{2}=a^{1\cdot 2}=(a^{1})^{2}}
a 1 = a {\displaystyle a^{1}=a}
これを逆順にたどり、
a 43 = ( ( ( ( ( a ) 2 ) 2 ⋅ a ) 2 ) 2 ⋅ a ) 2 ⋅ a {\displaystyle a^{43}=(((((a)^{2})^{2}\cdot a)^{2})^{2}\cdot a)^{2}\cdot a}
として算出できる。(下図で「→」は乗算を表し、「⇒」は2乗を表す。)
2乗した後に a を乗算するか否かは、指数 n を二進表記したときの各ビットが1であるか否かと一致する。
コンピュータのアルゴリズムとして書くとこうなる。
コンピュータ上で指数を自然数とする冪乗(累乗)を効率よく行う演算方法としてバイナリ法(二進数法; en:exponentiation by squaring) とも呼ばれる演算方法を示す。
RSA暗号や確率的素数判定法であるフェルマーテストなどでは、巨大な自然数を指数とする累乗を行う。この方法を使うと、指数がいかに巨大であっても高々そのビット数の2倍の回数の乗算で算出することが可能になり、繰り返し掛けるよりも大幅に効率がよくなる。特にRSA暗号やフェルマーテストなどにおいて各演算後に必要となる剰余演算(一般に最も計算時間がかかる)の回数を減らす効果がある。
一般に、コンピュータにとって標準的な(32ビットコンピュータならば約4億までの)自然数や浮動小数点数を底とする場合は下位桁から計算する方式を、前述のような巨大な自然数を底とする場合には上位桁から計算する方式を用いると効率が良い。
数学における冪乗(べきじょう、べき乗、英: 仏: 独: exponentiation)または冪演算(べきえんざん)は、底 (てい、英: base) および冪指数 (べきしすう、英: exponent) と呼ばれる二つの数に対して定まる数学的算法である。その結果は冪 (べき、英: power) と呼ばれる。表現の揺れにより同じ概念は日本語で「累乗」とも表現されており、初等教育ではこちらの表現のほうが多くなっている(本文参照)。
正の実数に対する冪および対数に関する等式のいくつかは、複素数冪や複素対数がどのように一価函数として定義されようとも、複素数に対しては成り立たないことが起こる。
等式 log(b) = x⋅log(b) は b が正の実数で x が実数のときにはいつでも成り立つ。しかし、複素対数の主枝(英語版)に対して i π = log  ( − 1 ) = log  [ ( − i ) 2 ] ≠ 2 log  ( − i ) = 2 ( − i π 2 ) = − i π {\displaystyle i\pi =\log(-1)=\log \left[(-i)^{2}\right]\neq 2\log(-i)=2\left(-{\frac {i\pi }{2}}\right)=-i\pi } は反例になる。複素対数のどの枝を用いたかに関わらず、この等式には同様の反例が存在する。(この結果のみを使うものとすれば) log  ( w z ) ≡ z ⋅ log  ( w ) ( mod 2 π i ) {\displaystyle \log(w^{z})\equiv z\cdot \log(w){\pmod {2\pi i}}} であるとまでしか言えない。 この等式は log を多価函数と考えるときでさえ成り立たない。
15世紀にニコラ・ショケ(英語版)は冪記法の一種を用い、それは後の16世紀にハインリヒ・シュライベル(英語版)およびミハエル・スティーフェル(英語版)が用いている。
16世紀にロバート・レコードは、square(二次), cube(三次), zenzizenzic(四次), sursolid(五次), zenzicube(六次), second sursolid(七次), zenzizenzizenzic(八次(英語版))の語を用いた。4 乗については biquadrate(複二次)の語も用いられた。
歴史的には "involution" が冪の同義語として用いられていたが現在では稀であり、別の意味(対合)で用いられているので混同すべきではない。