A325014 Array read by descending antidiagonals: A(n,k) is the number of chiral pairs of colorings of the facets of a regular n-dimensional orthoplex using up to k colors.
0, 1, 0, 3, 0, 0, 6, 3, 1, 0, 10, 15, 66, 94, 0, 15, 45, 920, 97974, 1047816, 0, 21, 105, 6350, 10700090, 481141220994, 400140831558512, 0, 28, 210, 29505, 390081800, 4802390808840576, 74515656021475803734579625, 527471421741473576372948457251328, 0
Offset: 1
Examples
Array begins with A(1,1): 0 1 3 6 10 15 21 28 ... 0 0 3 15 45 105 210 378 ... 0 1 66 920 6350 29505 106036 317856 ... 0 94 97974 10700090 390081800 7280687610 86121007714 730895668104 ... For A(2,3)=3, each square has one of the three colors on two adjacent edges.
Links
- Robert A. Russell, Table of n, a(n) for n = 1..78
- E. M. Palmer and R. W. Robinson, Enumeration under two representations of the wreath product, Acta Math., 131 (1973), 123-143.
- Wikipedia, Cross-polytope
Crossrefs
Programs
-
Mathematica
a48[n_] := a48[n] = DivisorSum[NestWhile[#/2&, n, EvenQ], MoebiusMu[#]2^(n/#)&]/(2n); (* A000048 *) a37[n_] := a37[n] = DivisorSum[n, MoebiusMu[n/#]2^#&]/n; (* A001037 *) CI0[{n_Integer}] := CI0[{n}] = CI[Transpose[If[EvenQ[n], p2 = IntegerExponent[n, 2]; sub = Divisors[n/2^p2]; {2^(p2+1) sub, a48 /@ (2^p2 sub) }, sub = Divisors[n]; {sub, a37 /@ sub}]]] 2^(n-1); (* even perm. *) CI1[{n_Integer}] := CI1[{n}] = CI[sub = Divisors[n]; Transpose[If[EvenQ[n], {sub, a37 /@ sub}, {2 sub, a48 /@ sub}]]] 2^(n-1); (* odd perm. *) compress[x : {{, } ...}] := (s = Sort[x]; For[i = Length[s], i > 1, i -= 1, If[s[[i, 1]]==s[[i-1, 1]], s[[i-1, 2]] += s[[i, 2]]; s = Delete[s, i], Null]]; s) cix[{a_, b_}, {c_, d_}] := {LCM[a, c], (a b c d)/LCM[a, c]}; Unprotect[Times]; Times[CI[a_List], CI[b_List]] := (* combine *) CI[compress[Flatten[Outer[cix, a, b, 1], 1]]]; Protect[Times]; CI0[p_List] := CI0[p] = Expand[CI0[Drop[p, -1]] CI0[{Last[p]}] + CI1[Drop[p, -1]] CI1[{Last[p]}]] CI1[p_List] := CI1[p] = Expand[CI0[Drop[p, -1]] CI1[{Last[p]}] + CI1[Drop[p, -1]] CI0[{Last[p]}]] pc[p_List] := Module[{ci,mb},mb = DeleteDuplicates[p]; ci = Count[p, #] & /@ mb; n!/(Times @@ (ci!) Times @@ (mb^ci))] (* partition count *) row[n_Integer] := row[n] = Factor[(Total[((CI0[#] - CI1[#]) pc[#]) & /@ IntegerPartitions[n]])/(n! 2^n)] /. CI[l_List] :> j^(Total[l][[2]]) array[n_, k_] := row[n] /. j -> k Table[array[n, d-n+1], {d, 1, 10}, {n, 1, d}] // Flatten
Formula
The algorithm used in the Mathematica program below assigns each permutation of the axes to a partition of n. It then determines the number of permutations for each partition and the cycle index for each partition.
A(k,n) = A325012(n,k) - A325013(n,k) = (A325012(n,k) - A325015(n,k)) / 2 = A325013(n,k) - A325015(n,k).
A(n,k) = Sum_{j=2..2^n} A325018(n,j) * binomial(k,j).
Comments