ベイリー＝ボールウェイン＝プラウフの公式
以下ではBBP公式から円周率 π の十六進法で n 桁目の数を与えるアルゴリズム(BBPアルゴリズム)について説明する。
一般に数 α の b 進法で小数点以下 n 桁目の値を求めるには、α に b を掛けて(n − 1 桁左にシフトして)その小数部分の最上位の桁を計算すればよい。BBPアルゴリズムでは n 桁目だけを必要とするため、小数部の計算は通常の浮動小数点数の演算で済む。bα の整数部分の計算を省略できるなら、α の小数点以下 n − 1 桁までの値を求めずに n 桁目を計算できる。
bα の整数部の計算の省略は剰余算することでできる。 α がBBP型公式の一般形で書ける場合、分母 q(k) で分子 bp(k) を割った余りだけを計算するよう変形し、最後に和の小数部を取り出す:
{ b n − 1 α } mod 1 = { ∑ k = 0 ∞ b ( n − 1 ) − k p ( k ) mod q ( k ) q ( k ) } mod 1 {\displaystyle \left\{b^{n-1}\alpha \right\}{\bmod {1}}=\left\{\sum _{k=0}^{\infty }{\frac {b^{(n-1)-k}p(k){\bmod {q}}(k)}{q(k)}}\right\}{\bmod {1}}}
特にBBP型公式の特殊化の s = 1 の場合では、以下のように書ける: