cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A316622 Array read by antidiagonals: T(n,k) is the order of the group GL(n,Z_k).

Original entry on oeis.org

1, 1, 1, 1, 1, 1, 1, 2, 6, 1, 1, 2, 48, 168, 1, 1, 4, 96, 11232, 20160, 1, 1, 2, 480, 86016, 24261120, 9999360, 1, 1, 6, 288, 1488000, 1321205760, 475566474240, 20158709760, 1, 1, 4, 2016, 1886976, 116064000000, 335522845163520, 84129611558952960, 163849992929280, 1
Offset: 0

Views

Author

Andrew Howroyd, Jul 08 2018

Keywords

Comments

All rows are multiplicative.
Equivalently, the number of invertible n X n matrices mod k.
Also, for k prime (but not higher prime powers) the number of nonsingular n X n matrices over GF(k).
For k >= 2, n! divides T(n,k) since the subgroup of GL(n,k) consisting of all permutation matrices is isomorphic to S_n (the n-th symmetric group). Note that a permutation matrix is an orthogonal matrix, hence having determinant +-1. - Jianing Song, Oct 29 2022

Examples

			Array begins:
=================================================================
n\k| 1       2         3          4             5           6
---+-------------------------------------------------------------
0  | 1       1         1          1            1            1 ...
1  | 1       1         2          2            4            2 ...
2  | 1       6        48         96          480          288 ...
3  | 1     168     11232      86016      1488000      1886976 ...
4  | 1   20160  24261120 1321205760 116064000000 489104179200 ...
5  | 1 9999360  ...
...
		

Crossrefs

Rows n=2..4 are A000252, A064767, A305186.
Columns k=2..7 are A002884, A053290, A065128, A053292, A065498, A053293.
Cf. A053291 (GF(4)), A052496 (GF(8)), A052497 (GF(9)).
Cf. A316623.

Programs

  • GAP
    T:=function(n,k) if k=1 or n=0 then return 1; else return Order(GL(n, Integers mod k)); fi; end;
    for n in [0..5] do Print(List([1..6], k->T(n,k)), "\n"); od;
    
  • Mathematica
    T[, 1] = T[0, ] = 1; T[n_, k_] := T[n, k] = Module[{f = FactorInteger[k], p, e}, If[Length[f] == 1, {p, e} = f[[1]]; (p^e)^(n^2)* Product[(1 - 1/p^j), {j, 1, n}], Times @@ (T[n, Power @@ #]& /@ f)]];
    Table[T[n - k + 1, k], {n, 0, 8}, {k, n + 1, 1, -1}] // Flatten (* Jean-François Alcover, Jul 25 2019 *)
  • PARI
    T(n,k)={my(f=factor(k)); k^(n^2) * prod(i=1, #f~, my(p=f[i,1]); prod(j=1, n, (1 - p^(-j))))}

Formula

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