|
|
A338099
|
|
Number of pairs of 2 X 2 matrices (X,Y) over Z/nZ such that X*Y = 0 and Y*X <> 0.
|
|
0
|
|
|
0, 18, 192, 1296, 2880, 15186, 16128, 62208, 88128, 199890, 158400, 764688, 366912, 1063314, 1551360, 2506752, 1410048, 5742738, 2462400, 9461520, 8089536, 9973458, 6412032, 31593216, 14040000, 22817106, 27713664, 48947472, 20462400, 97370130, 28569600, 92012544
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
1,2
|
|
LINKS
|
|
|
MATHEMATICA
|
WW = Array[W, {2, 2}];
Ma[n_] := Ma[n] = Mod[Flatten[Table[ WW, {W[1, 1], n}, {W[1, 2], n}, {W[2, 1], n}, {W[2, 2], n}], 3], n]
S[n_] := S[n] = Sum[If[Mod[Ma[n][[i]].Ma[n][[j]], n] == 0 WW && !Mod[ Ma[n][[j]].Ma[n][[i]], n] == 0 WW , 1, 0], {i, n^4}, {j, n ^4}]
Array[S, 9]
|
|
PROG
|
(Python)
from numba import jit
@jit(nopython=True)
def a(n):
c = 0
for ax in range(n):
for bx in range(n):
for cx in range(bx, n):
card = 1 + (cx > bx)
for dx in range(n):
for ay in range(n):
for by in range(n):
for cy in range(n):
if (ax*ay + bx*cy)%n == 0:
if (cx*ay + dx*cy)%n == 0:
for dy in range(n):
if ax==ay and bx==by and cx==cy and dx==dy: continue
if (ax*by + bx*dy)%n == 0:
if (cx*by + dx*dy)%n == 0:
if (ay*ax + by*cx)%n != 0: c += card; continue
if (ay*bx + by*dx)%n != 0: c += card; continue
if (cy*ax + dy*cx)%n != 0: c += card; continue
if (cy*bx + dy*dx)%n != 0: c += card; continue
return c
|
|
CROSSREFS
|
Cf. A227433 (Number of pairs of 2 X 2 matrices over Z/nZ that do not commute).
|
|
KEYWORD
|
nonn
|
|
AUTHOR
|
|
|
EXTENSIONS
|
|
|
STATUS
|
approved
|
|
|
|