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.

A264083 Number of orthogonal 3 X 3 matrices over the ring Z/nZ.

This page as a plain text file.
%I A264083 #56 Sep 08 2022 08:46:14
%S A264083 1,6,48,384,240,288,672,6144,1296,1440,2640,18432,4368,4032,11520,
%T A264083 49152,9792,7776,13680,92160,32256,15840,24288,294912,30000,26208,
%U A264083 34992,258048,48720,69120,59520,393216,126720,58752,161280,497664,101232,82080,209664,1474560
%N A264083 Number of orthogonal 3 X 3 matrices over the ring Z/nZ.
%C A264083 Number of matrices M = [a,b,c; d,e,f; g,h,i] with 0 <= a, b, c, d, e, f, g, h, i < n such that M*transpose(M) == [1,0,0; 0,1,0; 0,0,1] (mod n).
%C A264083 For n > 1, a(n) is divisible by 6*A060594(n)^3. - _Robert Israel_, Dec 16 2015
%H A264083 Robert Israel, <a href="/A264083/b264083.txt">Table of n, a(n) for n = 1..124</a>
%F A264083 For p an odd prime, a(p) = 2*p*(p^2-1). - _Tom Edgar_, Nov 04 2015
%F A264083 From _Robert Israel_, Dec 16 2015: (Start)
%F A264083 Conjectures:
%F A264083   a(2^k) = 12*8^k for k >= 3.
%F A264083   For odd primes p, a(p^k) = a(p)*p^(3k-3) for k>=1. (End)
%p A264083 F:= proc(n) local R,V,nR,S,nS,Rp,nRp,i,j,a,b,c,t,r,r1,count;
%p A264083       R:= select(t -> t[1]^2 + t[2]^2 + t[3]^2 mod n = 1, [seq(seq(seq([a,b,c],a=0..n-1),b=0..n-1),c=0..n-1)]);
%p A264083       nR:= nops(R);
%p A264083       S:= select(t -> t^2 mod n = 1, {$2..n-1});
%p A264083       nS:= nops(S);
%p A264083       for r in R do if not assigned(V[r]) then
%p A264083          for c in S do V[c*r mod n] := 0 od
%p A264083       fi od;
%p A264083       R:= select(r -> not assigned(V[r]), R);
%p A264083       nR:= nops(R);
%p A264083       count:= 0;
%p A264083       for i from 1 to nR do
%p A264083         r:= R[i];
%p A264083         Rp:= select(j -> R[j][1]*r[1] + R[j][2]*r[2] + R[j][3]*r[3] mod n = 0, [$i+1..nR]);
%p A264083         nRp:= nops(Rp);
%p A264083         for j from 1 to nRp do
%p A264083             r1:= R[Rp[j]];
%p A264083             count:= count + 6*(1+nS)^3*nops(select(k -> R[Rp[k]][1]*r1[1] + R[Rp[k]][2]*r1[2]+R[Rp[k]][3]*r1[3] mod n = 0, [$j+1..nRp]));
%p A264083         od
%p A264083       od;
%p A264083       count;
%p A264083 end proc:
%p A264083 F(1):= 1:
%p A264083 seq(F(n), n=1..40); # _Robert Israel_, Dec 16 2015
%o A264083 (Magma)
%o A264083 Enter R := IntegerRing(n);
%o A264083 korthmat := function(R,n,k);
%o A264083 O := [];
%o A264083 M := MatrixAlgebra(R,n);
%o A264083 for x in M do
%o A264083 if x*Transpose(x) eq k*M!1 and Transpose(x)*x eq k*M!1 then
%o A264083 O := Append(O,x);
%o A264083 end if;
%o A264083 end for;
%o A264083 return O;
%o A264083 end function;
%o A264083 # korthmat(R,3,1);
%o A264083 (PARI) my(t=Mod(matid(3), n)); sum(a=1, n, sum(b=1, n, sum(c=1, n, sum(d=1, n, sum(e=1, n, sum(f=1, n, sum(g=1, n, sum(h=1, n, sum(i=1, n, my(M=[a, b, c; d, e, f; g, h, i]); M*M~==t))))))))) \\ _Charles R Greathouse_ IV, Nov 10 2015
%Y A264083 Cf. A060594, A087784, A208895.
%K A264083 nonn,mult
%O A264083 1,2
%A A264083 _Charles Repizo_, Nov 03 2015
%E A264083 a(11)-a(31) from _Tom Edgar_, Nov 05 2015
%E A264083 a(31) corrected by _Robert Israel_, Dec 15 2015