Dedekind number

From HandWiki
Short description: Combinatorial sequence of numbers
contradictionA and B and CA and BA and CB and C(A and B) or (A and C)(A and B) or (B and C)(A and C) or (B and C)ABC(A or B) and (A or C) and (B or C) <====> (A and B) or (A and C) or (B and C)(A or B) and (A or C)(A or B) and (B or C)(A or C) and (B or C)A or BA or CB or CA or B or Ctautology
Loupe light.svg The free distributive lattices of monotonic Boolean functions on 0, 1, 2, and 3 arguments, with 2, 3, 6, and 20 elements respectively (move mouse over right diagram to see description)

In mathematics, the Dedekind numbers are a rapidly growing sequence of integers named after Richard Dedekind, who defined them in 1897. The Dedekind number M(n) counts the number of monotone boolean functions of n variables. Equivalently, it counts the number of antichains of subsets of an n-element set, the number of elements in a free distributive lattice with n generators, or the number of abstract simplicial complexes with n elements.

Accurate asymptotic estimates of M(n) and an exact expression as a summation are known.[1] However Dedekind's problem of computing the values of M(n) remains difficult: no closed-form expression for M(n) is known, and exact values of M(n) have been found only for n ≤ 8.[2]


A Boolean function is a function that takes as input n Boolean variables (that is, values that can be either false or true, or equivalently binary values that can be either 0 or 1), and produces as output another Boolean variable. It is monotonic if, for every combination of inputs, switching one of the inputs from false to true can only cause the output to switch from false to true and not from true to false. The Dedekind number M(n) is the number of different monotonic Boolean functions on n variables.[3]

An antichain of sets (also known as a Sperner family) is a family of sets, none of which is contained in any other set. If V is a set of n Boolean variables, an antichain A of subsets of V defines a monotone Boolean function f, where the value of f is true for a given set of inputs if some subset of the true inputs to f belongs to A and false otherwise. Conversely every monotone Boolean function defines in this way an antichain, of the minimal subsets of Boolean variables that can force the function value to be true. Therefore, the Dedekind number M(n) equals the number of different antichains of subsets of an n-element set.[4]

A third, equivalent way of describing the same class of objects uses lattice theory. From any two monotone Boolean functions f and g we can find two other monotone Boolean functions fg and fg, their logical conjunction and logical disjunction respectively. The family of all monotone Boolean functions on n inputs, together with these two operations, forms a distributive lattice, the lattice given by Birkhoff's representation theorem from the partially ordered set of subsets of the n variables with set inclusion as the partial order. This construction produces the free distributive lattice with n generators.[5] Thus, the Dedekind numbers count the number of elements in free distributive lattices.[6]

The Dedekind numbers also count (one more than) the number of abstract simplicial complexes on n elements, families of sets with the property that any subset of a set in the family also belongs to the family. Any antichain determines a simplicial complex, the family of subsets of antichain members, and conversely the maximal simplices in a complex form an antichain.[7]


For n = 2, there are six monotonic Boolean functions and six antichains of subsets of the two-element set {x,y}:

  • The function f(x,y) = false that ignores its input values and always returns false corresponds to the empty antichain Ø.
  • The logical conjunction f(x,y) = x ∧ y corresponds to the antichain { {x,y} } containing the single set {x,y}.
  • The function f(x,y) = x that ignores its second argument and returns the first argument corresponds to the antichain { {x} } containing the single set {x}
  • The function f(x,y) = y that ignores its first argument and returns the second argument corresponds to the antichain { {y} } containing the single set {y}
  • The logical disjunction f(x,y) = x ∨ y corresponds to the antichain { {x}, {y} } containing the two sets {x} and {y}.
  • The function f(x,y) = true that ignores its input values and always returns true corresponds to the antichain {Ø} containing only the empty set.


The exact values of the Dedekind numbers are known for 0 ≤ n ≤ 8:

2, 3, 6, 20, 168, 7581, 7828354, 2414682040998, 56130437228687557907788 (sequence A000372 in the OEIS).

The first six of these numbers are given by (Church 1940). M(6) was calculated by (Ward 1946), M(7) was calculated by (Church 1965) and (Berman Köhler), and M(8) by (Wiedemann 1991).

If n is even, then M(n) must also be even.[8] The calculation of the fifth Dedekind number M(5) = 7581 disproved a conjecture by Garrett Birkhoff that M(n) is always divisible by (2n − 1)(2n − 2).[9]

Summation formula

(Kisielewicz 1988) rewrote the logical definition of antichains into the following arithmetic formula for the Dedekind numbers:

[math]\displaystyle{ M(n)=\sum_{k=1}^{2^{2^n}} \prod_{j=1}^{2^n-1} \prod_{i=0}^{j-1} \left(1-b_i^k b_j^k\prod_{m=0}^{\log_2 i} (1-b_m^i+b_m^i b_m^j)\right), }[/math]

where [math]\displaystyle{ b_i^k }[/math] is the [math]\displaystyle{ i }[/math]th bit of the number [math]\displaystyle{ k }[/math], which can be written using the floor function as

[math]\displaystyle{ b_i^k=\left\lfloor\frac{k}{2^i}\right\rfloor - 2\left\lfloor\frac{k}{2^{i+1}}\right\rfloor. }[/math]

However, this formula is not helpful for computing the values of M(n) for large n due to the large number of terms in the summation.


The logarithm of the Dedekind numbers can be estimated accurately via the bounds

[math]\displaystyle{ {n\choose \lfloor n/2\rfloor}\le \log_2 M(n)\le {n\choose \lfloor n/2\rfloor}\left(1+O\left(\frac{\log n}{n}\right)\right). }[/math]

Here the left inequality counts the number of antichains in which each set has exactly [math]\displaystyle{ \lfloor n/2\rfloor }[/math] elements, and the right inequality was proven by (Kleitman Markowsky).

(Korshunov 1981) provided the even more accurate estimates[10]

[math]\displaystyle{ M(n) = (1+o(1)) 2^{n\choose \lfloor n/2\rfloor}\exp a(n) }[/math]

for even n, and

[math]\displaystyle{ M(n) = (1+o(1)) 2^{{n\choose \lfloor n/2\rfloor} + 1}\exp (b(n)+c(n)) }[/math]

for odd n, where

[math]\displaystyle{ a(n)={n\choose n/2-1}(2^{-n/2} + n^2 2^{-n-5} - n2^{-n-4}), }[/math]
[math]\displaystyle{ b(n)={n\choose (n-3)/2}(2^{-(n+3)/2} + n^2 2^{-n-6} - n2^{-n-3}), }[/math]


[math]\displaystyle{ c(n)={n\choose (n-1)/2}(2^{-(n+1)/2} + n^2 2^{-n-4}). }[/math]

The main idea behind these estimates is that, in most antichains, all the sets have sizes that are very close to n/2.[10] For n = 2, 4, 6, 8 Korshunov's formula provides an estimate that is inaccurate by a factor of 9.8%, 10.2%, 4.1%, and -3.3%, respectively.[11]


  1. (Kleitman Markowsky); (Korshunov 1981); (Kahn 2002); (Kisielewicz 1988).
  2. (Wiedemann 1991).
  3. Kisielewicz (1988).
  4. (Kahn 2002).
  5. The definition of free distributive lattices used here allows as lattice operations any finite meet and join, including the empty meet and empty join. For the free distributive lattice in which only pairwise meets and joins are allowed, one should eliminate the top and bottom lattice elements and subtract two from the Dedekind numbers.
  6. (Church 1940); (Church 1965); (Zaguia 1993).
  7. (Kisielewicz 1988).
  8. (Yamamoto 1953).
  9. (Church 1940).
  10. 10.0 10.1 (Zaguia 1993).
  11. Brown, K. S., Generating the monotone Boolean functions, 


  • Berman, Joel; Köhler, Peter (1976), "Cardinalities of finite distributive lattices", Mitt. Math. Sem. Giessen 121: 103–124 .
  • Church, Randolph (1940), "Numerical analysis of certain free distributive structures", Duke Mathematical Journal 6 (3): 732–734, doi:10.1215/s0012-7094-40-00655-x .
  • Church, Randolph (1965), "Enumeration by rank of the free distributive lattice with 7 generators", Notices of the American Mathematical Society 11: 724 . As cited by (Wiedemann 1991).
  • "Über Zerlegungen von Zahlen durch ihre größten gemeinsamen Teiler", Gesammelte Werke, 2, 1897, pp. 103–148 .
  • Kahn, Jeff (2002), "Entropy, independent sets and antichains: a new approach to Dedekind's problem", Proceedings of the American Mathematical Society 130 (2): 371–378, doi:10.1090/S0002-9939-01-06058-0 .
  • Kisielewicz, Andrzej (1988), "A solution of Dedekind's problem on the number of isotone Boolean functions", Journal für die Reine und Angewandte Mathematik 1988 (386): 139–144, doi:10.1515/crll.1988.386.139 
  • "On Dedekind's problem: the number of isotone Boolean functions. II", Transactions of the American Mathematical Society 213: 373–390, 1975, doi:10.2307/1998052 .
  • Korshunov, A. D. (1981), "The number of monotone Boolean functions", Problemy Kibernet. 38: 5–108 .
  • "Note on the order of free distributive lattices", Bulletin of the American Mathematical Society 52: 423, 1946, doi:10.1090/S0002-9904-1946-08568-7 .
  • Wiedemann, Doug (1991), "A computation of the eighth Dedekind number", Order 8 (1): 5–6, doi:10.1007/BF00385808 .
  • Yamamoto, Koichi (1953), "Note on the order of free distributive lattices", Science Reports of the Kanazawa University 2 (1): 5–6 .
  • Zaguia, Nejib (1993), "Isotone maps: enumeration and structure", in Sauer, N. W.; Woodrow, R. E.; Sands, B., Finite and Infinite Combinatorics in Sets and Logic (Proc. NATO Advanced Study Inst., Banff, Alberta, Canada, May 4, 1991), Kluwer Academic Publishers, pp. 421–430 .