login
Square root of squares in A145768 (XOR of squares of the numbers 1..n).
5

%I #20 Dec 17 2021 00:54:18

%S 1,4,1,15,0,16,20,31,16,49,65,224,96,96,337,144,720,400,945,625,928,

%T 828,367,928,1889,624,2609,3568,3568,2064,10273,1040,545,12384,12639,

%U 56800,25812,15119,36,864,144383,146463,195440,61391,61072,61072,58128,25872

%N Square root of squares in A145768 (XOR of squares of the numbers 1..n).

%H Reinhard Zumkeller, <a href="/A145829/b145829.txt">Table of n, a(n) for n = 1..63</a>

%t an = 0; Reap[ For[i = 1, i <= 10^6, i++, an = BitXor[an, i^2]; If[IntegerQ[r = Sqrt[an]], Print[r]; Sow[r]]]][[2, 1]] (* _Jean-François Alcover_, Oct 11 2013, translated from Pari *)

%o (PARI) an=0; for( i=1,10^4, an=bitxor(an,i^2); issquare(an,&an) && print1(an","))

%o (Haskell)

%o a145829 n = a145829_list !! (n-1)

%o a145829_list = map a000196 $ filter ((== 1) . a010052) $ tail a145768_list

%o -- _Reinhard Zumkeller_, Nov 09 2012

%o (Python)

%o from itertools import count, islice

%o from sympy import integer_nthroot

%o def A145829gen(): # generator of terms

%o m = 0

%o for n in count(1):

%o m ^= n**2

%o a, b = integer_nthroot(m,2)

%o if b: yield a

%o A145829_list = list(islice(A145829gen(),20)) # _Chai Wah Wu_, Dec 16 2021

%Y a(n) = A000196( A145828(n)) = A000196( A145768( A145827(n))); A145828 = { a(n)^2 } = A145768 intersect A000290.

%K easy,nice,nonn

%O 1,2

%A _M. F. Hasler_, Oct 20 2008