login
Bitwise XOR of the base-4 digits of n.
2

%I #17 Jul 06 2022 22:19:06

%S 0,1,2,3,1,0,3,2,2,3,0,1,3,2,1,0,1,0,3,2,0,1,2,3,3,2,1,0,2,3,0,1,2,3,

%T 0,1,3,2,1,0,0,1,2,3,1,0,3,2,3,2,1,0,2,3,0,1,1,0,3,2,0,1,2,3,1,0,3,2,

%U 0,1,2,3,3,2,1,0,2,3,0,1,0,1,2,3,1,0,3

%N Bitwise XOR of the base-4 digits of n.

%C Equivalently, the parity of the odd position 1-bits of n and the parity of the even position 1-bits of n, combined as a(n) = 2*A269723(n) + A341389(n).

%C In GF(2)[x] polynomials encoded as bits of an integer (least significant bit for the constant term), a(n) is remainder n mod x^2 + 1.

%H Kevin Ryde, <a href="/A355487/b355487.txt">Table of n, a(n) for n = 0..8192</a>

%H <a href="/index/Fi#FIXEDPOINTS">Index entries for sequences that are fixed points of mappings</a>

%F Fixed point of the morphism 0 -> 0,1; 1 -> 2,3; 2 -> 1,0; 3 -> 3,2 starting from 0.

%e n=35 has base-4 digits 203 so a(35) = 2 XOR 0 XOR 3 = 1.

%t a[n_] := BitXor @@ IntegerDigits[n, 4]; Array[a, 100, 0] (* _Amiram Eldar_, Jul 05 2022 *)

%o (PARI) a(n) = if(n==0,0, fold(bitxor,digits(n,4)));

%o (Python)

%o from operator import xor

%o from functools import reduce

%o from sympy.ntheory import digits

%o def a(n): return reduce(xor, digits(n, 4)[1:])

%o print([a(n) for n in range(87)]) # _Michael S. Branicky_, Jul 05 2022

%Y Cf. A030373 (base 4 digits), A003987 (XOR).

%Y Cf. A341389, A269723, A010060.

%Y Cf. A353167 (indices of 0's).

%Y Other digit operations: A053737 (sum), A309954 (product).

%K nonn,base,easy

%O 0,3

%A _Kevin Ryde_, Jul 04 2022