見積もりの2.5倍あった答え
赤い頂点の上に白い頂点を置かずに、立方体の8つの頂点を白と赤に塗り分ける方法は、何通りあるだろうか。立方体は1つの頂点で立て、「上」は辺をたどって上がった先のことだとする。答えは20通りで、正方形なら6通りになる。9次元の立方体まで広げると、およそ通り、42桁の数になる。
これが9番目のデデキント数で、9つの入力をもつ単調なブール関数の個数にあたる。値を求めたチームの1人、レナート・ファン・ヒルトゥムは、パーダーボルン大学の発表の中で、デデキント数をこの塗り分けの遊びで説明している。8番目のでも、すでに23桁ある。
ドイツのパーダーボルン大学にあるスーパーコンピューター「ノクトゥア2」がこの42桁を出したのは、2023年3月8日のことだ。ファン・ヒルトゥムがベルギーのルーヴェン・カトリック大学で書いた修士論文から始まった計画で、大学の発表によると、プログラムはおよそ5か月動き続けた。

ところが、チームはすぐには発表しなかった。
値が、知られていた見積もりの2.5倍近くあったからだ。1981年にコルシュノフが導いた近似式で計算すると、はおよそになる。ファン・ヒルトゥムも著者に加わった2026年の論文には、ずれが大きすぎたため自分たちのプログラムの誤りを疑い、発表を遅らせたと記されている。
42桁の数が正しいと、どうすれば言えるのだろうか。手がかりは多くなかった。2月には、ポーランドのグダンスク大学の2人が、を210で割ると6余るはずだと示していた。ノクトゥア2の値もこの検査に通ったが、計算の組み立て上、足し合わせる項のほとんどが210で割り切れるので、決め手にはならない。しかも、途中で1ビットでも反転していれば値は狂う。インテルが例に挙げる故障の頻度を当てはめると、その確率はおよそ2割になると、チームは原稿で見積もっている。そこで、全部を計算し直す2回目の実行に取りかかった。
4月3日、別の計算の原稿が先にarXivへ投稿された。書いたのは、ドイツのドレスデン工科大学のクリスティアン・イェーケルである。イェーケルはGPUのNvidia A100を延べ5,311時間使い、行列の積を42億回あまりとっていた。出てきた値は、ノクトゥア2の値と1桁残らず同じだった。
3日後の4月6日、ファン・ヒルトゥムら7人も原稿を投稿した。末尾の注には、イェーケルの原稿が「私たちの結果を裏付けている」とある。数列を集めたデータベースOEIS(オンライン整数列大辞典)には、4月4日にの値が加わった。1991年にが論文になってから、32年ぶりの更新。
最大公約数から始まった数え上げ
デデキントが1897年に書いた論文の題は、「数をその最大公約数で分解することについて」である。ブラウンシュヴァイクの工科大学が出した記念論集の、最初の40ページを占める。デデキントはこの学校で1862年から教え、3年前の1894年に退職していた。

最大公約数と最小公倍数をとる操作は、何度くり返しても行き先が限られる。2つの数, からは、, , , の4つしか出てこない。を計算しても、に戻ってしまうからだ。たとえば3つの数154, 273, 715から始めると、最大公約数と最小公倍数を何度とり直しても、現れる数は1から30,030までの18種類で止まる。
18は、3つの記号から「交わり」と「結び」だけで作れる式が、分配法則などで整理すると何通りに分かれるかの数でもある。, , のように素因数を配ると、式の違いがそのまま数の違いになる。12, 8, 9のような数では、違う式から同じ数が出て、9種類に減る。ランドルフ・チャーチが1940年に書いた論文には、デデキントが記号4つの場合まで式の種類の数を求めていた、とある。

では、これがなぜブール関数の数になるのか。最大公約数を「かつ」、最小公倍数を「または」に置き換えると、どの式も否定を使わない論理式になる。否定を使わない論理式で書ける関数は、入力のどれかを0から1に変えても値が下がらない。これが単調なブール関数で、逆に定数でない単調なブール関数は、どれもこうした式で書ける。
数え方には2つの流儀がある。1940年にチャーチが書いた論文の表では、記号が4つで166、5つで7,579となっている。いまの, より2ずつ小さいのは、つねに0を返す関数と、つねに1を返す関数を数えていないからだ。OEISは、定数を含む数え方をA000372、含まない数え方をA007153として分けて載せている。この記事のは前者で、から2を引いた数がA007153のの値になる。
その先は、1つ進むたびに長い年月がかかった。
は1946年にモーガン・ウォードが、は1965年にチャーチが求め、1976年にバーマンとケーラーが検算した。は、ダグ・ウィーデマンが当時最も強力なスーパーコンピューターだったクレイ2で計算し、1991年に2ページの報告を出している。前年の1990年11月、ウィーデマンは整数列の事典を編んでいたニール・スローンに手紙で値を知らせ、「残念ながら、確かめる方法が思いつかない」と書き添えた。値は2001年に、別の4人が計算し直して確認した。

値を1つずつ求める一方で、どれくらいの大きさになるのか、見当をつける研究も進んだ。1969年、ダニエル・クライトマンは、をで割った比が1に近づくと証明した。は、個から半分を選ぶ選び方の数である。1981年にはコルシュノフが、そのものの近似式を導く。ただし近似式は奇数ので外れやすく、とでは本当の値の2倍以上になる。では逆に、6割も小さく出たのである。
立方体を面で切り分ける
入力は、どの成分も0か1をとる。どの成分でものときと書き、2つの関数も、すべての入力でのときと書く。変数の単調なブール関数の集まりを、その個数をとする。
-
単調であることを、大小の関係で書く
-
値が1になる入力のうち、それより小さい入力では値がすべて0になるものを集める。どの2つも大小を比べられない集まり、つまり反鎖になり、はから次のように決まる
-
1をちょうど個含む個の入力は、どの2つも比べられない。このうちからいくつ選んでも反鎖になるので、選び方を数えるだけで下界(かかい)が出る
-
変数の関数を、最後の入力を0にしたと、1にしたに分ける。が単調になるのは、とが単調で、どの入力でものときに限る。組はから選ぶ
手順4は、立方体を向かい合う2つの面に分けて見ることにあたる。
-
変数なら、最後の2つの入力で, , , の4つに分ける。, , , の4つの条件は、次の2つにまとまる
真ん中の2つを決めてしまえば、下と上は互いに関係なく選べる。
-
, を決め、残る2つの選び方を掛けて足す。とは全体を動く。のとき、となる関数の集まりを区間とよび、その元の数をと書く
-
同じ組を、先にを決めて数え直す。とは区間の中なら何でもよい
-
手順6の2つの数を、行列との成分とみる。は対称なので、和は積の対角成分の和になる
-
手順6の組を、, となる組ごとにまとめる。こうなるの数はと書ける1
手順6の式は、1976年にバーマンとケーラーが示していた。手順7の形まで直せば、区間の大きさを2乗して足すだけでが出る。
2つのチームは、この同じ切り分けから別々の方向に進んだ。イェーケルは入力を一度に4つ切り分ける式を作り、をの7,581個から組み立てた。を元にしなかったのは、2兆4千億個あまりの元を書き出すだけで約38.63テラバイトが要るからだ。代わりに、にある7,828,354個の区間を、形が同じもの、上下を裏返すと同じになるものを1つにすれば、9,919種類に減らせる。形の同じものを見つけるのに、形式概念分析という束の表し方と、グラフの同型を調べるソフトウェアnautyを使った。区間の中の組も同じようにまとめ、86億あまりあった組を4,257,682,565組まで減らしている。組ごとに最大7,581行の行列を掛け、手順8と同じくトレースを足していく。
ファン・ヒルトゥムらは、手順9の式をで使った。変数の入れ替えで移り合う関数をまとめ、一方の関数を約4億9千万の代表に絞る。代表ごとに、もう一方の候補を平均4,600万個とり、7変数の入れ替え5,040通りを試す。数える項は、合わせて個。を求めるには図のかたまりを数える必要があり、枝分かれの多い処理なので、CPUでもGPUでも速く回らない。そこでチームは、この計算だけをする回路をFPGAという書き換えのできるチップに300個並べ、450 MHzで動かした。論文誌の版によると、64コアのCPU向けに最適化したプログラムの95倍の速さで、FPGAを延べ4万7千時間使っている。ファン・ヒルトゥムは大学の発表で、「なら8分で済む計算が、では数十万年になる」と話し、大型のスーパーコンピューターを独り占めしても何年もかかると続けた。
6つの関数から168を出す
の6つの関数を手順7の式に入れ、を出す。2変数の単調な関数は、定数の0と1のほかに, , , の4つである。とは大小を比べられないので、6つは菱形に並ぶ。区間ごとに元の数を数えて2乗し、足していく。
-
6つの関数を小さい順に並べる
-
元が1つの区間6つを足す
-
元が2つの区間6つを足す
-
など元が3つの区間4つを足す
-
の元4つを2乗する
手順5の区間は、とを両方含む菱形そのもの。
-
との2つを足す
-
全体の区間の元6つを2乗する
-
ぜんぶ足す
手順4の4つは, , , である。数えた区間は個で、これはに等しい。区間を1つ選ぶことは、証明の手順4でとなる組を1つ選ぶことと同じだからだ。
同じ式をの7,581個に使えば、が出る。この記事のために手順6の和をそのまま書いたプログラムは、1つのCPUコアで5秒ほどで答えを返した。ところがを手順6で出そうとすると、から2つ選ぶ組を通り回ることになる。
252回たずねれば決まる
9つのスイッチがついた装置を考える。どの入れ方で動くかは分からないが、入れるスイッチを増やして止まることはない、とだけ分かっている。動き方をすべて知るには、512通りの入れ方を全部試す必要があるのだろうか。
答えは252回。これより少なくはできない。
まず、数えるだけで分かる下界がある。動き方の候補は通りあり、1回の試しで分かるのは、動くか動かないかの1ビットだけだ。だから、どんな順で試しても、運が悪ければ、つまり138回より少なくは終わらない。
実際の手順には、1966年にジョルジュ・アンセルが示した鎖の分け方を使う。512個の頂点を、1を1つずつ増やしながら上る126本の鎖に分け、短い鎖から順に試していく。すでに試した頂点から単調性で決まる分を除くと、どの鎖でも分からない頂点は多くて2つで、しかも隣り合っている。下の方を試して1なら上も1、0なら上を試せばよい。1本につき2回で足り、126本で252回になる。
コロブコフとアンセルの結果から、どんな動き方でも確実に決められる最少の回数は、ちょうど回だと分かっている。数えるだけで出る138回より114回多いのは、どんな試し方でも、1回ごとに候補をちょうど半分に絞れるとは限らないからだ。
鎖の分け方からは、上界も出る。1本の鎖で残る塗り方は、隣り合う2頂点の00, 01, 11の3通り以下なので、鎖の数だけ3を掛けてとなる。9変数ではとの間に、が入る。下界の約3,400倍で、上界には18桁以上届かない。
小さな立方体で確かめる
例題 1基本スイッチ2つの関数
2変数のブール関数を、4つの値の並びで表す。
(1)単調なものをすべて挙げよ。
(2)(1)のうち、定数でないものはいくつあるか。
解説を見る
(1)単調なら、とが成り立つ。ならすべて1、ならすべて0になる。残りは, の場合で、真ん中の2つを自由に選べる。
この6つが、順に, , , , , にあたる。である。
(2)定数の2つを除いた4つ。2つの数から最大公約数と最小公倍数で作れる数が4種類なのと、同じ数え方である。
例題 2基本最大公約数の分配法則
, , とする。
(1)とを求めよ。
(2)とを求めよ。
解説を見る
(1)なので、左はである。右は、とから。どちらも12になる。
(2)なので、左はである。右は、とから。こちらも一致する。
素数ごとに見ると、最大公約数は指数の小さいほう、最小公倍数は大きいほうをとる。とのあいだには次の分配法則が成り立つので、最大公約数と最小公倍数の式も同じ法則に従う。
例題 3入試真ん中の段で数える
集合の部分集合を集めた族のうち、どの2つも一方が他方を含まないものを反鎖とよぶ。
(1)2個の元からなる部分集合だけでできた反鎖は、何通りあるか。部分集合を1つも含まない族も数える。
(2)ちょうど1つの部分集合からなる反鎖は、何通りあるか。
(3)が、との間にあることを確かめよ。
解説を見る
(1)2個の元からなる部分集合は個ある。大きさが同じで異なる2つの集合は、一方が他方を含むことがない。6個からいくつ選んでも反鎖になるので、次のとおり。
(2)部分集合は空集合と全体を含めて個あり、1つだけなら必ず反鎖になるので16通り。1つの部分集合だけの反鎖は、「に入る番号の入力がすべて1なら1」という関数にあたる。が空集合なら、つねに1を返す関数になる。
(3)である。指数で比べると、は6の約1.23倍で、上界の指数には届かない。
例題 4難関組を数えてD(3)を出す
の6つの関数, , , , , を考える。
(1)となる組を数え、になることを確かめよ。
(2)から関数を2つ、同じものも許して順に選ぶ。となる確率を求めよ。
解説を見る
(1)を決めて、それ以上のを数える。なら6個、なら5個、となら3個ずつ、なら2個、なら1個ある。
手順4の式から、これがになる。
(2)選び方は通りなので、確率は次のとおり。
9変数で同じ確率を求めるとになり、2026年の見積もりでは約まで下がる。
例題 5大学アンセルの鎖
3次元の立方体にある8つの頂点を、の順に0と1を並べて書き、次の3本の鎖に分ける。
(1)短い2本の鎖での値が分かれば、長い鎖での値の並びは3通り以下に絞られることを示せ。
(2)を示せ。また、どんな単調な関数でも当てられる質問の回数について、情報量から下界を求めよ。
解説を見る
(1)長い鎖では、値は下から0が続いたあとに1が続く。はとの間に入るので、なら、ならになる。同じくはとの間に入り、なら、ならになる。
, なら、分からないのはとだけで、並びは00, 01, 11の3通りである。, ならとが、, ならとが残り、やはり3通りになる。, なら、4つの値がすべて決まる。
(2)短い鎖の値の並びも00, 01, 11の3通りなので、全体は通り以下になる。単調な関数は20個あり、1回の質問で分かるのは1ビットなので、少なくとも次の回数が要る。
アンセルの鎖を使う手順では、1本につき2回までで、合わせて回で足りる。
下界へ寄っていく比
図の3本の鎖は例題5と同じもので、の両側を1枚で見渡せる。
上界と下界を指数で比べると、をで割った比は、1との間に入る。ではがちょうど上界に重なり、が増えるにつれて比は1へ下がっていく。クライトマンが1969年に示したとおりだ。ただ、下がり方はまっすぐではない。までは奇数のところで少し跳ね上がり、の1.093はの1.080より大きい。コルシュノフの近似式も偶数と奇数で別の形をとり、奇数のほうが外れやすかった。から先の見積もりでは、偶数と奇数の差は目立たなくなる。
20通りを自分で数える
頂点をたたくと、その頂点と、辺をたどって上にある頂点がまとめて塗られる。塗られた頂点をたたけば、その頂点と下にある頂点の塗りが消えるので、画面はいつも単調な関数のどれかを表す。点線の輪の頂点が反鎖で、見つけた塗り方は横(スマホでは下)の欄にたまっていく。4変数の168通りをそろえるのは、なかなかの根気仕事だ。
分配束、論理回路、投票の決め方
- 数学 個の元から交わりと結びだけで作れる式が、分配法則のもとで何種類に分かれるか、つまり自由分配束の大きさを求めるときに使う。その数は定数の2つを除いたで、3つの元なら18種類になる。カーン=カライ予想で扱う「要素を足しても崩れない性質」も、選んだ集合を入力とみれば単調なブール関数そのものである。
- 情報科学 論理積と論理和だけで、否定を使わずに組んだ論理回路や論理式が何種類の関数を表せるかを、数えるときに使う。否定の無い論理式で書ける関数はちょうど単調なブール関数で、定数を除けば種類ある。ならのような18通りで、OEISのA007153にその一覧が載っている。
- 経済学 投票で2つの案から1つを選ぶとき、だれも偽りの票を入れて得をしない決め方、つまり耐戦略性をもつ社会選択関数を数えるときに使う。どの投票者もどちらかの案をはっきり好むなら、人で投票するときの決め方は通りある。2022年にバジーレらは、どちらでもよいと答えることも認めた場合に、人の決め方から人の決め方を組み立てる方法を示し、その数の計算はデデキント数と同じように難しいと述べた。
42桁の先を数える
- 2023年 パヴェルスキとシェピェトフスキ(グダンスク大学):が求まる前の2月、を2, 3, 5, 7で割った余りを計算し、中国剰余定理でとまとめた。5月にはパヴェルスキが、変数の入れ替えで移り合う関数を1つと数えたを初めて求め、36桁の値を出している。バーンサイドの補題では、恒等置換の項がにあたる。出典はarXiv:2302.04615とarXiv:2305.06346。
- 2023年 ファルガス=ラヴリ、ラーティ、トモン(ウメオ大学):0と1の代わりにからの値をとる格子で、反鎖の数を調べた。いちばん大きい反鎖の大きさをとして、どのでもとなる定数があることを示し、モシュコヴィッツとシャピラの予想を解決した。がデデキントの問題で、は下界の指数にあたる。出典はarXiv:2310.12946。
- 2026年 フィーマン、ファン・ヒルトゥム、プレスル(パーダーボルン大学ほか):無作為に選んだ単調な関数の統計からからまでを見積もり、を4桁まで決めた。で誤差が最も小さかったのは、真ん中の段より下がすべて0、上がすべて1になる関数の割合を測る方法で、その逆数1234.414を下界に掛けている。9変数の関数を2つ選んでとなる割合から、手順4のからも見積もり、誤差の範囲で一致した。出典はarXiv:2607.08446。
- 2026年 チェンら(上海大学など):値が1になる入力の数ごとに単調な関数を数えたを、隣り合う段の比から組み立て直した。1つ足しても単調なままの入力の数と、1つ外しても単調なままの入力の数を、それぞれ平均して使い、から比を出す。と見積もり、は真ん中で浅くくぼみ、肩を2つもつ形らしいと報告した。出典はarXiv:2606.09795(Mathematics 14 (2026), 3300)。
参考文献
- R. Dedekind, "Über Zerlegungen von Zahlen durch ihre grössten gemeinsamen Theiler", Fest-Schrift der Herzoglichen Technischen Hochschule Carolo-Wilhelmina (Braunschweig, 1897), 1-40; R. Church, "Numerical analysis of certain free distributive structures", Duke Math. J. 6(3) (1940), 732-734.
- M. Ward, "Note on the order of free distributive lattices", Bull. Amer. Math. Soc. 52 (1946), 423; J. Berman, P. Köhler, "Cardinalities of finite distributive lattices", Mitt. Math. Sem. Giessen 121 (1976), 103-124; D. Wiedemann, "A computation of the eighth Dedekind number", Order 8(1) (1991), 5-6.
- C. Jäkel, "A computation of the ninth Dedekind number", J. Comput. Algebra 6-7 (2023), 100006 (arXiv:2304.00895, 2023).
- L. Van Hirtum, P. De Causmaecker, J. Goemaere, T. Kenter, H. Riebler, M. Lass, C. Plessl, "A computation of the ninth Dedekind number using FPGA supercomputing", ACM Trans. Reconfigurable Technol. Syst. 17(3) (2024), 1-28 (arXiv:2304.03039, 2023); Paderborn University, "Ninth Dedekind number discovered: Scientists from Paderborn and Leuven solve long-known problem in mathematics" (26 June 2023).
- D. Kleitman, "On Dedekind's problem: the number of monotone Boolean functions", Proc. Amer. Math. Soc. 21 (1969), 677-682; A. D. Korshunov, "The number of monotone Boolean functions", Problemy Kibernet. 38 (1981), 5-108; G. Hansel, "Sur le nombre des fonctions booléennes monotones de n variables", C. R. Acad. Sci. Paris 262 (1966), 1088-1090; S. N. Selezneva, Y. Liu, "Learning of monotone functions with single error correction", Diskretnaya Matematika 31(4) (2019), 53-69.
- B. Pawelski, A. Szepietowski, "Divisibility properties of Dedekind numbers", arXiv:2302.04615 (2023); B. Pawelski, "On the number of inequivalent monotone Boolean functions of 9 variables", arXiv:2305.06346 (2023); OEIS Foundation, A000372 and A007153; A. Basile, A. De Simone, C. Tarantino, "A note on binary strategy-proof social choice functions", Games 13(6) (2022), 78.
- V. Falgas-Ravry, E. Räty, I. Tomon, "Dedekind's problem in the hypergrid", arXiv:2310.12946 (2023); A. Fihman, L. Van Hirtum, C. Plessl, "Statistical estimation of higher Dedekind numbers", arXiv:2607.08446 (2026); T.-S. Chen, H. Feng, H. Wang, C.-S. Chen, K. Zhang, "Finite-n estimate of Dedekind numbers by layer-ratio Monte Carlo", Mathematics 14(18) (2026), 3300 (arXiv:2606.09795).
注
-
入力の0と1を入れ替え、値が1になる入力の集まりを「小さくしても1のまま」の形で書く。で1になる極大な入力のうちでは0になるものを点とし、2点の共通部分でが0になるとき、2点を線で結ぶ。はこの図のつながったかたまりの数で、組の数がになることは、2014年にデ・カウスマーカーとデ・ヴァンネマッカーが示した。この記事のために、4変数までのすべての組で計算し、一致を確認した。 ↩