login
Array read by antidiagonals: T(n,k) is the order of the group SL(n,Z_k).
3

%I #11 Sep 19 2019 14:38:10

%S 1,1,1,1,1,1,1,1,6,1,1,1,24,168,1,1,1,48,5616,20160,1,1,1,120,43008,

%T 12130560,9999360,1,1,1,144,372000,660602880,237783237120,20158709760,

%U 1,1,1,336,943488,29016000000,167761422581760,42064805779476480,163849992929280,1

%N Array read by antidiagonals: T(n,k) is the order of the group SL(n,Z_k).

%C All rows are multiplicative.

%C Equivalently, the number of n X n matrices mod k with determinant 1.

%C Also, for k prime (but not higher prime powers) the number of n X n matrices over GF(k) with determinant 1.

%H R. P. Brent and B. D. McKay, <a href="https://doi.org/10.1016/0012-365X(87)90117-8">Determinants and ranks of random matrices over Zm</a>, Discrete Mathematics 66 (1987) pp. 35-49.

%H J. M. Lockhart and W. P. Wardlaw, <a href="https://www.jstor.org/stable/27643029">Determinants of Matrices over the Integers Modulo m</a>, Mathematics Magazine, Vol. 80, No. 3 (Jun., 2007), pp. 207-214.

%H The Group Properties Wiki, <a href="https://groupprops.subwiki.org/wiki/Order_formulas_for_linear_groups">Order formulas for linear groups</a>

%F T(n,p^e) = (p^e)^(n^2-1) * Product_{j=2..n} (1 - 1/p^j) for prime p, n > 0.

%e Array begins:

%e ==============================================================

%e n\k| 1 2 3 4 5 6

%e ---+----------------------------------------------------------

%e 0 | 1 1 1 1 1 1 ...

%e 1 | 1 1 1 1 1 1 ...

%e 2 | 1 6 24 48 120 144 ...

%e 3 | 1 168 5616 43008 372000 943488 ...

%e 4 | 1 20160 12130560 660602880 29016000000 244552089600 ...

%e 5 | 1 9999360 ...

%e ...

%t T[n_, k_] := If[k == 1 || n == 0, 1, k^(n^2-1) Product[1 - p^-j, {p, FactorInteger[k][[All, 1]]}, {j, 2, n}]];

%t Table[T[n-k+1, k], {n, 0, 8}, {k, n+1, 1, -1}] // Flatten (* _Jean-François Alcover_, Sep 19 2019 *)

%o (GAP)

%o T:=function(n,k) if k=1 or n=0 then return 1; else return Order(SL(n, Integers mod k)); fi; end;

%o for n in [0..5] do Print(List([1..6], k->T(n,k)), "\n"); od;

%o (PARI) T(n,k)={my(f=factor(k)); if(n<1, n==0, k^(n^2-1) * prod(i=1, #f~, my(p=f[i,1]); prod(j=2, n, (1 - p^(-j)))))}

%Y Rows n=2..4 are A000056, A011785, A011786.

%Y Columns k=2..5, 7 are A002884, A003787, A011787, A003789, A003790.

%Y Cf. A316622.

%K nonn,mult,tabl

%O 0,9

%A _Andrew Howroyd_, Jul 08 2018