第2種Stirling数 S(n,k) を正確に計算

第2種Stirling数 S(n,k) を正確に計算

0≤n≤22、0≤k≤nの第2種Stirling数を安全整数範囲内の漸化式で正確に計算します。

入力

0以上22以下の整数です。

0以上n以下の整数です。

使い方

  1. 非負整数nと0≤k≤nを入力します。
  2. 集合分割数S(n,k)をexact DPで計算します。
  3. 境界値、漸化式、Bell数との和で検算します。

計算式・考え方

x^n=Σ_(k=0)^n S(n,k)x(x−1)…(x−k+1)として第2種Stirling数を定義します。

注意事項

  • NIST DLMF §26.8を2026年7月13日に照合しました。S(n,k)=S(n−1,k−1)+kS(n−1,k)で、n要素のラベル付き集合をk個の空でない部分集合へ分割する方法の個数です。
  • 第2種Stirling数は常に非負です。新しい要素を単独の部分集合にする場合がS(n−1,k−1)、既存k個のどれかへ入れる場合がkS(n−1,k)に対応し、漸化式を組合せ的にも説明できます。
  • canonical UIはn≥1、1≤k≤nですが、自然な境界S(0,0)=1を追加します。n>0ではS(n,0)=0、S(n,1)=1、S(n,n)=1です。k>nは集合分割として0ですが、入力ミスを発見しやすくするためこのページではエラーにします。
  • 全kを安全整数に保てる連続範囲はn≤22です。row22最大はS(22,9)=1241963303533920です。n=23ではS(23,9)=12320068811796900となり2^53−1を超えるため許可しません。
  • 固定nについてΣ_k S(n,k)はBell数です。また通常べきx^nを下降階乗基底へ変換する係数でもあります。第1種が逆向きの基底変換と符号を担うため、同じn,kでも二種類の値を取り違えないでください。
  • このページは一組の入力から一つまたは少数の代表値を求めるスカラー計算機です。連続区間の形を調べるグラフ版とは目的が異なり、教科書の例題、実装テスト、数表の一点を落ち着いて照合できます。同じ記号でも符号規約、解析接続、上昇階乗と下降階乗の違いがあるため、結果だけでなく本文の定義式を先に確認してください。
  • 計算は利用者のブラウザ内だけで完結し、入力値を外部APIやサーバーへ送信しません。eval、new Function、fetch、XHR、WebSocketを使わず、コード側で許可した有界named functionだけを呼び出します。反復回数、整数上限、有限性を検査し、範囲外や未定義点を都合のよい近似値へ置き換えません。
  • JavaScriptの数値はIEEE 754 binary64で、整数を常に厳密に表せるのは絶対値2^53−1以下です。Bernoulli数とStirling数はこの安全整数境界から入力上限を決めています。画面表示は最大15桁へ整形されるため、16桁の安全整数は科学表記で末尾が丸められる場合がありますが、内部のnamed functionとテストoracleは安全整数として厳密です。
  • 検算ではcanonical既定値だけでなく、0、端点、符号が変わる点、最初の未許可値を分けて確認します。漸化式を使う整数列は隣接行を独立DPと比較し、ゼータ関連関数は高精度mpmath、Bernoulli数は既約Fraction、Pochhammerは直接積と照合します。異なる方法が同じ丸め値を返すことを確認してから利用してください。
  • 入力欄は有限値と整数条件を検査し、エラーがあれば対象欄へフォーカスを戻します。0と未定義、非常に小さい非零値、近似小数と厳密整数を区別します。結果をコピーするときは関数名、入力、採用した規約、確認日も一緒に記録すると、別の資料やソフトウェアで条件を復元しやすくなります。
  • この計算結果は学習、数表作成、プログラムの単体テストを補助するものです。有限範囲の一つの値から、関数全体の収束、零点の個数、解析的性質を断定しないでください。証明、任意精度、複素変数が必要な用途では、NIST DLMFなどの一次資料と多倍長実装を併用し、用途に必要な誤差基準を別途定めてください。
  • 有界な実数・安全整数の学習と検算用です。任意精度、複素変数、範囲外の解析接続は扱いません。

よくある質問

S(n,k)は何を数えますか?

n要素の集合をk個の空でない部分集合へ分割する方法を数えます。

第1種との違いは?

第2種は集合分割と通常べきから下降階乗への変換、第1種は置換の巡回と逆向きの変換に関係します。

n=23を計算できない理由は?

行内の値がJavaScriptの安全整数2^53−1を超えるためです。

入力値と計算結果は利用者の端末内だけで処理されます。外部送信、履歴保存、第三者APIへの問い合わせ、WordPressへの自動書込みは行いません。