login
A341288
Square array T(n, k), read by antidiagonals, n, k >= 0; T(n, k) = XOR_{u in B(n), v in B(k)} 2^(u XOR v) where XOR denotes the bitwise XOR operator and B(n) gives the exponents in expression for n as a sum of powers of 2.
3
0, 0, 0, 0, 1, 0, 0, 2, 2, 0, 0, 3, 1, 3, 0, 0, 4, 3, 3, 4, 0, 0, 5, 8, 0, 8, 5, 0, 0, 6, 10, 12, 12, 10, 6, 0, 0, 7, 9, 15, 1, 15, 9, 7, 0, 0, 8, 11, 15, 5, 5, 15, 11, 8, 0, 0, 9, 4, 12, 9, 0, 9, 12, 4, 9, 0, 0, 10, 6, 12, 13, 15, 15, 13, 12, 6, 10, 0
OFFSET
0,8
COMMENTS
For any x >= 0, the function n -> T(n, 2^x) is a self-inverse permutation of the nonnegative integers.
The set of nonnegative integers equipped with T forms a commutative monoid; its invertible elements are the odious numbers (A000069).
Hence A000069 equipped with T forms a group.
FORMULA
T(n, k) = T(k, n) (T is commutative).
T(m, T(n, k)) = T(T(m, n), k) (T is associative).
T(n, 0) = 0 (0 is an absorbing element for T).
T(n, 1) = n (1 is the neutral element for T).
T(n, 2) = A057300(n).
T(n, 4) = A126006(n).
T(n, n) = A010060(n).
A010060(T(n, k)) = A010060(n) * A010060(k).
EXAMPLE
Array T(n, k) begins:
n\k| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
---+---------------------------------------------------------------
0| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1| 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
2| 0 2 1 3 8 10 9 11 4 6 5 7 12 14 13 15 -> A057300
3| 0 3 3 0 12 15 15 12 12 15 15 12 0 3 3 0
4| 0 4 8 12 1 5 9 13 2 6 10 14 3 7 11 15 -> A126006
5| 0 5 10 15 5 0 15 10 10 15 0 5 15 10 5 0
6| 0 6 9 15 9 15 0 6 6 0 15 9 15 9 6 0
7| 0 7 11 12 13 10 6 1 14 9 5 2 3 4 8 15
8| 0 8 4 12 2 10 6 14 1 9 5 13 3 11 7 15
9| 0 9 6 15 6 15 0 9 9 0 15 6 15 6 9 0
10| 0 10 5 15 10 0 15 5 5 15 0 10 15 5 10 0
11| 0 11 7 12 14 5 9 2 13 6 10 1 3 8 4 15
12| 0 12 12 0 3 15 15 3 3 15 15 3 0 12 12 0
13| 0 13 14 3 7 10 9 4 11 6 5 8 12 1 2 15
14| 0 14 13 3 11 5 6 8 7 9 10 4 12 2 1 15
15| 0 15 15 0 15 0 0 15 15 0 0 15 0 15 15 0
\
v
PROG
(PARI) B(n) = { my (b=vector(hammingweight(n))); for (k=1, #b, n -= 2^(b[k] = valuation(n, 2))); b }
T(n, k) = { my (nn=B(n), kk=B(k), v=0); for (i=1, #nn, for (j=1, #kk, v=bitxor(v, 2^bitxor(nn[i], kk[j])))); v }
CROSSREFS
KEYWORD
nonn,tabl,look,base
AUTHOR
Rémy Sigrist, Feb 08 2021
STATUS
approved